xref: /aosp_15_r20/external/llvm/test/CodeGen/X86/pr23664.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdefine i2 @f(i32 %arg) {
4*9880d681SAndroid Build Coastguard Worker  %trunc = trunc i32 %arg to i1
5*9880d681SAndroid Build Coastguard Worker  %sext = sext i1 %trunc to i2
6*9880d681SAndroid Build Coastguard Worker  %or = or i2 %sext, 1
7*9880d681SAndroid Build Coastguard Worker  ret i2 %or
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f:
10*9880d681SAndroid Build Coastguard Worker; CHECK:      addb    %dil, %dil
11*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: orb     $1, %dil
12*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movl    %edi, %eax
13*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq
14*9880d681SAndroid Build Coastguard Worker}
15