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

Side by Side Diff: tests_lit/llvm2ice_tests/nacl-atomic-cmpxchg-optimization.ll

Issue 705513002: Subzero: Delete szdiff.py tests and ERRORS tests. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Remove call.ll Created 6 years, 1 month 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/mangle.ll ('k') | tests_lit/llvm2ice_tests/nacl-atomic-intrinsics.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 ; This tests the optimization of atomic cmpxchg w/ following cmp + branches. 1 ; This tests the optimization of atomic cmpxchg w/ following cmp + branches.
2 2
3 ; RUN: %p2i -i %s --args -O2 --verbose none \ 3 ; RUN: %p2i -i %s --args -O2 --verbose none \
4 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \ 4 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \
5 ; RUN: | llvm-objdump -d -symbolize -x86-asm-syntax=intel - \ 5 ; RUN: | llvm-objdump -d -symbolize -x86-asm-syntax=intel - \
6 ; RUN: | FileCheck --check-prefix=O2 %s 6 ; RUN: | FileCheck --check-prefix=O2 %s
7 ; RUN: %p2i -i %s --args -Om1 --verbose none \ 7 ; RUN: %p2i -i %s --args -Om1 --verbose none \
8 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \ 8 ; RUN: | llvm-mc -triple=i686-none-nacl -filetype=obj \
9 ; RUN: | llvm-objdump -d -symbolize -x86-asm-syntax=intel - \ 9 ; RUN: | llvm-objdump -d -symbolize -x86-asm-syntax=intel - \
10 ; RUN: | FileCheck --check-prefix=OM1 %s 10 ; RUN: | FileCheck --check-prefix=OM1 %s
11 ; RUN: %p2i -i %s --args --verbose none | FileCheck --check-prefix=ERRORS %s
12 11
13 declare i32 @llvm.nacl.atomic.cmpxchg.i32(i32*, i32, i32, i32, i32) 12 declare i32 @llvm.nacl.atomic.cmpxchg.i32(i32*, i32, i32, i32, i32)
14 13
15 14
16 ; Test that a cmpxchg followed by icmp eq and branch can be optimized to 15 ; Test that a cmpxchg followed by icmp eq and branch can be optimized to
17 ; reuse the flags set by the cmpxchg instruction itself. 16 ; reuse the flags set by the cmpxchg instruction itself.
18 ; This is only expected to work w/ O2, based on lightweight liveness. 17 ; This is only expected to work w/ O2, based on lightweight liveness.
19 ; (Or if we had other means to detect the only use). 18 ; (Or if we had other means to detect the only use).
20 declare void @use_value(i32) 19 declare void @use_value(i32)
21 20
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 done: 134 done:
136 %r = zext i1 %success to i32 135 %r = zext i1 %success to i32
137 ret i32 %r 136 ret i32 %r
138 } 137 }
139 ; O2-LABEL: test_atomic_cmpxchg_no_opt2 138 ; O2-LABEL: test_atomic_cmpxchg_no_opt2
140 ; O2: lock 139 ; O2: lock
141 ; O2-NEXT: cmpxchg dword ptr [e{{[^a].}}], e{{[^a]}} 140 ; O2-NEXT: cmpxchg dword ptr [e{{[^a].}}], e{{[^a]}}
142 ; O2: mov {{.*}} 141 ; O2: mov {{.*}}
143 ; O2: cmp 142 ; O2: cmp
144 ; O2: je 143 ; O2: je
145
146 ; ERRORS-NOT: ICE translation error
OLDNEW
« no previous file with comments | « tests_lit/llvm2ice_tests/mangle.ll ('k') | tests_lit/llvm2ice_tests/nacl-atomic-intrinsics.ll » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698