]> granicus.if.org Git - llvm/commit
GlobalISel/TableGen: Handle setcc patterns
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Thu, 29 Aug 2019 01:13:41 +0000 (01:13 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Thu, 29 Aug 2019 01:13:41 +0000 (01:13 +0000)
commitcef7580a71894b1f708160baed0e53216c223eb4
tree41e808cd6194dfd0c68ab34b2b652a90a189eb9f
parentecb26c9a2fb9c7cf80a749e6025f5721f520e26a
GlobalISel/TableGen: Handle setcc patterns

This is a special case because one node maps to two different G_
instructions, and the operand order is changed.

This mostly enables G_FCMP for AMDPGPU. G_ICMP is still manually
selected for now since it has the SALU and VALU complication to deal
with.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@370280 91177308-0d34-0410-b5e6-96231b3b80d8
15 files changed:
include/llvm/CodeGen/GlobalISel/InstructionSelector.h
include/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h
include/llvm/Target/GlobalISel/SelectionDAGCompat.td
include/llvm/Target/TargetSelectionDAG.td
lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
lib/Target/AMDGPU/AMDGPURegisterBanks.td
test/CodeGen/AMDGPU/GlobalISel/inst-select-fcmp.mir [new file with mode: 0644]
test/CodeGen/AMDGPU/GlobalISel/inst-select-fcmp.s16.mir [new file with mode: 0644]
test/CodeGen/Mips/GlobalISel/instruction-select/mul.mir
test/CodeGen/Mips/GlobalISel/llvm-ir/bitwise.ll
test/CodeGen/Mips/GlobalISel/llvm-ir/icmp.ll
test/CodeGen/Mips/GlobalISel/llvm-ir/mul.ll
test/TableGen/Common/GlobalISelEmitterCommon.td
test/TableGen/GlobalISelEmitter-setcc.td [new file with mode: 0644]
utils/TableGen/GlobalISelEmitter.cpp