From c40e5172f128dc3842e7e2e29eea5b02c466d604 Mon Sep 17 00:00:00 2001 From: Jeff Sturm Date: Thu, 9 Jan 2003 01:10:43 +0000 Subject: [PATCH] re PR target/9210 ([gcc-3.3] bootstrap error in libffi building nof libs) PR target/9210 * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Set SYMBOL_REF_FLAG on local data sym_ref. From-SVN: r61064 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/rs6000.c | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7e787a384db..8a7cf40d977 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-01-08 Jeff Sturm + + PR target/9210 + * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): + Set SYMBOL_REF_FLAG on local data sym_ref. + 2003-01-08 Dale Johannesen * function.c (assign_parms): Don't set pretend_args_size if diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 420085c896f..6112737d5b1 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -12562,11 +12562,15 @@ rs6000_elf_encode_section_info (decl, first) && DEFAULT_ABI == ABI_V4 && TREE_CODE (decl) == VAR_DECL) { + rtx sym_ref = XEXP (DECL_RTL (decl), 0); int size = int_size_in_bytes (TREE_TYPE (decl)); tree section_name = DECL_SECTION_NAME (decl); const char *name = (char *)0; int len = 0; + if ((*targetm.binds_local_p) (decl)) + SYMBOL_REF_FLAG (sym_ref) = 1; + if (section_name) { if (TREE_CODE (section_name) == STRING_CST) @@ -12593,7 +12597,6 @@ rs6000_elf_encode_section_info (decl, first) || (len == sizeof (".PPC.EMB.sbss0") - 1 && strcmp (name, ".PPC.EMB.sbss0") == 0)))) { - rtx sym_ref = XEXP (DECL_RTL (decl), 0); size_t len = strlen (XSTR (sym_ref, 0)); char *str = alloca (len + 2); -- 2.30.2