Add a few more interesting testcases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107177 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2010-06-29 18:17:11 +00:00
parent 6f205cbceb
commit af0824701b

View File

@ -40,3 +40,24 @@ define i64* @r0(i64* %u) {
store i64 0, i64* %v
ret i64* %t
}
; The noalias attribute is not necessarily safe in an interprocedural context even
; in comparison to other noalias arguments in the same function.
; CHECK: MayAlias: i8* %w, i8* %x
define void @q0(i8* noalias %w, i8* noalias %x) {
store i8 0, i8* %w
store i8 0, i8* %x
call void @q0(i8* noalias %x, i8* noalias %w)
unreachable
}
; The noalias attribute is not necessarily safe in an interprocedural context.
; CHECK: MayAlias: double* %y, double* @G
@G = external global double
define void @p0(double* noalias %y) {
store double 0.0, double* %y
store double 0.0, double* @G
unreachable
}