xref: /aosp_15_r20/external/llvm/test/CodeGen/Mips/2008-10-13-LegalizerBug.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=mips
2*9880d681SAndroid Build Coastguard Worker; PR2794
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Workerdefine i32 @main(i8*) nounwind {
5*9880d681SAndroid Build Coastguard Workerentry:
6*9880d681SAndroid Build Coastguard Worker        br label %continue.outer
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Workercontinue.outer:         ; preds = %case4, %entry
9*9880d681SAndroid Build Coastguard Worker        %p.0.ph.rec = phi i32 [ 0, %entry ], [ %indvar.next, %case4 ]          ; <i32> [#uses=2]
10*9880d681SAndroid Build Coastguard Worker        %p.0.ph = getelementptr i8, i8* %0, i32 %p.0.ph.rec         ; <i8*> [#uses=1]
11*9880d681SAndroid Build Coastguard Worker        %1 = load i8, i8* %p.0.ph           ; <i8> [#uses=1]
12*9880d681SAndroid Build Coastguard Worker        switch i8 %1, label %infloop [
13*9880d681SAndroid Build Coastguard Worker                i8 0, label %return.split
14*9880d681SAndroid Build Coastguard Worker                i8 76, label %case4
15*9880d681SAndroid Build Coastguard Worker                i8 108, label %case4
16*9880d681SAndroid Build Coastguard Worker                i8 104, label %case4
17*9880d681SAndroid Build Coastguard Worker                i8 42, label %case4
18*9880d681SAndroid Build Coastguard Worker        ]
19*9880d681SAndroid Build Coastguard Worker
20*9880d681SAndroid Build Coastguard Workercase4:          ; preds = %continue.outer, %continue.outer, %continue.outer, %continue.outer
21*9880d681SAndroid Build Coastguard Worker        %indvar.next = add i32 %p.0.ph.rec, 1           ; <i32> [#uses=1]
22*9880d681SAndroid Build Coastguard Worker        br label %continue.outer
23*9880d681SAndroid Build Coastguard Worker
24*9880d681SAndroid Build Coastguard Workerreturn.split:           ; preds = %continue.outer
25*9880d681SAndroid Build Coastguard Worker        ret i32 0
26*9880d681SAndroid Build Coastguard Worker
27*9880d681SAndroid Build Coastguard Workerinfloop:                ; preds = %infloop, %continue.outer
28*9880d681SAndroid Build Coastguard Worker        br label %infloop
29*9880d681SAndroid Build Coastguard Worker}
30