Skip to content

Commit 2d7d1dc

Browse files
committed
[TableGen][DecoderEmitter] Add option to emit type-specialized decodeToMCInst
1 parent ba116a8 commit 2d7d1dc

File tree

21 files changed

+202
-61
lines changed

21 files changed

+202
-61
lines changed

llvm/lib/Target/AArch64/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ tablegen(LLVM AArch64GenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM AArch64GenAsmWriter1.inc -gen-asm-writer -asmwriternum=1)
88
tablegen(LLVM AArch64GenCallingConv.inc -gen-callingconv)
99
tablegen(LLVM AArch64GenDAGISel.inc -gen-dag-isel)
10-
tablegen(LLVM AArch64GenDisassemblerTables.inc -gen-disassembler)
10+
tablegen(LLVM AArch64GenDisassemblerTables.inc -gen-disassembler
11+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=32)
1112
tablegen(LLVM AArch64GenFastISel.inc -gen-fast-isel)
1213
tablegen(LLVM AArch64GenGlobalISel.inc -gen-global-isel)
1314
tablegen(LLVM AArch64GenO0PreLegalizeGICombiner.inc -gen-global-isel-combiner

llvm/lib/Target/AMDGPU/CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ tablegen(LLVM AMDGPUGenAsmMatcher.inc -gen-asm-matcher)
66
tablegen(LLVM AMDGPUGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM AMDGPUGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM AMDGPUGenDAGISel.inc -gen-dag-isel)
9-
tablegen(LLVM AMDGPUGenDisassemblerTables.inc -gen-disassembler)
9+
tablegen(LLVM AMDGPUGenDisassemblerTables.inc -gen-disassembler
10+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=32
11+
-non-templated-decode-to-mcinst-type-spec=uint64_t:=64
12+
-non-templated-decode-to-mcinst-type-spec=DecoderUInt128:=96,128)
1013
tablegen(LLVM AMDGPUGenInstrInfo.inc -gen-instr-info)
1114
tablegen(LLVM AMDGPUGenMCCodeEmitter.inc -gen-emitter)
1215
tablegen(LLVM AMDGPUGenMCPseudoLowering.inc -gen-pseudo-lowering)

llvm/lib/Target/ARC/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ set(LLVM_TARGET_DEFINITIONS ARC.td)
55
tablegen(LLVM ARCGenAsmWriter.inc -gen-asm-writer)
66
tablegen(LLVM ARCGenCallingConv.inc -gen-callingconv)
77
tablegen(LLVM ARCGenDAGISel.inc -gen-dag-isel)
8-
tablegen(LLVM ARCGenDisassemblerTables.inc -gen-disassembler)
8+
tablegen(LLVM ARCGenDisassemblerTables.inc -gen-disassembler
9+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=16,32
10+
-non-templated-decode-to-mcinst-type-spec=uint64_t:=48,64)
911
tablegen(LLVM ARCGenInstrInfo.inc -gen-instr-info)
1012
tablegen(LLVM ARCGenRegisterInfo.inc -gen-register-info)
1113
tablegen(LLVM ARCGenSDNodeInfo.inc -gen-sd-node-info)

llvm/lib/Target/ARM/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ tablegen(LLVM ARMGenAsmMatcher.inc -gen-asm-matcher)
66
tablegen(LLVM ARMGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM ARMGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM ARMGenDAGISel.inc -gen-dag-isel)
9-
tablegen(LLVM ARMGenDisassemblerTables.inc -gen-disassembler)
9+
tablegen(LLVM ARMGenDisassemblerTables.inc -gen-disassembler
10+
-non-templated-decode-to-mcinst-type-spec=uint16_t:=16
11+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=32)
1012
tablegen(LLVM ARMGenFastISel.inc -gen-fast-isel)
1113
tablegen(LLVM ARMGenGlobalISel.inc -gen-global-isel)
1214
tablegen(LLVM ARMGenInstrInfo.inc -gen-instr-info)

llvm/lib/Target/AVR/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ tablegen(LLVM AVRGenAsmMatcher.inc -gen-asm-matcher)
66
tablegen(LLVM AVRGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM AVRGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM AVRGenDAGISel.inc -gen-dag-isel)
9-
tablegen(LLVM AVRGenDisassemblerTables.inc -gen-disassembler)
9+
tablegen(LLVM AVRGenDisassemblerTables.inc -gen-disassembler
10+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=16,32)
1011
tablegen(LLVM AVRGenInstrInfo.inc -gen-instr-info)
1112
tablegen(LLVM AVRGenMCCodeEmitter.inc -gen-emitter)
1213
tablegen(LLVM AVRGenRegisterInfo.inc -gen-register-info)

llvm/lib/Target/BPF/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ tablegen(LLVM BPFGenAsmMatcher.inc -gen-asm-matcher)
66
tablegen(LLVM BPFGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM BPFGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM BPFGenDAGISel.inc -gen-dag-isel)
9-
tablegen(LLVM BPFGenDisassemblerTables.inc -gen-disassembler)
9+
tablegen(LLVM BPFGenDisassemblerTables.inc -gen-disassembler
10+
-non-templated-decode-to-mcinst-type-spec=uint64_t:=64)
1011
tablegen(LLVM BPFGenInstrInfo.inc -gen-instr-info)
1112
tablegen(LLVM BPFGenMCCodeEmitter.inc -gen-emitter)
1213
tablegen(LLVM BPFGenRegisterInfo.inc -gen-register-info)

llvm/lib/Target/CSKY/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ tablegen(LLVM CSKYGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM CSKYGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM CSKYGenCompressInstEmitter.inc -gen-compress-inst-emitter)
99
tablegen(LLVM CSKYGenDAGISel.inc -gen-dag-isel)
10-
tablegen(LLVM CSKYGenDisassemblerTables.inc -gen-disassembler)
10+
tablegen(LLVM CSKYGenDisassemblerTables.inc -gen-disassembler
11+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=16,32)
1112
tablegen(LLVM CSKYGenInstrInfo.inc -gen-instr-info)
1213
tablegen(LLVM CSKYGenMCCodeEmitter.inc -gen-emitter)
1314
tablegen(LLVM CSKYGenMCPseudoLowering.inc -gen-pseudo-lowering)

llvm/lib/Target/Hexagon/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ tablegen(LLVM HexagonGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM HexagonGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM HexagonGenDAGISel.inc -gen-dag-isel)
99
tablegen(LLVM HexagonGenDFAPacketizer.inc -gen-dfa-packetizer)
10-
tablegen(LLVM HexagonGenDisassemblerTables.inc -gen-disassembler)
10+
tablegen(LLVM HexagonGenDisassemblerTables.inc -gen-disassembler
11+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=32)
1112
tablegen(LLVM HexagonGenInstrInfo.inc -gen-instr-info)
1213
tablegen(LLVM HexagonGenMCCodeEmitter.inc -gen-emitter)
1314
tablegen(LLVM HexagonGenRegisterInfo.inc -gen-register-info)

llvm/lib/Target/Lanai/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ tablegen(LLVM LanaiGenAsmMatcher.inc -gen-asm-matcher)
66
tablegen(LLVM LanaiGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM LanaiGenCallingConv.inc -gen-callingconv)
88
tablegen(LLVM LanaiGenDAGISel.inc -gen-dag-isel)
9-
tablegen(LLVM LanaiGenDisassemblerTables.inc -gen-disassembler)
9+
tablegen(LLVM LanaiGenDisassemblerTables.inc -gen-disassembler
10+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=32)
1011
tablegen(LLVM LanaiGenInstrInfo.inc -gen-instr-info)
1112
tablegen(LLVM LanaiGenMCCodeEmitter.inc -gen-emitter)
1213
tablegen(LLVM LanaiGenRegisterInfo.inc -gen-register-info)

llvm/lib/Target/LoongArch/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ set(LLVM_TARGET_DEFINITIONS LoongArch.td)
55
tablegen(LLVM LoongArchGenAsmMatcher.inc -gen-asm-matcher)
66
tablegen(LLVM LoongArchGenAsmWriter.inc -gen-asm-writer)
77
tablegen(LLVM LoongArchGenDAGISel.inc -gen-dag-isel)
8-
tablegen(LLVM LoongArchGenDisassemblerTables.inc -gen-disassembler)
8+
tablegen(LLVM LoongArchGenDisassemblerTables.inc -gen-disassembler
9+
-non-templated-decode-to-mcinst-type-spec=uint32_t:=32)
910
tablegen(LLVM LoongArchGenInstrInfo.inc -gen-instr-info)
1011
tablegen(LLVM LoongArchGenMCPseudoLowering.inc -gen-pseudo-lowering)
1112
tablegen(LLVM LoongArchGenMCCodeEmitter.inc -gen-emitter)

0 commit comments

Comments
 (0)