40 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mcpu=pwr8 -mtriple=powerpc64le-unknown-unknown \3; RUN: -verify-machineinstrs < %s | FileCheck --check-prefix=CHECK-LE %s4; RUN: llc -mcpu=pwr8 -mtriple=powerpc64-unknown-unknown \5; RUN: -verify-machineinstrs < %s | FileCheck --check-prefix=CHECK-BE %s6 7define <2 x double> @foo(<4 x i32> %s) {8; CHECK-LE-LABEL: foo:9; CHECK-LE: # %bb.0: # %entry10; CHECK-LE-NEXT: xvcvsxwdp 34, 3411; CHECK-LE-NEXT: blr12;13; CHECK-BE-LABEL: foo:14; CHECK-BE: # %bb.0: # %entry15; CHECK-BE-NEXT: xxsldwi 0, 34, 34, 116; CHECK-BE-NEXT: xvcvsxwdp 34, 017; CHECK-BE-NEXT: blr18entry:19 %0 = shufflevector <4 x i32> %s, <4 x i32> undef, <2 x i32> <i32 1, i32 3>20 %1 = sitofp <2 x i32> %0 to <2 x double>21 ret <2 x double> %122}23 24define <2 x double> @bar(<4 x i32> %s) {25; CHECK-LE-LABEL: bar:26; CHECK-LE: # %bb.0: # %entry27; CHECK-LE-NEXT: xvcvuxwdp 34, 3428; CHECK-LE-NEXT: blr29;30; CHECK-BE-LABEL: bar:31; CHECK-BE: # %bb.0: # %entry32; CHECK-BE-NEXT: xxsldwi 0, 34, 34, 133; CHECK-BE-NEXT: xvcvuxwdp 34, 034; CHECK-BE-NEXT: blr35entry:36 %0 = shufflevector <4 x i32> %s, <4 x i32> undef, <2 x i32> <i32 1, i32 3>37 %1 = uitofp <2 x i32> %0 to <2 x double>38 ret <2 x double> %139}40