aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2007-02-20 01:25:41 +0000
committerAlan Modra <amodra@gcc.gnu.org>2007-02-20 11:55:41 +1030
commit10daf6770623cc576f4b307abb3cceb5cf0de3e7 (patch)
tree779187bce8764e0ba53ce03d7c86da84fd27e65f /gcc
parent426b8764311a170bc93067388a35a6cc598fdf18 (diff)
downloadgcc-10daf6770623cc576f4b307abb3cceb5cf0de3e7.zip
gcc-10daf6770623cc576f4b307abb3cceb5cf0de3e7.tar.gz
gcc-10daf6770623cc576f4b307abb3cceb5cf0de3e7.tar.bz2
re PR middle-end/29943 (gcc generate incorrect alias symbols for PPC)
PR target/29943 * varasm.c (use_blocks_for_decl_p): Return false for decls with alias attribute. From-SVN: r122148
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/varasm.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6bab159..cc601c8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-02-20 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/29943
+ * varasm.c (use_blocks_for_decl_p): Return false for decls with
+ alias attribute.
+
2007-02-19 Kazu Hirata <kazu@codesourcery.com>
* doc/invoke.texi (-ftree-lrs): Remove.
diff --git a/gcc/varasm.c b/gcc/varasm.c
index cc83623..5671864 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -1218,6 +1218,10 @@ use_blocks_for_decl_p (tree decl)
if (DECL_INITIAL (decl) == decl)
return false;
+ /* If this decl is an alias, then we don't want to emit a definition. */
+ if (lookup_attribute ("alias", DECL_ATTRIBUTES (decl)))
+ return false;
+
return true;
}