77 lines · plain
1; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 | FileCheck %s --check-prefix=PPC642; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-ibm-aix-xcoff -mcpu=pwr7 | FileCheck %s --check-prefix=PPC643 4; zext5 6define i32 @zext_8_32(i8 %a) nounwind {7; PPC64: zext_8_328 %r = zext i8 %a to i329; PPC64: clrlwi {{[0-9]+}}, {{[0-9]+}}, 2410 ret i32 %r11}12 13define i32 @zext_16_32(i16 %a) nounwind {14; PPC64: zext_16_3215 %r = zext i16 %a to i3216; PPC64: clrlwi {{[0-9]+}}, {{[0-9]+}}, 1617 ret i32 %r18}19 20define i64 @zext_8_64(i8 %a) nounwind {21; PPC64: zext_8_6422 %r = zext i8 %a to i6423; PPC64: clrldi {{[0-9]+}}, {{[0-9]+}}, 5624 ret i64 %r25}26 27define i64 @zext_16_64(i16 %a) nounwind {28; PPC64: zext_16_6429 %r = zext i16 %a to i6430; PPC64: clrldi {{[0-9]+}}, {{[0-9]+}}, 4831 ret i64 %r32}33 34define i64 @zext_32_64(i32 %a) nounwind {35; PPC64: zext_32_6436 %r = zext i32 %a to i6437; PPC64: clrldi {{[0-9]+}}, {{[0-9]+}}, 3238 ret i64 %r39}40 41; sext42 43define i32 @sext_8_32(i8 %a) nounwind {44; PPC64: sext_8_3245 %r = sext i8 %a to i3246; PPC64: extsb47 ret i32 %r48}49 50define i32 @sext_16_32(i16 %a) nounwind {51; PPC64: sext_16_3252 %r = sext i16 %a to i3253; PPC64: extsh54 ret i32 %r55}56 57define i64 @sext_8_64(i8 %a) nounwind {58; PPC64: sext_8_6459 %r = sext i8 %a to i6460; PPC64: extsb61 ret i64 %r62}63 64define i64 @sext_16_64(i16 %a) nounwind {65; PPC64: sext_16_6466 %r = sext i16 %a to i6467; PPC64: extsh68 ret i64 %r69}70 71define i64 @sext_32_64(i32 %a) nounwind {72; PPC64: sext_32_6473 %r = sext i32 %a to i6474; PPC64: extsw75 ret i64 %r76}77