[all-commits] [llvm/llvm-project] 650512: [ARM] Extra vmovn tests to show BE differences. NFC
David Green via All-commits
all-commits at lists.llvm.org
Thu Feb 13 01:59:24 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 6505124a0c7c648560aad88bac103b0738a8b5f0
https://github.com/llvm/llvm-project/commit/6505124a0c7c648560aad88bac103b0738a8b5f0
Author: David Green <david.green at arm.com>
Date: 2020-02-13 (Thu, 13 Feb 2020)
Changed paths:
A llvm/test/CodeGen/ARM/neon-vmovn.ll
M llvm/test/CodeGen/Thumb2/mve-vmovn.ll
Log Message:
-----------
[ARM] Extra vmovn tests to show BE differences. NFC
Commit: 9d4c59754110647f8cc8cdd4fef3114843c91d17
https://github.com/llvm/llvm-project/commit/9d4c59754110647f8cc8cdd4fef3114843c91d17
Author: David Green <david.green at arm.com>
Date: 2020-02-13 (Thu, 13 Feb 2020)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMInstrMVE.td
M llvm/lib/Target/ARM/ARMInstrNEON.td
M llvm/test/CodeGen/ARM/neon-vmovn.ll
M llvm/test/CodeGen/Thumb2/mve-vmovn.ll
Log Message:
-----------
[ARM] Fix ReconstructShuffle for bigendian
Simon pointed out that this function is doing a bitcast, which can be
incorrect for big endian. That makes the lowering of VMOVN in MVE
wrong, but the function is shared between Neon and MVE so both can
be incorrect.
This attempts to fix things by using the newly added VECTOR_REG_CAST
instead of the BITCAST. As it may now be used on Neon, I've added the
relevant patterns for it there too. I've also added a quick dag combine
for it to remove them where possible.
Differential Revision: https://reviews.llvm.org/D74485
Compare: https://github.com/llvm/llvm-project/compare/cc5549dbc2f4...9d4c59754110
More information about the All-commits
mailing list