llvm-for-llvmta/test/CodeGen/MIR/AArch64/mir-canon-jump-table.mir

35 lines
1.1 KiB
YAML

# RUN: llc -run-pass mir-canonicalizer -verify-machineinstrs -mtriple aarch64-unknown-linux-gnu -o - %s | FileCheck %s
# RUN: llc -run-pass mir-canonicalizer -mir-vreg-namer-use-stable-hash -verify-machineinstrs -mtriple aarch64-unknown-linux-gnu -o - %s | FileCheck %s
...
---
name: foo
alignment: 16
jumpTable:
kind: block-address
entries:
- id: 0
blocks: [ '%bb.0', '%bb.1']
- id: 1
blocks: [ '%bb.2', '%bb.3' ]
- id: 2
blocks: [ '%bb.3', '%bb.7']
- id: 3
blocks: [ '%bb.2', '%bb.3' ]
body: |
bb.0:
bb.1:
bb.2:
bb.3:
bb.7:
;CHECK: %bb{{[0-9]+}}_{{[0-9]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.0
;CHECK: %bb{{[0-9]+}}_{{[0-9]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.1
;CHECK: %bb{{[0-9]+}}_{{[0-9]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.2
;CHECK: %bb{{[0-9]+}}_{{[0-9]+}}__1:_(p0) = G_JUMP_TABLE %jump-table.3
%a:_(p0) = G_JUMP_TABLE %jump-table.0
%b:_(p0) = G_JUMP_TABLE %jump-table.1
%c:_(p0) = G_JUMP_TABLE %jump-table.2
%d:_(p0) = G_JUMP_TABLE %jump-table.3
...