mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63718 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
14
test/Analysis/BasicAA/cas.ll
Normal file
14
test/Analysis/BasicAA/cas.ll
Normal file
@@ -0,0 +1,14 @@
|
||||
; 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
|
Reference in New Issue
Block a user