aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@codesourcery.com>2007-08-15 22:29:25 +0000
committerDaniel Jacobowitz <drow@gcc.gnu.org>2007-08-15 22:29:25 +0000
commitaaa4249408fabb450bf3b60c349dadcfdc5a4e8b (patch)
tree831984ca6d700a87a557b1e4ed68f213123fcdbc
parentf81e79b5b4875091d95227d6e13997e3981b9181 (diff)
downloadgcc-aaa4249408fabb450bf3b60c349dadcfdc5a4e8b.zip
gcc-aaa4249408fabb450bf3b60c349dadcfdc5a4e8b.tar.gz
gcc-aaa4249408fabb450bf3b60c349dadcfdc5a4e8b.tar.bz2
rs6000.c (rs6000_file_start): Output a .gnu_attribute directive for the current vector ABI.
* config/rs6000/rs6000.c (rs6000_file_start): Output a .gnu_attribute directive for the current vector ABI. From-SVN: r127526
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/rs6000/rs6000.c10
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f63862a..5e0cfc0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index dc53ef9..e910276 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -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))