1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-01 16:33:37 +01:00
llvm-mirror/test/CodeGen/X86/membarrier.ll
Eric Christopher 5fb023bb10 Go ahead and emit the barrier on x86-64 even without sse2. The
processor supports it just fine.

Fixes PR9675 and rdar://9740801

llvm-svn: 134664
2011-07-08 00:04:56 +00:00

16 lines
512 B
LLVM

; RUN: llc < %s -march=x86-64 -mattr=-sse -O0
; PR9675
define i32 @t() {
entry:
%i = alloca i32, align 4
store i32 1, i32* %i, align 4
call void @llvm.memory.barrier(i1 true, i1 true, i1 true, i1 true, i1 true)
%0 = call i32 @llvm.atomic.load.sub.i32.p0i32(i32* %i, i32 1)
call void @llvm.memory.barrier(i1 true, i1 true, i1 true, i1 true, i1 true)
ret i32 0
}
declare i32 @llvm.atomic.load.sub.i32.p0i32(i32* nocapture, i32) nounwind
declare void @llvm.memory.barrier(i1, i1, i1, i1, i1) nounwind