OSDN Git Service

* config/rs6000/rs6000.c (rs6000_file_start): Output a .gnu_attribute
authordrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Aug 2007 22:29:25 +0000 (22:29 +0000)
committerdrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Aug 2007 22:29:25 +0000 (22:29 +0000)
directive for the current vector ABI.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127526 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/rs6000/rs6000.c

index f63862a..5e0cfc0 100644 (file)
@@ -1,3 +1,8 @@
+2007-08-15  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config/rs6000/rs6000.c (rs6000_file_start): Output a .gnu_attribute
+       directive for the current vector ABI.
+
 2007-08-15  Steve Ellcey  <sje@cup.hp.com>
 
        PR target/32963
index dc53ef9..e910276 100644 (file)
@@ -2340,8 +2340,14 @@ rs6000_file_start (void)
 
 #ifdef HAVE_AS_GNU_ATTRIBUTE
   if (TARGET_32BIT && DEFAULT_ABI == ABI_V4)
-    fprintf (file, "\t.gnu_attribute 4, %d\n",
-            (TARGET_HARD_FLOAT && TARGET_FPRS) ? 1 : 2);
+    {
+      fprintf (file, "\t.gnu_attribute 4, %d\n",
+              (TARGET_HARD_FLOAT && TARGET_FPRS) ? 1 : 2);
+      fprintf (file, "\t.gnu_attribute 8, %d\n",
+              (TARGET_ALTIVEC_ABI ? 2
+               : TARGET_SPE_ABI ? 3
+               : 1));
+    }
 #endif
 
   if (DEFAULT_ABI == ABI_AIX || (TARGET_ELF && flag_pic == 2))