xref: /llvm-project/llvm/test/Analysis/BasicAA/fallback-mayalias.ll (revision 05ff7606c9d47135ecf5b69e25b1327634f6fa27)
1; RUN: opt -aa-pipeline=basic-aa -passes=aa-eval -print-all-alias-modref-info -disable-output < %s 2>&1 | FileCheck %s
2
3; Check that BasicAA falls back to MayAlias (instead of PartialAlias) when none
4; of its little tricks are applicable.
5
6; CHECK: MayAlias: float* %arrayidxA, float* %arrayidxB
7
8define void @fallback_mayalias(ptr noalias nocapture %C, i64 %i, i64 %j) local_unnamed_addr {
9entry:
10  %cmp = icmp ne i64 %i, %j
11  call void @llvm.assume(i1 %cmp)
12
13  %arrayidxA = getelementptr inbounds float, ptr %C, i64 %i
14  store float undef, ptr %arrayidxA, align 4
15
16  %arrayidxB = getelementptr inbounds float, ptr %C, i64 %j
17  store float undef, ptr %arrayidxB, align 4
18
19  ret void
20}
21
22declare void @llvm.assume(i1)
23