[llvm-readobj] - Refine the LLVM-style output to be consistent.
[llvm-complete.git] / test / MachineVerifier / test_g_brjt.mir
blobe05dd5fadbc29b33807e03befe4059943ee43ea1
1 # RUN: not llc -march=aarch64 -o /dev/null -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
2 # REQUIRES: global-isel, aarch64-registered-target
4 ---
5 name:            test_jump_table
6 legalized:       true
7 tracksRegLiveness: true
8 jumpTable:
9   kind:            block-address
10   entries:
11     - id:              0
12       blocks:          [ '%bb.0' ]
13 body:             |
14   bb.0:
15     liveins: $x0
16     %0:_(s64) = COPY $x0
17     %1:_(p0) = COPY $x0
18     ; CHECK: Bad machine code: Too few operands
19     G_BRJT
21     ; CHECK: G_BRJT src operand 0 must be a pointer type
22     G_BRJT %0, %jump-table.0, %0
24     ; CHECK: G_BRJT src operand 1 must be a jump table index
25     G_BRJT %1, %0, %0
27     ; CHECK: G_BRJT src operand 2 must be a scalar reg type
28     G_BRJT %1, %jump-table.0, %1
30 ...