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

Side by Side Diff: tests_lit/llvm2ice_tests/nacl-atomic-fence-all.ll

Issue 659513005: Allow conditional lit tests in Subzero, based on build flags. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix nits. Created 6 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
OLDNEW
1 ; Test that loads/stores don't move across a nacl.atomic.fence.all. 1 ; Test that loads/stores don't move across a nacl.atomic.fence.all.
2 ; This should apply to both atomic and non-atomic loads/stores 2 ; This should apply to both atomic and non-atomic loads/stores
3 ; (unlike the non-"all" variety of nacl.atomic.fence, which only 3 ; (unlike the non-"all" variety of nacl.atomic.fence, which only
4 ; applies to atomic load/stores). 4 ; applies to atomic load/stores).
5 ; 5 ;
6 ; TODO(kschimpf) Find out why lc2i is needed. 6 ; TODO(kschimpf) Find out why lc2i is needed.
jvoung (off chromium) 2014/10/21 19:12:01 Sorry I think I changed this one...
Karl 2014/10/21 21:14:18 Acknowledged.
7 ; RUN: %lc2i -i %s --args -O2 --verbose none \ 7 ; RUN: %lc2i -i %s --args -O2 --verbose none \
8 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \ 8 ; RUN: | llvm-mc -triple=i686-none-nacl -x86-asm-syntax=intel -filetype=obj \
9 ; RUN: | llvm-objdump -d -r -symbolize -x86-asm-syntax=intel - | FileCheck %s 9 ; RUN: | llvm-objdump -d -r -symbolize -x86-asm-syntax=intel - \
10 ; RUN: | %iflc FileCheck %s
10 11
11 ; TODO(jvoung): llvm-objdump doesn't symbolize global symbols well, so we 12 ; TODO(jvoung): llvm-objdump doesn't symbolize global symbols well, so we
12 ; have 0 == g32_a, 4 == g32_b, 8 == g32_c. 13 ; have 0 == g32_a, 4 == g32_b, 8 == g32_c.
13 ; g32_d is also 0 because it's in the .data section instead of .bss. 14 ; g32_d is also 0 because it's in the .data section instead of .bss.
14 15
15 declare void @llvm.nacl.atomic.fence.all() 16 declare void @llvm.nacl.atomic.fence.all()
16 declare i32 @llvm.nacl.atomic.load.i32(i32*, i32) 17 declare i32 @llvm.nacl.atomic.load.i32(i32*, i32)
17 declare void @llvm.nacl.atomic.store.i32(i32, i32*, i32) 18 declare void @llvm.nacl.atomic.store.i32(i32, i32*, i32)
18 19
19 @g32_a = internal global [4 x i8] zeroinitializer, align 4 20 @g32_a = internal global [4 x i8] zeroinitializer, align 4
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 } 225 }
225 ; CHECK-LABEL: could_have_hoisted_loads 226 ; CHECK-LABEL: could_have_hoisted_loads
226 ; CHECK: mov {{.*}}, 0 227 ; CHECK: mov {{.*}}, 0
227 ; CHECK-NEXT: R_386_32 228 ; CHECK-NEXT: R_386_32
228 ; CHECK: jne {{.*}} 229 ; CHECK: jne {{.*}}
229 ; CHECK: mov {{.*}}, dword ptr 230 ; CHECK: mov {{.*}}, dword ptr
230 ; CHECK: ret 231 ; CHECK: ret
231 ; CHECK: mfence 232 ; CHECK: mfence
232 ; CHECK: mov {{.*}}, dword ptr 233 ; CHECK: mov {{.*}}, dword ptr
233 ; CHECK: ret 234 ; CHECK: ret
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698