1*9880d681SAndroid Build Coastguard Worker; RUN: llc -march thumb -mcpu=cortex-a8 -relocation-model=static %s -o - | FileCheck -check-prefix=NO-OPTION %s 2*9880d681SAndroid Build Coastguard Worker; RUN: llc -march thumb -mcpu=cortex-a8 -relocation-model=static %s -o - -mattr=-no-movt | FileCheck -check-prefix=USE-MOVT %s 3*9880d681SAndroid Build Coastguard Worker; RUN: llc -march thumb -mcpu=cortex-a8 -relocation-model=static %s -o - -mattr=+no-movt | FileCheck -check-prefix=NO-USE-MOVT %s 4*9880d681SAndroid Build Coastguard Worker; RUN: llc -march thumb -mcpu=cortex-a8 -relocation-model=static %s -o - -O0 | FileCheck -check-prefix=NO-OPTION %s 5*9880d681SAndroid Build Coastguard Worker; RUN: llc -march thumb -mcpu=cortex-a8 -relocation-model=static %s -o - -O0 -mattr=-no-movt | FileCheck -check-prefix=USE-MOVT %s 6*9880d681SAndroid Build Coastguard Worker; RUN: llc -march thumb -mcpu=cortex-a8 -relocation-model=static %s -o - -O0 -mattr=+no-movt | FileCheck -check-prefix=NO-USE-MOVT %s 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Worker; NO-OPTION-LABEL: {{_?}}foo0 9*9880d681SAndroid Build Coastguard Worker; NO-OPTION: ldr [[R0:r[0-9]+]], [[L0:.*]] 10*9880d681SAndroid Build Coastguard Worker; NO-OPTION: [[L0]]: 11*9880d681SAndroid Build Coastguard Worker; NO-OPTION: .long 2296237089 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Worker; USE-MOVT-LABEL: {{_?}}foo0 14*9880d681SAndroid Build Coastguard Worker; USE-MOVT: movw [[R0:r[0-9]+]], #52257 15*9880d681SAndroid Build Coastguard Worker; USE-MOVT: movt [[R0]], #35037 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT-LABEL: {{_?}}foo0 18*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT: ldr [[R0:r[0-9]+]], [[L0:.*]] 19*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT: [[L0]]: 20*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT: .long 2296237089 21*9880d681SAndroid Build Coastguard Worker 22*9880d681SAndroid Build Coastguard Workerdefine i32 @foo0(i32 %a) #0 { 23*9880d681SAndroid Build Coastguard Worker %1 = xor i32 -1998730207, %a 24*9880d681SAndroid Build Coastguard Worker ret i32 %1 25*9880d681SAndroid Build Coastguard Worker} 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Worker; NO-OPTION-LABEL: {{_?}}foo1 28*9880d681SAndroid Build Coastguard Worker; NO-OPTION: movw [[R0:r[0-9]+]], #52257 29*9880d681SAndroid Build Coastguard Worker; NO-OPTION: movt [[R0]], #35037 30*9880d681SAndroid Build Coastguard Worker 31*9880d681SAndroid Build Coastguard Worker; USE-MOVT-LABEL: {{_?}}foo1 32*9880d681SAndroid Build Coastguard Worker; USE-MOVT: movw [[R0:r[0-9]+]], #52257 33*9880d681SAndroid Build Coastguard Worker; USE-MOVT: movt [[R0]], #35037 34*9880d681SAndroid Build Coastguard Worker 35*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT-LABEL: {{_?}}foo1 36*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT: ldr [[R0:r[0-9]+]], [[L0:.*]] 37*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT: [[L0]]: 38*9880d681SAndroid Build Coastguard Worker; NO-USE-MOVT: .long 2296237089 39*9880d681SAndroid Build Coastguard Worker 40*9880d681SAndroid Build Coastguard Workerdefine i32 @foo1(i32 %a) { 41*9880d681SAndroid Build Coastguard Worker %1 = xor i32 -1998730207, %a 42*9880d681SAndroid Build Coastguard Worker ret i32 %1 43*9880d681SAndroid Build Coastguard Worker} 44*9880d681SAndroid Build Coastguard Worker 45*9880d681SAndroid Build Coastguard Workerattributes #0 = { "target-features"="+no-movt" } 46