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