Commit 8a18e16f by Michael Meissner

Don't put relocatable items into .rdata.

Allow iris to have it's version of the trampoline code.

From-SVN: r4161
parent 3ca25f3f
...@@ -645,7 +645,7 @@ while (0) ...@@ -645,7 +645,7 @@ while (0)
/* Print subsidiary information on the compiler version in use. */ /* Print subsidiary information on the compiler version in use. */
#define MIPS_VERSION "[AL 1.1, MM 38]" #define MIPS_VERSION "[AL 1.1, MM 39]"
#ifndef MACHINE_TYPE #ifndef MACHINE_TYPE
#define MACHINE_TYPE "BSD Mips" #define MACHINE_TYPE "BSD Mips"
...@@ -1968,6 +1968,7 @@ typedef struct mips_args { ...@@ -1968,6 +1968,7 @@ typedef struct mips_args {
RTX for the static chain value that should be passed to the RTX for the static chain value that should be passed to the
function when it is called. */ function when it is called. */
#ifndef INITIALIZE_TRAMPOLINE
#define INITIALIZE_TRAMPOLINE(ADDR, FUNC, CHAIN) \ #define INITIALIZE_TRAMPOLINE(ADDR, FUNC, CHAIN) \
{ \ { \
rtx addr = ADDR; \ rtx addr = ADDR; \
...@@ -1978,10 +1979,12 @@ typedef struct mips_args { ...@@ -1978,10 +1979,12 @@ typedef struct mips_args {
emit_library_call (gen_rtx (SYMBOL_REF, Pmode, "__enable_execute_stack"), \ emit_library_call (gen_rtx (SYMBOL_REF, Pmode, "__enable_execute_stack"), \
0, VOIDmode, 1, addr, Pmode); \ 0, VOIDmode, 1, addr, Pmode); \
} }
#endif /* INITIALIZE_TRAMPOLINE */
/* Attempt to turn on access permissions for the stack. */ /* Attempt to turn on access permissions for the stack. */
#ifndef TRANSFER_FROM_TRAMPOLINE
#define TRANSFER_FROM_TRAMPOLINE \ #define TRANSFER_FROM_TRAMPOLINE \
\ \
void \ void \
...@@ -2002,6 +2005,7 @@ __enable_execute_stack (addr) \ ...@@ -2002,6 +2005,7 @@ __enable_execute_stack (addr) \
perror ("cacheflush of trampoline code"); \ perror ("cacheflush of trampoline code"); \
*/ \ */ \
} }
#endif /* TRANSFER_FROM_TRAMPOLINE */
/* Addressing modes, and classification of registers for them. */ /* Addressing modes, and classification of registers for them. */
...@@ -3431,11 +3435,15 @@ rdata_section () \ ...@@ -3431,11 +3435,15 @@ rdata_section () \
rdata_section (); \ rdata_section (); \
} \ } \
#define SELECT_SECTION(DECL,RELOC) \ #define SELECT_SECTION(DECL, RELOC) \
{ \ { \
if (int_size_in_bytes (TREE_TYPE (DECL)) <= mips_section_threshold \ if (int_size_in_bytes (TREE_TYPE (DECL)) <= mips_section_threshold \
&& mips_section_threshold > 0) \ && mips_section_threshold > 0) \
sdata_section (); \ sdata_section (); \
\
else if (RELOC) \
data_section (); \
\
else if (TREE_CODE (DECL) == STRING_CST) \ else if (TREE_CODE (DECL) == STRING_CST) \
{ \ { \
if (flag_writable_strings) \ if (flag_writable_strings) \
...@@ -3443,10 +3451,13 @@ rdata_section () \ ...@@ -3443,10 +3451,13 @@ rdata_section () \
else \ else \
rdata_section (); \ rdata_section (); \
} \ } \
\
else if (TREE_CODE (DECL) != VAR_DECL) \ else if (TREE_CODE (DECL) != VAR_DECL) \
rdata_section (); \ rdata_section (); \
\
else if (!TREE_READONLY (DECL)) \ else if (!TREE_READONLY (DECL)) \
data_section (); \ data_section (); \
\
else \ else \
rdata_section (); \ rdata_section (); \
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment