1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-31 16:02:52 +01:00
llvm-mirror/test/Analysis/BasicAA/cas.ll
Owen Anderson c418b82207 Finish making AliasAnalysis aware of the fact that most atomic intrinsics only dereference their arguments, and enhance
BasicAA to make use of this fact when computing ModRef info.

llvm-svn: 63718
2009-02-04 05:16:46 +00:00

14 lines
375 B
LLVM

; RUN: llvm-as < %s | opt -basicaa -gvn | llvm-dis | grep load | count 1
@flag0 = internal global i32 zeroinitializer
@turn = internal global i32 zeroinitializer
define i32 @main() {
%a = load i32* @flag0
%b = tail call i32 @llvm.atomic.swap.i32.p0i32(i32* @turn, i32 1)
%c = load i32* @flag0
ret i32 %c
}
declare i32 @llvm.atomic.swap.i32.p0i32(i32*, i32) nounwind