aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1994-05-27 17:30:31 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1994-05-27 17:30:31 -0400
commit8c4ff866d872c1a5039c8d3be6258b2652c2bafc (patch)
treef04290696e0b6f984c36c96073a2c1d534421e64 /gcc
parent6ded32282b8826e3da4987ae93018c1b0d1eab19 (diff)
downloadgcc-8c4ff866d872c1a5039c8d3be6258b2652c2bafc.zip
gcc-8c4ff866d872c1a5039c8d3be6258b2652c2bafc.tar.gz
gcc-8c4ff866d872c1a5039c8d3be6258b2652c2bafc.tar.bz2
(print_operand_address): print_operand_address creates PLUS-rtls for
internal use, so it has to handle them. From-SVN: r7372
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/ns32k/ns32k.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/gcc/config/ns32k/ns32k.c b/gcc/config/ns32k/ns32k.c
index 7b52213..3c80751 100644
--- a/gcc/config/ns32k/ns32k.c
+++ b/gcc/config/ns32k/ns32k.c
@@ -627,7 +627,7 @@ print_operand_address (file, addr)
off = XEXP (tmp1,1);
if (GET_CODE (sym) == SYMBOL_REF)
{
- if (GET_CODE (off) != CONST_INT)
+ if (GET_CODE (off) != CONST_INT)
abort ();
if (CONSTANT_POOL_ADDRESS_P (sym)
@@ -772,9 +772,10 @@ print_operand_address (file, addr)
/* Abs. addresses don't need a base (I think). */
if (GET_CODE (offset) != CONST_INT
#ifndef PC_RELATIVE
- && GET_CODE (offset) != LABEL_REF
- && GET_CODE (offset) != SYMBOL_REF
- && GET_CODE (offset) != CONST
+ && GET_CODE (offset) != LABEL_REF
+ && GET_CODE (offset) != SYMBOL_REF
+ && GET_CODE (offset) != CONST
+ && GET_CODE (offset) != PLUS
#endif
)
{
@@ -794,7 +795,8 @@ print_operand_address (file, addr)
#ifdef PC_RELATIVE
else if (GET_CODE (offset) == LABEL_REF
|| GET_CODE (offset) == SYMBOL_REF
- || GET_CODE (offset) == CONST)
+ || GET_CODE (offset) == CONST
+ || GET_CODE (offset) == PLUS)
fprintf (file, "(pc)");
#endif
#ifdef BASE_REG_NEEDED /* this is defined if the assembler always