Mercurial > hg > CbC > CbC_llvm
diff test/Analysis/BasicAA/2009-10-13-AtomicModRef.ll @ 0:95c75e76d11b LLVM3.4
LLVM 3.4
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 12 Dec 2013 13:56:28 +0900 |
parents | |
children | afa8332a0e37 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/Analysis/BasicAA/2009-10-13-AtomicModRef.ll Thu Dec 12 13:56:28 2013 +0900 @@ -0,0 +1,15 @@ +; RUN: opt -basicaa -gvn -instcombine -S < %s | FileCheck %s +target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128" + +define i8 @foo(i8* %ptr) { + %P = getelementptr i8* %ptr, i32 0 + %Q = getelementptr i8* %ptr, i32 1 +; CHECK: getelementptr + %X = load i8* %P + %Y = atomicrmw add i8* %Q, i8 1 monotonic + %Z = load i8* %P +; CHECK-NOT: = load + %A = sub i8 %X, %Z + ret i8 %A +; CHECK: ret i8 0 +}