llvm-project
30 строк · 777.0 Байт
1# RUN: not --crash llc -mtriple=aarch64 -o /dev/null -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
2# REQUIRES: aarch64-registered-target
3
4---
5name: test_jump_table
6legalized: true
7tracksRegLiveness: true
8jumpTable:
9kind: block-address
10entries:
11- id: 0
12blocks: [ '%bb.0' ]
13body: |
14bb.0:
15liveins: $x0
16%0:_(s64) = COPY $x0
17%1:_(p0) = COPY $x0
18; CHECK: Bad machine code: Too few operands
19G_BRJT
20
21; CHECK: G_BRJT src operand 0 must be a pointer type
22G_BRJT %0, %jump-table.0, %0
23
24; CHECK: G_BRJT src operand 1 must be a jump table index
25G_BRJT %1, %0, %0
26
27; CHECK: G_BRJT src operand 2 must be a scalar reg type
28G_BRJT %1, %jump-table.0, %1
29
30...
31