X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FCodeGen%2FX86%2Fatomic-or.ll;h=60e9968bdc71b86ce458bbf52838f24bdfe893d4;hb=faf046c6c0a561e966f4ac671392c4b8e15c35a2;hp=9db6f6f06dd6a2311282fb37c7de279653914dc9;hpb=e3997d40de141519434a9720d11879610262f708;p=oota-llvm.git diff --git a/test/CodeGen/X86/atomic-or.ll b/test/CodeGen/X86/atomic-or.ll index 9db6f6f06dd..60e9968bdc7 100644 --- a/test/CodeGen/X86/atomic-or.ll +++ b/test/CodeGen/X86/atomic-or.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=x86-64 | FileCheck %s +; RUN: llc < %s -march=x86-64 -verify-machineinstrs | FileCheck %s ; rdar://9692967 @@ -6,14 +6,11 @@ define void @t1(i64* %p, i32 %b) nounwind { entry: %p.addr = alloca i64*, align 8 store i64* %p, i64** %p.addr, align 8 - %tmp = load i64** %p.addr, align 8 - call void @llvm.memory.barrier(i1 true, i1 true, i1 true, i1 true, i1 true) -; CHECK: t1: + %tmp = load i64*, i64** %p.addr, align 8 +; CHECK-LABEL: t1: ; CHECK: movl $2147483648, %eax -; CHECK: lock -; CHECK-NEXT: orq %rax, (%rdi) - %0 = call i64 @llvm.atomic.load.or.i64.p0i64(i64* %tmp, i64 2147483648) - call void @llvm.memory.barrier(i1 true, i1 true, i1 true, i1 true, i1 true) +; CHECK: lock orq %r{{.*}}, (%r{{.*}}) + %0 = atomicrmw or i64* %tmp, i64 2147483648 seq_cst ret void } @@ -21,16 +18,9 @@ define void @t2(i64* %p, i32 %b) nounwind { entry: %p.addr = alloca i64*, align 8 store i64* %p, i64** %p.addr, align 8 - %tmp = load i64** %p.addr, align 8 - call void @llvm.memory.barrier(i1 true, i1 true, i1 true, i1 true, i1 true) -; CHECK: t2: -; CHECK-NOT: movl -; CHECK: lock -; CHECK-NEXT: orq $2147483644, (%rdi) - %0 = call i64 @llvm.atomic.load.or.i64.p0i64(i64* %tmp, i64 2147483644) - call void @llvm.memory.barrier(i1 true, i1 true, i1 true, i1 true, i1 true) + %tmp = load i64*, i64** %p.addr, align 8 +; CHECK-LABEL: t2: +; CHECK: lock orq $2147483644, (%r{{.*}}) + %0 = atomicrmw or i64* %tmp, i64 2147483644 seq_cst ret void } - -declare i64 @llvm.atomic.load.or.i64.p0i64(i64* nocapture, i64) nounwind -declare void @llvm.memory.barrier(i1, i1, i1, i1, i1) nounwind