From 2f6df85c63e455210755d75a89f5818937f81f9c Mon Sep 17 00:00:00 2001
From: hpenner <hpenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed, 11 Feb 2004 15:43:28 +0000
Subject: [PATCH] * g++.dg/simd-2.C: Set -maltivec for ppc64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77664 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/testsuite/ChangeLog          |  4 ++++
 gcc/testsuite/g++.dg/eh/simd-2.C | 21 +++++++++++++++++++--
 2 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 9f34aae5386d..be07e1ff45b7 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -2,6 +2,10 @@
 
 	* gcc.dg/pr14092-1.c: Use intptr_t for the cast.
 
+2004-02-11  Hartmut Penner  <hpenner@de.ibm.com>
+
+        * g++.dg/simd-2.C: Set -maltivec for ppc64.
+
 2004-02-11  Hartmut Penner  <hpenner@de.ibm.com>
 
         * gcc.dg/ppc64-abi-3.c: New test.
diff --git a/gcc/testsuite/g++.dg/eh/simd-2.C b/gcc/testsuite/g++.dg/eh/simd-2.C
index 1a9851e37f0b..55f603aa3589 100644
--- a/gcc/testsuite/g++.dg/eh/simd-2.C
+++ b/gcc/testsuite/g++.dg/eh/simd-2.C
@@ -2,10 +2,21 @@
 // Contributed by Aldy Hernandez (aldy@quesejoda.com).
 // { dg-options "-O" }
 // { dg-options "-O -w" { target i?86-*-* } }
+// { dg-options "-O -maltivec" { target powerpc64-*-linux* } }
 // { dg-do run }
-// { dg-error "" "PR target/12916" { target sparc64-*-* sparcv9-*-* } 12 }
-// { dg-error "" "PR target/12916" { target sparc-*-* } 14 }
+// { dg-error "" "PR target/12916" { target sparc64-*-* sparcv9-*-* } 23 }
+// { dg-error "" "PR target/12916" { target sparc-*-* } 25 }
+#ifdef __powerpc64__
+#include <signal.h>
+extern void
+exit (int);
 
+void 
+sig_ill_handler (int sig)
+{
+    exit(0);
+}
+#endif
 typedef int __attribute__((mode(V4SI))) vecint;
 
 vecint vecfunc (vecint beachbum)
@@ -44,6 +55,12 @@ void f1 (void)
 
 int main ()
 {
+#ifdef __powerpc64__
+  /* Exit on systems without altivec.  */
+  signal (SIGILL, sig_ill_handler);
+  asm volatile (".long 0x10000484");  
+  signal (SIGILL, SIG_DFL);
+#endif
   f1 ();
   return 0;
 }
-- 
GitLab