xref: /aosp_15_r20/external/llvm/test/MC/ARM/thumb_set-diagnostics.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -triple armv7-eabi -o /dev/null 2>&1 %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker	.syntax unified
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Worker	.thumb
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Worker	.thumb_set
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker@ CHECK: error: expected identifier after '.thumb_set'
10*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set
11*9880d681SAndroid Build Coastguard Worker@ CHECL:                  ^
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Worker	.thumb_set ., 0x0b5e55ed
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker@ CHECK: error: expected identifier after '.thumb_set'
16*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set ., 0x0b5e55ed
17*9880d681SAndroid Build Coastguard Worker@ CHECK:                   ^
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard Worker	.thumb_set labelled, 0x1abe11ed
20*9880d681SAndroid Build Coastguard Worker	.thumb_set invalid, :lower16:labelled
21*9880d681SAndroid Build Coastguard Worker
22*9880d681SAndroid Build Coastguard Worker@ CHECK: error: unknown token in expression
23*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set invalid, :lower16:labelled
24*9880d681SAndroid Build Coastguard Worker@ CHECK:                            ^
25*9880d681SAndroid Build Coastguard Worker
26*9880d681SAndroid Build Coastguard Worker	.thumb_set missing_comma
27*9880d681SAndroid Build Coastguard Worker
28*9880d681SAndroid Build Coastguard Worker@ CHECK: error: expected comma after name 'missing_comma'
29*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set missing_comma
30*9880d681SAndroid Build Coastguard Worker@ CHECK:                                ^
31*9880d681SAndroid Build Coastguard Worker
32*9880d681SAndroid Build Coastguard Worker	.thumb_set missing_expression,
33*9880d681SAndroid Build Coastguard Worker
34*9880d681SAndroid Build Coastguard Worker@ CHECK: error: missing expression
35*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set missing_expression,
36*9880d681SAndroid Build Coastguard Worker@ CHECK:                                      ^
37*9880d681SAndroid Build Coastguard Worker
38*9880d681SAndroid Build Coastguard Worker	.thumb_set trailer_trash, 0x11fe1e55,
39*9880d681SAndroid Build Coastguard Worker
40*9880d681SAndroid Build Coastguard Worker@ CHECK: error: unexpected token
41*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set trailer_trash, 0x11fe1e55,
42*9880d681SAndroid Build Coastguard Worker@ CHECK:                                            ^
43*9880d681SAndroid Build Coastguard Worker
44*9880d681SAndroid Build Coastguard Worker	.type alpha,%function
45*9880d681SAndroid Build Coastguard Workeralpha:
46*9880d681SAndroid Build Coastguard Worker	nop
47*9880d681SAndroid Build Coastguard Worker
48*9880d681SAndroid Build Coastguard Worker        .type beta,%function
49*9880d681SAndroid Build Coastguard Workerbeta:
50*9880d681SAndroid Build Coastguard Worker	bkpt
51*9880d681SAndroid Build Coastguard Worker
52*9880d681SAndroid Build Coastguard Worker	.thumb_set beta, alpha
53*9880d681SAndroid Build Coastguard Worker
54*9880d681SAndroid Build Coastguard Worker@ CHECK: error: redefinition of 'beta'
55*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set beta, alpha
56*9880d681SAndroid Build Coastguard Worker@ CHECK:                                            ^
57*9880d681SAndroid Build Coastguard Worker
58*9880d681SAndroid Build Coastguard Worker	.type recursive_use,%function
59*9880d681SAndroid Build Coastguard Worker	.thumb_set recursive_use, recursive_use + 1
60*9880d681SAndroid Build Coastguard Worker
61*9880d681SAndroid Build Coastguard Worker@ CHECK: error: Recursive use of 'recursive_use'
62*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set recursive_use, recursive_use + 1
63*9880d681SAndroid Build Coastguard Worker@ CHECK:                                            ^
64*9880d681SAndroid Build Coastguard Worker
65*9880d681SAndroid Build Coastguard Worker  variable_result = alpha + 1
66*9880d681SAndroid Build Coastguard Worker  .long variable_result
67*9880d681SAndroid Build Coastguard Worker	.thumb_set variable_result, 1
68*9880d681SAndroid Build Coastguard Worker
69*9880d681SAndroid Build Coastguard Worker@ CHECK: error: invalid reassignment of non-absolute variable 'variable_result'
70*9880d681SAndroid Build Coastguard Worker@ CHECK: 	.thumb_set variable_result, 1
71*9880d681SAndroid Build Coastguard Worker@ CHECK:                                            ^