| OLD | NEW |
| 1 ; RUN: pnacl-llc -mtriple=armv7-unknown-nacl -filetype=obj %s -o - \ | 1 ; RUN: pnacl-llc -mtriple=armv7-unknown-nacl -filetype=obj %s -o - \ |
| 2 ; RUN: | llvm-objdump -disassemble -triple armv7 - | FileCheck %s | 2 ; RUN: | llvm-objdump -disassemble -triple armv7 - | FileCheck %s |
| 3 | 3 |
| 4 define void @foo(i32* %input, i32* %output) nounwind { | 4 define void @foo(i32* %input, i32* %output) nounwind { |
| 5 entry: | 5 entry: |
| 6 %input.addr = alloca i32*, align 4 | 6 %input.addr = alloca i32*, align 4 |
| 7 %output.addr = alloca i32*, align 4 | 7 %output.addr = alloca i32*, align 4 |
| 8 %temp = alloca i32, align 4 | 8 %temp = alloca i32, align 4 |
| 9 | 9 |
| 10 ; CHECK: sub sp, sp | 10 ; CHECK: sub sp, sp |
| 11 ; CHECK-NEXT: bic sp, sp, #3221225472 | 11 ; CHECK-NEXT: bic sp, sp, #-1073741824 |
| 12 | 12 |
| 13 store i32* %input, i32** %input.addr, align 4 | 13 store i32* %input, i32** %input.addr, align 4 |
| 14 store i32* %output, i32** %output.addr, align 4 | 14 store i32* %output, i32** %output.addr, align 4 |
| 15 %0 = load i32** %input.addr, align 4 | 15 %0 = load i32*, i32** %input.addr, align 4 |
| 16 %arrayidx = getelementptr inbounds i32* %0, i32 1 | 16 %arrayidx = getelementptr inbounds i32, i32* %0, i32 1 |
| 17 %1 = load i32* %arrayidx, align 4 | 17 %1 = load i32, i32* %arrayidx, align 4 |
| 18 store i32 %1, i32* %temp, align 4 | 18 store i32 %1, i32* %temp, align 4 |
| 19 %2 = load i32* %temp, align 4 | 19 %2 = load i32, i32* %temp, align 4 |
| 20 %3 = load i32** %output.addr, align 4 | 20 %3 = load i32*, i32** %output.addr, align 4 |
| 21 %arrayidx1 = getelementptr inbounds i32* %3, i32 0 | 21 %arrayidx1 = getelementptr inbounds i32, i32* %3, i32 0 |
| 22 store i32 %2, i32* %arrayidx1, align 4 | 22 store i32 %2, i32* %arrayidx1, align 4 |
| 23 | 23 |
| 24 ; CHECK: add sp, sp | 24 ; CHECK: add sp, sp |
| 25 ; CHECK-NEXT: bic sp, sp, #3221225472 | 25 ; CHECK-NEXT: bic sp, sp, #-1073741824 |
| 26 | 26 |
| 27 ret void | 27 ret void |
| 28 } | 28 } |
| OLD | NEW |