pa.c (move_operand): Rely on memory_address_p to determine the validity of non-indexed memory addresses.

* pa.c (move_operand): Rely on memory_address_p to determine the
        validity of non-indexed memory addresses.
        * pa.h (GO_IF_LEGITIMATE_ADDRESS): Allow LO_SUM with a symbolic
        operand in DFmode and SFmode when generating PA2.0 code.

From-SVN: r30025
This commit is contained in:
Jeffrey A Law 1999-10-15 23:04:06 +00:00 committed by Jeff Law
parent d5e3e85b18
commit f9b5668e11
3 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,10 @@
Fri Oct 15 17:02:09 1999 Jeffrey A Law (law@cygnus.com)
* pa.c (move_operand): Rely on memory_address_p to determine the
validity of non-indexed memory addresses.
* pa.h (GO_IF_LEGITIMATE_ADDRESS): Allow LO_SUM with a symbolic
operand in DFmode and SFmode when generating PA2.0 code.
Fri Oct 15 14:25:19 1999 Richard Henderson <rth@cygnus.com>
* print-rtl.c (print_rtx): Limit last 'u' change to LABEL_REF.

View File

@ -331,9 +331,6 @@ move_operand (op, mode)
return 0;
op = XEXP (op, 0);
if (GET_CODE (op) == LO_SUM)
return (register_operand (XEXP (op, 0), Pmode)
&& CONSTANT_P (XEXP (op, 1)));
/* Since move_operand is only used for source operands, we can always
allow scaled indexing! */

View File

@ -1473,6 +1473,10 @@ extern struct rtx_def *hppa_va_arg();
&& REG_OK_FOR_BASE_P (XEXP (X, 0)) \
&& CONSTANT_P (XEXP (X, 1)) \
&& (TARGET_SOFT_FLOAT \
/* We can allow symbolic LO_SUM addresses\
for PA2.0. */ \
|| (TARGET_PA_20 \
&& GET_CODE (XEXP (X, 1)) != CONST_INT)\
|| ((MODE) != SFmode \
&& (MODE) != DFmode))) \
goto ADDR; \
@ -1482,6 +1486,10 @@ extern struct rtx_def *hppa_va_arg();
&& REG_OK_FOR_BASE_P (SUBREG_REG (XEXP (X, 0)))\
&& CONSTANT_P (XEXP (X, 1)) \
&& (TARGET_SOFT_FLOAT \
/* We can allow symbolic LO_SUM addresses\
for PA2.0. */ \
|| (TARGET_PA_20 \
&& GET_CODE (XEXP (X, 1)) != CONST_INT)\
|| ((MODE) != SFmode \
&& (MODE) != DFmode))) \
goto ADDR; \