From 84721fbde7a0bc86a1e3b279293394829ba43746 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Sun, 4 Apr 1993 18:07:08 -0600 Subject: [PATCH] pa.h (EXTRA_CONSTRAINT): Refine 'T' constraint to not accept pseudos which did not get hard registers. * pa.h (EXTRA_CONSTRAINT): Refine 'T' constraint to not accept pseudos which did not get hard registers. Do not use short_memory_operand. From-SVN: r4013 --- gcc/config/pa/pa.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 2a613a66942..8a65f7484de 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1095,7 +1095,7 @@ extern union tree_node *current_function_decl; `S' handles constraints for calls. - `T' is for fp load and store addresses.*/ + `T' is for fp loads and stores. */ #define EXTRA_CONSTRAINT(OP, C) \ ((C) == 'Q' ? \ (IS_RELOADING_PSEUDO_P (OP) \ @@ -1105,9 +1105,10 @@ extern union tree_node *current_function_decl; && memory_address_p (GET_MODE (OP), XEXP (OP, 0))\ && ! symbolic_memory_operand (OP, VOIDmode))) \ : ((C) == 'T' ? \ - (IS_RELOADING_PSEUDO_P (OP) \ - || (GET_CODE (OP) == MEM \ - && short_memory_operand (OP, VOIDmode))) \ + (GET_CODE (OP) == MEM \ + /* Using DFmode forces only short displacements \ + to be recognized as valid in reg+d addresses. */\ + && memory_address_p (DFmode, XEXP (OP, 0))) \ : ((C) == 'S' ? \ ((CONSTANT_P (OP) && ! TARGET_LONG_CALLS) \ || (reload_in_progress \ -- 2.30.2