xref: /aosp_15_r20/external/llvm/test/Analysis/CFLAliasAnalysis/Steensgaard/asm-global-bugfix.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; Test case for a bug where we would crash when we were requested to report
2*9880d681SAndroid Build Coastguard Worker; whether two values that didn't belong to a function (i.e. two globals, etc)
3*9880d681SAndroid Build Coastguard Worker; aliased.
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -cfl-steens-aa -aa-eval -print-may-aliases -disable-output 2>&1 | FileCheck %s
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Worker@G = private unnamed_addr constant [1 x i8] c"\00", align 1
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker; CHECK: Function: test_no_crash
10*9880d681SAndroid Build Coastguard Worker; CHECK: 0 no alias responses
11*9880d681SAndroid Build Coastguard Workerdefine void @test_no_crash() #0 {
12*9880d681SAndroid Build Coastguard Workerentry:
13*9880d681SAndroid Build Coastguard Worker  call i8* asm "nop", "=r,r"(
14*9880d681SAndroid Build Coastguard Worker       i8* getelementptr inbounds ([1 x i8], [1 x i8]* @G, i64 0, i64 0))
15*9880d681SAndroid Build Coastguard Worker  ret void
16*9880d681SAndroid Build Coastguard Worker}
17