Skip to content

Commit 54d0cf5

Browse files
committed
[TableGen] Remove & Replace old GICombiner Backend
The MatchTable-based GlobalISel Combiner backend is the new default. There are no in-tree users left of the old backend. - Removed implementation of old MatchDAG-based Combiner, including tests, the backend itself and all supporting code. - Renamed MatchTable backend to `GlobalISelCombinerEmitter.cpp` + removed "-matchtable" from its CL option. - no need to have a verbose name as it's the only backend left now. Reviewed By: aemerson Differential Revision: https://reviews.llvm.org/D158710
1 parent 8e315c6 commit 54d0cf5

40 files changed

+58
-4410
lines changed

llvm/docs/CommandGuide/tblgen.rst

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -507,31 +507,19 @@ llvm-tblgen Options
507507

508508
.. option:: -gen-global-isel-combiner
509509

510-
(Deprecated, pending removal)
511-
Generate legacy GlobalISel combiner.
512-
513-
.. option:: -gen-global-isel-combiner-matchtable
514-
515-
Generate MatchTable-based GlobalISel combiner.
510+
Generate GlobalISel combiner.
516511

517512
.. option:: -combiners=list
518513

519-
Make -gen-global-isel-combiner and -gen-global-isel-combiner-matchtable
520-
emit the specified combiners.
521-
522-
.. option:: -gicombiner-show-expansions
523-
524-
Make -gen-global-isel-combiner use C++ comments to indicate occurrences
525-
of code expansion.
514+
Make -gen-global-isel-combiner emit the specified combiners.
526515

527-
.. option:: -gicombiner-stop-after-build
516+
.. option:: -gicombiner-debug-cxxpreds
528517

529-
Make -gen-global-isel-combiner stop processing after building the match tree.
518+
Add debug comments to all C++ predicates emitted by -gen-global-isel-combiner
530519

531520
.. option:: -gicombiner-stop-after-parse
532521

533-
Make -gen-global-isel-combiner and -gen-global-isel-combiner-matchtable stop
534-
processing after parsing rules and dump state.
522+
Make -gen-global-isel-combiner stop processing after parsing rules and dump state.
535523

536524
.. option:: -gen-instr-info
537525

llvm/lib/Target/AArch64/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ tablegen(LLVM AArch64GenDAGISel.inc -gen-dag-isel)
1010
tablegen(LLVM AArch64GenDisassemblerTables.inc -gen-disassembler)
1111
tablegen(LLVM AArch64GenFastISel.inc -gen-fast-isel)
1212
tablegen(LLVM AArch64GenGlobalISel.inc -gen-global-isel)
13-
tablegen(LLVM AArch64GenO0PreLegalizeGICombiner.inc -gen-global-isel-combiner-matchtable
13+
tablegen(LLVM AArch64GenO0PreLegalizeGICombiner.inc -gen-global-isel-combiner
1414
-combiners="AArch64O0PreLegalizerCombiner")
15-
tablegen(LLVM AArch64GenPreLegalizeGICombiner.inc -gen-global-isel-combiner-matchtable
15+
tablegen(LLVM AArch64GenPreLegalizeGICombiner.inc -gen-global-isel-combiner
1616
-combiners="AArch64PreLegalizerCombiner")
17-
tablegen(LLVM AArch64GenPostLegalizeGICombiner.inc -gen-global-isel-combiner-matchtable
17+
tablegen(LLVM AArch64GenPostLegalizeGICombiner.inc -gen-global-isel-combiner
1818
-combiners="AArch64PostLegalizerCombiner")
19-
tablegen(LLVM AArch64GenPostLegalizeGILowering.inc -gen-global-isel-combiner-matchtable
19+
tablegen(LLVM AArch64GenPostLegalizeGILowering.inc -gen-global-isel-combiner
2020
-combiners="AArch64PostLegalizerLowering")
2121
tablegen(LLVM AArch64GenInstrInfo.inc -gen-instr-info)
2222
tablegen(LLVM AArch64GenMCCodeEmitter.inc -gen-emitter)

llvm/lib/Target/AMDGPU/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ tablegen(LLVM AMDGPUGenSubtargetInfo.inc -gen-subtarget)
1717

1818
set(LLVM_TARGET_DEFINITIONS AMDGPUGISel.td)
1919
tablegen(LLVM AMDGPUGenGlobalISel.inc -gen-global-isel)
20-
tablegen(LLVM AMDGPUGenPreLegalizeGICombiner.inc -gen-global-isel-combiner-matchtable
20+
tablegen(LLVM AMDGPUGenPreLegalizeGICombiner.inc -gen-global-isel-combiner
2121
-combiners="AMDGPUPreLegalizerCombiner")
22-
tablegen(LLVM AMDGPUGenPostLegalizeGICombiner.inc -gen-global-isel-combiner-matchtable
22+
tablegen(LLVM AMDGPUGenPostLegalizeGICombiner.inc -gen-global-isel-combiner
2323
-combiners="AMDGPUPostLegalizerCombiner")
24-
tablegen(LLVM AMDGPUGenRegBankGICombiner.inc -gen-global-isel-combiner-matchtable
24+
tablegen(LLVM AMDGPUGenRegBankGICombiner.inc -gen-global-isel-combiner
2525
-combiners="AMDGPURegBankCombiner")
2626

2727
set(LLVM_TARGET_DEFINITIONS R600.td)

llvm/lib/Target/Mips/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ tablegen(LLVM MipsGenDAGISel.inc -gen-dag-isel)
99
tablegen(LLVM MipsGenDisassemblerTables.inc -gen-disassembler)
1010
tablegen(LLVM MipsGenFastISel.inc -gen-fast-isel)
1111
tablegen(LLVM MipsGenGlobalISel.inc -gen-global-isel)
12-
tablegen(LLVM MipsGenPostLegalizeGICombiner.inc -gen-global-isel-combiner-matchtable
12+
tablegen(LLVM MipsGenPostLegalizeGICombiner.inc -gen-global-isel-combiner
1313
-combiners="MipsPostLegalizerCombiner")
1414
tablegen(LLVM MipsGenInstrInfo.inc -gen-instr-info)
1515
tablegen(LLVM MipsGenMCCodeEmitter.inc -gen-emitter)

llvm/test/TableGen/GICombinerEmitter/defs-invalid.td

Lines changed: 0 additions & 42 deletions
This file was deleted.

llvm/test/TableGen/GICombinerEmitter/match-invalid.td

Lines changed: 0 additions & 81 deletions
This file was deleted.

0 commit comments

Comments
 (0)