diff options
Diffstat (limited to 'test/CodeGen/PowerPC/copysignl.ll')
-rw-r--r-- | test/CodeGen/PowerPC/copysignl.ll | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/test/CodeGen/PowerPC/copysignl.ll b/test/CodeGen/PowerPC/copysignl.ll index 4b801b7..e280f83 100644 --- a/test/CodeGen/PowerPC/copysignl.ll +++ b/test/CodeGen/PowerPC/copysignl.ll @@ -1,4 +1,5 @@ -; RUN: llc -mcpu=pwr7 -mtriple=powerpc64-unknown-linux-gnu < %s | FileCheck %s +; RUN: llc -mcpu=pwr7 -mtriple=powerpc64-unknown-linux-gnu -mattr=-vsx < %s | FileCheck %s +; RUN: llc -mcpu=pwr7 -mtriple=powerpc64-unknown-linux-gnu -mattr=+vsx < %s | FileCheck %s -check-prefix=CHECK-VSX target datalayout = "E-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f128:128:128-v128:128:128-n32:64" target triple = "powerpc64-unknown-linux-gnu" @@ -11,6 +12,9 @@ entry: ; CHECK-LABEL: @foo_d_ll ; CHECK: fcpsgn 1, 3, 1 ; CHECK: blr +; CHECK-VSX-LABEL: @foo_d_ll +; CHECK-VSX: xscpsgndp 1, 3, 1 +; CHECK-VSX: blr } declare ppc_fp128 @copysignl(ppc_fp128, ppc_fp128) #0 @@ -24,6 +28,9 @@ entry: ; CHECK-LABEL: @foo_dl ; CHECK: fcpsgn 1, 2, 1 ; CHECK: blr +; CHECK-VSX-LABEL: @foo_dl +; CHECK-VSX: xscpsgndp 1, 2, 1 +; CHECK-VSX: blr } declare double @copysign(double, double) #0 @@ -37,6 +44,9 @@ entry: ; CHECK-LABEL: @foo_ll ; CHECK: bl copysignl ; CHECK: blr +; CHECK-VSX-LABEL: @foo_ll +; CHECK-VSX: bl copysignl +; CHECK-VSX: blr } define ppc_fp128 @foo_ld(double %a, double %b) #0 { @@ -49,6 +59,9 @@ entry: ; CHECK-LABEL: @foo_ld ; CHECK: bl copysignl ; CHECK: blr +; CHECK-VSX-LABEL: @foo_ld +; CHECK-VSX: bl copysignl +; CHECK-VSX: blr } define ppc_fp128 @foo_lf(double %a, float %b) #0 { @@ -61,6 +74,9 @@ entry: ; CHECK-LABEL: @foo_lf ; CHECK: bl copysignl ; CHECK: blr +; CHECK-VSX-LABEL: @foo_lf +; CHECK-VSX: bl copysignl +; CHECK-VSX: blr } attributes #0 = { nounwind readnone } |