Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(203)

Side by Side Diff: tests_lit/llvm2ice_tests/alloc.ll

Issue 265703002: Add Om1 lowering with no optimizations (Closed) Base URL: https://gerrit.chromium.org/gerrit/p/native_client/pnacl-subzero.git@master
Patch Set: Address Jan's third-round comments Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 ; RUIN: %llvm2ice --verbose none %s | FileCheck %s 1 ; This is a basic test of the alloca instruction - one test for alloca
2 ; RUIN: %llvm2ice --verbose none %s | FileCheck --check-prefix=ERRORS %s 2 ; of a fixed size, and one test for variable size.
3
4 ; RUIN: %llvm2ice -O2 --verbose none %s | FileCheck %s
5 ; RUN: %llvm2ice -Om1 --verbose none %s | FileCheck --check-prefix=OPTM1 %s
6 ; RUN: %llvm2ice --verbose none %s | FileCheck --check-prefix=ERRORS %s
3 ; RUN: %szdiff --llvm2ice=%llvm2ice %s | FileCheck --check-prefix=DUMP %s 7 ; RUN: %szdiff --llvm2ice=%llvm2ice %s | FileCheck --check-prefix=DUMP %s
4 8
5 define void @fixed_400(i32 %n) { 9 define void @fixed_400(i32 %n) {
6 entry: 10 entry:
7 %array = alloca i8, i32 400, align 16 11 %array = alloca i8, i32 400, align 16
8 %array.asint = ptrtoint i8* %array to i32 12 %array.asint = ptrtoint i8* %array to i32
9 call void @f1(i32 %array.asint) 13 call void @f1(i32 %array.asint)
10 ret void 14 ret void
11 ; CHECK: sub esp, 400
12 ; CHECK-NEXT: mov eax, esp
13 ; CHECK-NEXT: push eax
14 ; CHECK-NEXT: call f1
15 } 15 }
16 ; CHECK: fixed_400:
17 ; CHECK: sub esp, 400
18 ; CHECK-NEXT: mov eax, esp
19 ; CHECK-NEXT: push eax
20 ; CHECK-NEXT: call f1
21 ;
22 ; OPTM1: fixed_400:
23 ; OPTM1: sub esp, 400
24 ; OPTM1-NEXT: mov {{.*}}, esp
25 ; OPTM1: push
26 ; OPTM1-NEXT: call f1
16 27
17 declare void @f1(i32) 28 declare void @f1(i32)
18 29
19 define void @variable_n(i32 %n) { 30 define void @variable_n(i32 %n) {
20 entry: 31 entry:
21 %array = alloca i8, i32 %n, align 16 32 %array = alloca i8, i32 %n, align 16
22 %array.asint = ptrtoint i8* %array to i32 33 %array.asint = ptrtoint i8* %array to i32
23 call void @f2(i32 %array.asint) 34 call void @f2(i32 %array.asint)
24 ret void 35 ret void
25 ; CHECK: mov eax, dword ptr [ebp+8]
26 ; CHECK-NEXT: sub esp, eax
27 ; CHECK-NEXT: mov eax, esp
28 ; CHECK-NEXT: push eax
29 ; CHECK-NEXT: call f2
30 } 36 }
37 ; CHECK: variable_n:
38 ; CHECK: mov eax, dword ptr [ebp+8]
39 ; CHECK-NEXT: sub esp, eax
40 ; CHECK-NEXT: mov eax, esp
41 ; CHECK-NEXT: push eax
42 ; CHECK-NEXT: call f2
43 ;
44 ; OPTM1: variable_n:
45 ; OPTM1: mov {{.*}}, esp
46 ; OPTM1: push
47 ; OPTM1-NEXT: call f2
31 48
32 declare void @f2(i32) 49 declare void @f2(i32)
33 50
34 ; ERRORS-NOT: ICE translation error 51 ; ERRORS-NOT: ICE translation error
35 ; DUMP-NOT: SZ 52 ; DUMP-NOT: SZ
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698