Fix part 1 of pr4682. PICADD is a 16-bit instruction even in thumb2 mode.
[llvm/avr.git] / test / CodeGen / Thumb2 / large-stack.ll
blob60604f020ff0cbc7ea2753e628f95766a7fef033
1 ; RUN: llvm-as < %s | llc -march=thumb -mattr=+thumb2 | FileCheck %s
3 define void @test1() {
4 ; CHECK: test1:
5 ; CHECK: sub.w sp, sp, #256
6     %tmp = alloca [ 64 x i32 ] , align 4
7     ret void
10 define void @test2() {
11 ; CHECK: test2:
12 ; CHECK: sub.w sp, sp, #4160
13 ; CHECK: sub.w sp, sp, #8
14     %tmp = alloca [ 4168 x i8 ] , align 4
15     ret void
18 define i32 @test3() {
19 ; CHECK: test3:
20 ; CHECK: sub.w sp, sp, #805306368
21 ; CHECK: sub.w sp, sp, #16
22     %retval = alloca i32, align 4
23     %tmp = alloca i32, align 4
24     %a = alloca [805306369 x i8], align 16
25     store i32 0, i32* %tmp
26     %tmp1 = load i32* %tmp
27     ret i32 %tmp1