[PATCH] D30044: [ARM] Enable SMLAL[B|T] instruction selection

Sam Parker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 17 06:59:13 PST 2017


samparker updated this revision to Diff 88881.
samparker added a comment.

- Enabled for V5TE and added it as a test target.
- Simplifed the tests, because there were three targets testing for the same output.
- Numerous fixes that Tim pointed out.
- Replaced the final isel with tablegen matching.
- Tried using ComputeNumSignBits for identifying sign extending, but this didn't work because for the top values we need to perform SRA, but this then appears like a sext and results in the wrong opcodes being selected.
- Added support for sign extending loads as well as a test for this


https://reviews.llvm.org/D30044

Files:
  lib/Target/ARM/ARMISelDAGToDAG.cpp
  lib/Target/ARM/ARMISelLowering.cpp
  lib/Target/ARM/ARMISelLowering.h
  lib/Target/ARM/ARMInstrInfo.td
  lib/Target/ARM/ARMInstrThumb2.td
  lib/Target/ARM/ARMPatternHelpers.cpp
  lib/Target/ARM/ARMPatternHelpers.h
  lib/Target/ARM/CMakeLists.txt
  test/CodeGen/ARM/longMAC.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30044.88881.patch
Type: text/x-patch
Size: 29692 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170217/bc8b9190/attachment.bin>


More information about the llvm-commits mailing list