[PATCH] D33596: [globalisel][tablegen] Add support for EXTRACT_SUBREG.

Daniel Sanders via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 2 06:12:19 PDT 2017


dsanders updated this revision to Diff 101196.
dsanders added a comment.

Fix the X86 machine verifier bug where EXTRACT_SUBREG could emit a subregister
copy with classes that didn't quite support it. TableGen now finds a suitable
pair of classes. However, if this results in a copy of the operand into another
class, tablegen will currently refuse to import SelectionDAG because we lack
multi-insn emission at the moment. Support for that will start to be introduced
as part of the state-machine patches.


https://reviews.llvm.org/D33596

Files:
  include/llvm/CodeGen/GlobalISel/InstructionSelector.h
  include/llvm/CodeGen/GlobalISel/Utils.h
  lib/CodeGen/GlobalISel/InstructionSelector.cpp
  lib/CodeGen/GlobalISel/Utils.cpp
  lib/Target/AArch64/AArch64InstructionSelector.cpp
  test/CodeGen/AArch64/GlobalISel/select-bitcast.mir
  test/CodeGen/AArch64/GlobalISel/select-trunc.mir
  test/TableGen/GlobalISelEmitter.td
  utils/TableGen/CodeGenRegisters.cpp
  utils/TableGen/CodeGenRegisters.h
  utils/TableGen/GlobalISelEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D33596.101196.patch
Type: text/x-patch
Size: 30060 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170602/fa9e6f4a/attachment.bin>


More information about the llvm-commits mailing list