From: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>

From: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
* arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.

From: Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
 and Richard Earnshaw  <rearnsha@arm.com>
* arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF.  Simplify logic.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>

From-SVN: r55487
This commit is contained in:
Jeroen Dobbelaere 2002-07-16 15:39:22 +00:00 committed by Richard Earnshaw
parent 3894f59ee4
commit 1575c31ee1
3 changed files with 17 additions and 7 deletions

View File

@ -1,3 +1,13 @@
2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
* arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
Richard Earnshaw <rearnsha@arm.com>
* arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
2002-07-16 Richard Earnshaw <rearnsha@arm.com>
* arm.md (stack_tie): New insn. Use an idiom that the alias code

View File

@ -7922,7 +7922,6 @@ emit_sfm (base_reg, count)
par = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (count));
dwarf = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (count));
RTX_FRAME_RELATED_P (dwarf) = 1;
reg = gen_rtx_REG (XFmode, base_reg++);

View File

@ -2397,12 +2397,13 @@ extern const char * arm_pic_register_string;
/* We can't directly access anything that contains a symbol,
nor can we indirect via the constant pool. */
#define LEGITIMATE_PIC_OPERAND_P(X) \
( ! symbol_mentioned_p (X) \
&& ! label_mentioned_p (X) \
&& (! CONSTANT_POOL_ADDRESS_P (X) \
|| ( ! symbol_mentioned_p (get_pool_constant (X)) \
&& ! label_mentioned_p (get_pool_constant (X)))))
(!(symbol_mentioned_p (X) \
|| label_mentioned_p (X) \
|| (GET_CODE (X) == SYMBOL_REF \
&& CONSTANT_POOL_ADDRESS_P (X) \
&& (symbol_mentioned_p (get_pool_constant (X)) \
|| label_mentioned_p (get_pool_constant (X))))))
/* We need to know when we are making a constant pool; this determines
whether data needs to be in the GOT or can be referenced via a GOT
offset. */