brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.1 KiB · 04de67e Raw
57 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-linux-gnu < %s \3; RUN: | FileCheck --check-prefix=CHECK-LE %s4; RUN: llc -verify-machineinstrs -mtriple=powerpc64-linux-gnu -mattr=+vsx < %s \5; RUN: | FileCheck --check-prefix=CHECK-BE %s6; RUN: llc -verify-machineinstrs -mtriple=powerpc64-ibm-aix-xcoff -mattr=+vsx \7; RUN: -vec-extabi < %s | FileCheck --check-prefix=CHECK-BE %s8; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-linux-gnu -mcpu=pwr9 < %s \9; RUN: | FileCheck --check-prefix=CHECK-P9LE %s10; RUN: llc -verify-machineinstrs -mtriple=powerpc64-linux-gnu -mcpu=pwr9 < %s \11; RUN: | FileCheck --check-prefix=CHECK-P9BE %s12; RUN: llc -verify-machineinstrs -mtriple=powerpc64-ibm-aix-xcoff -mcpu=pwr9 \13; RUN: -vec-extabi < %s | FileCheck --check-prefix=CHECK-BE %s14 15define double @splat_swap(<2 x double> %x, <2 x double> %y) nounwind  {16; CHECK-LE-LABEL: splat_swap:17; CHECK-LE:       # %bb.0:18; CHECK-LE-NEXT:    xvadddp 0, 34, 3519; CHECK-LE-NEXT:    xvrdpic 0, 020; CHECK-LE-NEXT:    xxswapd 1, 021; CHECK-LE-NEXT:    xssubdp 1, 1, 022; CHECK-LE-NEXT:    blr23;24; CHECK-BE-LABEL: splat_swap:25; CHECK-BE:       # %bb.0:26; CHECK-BE-NEXT:    xvadddp 0, 34, 3527; CHECK-BE-NEXT:    xvrdpic 0, 028; CHECK-BE-NEXT:    xxswapd 1, 029; CHECK-BE-NEXT:    xssubdp 1, 0, 130; CHECK-BE-NEXT:    blr31;32; CHECK-P9LE-LABEL: splat_swap:33; CHECK-P9LE:       # %bb.0:34; CHECK-P9LE-NEXT:    xvadddp 0, 34, 3535; CHECK-P9LE-NEXT:    xvrdpic 0, 036; CHECK-P9LE-NEXT:    xxswapd 1, 037; CHECK-P9LE-NEXT:    xssubdp 1, 1, 038; CHECK-P9LE-NEXT:    blr39;40; CHECK-P9BE-LABEL: splat_swap:41; CHECK-P9BE:       # %bb.0:42; CHECK-P9BE-NEXT:    xvadddp 0, 34, 3543; CHECK-P9BE-NEXT:    xvrdpic 0, 044; CHECK-P9BE-NEXT:    xxswapd 1, 045; CHECK-P9BE-NEXT:    xssubdp 1, 0, 146; CHECK-P9BE-NEXT:    blr47  %added = fadd <2 x double> %x, %y48  %call = tail call <2 x double> @llvm.rint.v2f64(<2 x double> %added) nounwind readnone49  %res1 = extractelement <2 x double> %call, i32 050  %res2 = extractelement <2 x double> %call, i32 151  %ret = fsub double %res1, %res252  ret double %ret53}54 55declare <2 x double> @llvm.rint.v2f64(<2 x double>)56 57