aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.cc
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2024-01-25 12:03:18 +0000
committerRichard Sandiford <richard.sandiford@arm.com>2024-01-25 12:03:18 +0000
commit8eead1148cd0ac086b39a7abccea404041c85cb5 (patch)
tree580fde4f0f6ff136e42dab6cd98113958b37e674 /gcc/fold-const.cc
parentf251bbfec9174169510b2dec14b9bf763e7b77af (diff)
downloadgcc-8eead1148cd0ac086b39a7abccea404041c85cb5.zip
gcc-8eead1148cd0ac086b39a7abccea404041c85cb5.tar.gz
gcc-8eead1148cd0ac086b39a7abccea404041c85cb5.tar.bz2
aarch64: Handle overlapping registers in movv8di [PR113550]
The LS64 movv8di pattern didn't handle loads that overlapped with the address register (unless the overlap happened to be in the last subload). gcc/ PR target/113550 * config/aarch64/aarch64-simd.md: In the movv8di splitter, check whether each split instruction is a load that clobbers the source address. Emit that instruction last if so. gcc/testsuite/ PR target/113550 * gcc.target/aarch64/pr113550.c: New test.
Diffstat (limited to 'gcc/fold-const.cc')
0 files changed, 0 insertions, 0 deletions