Commit db5e449c by Richard Stallman

(RETURN_IN_MEMORY): Do nothing for structs and unions.

(EXTRA_CONSTRAINT): During reload, accept pseudo reg for Q.

From-SVN: r1199
parent 48b70616
...@@ -1059,16 +1059,19 @@ extern union tree_node *current_function_decl; ...@@ -1059,16 +1059,19 @@ extern union tree_node *current_function_decl;
#define REG_OK_FOR_BASE_P(X) (((unsigned) REGNO (X)) - 32 >= 32 && REGNO (X) != 0) #define REG_OK_FOR_BASE_P(X) (((unsigned) REGNO (X)) - 32 >= 32 && REGNO (X) != 0)
#define EXTRA_CONSTRAINT(OP, C) \ #define EXTRA_CONSTRAINT(OP, C) \
((C) == 'Q' ? \ ((C) == 'Q' \
((GET_CODE (OP) == MEM \ ? ((GET_CODE (OP) == MEM \
&& memory_address_p (GET_MODE (OP), XEXP (OP, 0)) \ && memory_address_p (GET_MODE (OP), XEXP (OP, 0)) \
&& ! symbolic_memory_operand (OP, VOIDmode))) \ && ! symbolic_memory_operand (OP, VOIDmode)) \
: ((C) == 'R' ? \ || (reload_in_progress && GET_CODE (OP) == REG \
(GET_CODE (OP) == LO_SUM \ && REGNO (OP) >= FIRST_PSEUDO_REGISTER)) \
&& GET_CODE (XEXP (OP, 0)) == REG \ : (C) == 'R' \
&& REG_OK_FOR_BASE_P (XEXP (OP, 0))) \ ? (GET_CODE (OP) == LO_SUM \
: ((C) == 'S' \ && GET_CODE (XEXP (OP, 0)) == REG \
? CONSTANT_P (OP) || memory_address_p (Pmode, OP) : 0))) && REG_OK_FOR_BASE_P (XEXP (OP, 0))) \
: (C) == 'S' \
? (CONSTANT_P (OP) || memory_address_p (Pmode, OP)) \
: 0)
#else #else
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment