54 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 22; RUN: llc -mtriple=m68k < %s | FileCheck %s3 4define void @sext_inreg_i1_to_i8(i1 %val, ptr %ptr) {5; CHECK-LABEL: sext_inreg_i1_to_i8:6; CHECK: .cfi_startproc7; CHECK-NEXT: ; %bb.0: ; %entry8; CHECK-NEXT: move.b (7,%sp), %d09; CHECK-NEXT: and.b #1, %d010; CHECK-NEXT: neg.b %d011; CHECK-NEXT: move.l (8,%sp), %a012; CHECK-NEXT: move.b %d0, (%a0)13; CHECK-NEXT: rts14entry:15 %cond = select i1 %val, i8 -1, i8 016 store i8 %cond, ptr %ptr17 ret void18}19 20define void @sext_inreg_i1_to_i16(i1 %val, ptr %ptr) {21; CHECK-LABEL: sext_inreg_i1_to_i16:22; CHECK: .cfi_startproc23; CHECK-NEXT: ; %bb.0: ; %entry24; CHECK-NEXT: move.b (7,%sp), %d025; CHECK-NEXT: and.l #255, %d026; CHECK-NEXT: and.w #1, %d027; CHECK-NEXT: neg.w %d028; CHECK-NEXT: move.l (8,%sp), %a029; CHECK-NEXT: move.w %d0, (%a0)30; CHECK-NEXT: rts31entry:32 %cond = select i1 %val, i16 -1, i16 033 store i16 %cond, ptr %ptr34 ret void35}36 37define void @sext_inreg_i1_to_i32(i1 %val, ptr %ptr) {38; CHECK-LABEL: sext_inreg_i1_to_i32:39; CHECK: .cfi_startproc40; CHECK-NEXT: ; %bb.0: ; %entry41; CHECK-NEXT: move.b (7,%sp), %d042; CHECK-NEXT: and.l #255, %d043; CHECK-NEXT: and.l #1, %d044; CHECK-NEXT: neg.l %d045; CHECK-NEXT: move.l (8,%sp), %a046; CHECK-NEXT: move.l %d0, (%a0)47; CHECK-NEXT: rts48entry:49 %cond = select i1 %val, i32 -1, i32 050 store i32 %cond, ptr %ptr51 ret void52}53 54