diff options
Diffstat (limited to 'test/CodeGen/PowerPC/fcpsgn.ll')
-rw-r--r-- | test/CodeGen/PowerPC/fcpsgn.ll | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/test/CodeGen/PowerPC/fcpsgn.ll b/test/CodeGen/PowerPC/fcpsgn.ll index f469981..4d4afc6 100644 --- a/test/CodeGen/PowerPC/fcpsgn.ll +++ b/test/CodeGen/PowerPC/fcpsgn.ll @@ -1,4 +1,5 @@ -; RUN: llc -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 < %s | FileCheck %s +; RUN: llc -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -mattr=-vsx < %s | FileCheck %s +; RUN: llc -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -mattr=+vsx < %s | FileCheck -check-prefix=CHECK-VSX %s 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" @@ -10,6 +11,9 @@ entry: ; CHECK-LABEL: @foo_dd ; CHECK: fcpsgn 1, 2, 1 ; CHECK: blr +; CHECK-VSX-LABEL: @foo_dd +; CHECK-VSX: xscpsgndp 1, 2, 1 +; CHECK-VSX: blr } declare double @copysign(double, double) #0 @@ -22,6 +26,9 @@ entry: ; CHECK-LABEL: @foo_ss ; CHECK: fcpsgn 1, 2, 1 ; CHECK: blr +; CHECK-VSX-LABEL: @foo_ss +; CHECK-VSX: fcpsgn 1, 2, 1 +; CHECK-VSX: blr } declare float @copysignf(float, float) #0 @@ -35,6 +42,9 @@ entry: ; CHECK-LABEL: @foo_sd ; CHECK: fcpsgn 1, 2, 1 ; CHECK: blr +; CHECK-VSX-LABEL: @foo_sd +; CHECK-VSX: fcpsgn 1, 2, 1 +; CHECK-VSX: blr } define double @foo_ds(double %a, float %b) #0 { @@ -46,6 +56,9 @@ entry: ; CHECK-LABEL: @foo_ds ; CHECK: fcpsgn 1, 2, 1 ; CHECK: blr +; CHECK-VSX-LABEL: @foo_ds +; CHECK-VSX: fcpsgn 1, 2, 1 +; CHECK-VSX: blr } attributes #0 = { nounwind readnone } |