xref: /aosp_15_r20/external/llvm/test/CodeGen/ARM/inlineasm-imm-thumb.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=thumbv5-none-linux-gnueabi -no-integrated-as %s -o /dev/null
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker; Test thumb-mode "I" constraint, for any Data Processing immediate.
4*9880d681SAndroid Build Coastguard Workerdefine void @testI() {
5*9880d681SAndroid Build Coastguard Worker	tail call void asm sideeffect ".word $0", "I"( i32 255 ) nounwind
6*9880d681SAndroid Build Coastguard Worker	ret void
7*9880d681SAndroid Build Coastguard Worker}
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker; Test thumb-mode "J" constraint, for compatibility with unknown use in GCC.
10*9880d681SAndroid Build Coastguard Workerdefine void @testJ() {
11*9880d681SAndroid Build Coastguard Worker	tail call void asm sideeffect ".word $0", "J"( i32 -254 ) nounwind
12*9880d681SAndroid Build Coastguard Worker	ret void
13*9880d681SAndroid Build Coastguard Worker}
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker; Test thumb-mode "L" constraint, for negated Data Processing immediates.
16*9880d681SAndroid Build Coastguard Workerdefine void @testL() {
17*9880d681SAndroid Build Coastguard Worker	tail call void asm sideeffect ".word $0", "L"( i32 -7 ) nounwind
18*9880d681SAndroid Build Coastguard Worker	ret void
19*9880d681SAndroid Build Coastguard Worker}
20*9880d681SAndroid Build Coastguard Worker
21