diff options
author | Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> | 2002-07-16 15:39:22 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2002-07-16 15:39:22 +0000 |
commit | 1575c31ee110a9e863f005b69be55903e6016106 (patch) | |
tree | 4cccc7d24459e504dc38ef542c4a8bdeb3b89503 | |
parent | 3894f59ee4d9556d92f0a4b06741a2219dc05a70 (diff) | |
download | gcc-1575c31ee110a9e863f005b69be55903e6016106.zip gcc-1575c31ee110a9e863f005b69be55903e6016106.tar.gz gcc-1575c31ee110a9e863f005b69be55903e6016106.tar.bz2 |
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
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 1 | ||||
-rw-r--r-- | gcc/config/arm/arm.h | 13 |
3 files changed, 17 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ea6617b..e168767 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 0632397..928b169 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -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++); diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index e74698a..b18fff2 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -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. */ |