diff options
author | Michael Meissner <meissner@gcc.gnu.org> | 1996-11-03 21:12:07 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 1996-11-03 21:12:07 +0000 |
commit | 4f3397ae26e52899a70424d7bba802b19fc14355 (patch) | |
tree | c2df09de5cb81dfe0e96bc16da722f793b7e5886 /gcc | |
parent | 810429b72c7c30f77a6b72c3553d06ed62b24026 (diff) | |
download | gcc-4f3397ae26e52899a70424d7bba802b19fc14355.zip gcc-4f3397ae26e52899a70424d7bba802b19fc14355.tar.gz gcc-4f3397ae26e52899a70424d7bba802b19fc14355.tar.bz2 |
Random -fpic fixes
From-SVN: r13092
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/rs6000/sysv4.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h index a734ee6..9ce1d08 100644 --- a/gcc/config/rs6000/sysv4.h +++ b/gcc/config/rs6000/sysv4.h @@ -430,12 +430,12 @@ do { \ /* Put PC relative got entries in .got2 */ #define MINIMAL_TOC_SECTION_ASM_OP \ - ((TARGET_RELOCATABLE) ? "\t.section\t\".got2\",\"aw\"" : "\t.section\t\".got1\",\"aw\"") + ((TARGET_RELOCATABLE || flag_pic) ? "\t.section\t\".got2\",\"aw\"" : "\t.section\t\".got1\",\"aw\"") /* Put relocatable data in .data, not .rodata so initialized pointers can be updated */ #undef CONST_SECTION_ASM_OP #define CONST_SECTION_ASM_OP \ - ((TARGET_RELOCATABLE) ? "\t.section\t\".data\"\t# .rodata" : "\t.section\t\".rodata\"") + ((TARGET_RELOCATABLE || flag_pic) ? "\t.section\t\".data\"\t# .rodata" : "\t.section\t\".rodata\"") #define SDATA_SECTION_ASM_OP "\t.section \".sdata\",\"aw\"" @@ -703,7 +703,7 @@ extern int rs6000_pic_labelno; do { \ if (TARGET_SDATA && (SIZE) > 0 && (SIZE) <= g_switch_value) \ { \ - sbss_section (); \ + sdata_section (); \ ASM_OUTPUT_ALIGN (FILE, exact_log2 (ALIGN / BITS_PER_UNIT)); \ ASM_OUTPUT_LABEL (FILE, NAME); \ ASM_OUTPUT_SKIP (FILE, SIZE); \ @@ -755,7 +755,7 @@ do { \ #define ASM_OUTPUT_INT(FILE,VALUE) \ do { \ static int recurse = 0; \ - if (TARGET_RELOCATABLE \ + if ((TARGET_RELOCATABLE || flag_pic) \ && in_section != in_toc \ && in_section != in_text \ && in_section != in_ctors \ @@ -883,7 +883,7 @@ do { \ \ if (DECL && TREE_CODE (DECL) == FUNCTION_DECL) \ type = SECT_EXEC, mode = "ax"; \ - else if (DECL && TREE_READONLY (DECL) && !TARGET_RELOCATABLE) \ + else if (DECL && TREE_READONLY (DECL) && !TARGET_RELOCATABLE && !flag_pic) \ type = SECT_RO, mode = "a"; \ else \ type = SECT_RW, mode = "aw"; \ |