[PATCH] D63585: [ARM GlobalISel] Add support for s64 G_ADD and G_SUB.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 19 17:38:15 PDT 2019


efriedma created this revision.
efriedma added reviewers: aemerson, rovka.
Herald added subscribers: Petar.Avramovic, kristof.beyls, javed.absar.
Herald added a project: LLVM.

Teach RegisterBankInfo to use the correct register class, and tell the legalizer it's legal.  Everything else just works.

The one thing that's slightly weird about this compared to SelectionDAG isel is that legalization can't distinguish between i64 and <1 x i64>, so we might end up with more NEON instructions than the user expects.

(I'm not planning on spending more time on ARM 32-bit GISel at the moment; this was just a short experiment to familiarize myself with the code.)


Repository:
  rL LLVM

https://reviews.llvm.org/D63585

Files:
  lib/Target/ARM/ARMLegalizerInfo.cpp
  lib/Target/ARM/ARMRegisterBankInfo.cpp
  test/CodeGen/ARM/GlobalISel/arm-legalize-binops-neon.mir
  test/CodeGen/ARM/GlobalISel/select-neon.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63585.205726.patch
Type: text/x-patch
Size: 5164 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190620/098264b3/attachment.bin>


More information about the llvm-commits mailing list