xref: /llvm-project/llvm/test/CodeGen/MIR/AArch64/mir-canon-jump-table.mir (revision 2d8c1597e51c39d8db1c9428d65e6ef6d6a1d5c1)
1# RUN: llc -run-pass mir-canonicalizer -verify-machineinstrs -mtriple aarch64-unknown-linux-gnu -o - %s | FileCheck %s
2# RUN: llc -run-pass mir-canonicalizer -mir-vreg-namer-use-stable-hash -verify-machineinstrs -mtriple aarch64-unknown-linux-gnu -o - %s | FileCheck %s
3...
4---
5name: foo
6alignment:       16
7jumpTable:
8  kind:  block-address
9  entries:
10    - id:              0
11      blocks:          [ '%bb.0', '%bb.1']
12    - id:              1
13      blocks:          [ '%bb.2', '%bb.3' ]
14    - id:              2
15      blocks:          [ '%bb.3', '%bb.7']
16    - id:              3
17      blocks:          [ '%bb.2', '%bb.3' ]
18body:             |
19  bb.0:
20  bb.1:
21  bb.2:
22  bb.3:
23  bb.7:
24    ;CHECK: %bb{{[0-9a-f]+}}_{{[0-9a-f]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.0
25    ;CHECK: %bb{{[0-9a-f]+}}_{{[0-9a-f]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.1
26    ;CHECK: %bb{{[0-9a-f]+}}_{{[0-9a-f]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.2
27    ;CHECK: %bb{{[0-9a-f]+}}_{{[0-9a-f]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.3
28    %a:_(p0) = G_JUMP_TABLE %jump-table.0
29    %b:_(p0) = G_JUMP_TABLE %jump-table.1
30    %c:_(p0) = G_JUMP_TABLE %jump-table.2
31    %d:_(p0) = G_JUMP_TABLE %jump-table.3
32
33...
34
35