1; RUN: llc -relocation-model=static -mattr=+no-movt < %s | FileCheck %s 2 3target triple = "thumbv7a-linux-gnueabi" 4 5define i32 @test1() #0 { 6; CHECK-LABEL: test1: 7; CHECK: @ %bb.0: 8; CHECK-NEXT: push {r7, lr} 9; CHECK-NEXT: sub.w sp, sp, #1032 10; CHECK-NEXT: ldr r0, .LCPI0_0 11; CHECK-NEXT: ldr r0, [r0] 12; CHECK-NEXT: str.w r0, [sp, #1028] 13; CHECK-NEXT: add r0, sp, #4 14; CHECK-NEXT: bl foo 15; CHECK-NEXT: ldr.w r0, [sp, #1028] 16; CHECK-NEXT: ldr r1, .LCPI0_0 17; CHECK-NEXT: ldr r1, [r1] 18; CHECK-NEXT: cmp r1, r0 19; CHECK-NEXT: ittt eq 20; CHECK-NEXT: moveq r0, #0 21; CHECK-NEXT: addeq.w sp, sp, #1032 22; CHECK-NEXT: popeq {r7, pc} 23; CHECK-NEXT: .LBB0_1: 24; CHECK-NEXT: bl __stack_chk_fail 25 %a1 = alloca [256 x i32], align 4 26 call void @foo(ptr %a1) #3 27 ret i32 0 28} 29 30declare void @foo(ptr) 31 32attributes #0 = { nounwind sspstrong } 33