xref: /aosp_15_r20/external/llvm/test/Transforms/LICM/2009-12-10-LICM-Indbr-Crash.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; Test for rdar://7452967
2*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -licm -disable-output
3*9880d681SAndroid Build Coastguard Workerdefine void @foo (i8* %v)
4*9880d681SAndroid Build Coastguard Worker{
5*9880d681SAndroid Build Coastguard Worker  entry:
6*9880d681SAndroid Build Coastguard Worker    br i1 undef, label %preheader, label %return
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker  preheader:
9*9880d681SAndroid Build Coastguard Worker    br i1 undef, label %loop, label %return
10*9880d681SAndroid Build Coastguard Worker
11*9880d681SAndroid Build Coastguard Worker  loop:
12*9880d681SAndroid Build Coastguard Worker    indirectbr i8* undef, [label %preheader, label %stuff]
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Worker  stuff:
15*9880d681SAndroid Build Coastguard Worker    %0 = load i8, i8* undef, align 1
16*9880d681SAndroid Build Coastguard Worker    br label %loop
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Worker  return:
19*9880d681SAndroid Build Coastguard Worker    ret void
20*9880d681SAndroid Build Coastguard Worker
21*9880d681SAndroid Build Coastguard Worker}
22