aboutsummaryrefslogtreecommitdiff
path: root/backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-19 02:50:30 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-19 02:50:30 +0800
commit6c97d54954112be9a5badacaec8efa1d05bd7d15 (patch)
tree9eb4d5db7f05218759e6f6d49cf90ca65f1e53f8 /backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc
parentf5c592905e6e1ef4b78337d76c8215e543607b8d (diff)
downloadrcc-project-6c97d54954112be9a5badacaec8efa1d05bd7d15.tar.gz
rcc-project-6c97d54954112be9a5badacaec8efa1d05bd7d15.tar.xz
[RISCV][GlobalISel] Generate indirect branch selection
Diffstat (limited to 'backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc')
-rw-r--r--backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc12
1 files changed, 12 insertions, 0 deletions
diff --git a/backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc b/backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc
index c58135f..21fd338 100644
--- a/backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc
+++ b/backend/lib/Target/RISCV/RISCVGISelControlFlow.rccdesc
@@ -2,6 +2,18 @@
selection_rules:
-
+ id: select_g_brindirect
+ priority: 100
+ match:
+ opcode: G_BRINDIRECT
+ apply:
+ instructions:
+ - opcode: PseudoBRIND
+ root: true
+ operands:
+ - { operand: 0 }
+ - { immediate: 0 }
+ -
id: select_g_br
priority: 100
match: