diff --git a/test/CodeGen/X86/pr23664.ll b/test/CodeGen/X86/pr23664.ll new file mode 100644 index 00000000000..a501c0db837 --- /dev/null +++ b/test/CodeGen/X86/pr23664.ll @@ -0,0 +1,14 @@ +; RUN: llc -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s + +define i2 @f(i32 %arg) { + %trunc = trunc i32 %arg to i1 + %sext = sext i1 %trunc to i2 + %or = or i2 %sext, 1 + ret i2 %or + +; CHECK-LABEL: f: +; CHECK: addb %dil, %dil +; CHECK-NEXT: orb $1, %dil +; CHECK-NEXT: movb %dil, %al +; CHECK-NEXT: retq +}