From c066429ee425b13780ac3e41bc6173687b46689e Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Mon, 18 Mar 2002 19:15:24 +0000 Subject: [PATCH] mips.h (ENCODE_SECTION_INFO): Don't use %gprel for symbols that are going to be placed in linkonce sections. * config/mips/mips.h (ENCODE_SECTION_INFO) [TARGET_MIPS16]: Don't use %gprel for symbols that are going to be placed in linkonce sections. From-SVN: r50986 --- gcc/ChangeLog | 4 ++++ gcc/config/mips/mips.h | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 429a2ff3ff2..7bbb1b04648 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2002-03-18 Alexandre Oliva + * config/mips/mips.h (ENCODE_SECTION_INFO) [TARGET_MIPS16]: Don't + use %gprel for symbols that are going to be placed in linkonce + sections. + * config/mips/mips.h (ELIMINABLE_REGS): Can't eliminate RETURN_ADDRESS_POINTER_REGNUM to $ra. (CAN_ELIMINATE): Only eliminate it to $sp if a frame pointer is diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index bc09632e73f..536ef51461d 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -3407,7 +3407,11 @@ do \ specific sections, except for .sdata and .sbss which are \ handled above. */ \ else if (TARGET_GP_OPT && TREE_CODE (DECL) == VAR_DECL \ - && DECL_SECTION_NAME (DECL) == NULL_TREE) \ + && DECL_SECTION_NAME (DECL) == NULL_TREE \ + && ! (TARGET_MIPS16 && TREE_PUBLIC (DECL) \ + && (DECL_COMMON (DECL) \ + || DECL_ONE_ONLY (DECL) \ + || DECL_WEAK (DECL)))) \ { \ int size = int_size_in_bytes (TREE_TYPE (DECL)); \ \ -- 2.30.2