; RUN: llc -mcpu=pwr7 -mattr=+vsx < %s | FileCheck %s target datalayout = "E-m:e-i64:64-n32:64" target triple = "powerpc64-unknown-linux-gnu" define double @test1(double %a, double %b) { entry: %v = fmul double %a, %b ret double %v ; CHECK-LABEL: @test1 ; CHECK: xsmuldp 1, 1, 2 ; CHECK: blr } define double @test2(double %a, double %b) { entry: %v = fdiv double %a, %b ret double %v ; CHECK-LABEL: @test2 ; CHECK: xsdivdp 1, 1, 2 ; CHECK: blr } define double @test3(double %a, double %b) { entry: %v = fadd double %a, %b ret double %v ; CHECK-LABEL: @test3 ; CHECK: xsadddp 1, 1, 2 ; CHECK: blr } define <2 x double> @test4(<2 x double> %a, <2 x double> %b) { entry: %v = fadd <2 x double> %a, %b ret <2 x double> %v ; FIXME: Check that the ABI for the return value is correct here! ; CHECK-LABEL: @test4 ; CHECK: xvadddp {{[0-9]+}}, 34, 35 ; CHECK: blr }