xref: /aosp_15_r20/external/llvm/test/CodeGen/Mips/dagcombine_crash.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -o - %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker; The selection DAG select(select()) normalisation crashed for different types
3*9880d681SAndroid Build Coastguard Worker; on the condition inputs.
4*9880d681SAndroid Build Coastguard Workertarget datalayout = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
5*9880d681SAndroid Build Coastguard Workertarget triple = "mips--"
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: foobar
8*9880d681SAndroid Build Coastguard Worker; CHECK: sltiu ${{[0-9]*}}, ${{[0-9]*}}, 42
9*9880d681SAndroid Build Coastguard Worker; CHECK: sltiu ${{[0-9]*}}, ${{[0-9]*}}, 23
10*9880d681SAndroid Build Coastguard Worker; CHECK: and ${{[0-9]*}}, ${{[0-9]*}}, ${{[0-9]*}}
11*9880d681SAndroid Build Coastguard Worker; CHECK: sltu ${{[0-9]*}}, ${{[0-9]*}}, ${{[0-9]*}}
12*9880d681SAndroid Build Coastguard Worker; CHECK: addiu ${{[0-9]*}}, ${{[0-9]*}}, -1
13*9880d681SAndroid Build Coastguard Worker; CHECK: movn ${{[0-9]*}}, ${{[0-9]*}}, ${{[0-9]*}}
14*9880d681SAndroid Build Coastguard Worker; CHECK: jr $ra
15*9880d681SAndroid Build Coastguard Worker; CHECK: move ${{[0-9]*}}, ${{[0-9]*}}
16*9880d681SAndroid Build Coastguard Workerdefine i64 @foobar(i32 %arg) #0 {
17*9880d681SAndroid Build Coastguard Workerentry:
18*9880d681SAndroid Build Coastguard Worker  %cmp0 = icmp ult i32 %arg, 23
19*9880d681SAndroid Build Coastguard Worker  %cmp1 = icmp ult i32 %arg, 42
20*9880d681SAndroid Build Coastguard Worker  %and = and i1 %cmp0, %cmp1
21*9880d681SAndroid Build Coastguard Worker  %cmp2 = icmp ugt i32 %arg, 0
22*9880d681SAndroid Build Coastguard Worker  %sext = sext i1 %cmp1 to i64
23*9880d681SAndroid Build Coastguard Worker  %retval.0 = select i1 %and, i64 %sext, i64 0
24*9880d681SAndroid Build Coastguard Worker  ret i64 %retval.0
25*9880d681SAndroid Build Coastguard Worker}
26