Commit 8e64b41a by Jeff Law

pa.h (SELECT_RTX_SECTION): Place symbolic operands into the data section.

        * pa.h (SELECT_RTX_SECTION): Place symbolic operands into the
        data section.

From-SVN: r14235
parent 81027154
...@@ -1251,7 +1251,7 @@ emit_move_sequence (operands, mode, scratch_reg) ...@@ -1251,7 +1251,7 @@ emit_move_sequence (operands, mode, scratch_reg)
&& GET_CODE (XEXP (operand1, 0)) == PLUS && GET_CODE (XEXP (operand1, 0)) == PLUS
&& function_label_operand (XEXP (XEXP (operand1, 0), 0), Pmode)) && function_label_operand (XEXP (XEXP (operand1, 0), 0), Pmode))
{ {
rtx scratch_reg, temp, const_part; rtx temp, const_part;
/* Figure out what (if any) scratch register to use. */ /* Figure out what (if any) scratch register to use. */
if (reload_in_progress || reload_completed) if (reload_in_progress || reload_completed)
......
...@@ -1664,13 +1664,13 @@ while (0) ...@@ -1664,13 +1664,13 @@ while (0)
else \ else \
data_section (); data_section ();
/* Arghh. This is used for stuff in the constant pool; this may include /* Arghh. The hpux10 linker chokes if we have a reference to symbols
function addresses on the PA, which during PIC code generation must in a readonly data section when the symbol is defined in a shared
reside in the data space. Unfortunately, there's no way to determine library. Since we can't know at compile time if a symbol will be
if a particular label in the constant pool refers to a function address. satisfied by a shared library or main program we put any symbolic
So just force everything into the data space during PIC generation. */ constant into the normal data section. */
#define SELECT_RTX_SECTION(RTX,MODE) \ #define SELECT_RTX_SECTION(MODE,RTX) \
if (flag_pic) \ if (symbolic_operand (RTX, MODE)) \
data_section (); \ data_section (); \
else \ else \
readonly_data_section (); readonly_data_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