diff options
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/final.c | 5 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 588ce00..d7e8767 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2008-12-10 Eric Botcazou <ebotcazou@adacore.com> + + PR target/37170 + PR target/38448 + * final.c (output_addr_const) <SYMBOL_REF>: Call assemble_external + on the associated SYMBOL_REF_DECL node, if any. + 2008-12-09 David Daney <ddaney@caviumnetworks.com> * config/mips/sync.md (sync_<optab>_12): Replace diff --git a/gcc/final.c b/gcc/final.c index aceeb7c..1735a73 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -3440,7 +3440,10 @@ output_addr_const (FILE *file, rtx x) case SYMBOL_REF: if (SYMBOL_REF_DECL (x)) - mark_decl_referenced (SYMBOL_REF_DECL (x)); + { + mark_decl_referenced (SYMBOL_REF_DECL (x)); + assemble_external (SYMBOL_REF_DECL (x)); + } #ifdef ASM_OUTPUT_SYMBOL_REF ASM_OUTPUT_SYMBOL_REF (file, x); #else |