diff options
author | Michael Meissner <meissner@gcc.gnu.org> | 1993-04-16 20:37:41 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 1993-04-16 20:37:41 +0000 |
commit | b7191cb536c3bc7b97d2d93a190f12aaa6847195 (patch) | |
tree | 3513d5e912b3268c66f11a490bc216e6071b6a70 | |
parent | 2def78883190a0a001cb34c537769ac18b196962 (diff) | |
download | gcc-b7191cb536c3bc7b97d2d93a190f12aaa6847195.zip gcc-b7191cb536c3bc7b97d2d93a190f12aaa6847195.tar.gz gcc-b7191cb536c3bc7b97d2d93a190f12aaa6847195.tar.bz2 |
Don't put relocatable items into .text if -pic-lib.
From-SVN: r4163
-rw-r--r-- | gcc/config/i386/osfrose.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/config/i386/osfrose.h b/gcc/config/i386/osfrose.h index 3e39289..3158b09a 100644 --- a/gcc/config/i386/osfrose.h +++ b/gcc/config/i386/osfrose.h @@ -288,19 +288,25 @@ do \ while (0) #undef SELECT_SECTION -#define SELECT_SECTION(DECL,RELOC) \ +#define SELECT_SECTION(DECL, RELOC) \ { \ - if (TREE_CODE (DECL) == STRING_CST) \ + if (RELOC && HALF_PIC_P ()) \ + data_section (); \ + \ + else if (TREE_CODE (DECL) == STRING_CST) \ { \ if (flag_writable_strings) \ data_section (); \ else \ readonly_data_section (); \ } \ + \ else if (TREE_CODE (DECL) != VAR_DECL) \ readonly_data_section (); \ + \ else if (!TREE_READONLY (DECL)) \ data_section (); \ + \ else \ readonly_data_section (); \ } |