aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMichael Meissner <meissner@gcc.gnu.org>1996-11-03 21:12:07 +0000
committerMichael Meissner <meissner@gcc.gnu.org>1996-11-03 21:12:07 +0000
commit4f3397ae26e52899a70424d7bba802b19fc14355 (patch)
treec2df09de5cb81dfe0e96bc16da722f793b7e5886 /gcc
parent810429b72c7c30f77a6b72c3553d06ed62b24026 (diff)
downloadgcc-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.h10
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"; \