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

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

Issue 1387963002: Make sure that all globals are internal, except for "start" functions. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix new tests. Created 5 years, 2 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
« no previous file with comments | « tests_lit/llvm2ice_tests/cmp-opt.ll ('k') | tests_lit/llvm2ice_tests/cond-br-same-target.ll » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 ; Test the lowering sequence for commutative operations. If there is a source 1 ; Test the lowering sequence for commutative operations. If there is a source
2 ; operand whose lifetime ends in an operation, it should be the first operand, 2 ; operand whose lifetime ends in an operation, it should be the first operand,
3 ; eliminating the need for a move to start the new lifetime. 3 ; eliminating the need for a move to start the new lifetime.
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 \ 6 ; RUN: --target x8632 -i %s --args -O2 \
7 ; RUN: | %if --need=target_X8632 --command FileCheck %s 7 ; RUN: | %if --need=target_X8632 --command FileCheck %s
8 8
9 define i32 @integerAddLeft(i32 %a, i32 %b) { 9 define internal i32 @integerAddLeft(i32 %a, i32 %b) {
10 entry: 10 entry:
11 %tmp = add i32 %a, %b 11 %tmp = add i32 %a, %b
12 %result = add i32 %a, %tmp 12 %result = add i32 %a, %tmp
13 ret i32 %result 13 ret i32 %result
14 } 14 }
15 ; CHECK-LABEL: integerAddLeft 15 ; CHECK-LABEL: integerAddLeft
16 ; CHECK-NEXT: mov {{e..}},DWORD PTR 16 ; CHECK-NEXT: mov {{e..}},DWORD PTR
17 ; CHECK-NEXT: mov {{e..}},DWORD PTR 17 ; CHECK-NEXT: mov {{e..}},DWORD PTR
18 ; CHECK-NEXT: add {{e..}},{{e..}} 18 ; CHECK-NEXT: add {{e..}},{{e..}}
19 ; CHECK-NEXT: add {{e..}},{{e..}} 19 ; CHECK-NEXT: add {{e..}},{{e..}}
20 20
21 define i32 @integerAddRight(i32 %a, i32 %b) { 21 define internal i32 @integerAddRight(i32 %a, i32 %b) {
22 entry: 22 entry:
23 %tmp = add i32 %a, %b 23 %tmp = add i32 %a, %b
24 %result = add i32 %b, %tmp 24 %result = add i32 %b, %tmp
25 ret i32 %result 25 ret i32 %result
26 } 26 }
27 ; CHECK-LABEL: integerAddRight 27 ; CHECK-LABEL: integerAddRight
28 ; CHECK-NEXT: mov {{e..}},DWORD PTR 28 ; CHECK-NEXT: mov {{e..}},DWORD PTR
29 ; CHECK-NEXT: mov {{e..}},DWORD PTR 29 ; CHECK-NEXT: mov {{e..}},DWORD PTR
30 ; CHECK-NEXT: add {{e..}},{{e..}} 30 ; CHECK-NEXT: add {{e..}},{{e..}}
31 ; CHECK-NEXT: add {{e..}},{{e..}} 31 ; CHECK-NEXT: add {{e..}},{{e..}}
32 32
33 define i32 @integerMultiplyLeft(i32 %a, i32 %b) { 33 define internal i32 @integerMultiplyLeft(i32 %a, i32 %b) {
34 entry: 34 entry:
35 %tmp = mul i32 %a, %b 35 %tmp = mul i32 %a, %b
36 %result = mul i32 %a, %tmp 36 %result = mul i32 %a, %tmp
37 ret i32 %result 37 ret i32 %result
38 } 38 }
39 ; CHECK-LABEL: integerMultiplyLeft 39 ; CHECK-LABEL: integerMultiplyLeft
40 ; CHECK-NEXT: mov {{e..}},DWORD PTR 40 ; CHECK-NEXT: mov {{e..}},DWORD PTR
41 ; CHECK-NEXT: mov {{e..}},DWORD PTR 41 ; CHECK-NEXT: mov {{e..}},DWORD PTR
42 ; CHECK-NEXT: imul {{e..}},{{e..}} 42 ; CHECK-NEXT: imul {{e..}},{{e..}}
43 ; CHECK-NEXT: imul {{e..}},{{e..}} 43 ; CHECK-NEXT: imul {{e..}},{{e..}}
44 44
45 define i32 @integerMultiplyRight(i32 %a, i32 %b) { 45 define internal i32 @integerMultiplyRight(i32 %a, i32 %b) {
46 entry: 46 entry:
47 %tmp = mul i32 %a, %b 47 %tmp = mul i32 %a, %b
48 %result = mul i32 %b, %tmp 48 %result = mul i32 %b, %tmp
49 ret i32 %result 49 ret i32 %result
50 } 50 }
51 ; CHECK-LABEL: integerMultiplyRight 51 ; CHECK-LABEL: integerMultiplyRight
52 ; CHECK-NEXT: mov {{e..}},DWORD PTR 52 ; CHECK-NEXT: mov {{e..}},DWORD PTR
53 ; CHECK-NEXT: mov {{e..}},DWORD PTR 53 ; CHECK-NEXT: mov {{e..}},DWORD PTR
54 ; CHECK-NEXT: imul {{e..}},{{e..}} 54 ; CHECK-NEXT: imul {{e..}},{{e..}}
55 ; CHECK-NEXT: imul {{e..}},{{e..}} 55 ; CHECK-NEXT: imul {{e..}},{{e..}}
56 56
57 define float @floatAddLeft(float %a, float %b) { 57 define internal float @floatAddLeft(float %a, float %b) {
58 entry: 58 entry:
59 %tmp = fadd float %a, %b 59 %tmp = fadd float %a, %b
60 %result = fadd float %a, %tmp 60 %result = fadd float %a, %tmp
61 ret float %result 61 ret float %result
62 } 62 }
63 ; CHECK-LABEL: floatAddLeft 63 ; CHECK-LABEL: floatAddLeft
64 ; CHECK-NEXT: movss xmm0,DWORD PTR 64 ; CHECK-NEXT: movss xmm0,DWORD PTR
65 ; CHECK-NEXT: movss xmm1,DWORD PTR 65 ; CHECK-NEXT: movss xmm1,DWORD PTR
66 ; CHECK-NEXT: addss xmm1,xmm0 66 ; CHECK-NEXT: addss xmm1,xmm0
67 ; CHECK-NEXT: addss xmm0,xmm1 67 ; CHECK-NEXT: addss xmm0,xmm1
68 68
69 define float @floatAddRight(float %a, float %b) { 69 define internal float @floatAddRight(float %a, float %b) {
70 entry: 70 entry:
71 %tmp = fadd float %a, %b 71 %tmp = fadd float %a, %b
72 %result = fadd float %b, %tmp 72 %result = fadd float %b, %tmp
73 ret float %result 73 ret float %result
74 } 74 }
75 ; CHECK-LABEL: floatAddRight 75 ; CHECK-LABEL: floatAddRight
76 ; CHECK-NEXT: movss xmm0,DWORD PTR 76 ; CHECK-NEXT: movss xmm0,DWORD PTR
77 ; CHECK-NEXT: movss xmm1,DWORD PTR 77 ; CHECK-NEXT: movss xmm1,DWORD PTR
78 ; CHECK-NEXT: addss xmm0,xmm1 78 ; CHECK-NEXT: addss xmm0,xmm1
79 ; CHECK-NEXT: addss xmm1,xmm0 79 ; CHECK-NEXT: addss xmm1,xmm0
80 80
81 define float @floatMultiplyLeft(float %a, float %b) { 81 define internal float @floatMultiplyLeft(float %a, float %b) {
82 entry: 82 entry:
83 %tmp = fmul float %a, %b 83 %tmp = fmul float %a, %b
84 %result = fmul float %a, %tmp 84 %result = fmul float %a, %tmp
85 ret float %result 85 ret float %result
86 } 86 }
87 ; CHECK-LABEL: floatMultiplyLeft 87 ; CHECK-LABEL: floatMultiplyLeft
88 ; CHECK-NEXT: movss xmm0,DWORD PTR 88 ; CHECK-NEXT: movss xmm0,DWORD PTR
89 ; CHECK-NEXT: movss xmm1,DWORD PTR 89 ; CHECK-NEXT: movss xmm1,DWORD PTR
90 ; CHECK-NEXT: mulss xmm1,xmm0 90 ; CHECK-NEXT: mulss xmm1,xmm0
91 ; CHECK-NEXT: mulss xmm0,xmm1 91 ; CHECK-NEXT: mulss xmm0,xmm1
92 92
93 define float @floatMultiplyRight(float %a, float %b) { 93 define internal float @floatMultiplyRight(float %a, float %b) {
94 entry: 94 entry:
95 %tmp = fmul float %a, %b 95 %tmp = fmul float %a, %b
96 %result = fmul float %b, %tmp 96 %result = fmul float %b, %tmp
97 ret float %result 97 ret float %result
98 } 98 }
99 ; CHECK-LABEL: floatMultiplyRight 99 ; CHECK-LABEL: floatMultiplyRight
100 ; CHECK-NEXT: movss xmm0,DWORD PTR 100 ; CHECK-NEXT: movss xmm0,DWORD PTR
101 ; CHECK-NEXT: movss xmm1,DWORD PTR 101 ; CHECK-NEXT: movss xmm1,DWORD PTR
102 ; CHECK-NEXT: mulss xmm0,xmm1 102 ; CHECK-NEXT: mulss xmm0,xmm1
103 ; CHECK-NEXT: mulss xmm1,xmm0 103 ; CHECK-NEXT: mulss xmm1,xmm0
OLDNEW
« no previous file with comments | « tests_lit/llvm2ice_tests/cmp-opt.ll ('k') | tests_lit/llvm2ice_tests/cond-br-same-target.ll » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698