1 @ RUN
: not llvm-mc
-triple thumbv7-eabi
-filetype asm
-o
- %s
2>&1 \
3 @ RUN
: not llvm-mc
-triple thumbv7a-eabi
-filetype asm
-o
- %s
2>&1 \
4 @ RUN
: | FileCheck
--check-prefix
=CHECK
--check-prefix
=CHECK-V7A
%s
5 @ RUN
: not llvm-mc
-triple thumbv7m-eabi
-filetype asm
-o
- %s
2>&1 \
6 @ RUN
: | FileCheck
--check-prefix
=CHECK
--check-prefix
=CHECK-V7M
%s
15 @ CHECK
: error
: SP may
not be in the register list
16 @ CHECK
: ldm
r0!, {r1, sp
}
19 @ CHECK
: error
: PC
and LR may
not be in the register list simultaneously
20 @ CHECK
: ldm
r0!, {lr, pc
}
25 @ CHECK
: error
: instruction must
be outside of IT block
or the last instruction in an IT block
26 @ CHECK
: ldmeq
r0!, {r1, pc
}
33 @ CHECK
: error
: SP may
not be in the register list
35 @ error
: PC
and LR may
not be in the register list simultaneously
39 @ CHECK
: error
: instruction must
be outside of IT block
or the last instruction in an IT block
40 @ CHECK
: ldmeq
r0!, {r1, pc
}
47 @ CHECK
: error
: SP may
not be in the register list
49 @ CHECK
: error
: PC may
not be in the register list
51 @ CHECK
: error
: SP
and PC may
not be in the register list
57 @ CHECK
: error
: SP may
not be in the register list
59 @ CHECK
: error
: PC may
not be in the register list
61 @ CHECK
: error
: SP
and PC may
not be in the register list
67 @ CHECK
: error
: SP may
not be in the register list
69 @ CHECK
: error
: PC may
not be in the register list
71 @ CHECK
: error
: SP
and PC may
not be in the register list
77 @ CHECK-V7M
: error
: SP may
not be in the register list
79 @ CHECK
: error
: PC
and LR may
not be in the register list simultaneously
85 @ CHECK
: error
: instruction must
be outside of IT block
or the last instruction in an IT block
86 @ CHECK
: popeq
{r1, pc
}
93 @ CHECK-V7A
: ldr sp
, [sp
], #4
95 @ CHECK-V7A
: pop.w
{sp
, pc
}
97 @ CHECK
: str
r0, [sp
, #-4]
99 @ CHECK
: ldr
r0, [sp
], #4