From 08106825b963ae6505e978a0986d134d9860ac7a Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Fri, 1 Dec 2000 23:29:57 +0000 Subject: [PATCH] final.c (output_addr_const): Don't assume at least one operand is a CONST_INT. * final.c (output_addr_const) : Don't assume at least one operand is a CONST_INT. From-SVN: r37935 --- gcc/ChangeLog | 3 +++ gcc/final.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6c94d07a5a2..007d98c4e83 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2000-12-01 Alexandre Oliva + * final.c (output_addr_const) : Don't assume at least one + operand is a CONST_INT. + * config/sh/sh.c (reg_class_from_letter): Assign `k' to SIBCALL_REGS. (machine_dependent_reorg): Split all insns. * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Compute diff --git a/gcc/final.c b/gcc/final.c index 46c09ee8e34..95e37226449 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -3724,7 +3724,8 @@ output_addr_const (file, x) else { output_addr_const (file, XEXP (x, 0)); - if (INTVAL (XEXP (x, 1)) >= 0) + if (GET_CODE (XEXP (x, 1)) != CONST_INT + || INTVAL (XEXP (x, 1)) >= 0) fprintf (file, "+"); output_addr_const (file, XEXP (x, 1)); } -- 2.30.2