Hi, When playing with std::experimental::simd, I found a bug newly introduced in AArch64 backend. As commit message describes: 7 Pattern "*extend<SHORT:mode><GPI:mode>2_aarch64" is duplicated 8 from the corresponding zero_extend pattern, however %<w> needs 9 to be expanded according to its mode iterator because the smov 10 instruction is different to umov.
Without the fix, it forces expanding to w register no matter the mode is. This simple patch fixes the issue which should be obvious. Bootstrap and test on AArch64. Any comments? Thanks, bin
pattern-signed-extend-20210809.patch
Description: Binary data