[PATCH] D38219: [GlobalISel][X86] Support G_LSHR/G_ASHR/G_SHL.

Igor Breger via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 25 05:04:36 PDT 2017


igorb created this revision.
Herald added subscribers: kristof.beyls, rovka.

Support G_LSHR/G_ASHR/G_SHL. We have 3 variance for shift instructions : shift gpr, shift imm, shift 1.
Currently GlobalIsel TableGen generate patterns for shift imm and shift 1, but with shiftCount i8. 
In G_LSHR/G_ASHR/G_SHL like LLVM-IR both arguments has the same type, so for now only shift i8 can use auto generated TableGen patterns.


https://reviews.llvm.org/D38219

Files:
  lib/Target/X86/X86InstructionSelector.cpp
  lib/Target/X86/X86LegalizerInfo.cpp
  lib/Target/X86/X86RegisterBankInfo.cpp
  test/CodeGen/X86/GlobalISel/ashr-scalar.ll
  test/CodeGen/X86/GlobalISel/legalize-ashr-scalar.mir
  test/CodeGen/X86/GlobalISel/legalize-lshr-scalar.mir
  test/CodeGen/X86/GlobalISel/legalize-shl-scalar.mir
  test/CodeGen/X86/GlobalISel/lshr-scalar.ll
  test/CodeGen/X86/GlobalISel/regbankselect-X86_64.mir
  test/CodeGen/X86/GlobalISel/select-ashr-scalar.mir
  test/CodeGen/X86/GlobalISel/select-lshr-scalar.mir
  test/CodeGen/X86/GlobalISel/select-shl-scalar.mir
  test/CodeGen/X86/GlobalISel/shl-scalar.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38219.116477.patch
Type: text/x-patch
Size: 78685 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170925/29209e37/attachment.bin>


More information about the llvm-commits mailing list