xref: /aosp_15_r20/external/llvm/test/Transforms/InstCombine/2008-01-21-MismatchedCastAndCompare.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -instcombine -S | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker; PR1940
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Workerdefine i1 @test1(i8 %A, i8 %B) {
5*9880d681SAndroid Build Coastguard Worker        %a = zext i8 %A to i32
6*9880d681SAndroid Build Coastguard Worker        %b = zext i8 %B to i32
7*9880d681SAndroid Build Coastguard Worker        %c = icmp sgt i32 %a, %b
8*9880d681SAndroid Build Coastguard Worker        ret i1 %c
9*9880d681SAndroid Build Coastguard Worker; CHECK: %c = icmp ugt i8 %A, %B
10*9880d681SAndroid Build Coastguard Worker; CHECK: ret i1 %c
11*9880d681SAndroid Build Coastguard Worker}
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Workerdefine i1 @test2(i8 %A, i8 %B) {
14*9880d681SAndroid Build Coastguard Worker        %a = sext i8 %A to i32
15*9880d681SAndroid Build Coastguard Worker        %b = sext i8 %B to i32
16*9880d681SAndroid Build Coastguard Worker        %c = icmp ugt i32 %a, %b
17*9880d681SAndroid Build Coastguard Worker        ret i1 %c
18*9880d681SAndroid Build Coastguard Worker; CHECK: %c = icmp ugt i8 %A, %B
19*9880d681SAndroid Build Coastguard Worker; CHECK: ret i1 %c
20*9880d681SAndroid Build Coastguard Worker}
21