diff options
author | David Edelsohn <dje.gcc@gmail.com> | 2013-09-04 21:24:56 +0000 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2013-09-04 17:24:56 -0400 |
commit | c167bc5b7d51a6d582324040201106fab36723da (patch) | |
tree | dbf9155edc73147b3cb26dfc6446ec2527c9de66 /gcc | |
parent | e3458796fcb2d83c9fc52c98516546777fc16815 (diff) | |
download | gcc-c167bc5b7d51a6d582324040201106fab36723da.zip gcc-c167bc5b7d51a6d582324040201106fab36723da.tar.gz gcc-c167bc5b7d51a6d582324040201106fab36723da.tar.bz2 |
rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit lglobl if not weak.
* config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit
lglobl if not weak.
From-SVN: r202264
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.h | 15 |
2 files changed, 14 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 286aed5..64e3421 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-09-04 David Edelsohn <dje.gcc@gmail.com> + + * config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit + lglobl if not weak. + 2013-09-04 Easwaran Raman <eraman@google.com> PR middle-end/57370 diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index 5acedfc..a5a7a85 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -2139,12 +2139,15 @@ extern int toc_initialized; } \ else if (TARGET_XCOFF) \ { \ - fputs ("\t.lglobl\t.", FILE); \ - RS6000_OUTPUT_BASENAME (FILE, alias); \ - putc ('\n', FILE); \ - fputs ("\t.lglobl\t", FILE); \ - RS6000_OUTPUT_BASENAME (FILE, alias); \ - putc ('\n', FILE); \ + if (!RS6000_WEAK || !DECL_WEAK (DECL)) \ + { \ + fputs ("\t.lglobl\t.", FILE); \ + RS6000_OUTPUT_BASENAME (FILE, alias); \ + putc ('\n', FILE); \ + fputs ("\t.lglobl\t", FILE); \ + RS6000_OUTPUT_BASENAME (FILE, alias); \ + putc ('\n', FILE); \ + } \ } \ fputs ("\t.set\t.", FILE); \ RS6000_OUTPUT_BASENAME (FILE, alias); \ |