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

Side by Side Diff: tests_lit/llvm2ice_tests/64bit.pnacl.ll

Issue 1472623002: Unify alloca, outgoing arg, and prolog construction (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Code review fixes. Also removed StackAdjustment. Created 5 years 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 ; This tries to be a comprehensive test of i64 operations, in 1 ; This tries to be a comprehensive test of i64 operations, in
2 ; particular the patterns for lowering i64 operations into constituent 2 ; particular the patterns for lowering i64 operations into constituent
3 ; i32 operations on x86-32. 3 ; i32 operations on x86-32.
4 4
5 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ 5 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \
6 ; RUN: --target x8632 -i %s --args -O2 -allow-externally-defined-symbols \ 6 ; RUN: --target x8632 -i %s --args -O2 -allow-externally-defined-symbols \
7 ; RUN: | %if --need=target_X8632 --command FileCheck %s 7 ; RUN: | %if --need=target_X8632 --command FileCheck %s
8 8
9 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ 9 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \
10 ; RUN: --target x8632 -i %s --args -Om1 -allow-externally-defined-symbols \ 10 ; RUN: --target x8632 -i %s --args -Om1 -allow-externally-defined-symbols \
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 ret i32 %add3 46 ret i32 %add3
47 } 47 }
48 ; CHECK-LABEL: pass64BitArg 48 ; CHECK-LABEL: pass64BitArg
49 ; CHECK: sub esp 49 ; CHECK: sub esp
50 ; CHECK: mov DWORD PTR [esp+0x4] 50 ; CHECK: mov DWORD PTR [esp+0x4]
51 ; CHECK: mov DWORD PTR [esp] 51 ; CHECK: mov DWORD PTR [esp]
52 ; CHECK: mov DWORD PTR [esp+0x8],0x7b 52 ; CHECK: mov DWORD PTR [esp+0x8],0x7b
53 ; CHECK: mov DWORD PTR [esp+0x10] 53 ; CHECK: mov DWORD PTR [esp+0x10]
54 ; CHECK: mov DWORD PTR [esp+0xc] 54 ; CHECK: mov DWORD PTR [esp+0xc]
55 ; CHECK: call {{.*}} R_{{.*}} ignore64BitArgNoInline 55 ; CHECK: call {{.*}} R_{{.*}} ignore64BitArgNoInline
56 ; CHECK: sub esp
57 ; CHECK: mov DWORD PTR [esp+0x4] 56 ; CHECK: mov DWORD PTR [esp+0x4]
58 ; CHECK: mov DWORD PTR [esp] 57 ; CHECK: mov DWORD PTR [esp]
59 ; CHECK: mov DWORD PTR [esp+0x8],0x7b 58 ; CHECK: mov DWORD PTR [esp+0x8],0x7b
60 ; CHECK: mov DWORD PTR [esp+0x10] 59 ; CHECK: mov DWORD PTR [esp+0x10]
61 ; CHECK: mov DWORD PTR [esp+0xc] 60 ; CHECK: mov DWORD PTR [esp+0xc]
62 ; CHECK: call {{.*}} R_{{.*}} ignore64BitArgNoInline 61 ; CHECK: call {{.*}} R_{{.*}} ignore64BitArgNoInline
63 ; CHECK: sub esp
64 ; CHECK: mov DWORD PTR [esp+0x4] 62 ; CHECK: mov DWORD PTR [esp+0x4]
65 ; CHECK: mov DWORD PTR [esp] 63 ; CHECK: mov DWORD PTR [esp]
66 ; CHECK: mov DWORD PTR [esp+0x8],0x7b 64 ; CHECK: mov DWORD PTR [esp+0x8],0x7b
67 ; CHECK: mov DWORD PTR [esp+0x10] 65 ; CHECK: mov DWORD PTR [esp+0x10]
68 ; CHECK: mov DWORD PTR [esp+0xc] 66 ; CHECK: mov DWORD PTR [esp+0xc]
69 ; CHECK: call {{.*}} R_{{.*}} ignore64BitArgNoInline 67 ; CHECK: call {{.*}} R_{{.*}} ignore64BitArgNoInline
70 ; 68 ;
71 ; OPTM1-LABEL: pass64BitArg 69 ; OPTM1-LABEL: pass64BitArg
72 ; OPTM1: sub esp 70 ; OPTM1: sub esp
73 ; OPTM1: mov DWORD PTR [esp+0x4] 71 ; OPTM1: mov DWORD PTR [esp+0x4]
74 ; OPTM1: mov DWORD PTR [esp] 72 ; OPTM1: mov DWORD PTR [esp]
75 ; OPTM1: mov DWORD PTR [esp+0x8],0x7b 73 ; OPTM1: mov DWORD PTR [esp+0x8],0x7b
76 ; OPTM1: mov DWORD PTR [esp+0x10] 74 ; OPTM1: mov DWORD PTR [esp+0x10]
77 ; OPTM1: mov DWORD PTR [esp+0xc] 75 ; OPTM1: mov DWORD PTR [esp+0xc]
78 ; OPTM1: call {{.*}} R_{{.*}} ignore64BitArgNoInline 76 ; OPTM1: call {{.*}} R_{{.*}} ignore64BitArgNoInline
79 ; OPTM1: sub esp
80 ; OPTM1: mov DWORD PTR [esp+0x4] 77 ; OPTM1: mov DWORD PTR [esp+0x4]
81 ; OPTM1: mov DWORD PTR [esp] 78 ; OPTM1: mov DWORD PTR [esp]
82 ; OPTM1: mov DWORD PTR [esp+0x8],0x7b 79 ; OPTM1: mov DWORD PTR [esp+0x8],0x7b
83 ; OPTM1: mov DWORD PTR [esp+0x10] 80 ; OPTM1: mov DWORD PTR [esp+0x10]
84 ; OPTM1: mov DWORD PTR [esp+0xc] 81 ; OPTM1: mov DWORD PTR [esp+0xc]
85 ; OPTM1: call {{.*}} R_{{.*}} ignore64BitArgNoInline 82 ; OPTM1: call {{.*}} R_{{.*}} ignore64BitArgNoInline
86 ; OPTM1: sub esp
87 ; OPTM1: mov DWORD PTR [esp+0x4] 83 ; OPTM1: mov DWORD PTR [esp+0x4]
88 ; OPTM1: mov DWORD PTR [esp] 84 ; OPTM1: mov DWORD PTR [esp]
89 ; OPTM1: mov DWORD PTR [esp+0x8],0x7b 85 ; OPTM1: mov DWORD PTR [esp+0x8],0x7b
90 ; OPTM1: mov DWORD PTR [esp+0x10] 86 ; OPTM1: mov DWORD PTR [esp+0x10]
91 ; OPTM1: mov DWORD PTR [esp+0xc] 87 ; OPTM1: mov DWORD PTR [esp+0xc]
92 ; OPTM1: call {{.*}} R_{{.*}} ignore64BitArgNoInline 88 ; OPTM1: call {{.*}} R_{{.*}} ignore64BitArgNoInline
93 89
94 ; ARM32-LABEL: pass64BitArg 90 ; ARM32-LABEL: pass64BitArg
95 ; ARM32: str {{.*}}, [sp] 91 ; ARM32: str {{.*}}, [sp]
96 ; ARM32: movw r2, #123 92 ; ARM32: movw r2, #123
(...skipping 1753 matching lines...) Expand 10 before | Expand all | Expand 10 after
1850 ; CHECK-LABEL: phi64Undef 1846 ; CHECK-LABEL: phi64Undef
1851 ; CHECK: mov {{.*}},0x0 1847 ; CHECK: mov {{.*}},0x0
1852 ; CHECK: mov {{.*}},0x0 1848 ; CHECK: mov {{.*}},0x0
1853 ; OPTM1-LABEL: phi64Undef 1849 ; OPTM1-LABEL: phi64Undef
1854 ; OPTM1: mov {{.*}},0x0 1850 ; OPTM1: mov {{.*}},0x0
1855 ; OPTM1: mov {{.*}},0x0 1851 ; OPTM1: mov {{.*}},0x0
1856 ; ARM32-LABEL: phi64Undef 1852 ; ARM32-LABEL: phi64Undef
1857 ; ARM32: mov {{.*}} #0 1853 ; ARM32: mov {{.*}} #0
1858 ; ARM32: mov {{.*}} #0 1854 ; ARM32: mov {{.*}} #0
1859 1855
OLDNEW
« no previous file with comments | « tests_lit/assembler/x86/sandboxing.ll ('k') | tests_lit/llvm2ice_tests/align-spill-locations.ll » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698