Commit 12d635bd by Richard Stallman

(GO_IF_LEGITIMATE_ADDRESS): Verify that register is valid for use as base...

(GO_IF_LEGITIMATE_ADDRESS): Verify that register is valid
for use as base register (un-allocated pseudos aren't when strict).

From-SVN: r2731
parent d14774f0
......@@ -573,13 +573,17 @@ enum reg_class { NO_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES };
if (GET_CODE (X) == REG) goto ADDR; \
if (CONSTANT_ADDRESS_P (X)) goto ADDR; \
if (GET_CODE (X) == PLUS) \
{ /* Handle [index]<address> represented with index-sum outermost */\
if (GET_CODE (XEXP (X, 0)) == REG && \
GET_CODE (XEXP (X, 1)) == CONST_INT) \
{ \
/* Handle [index]<address> represented with index-sum outermost */\
if (GET_CODE (XEXP (X, 0)) == REG \
&& REG_OK_FOR_BASE_P (XEXP (X, 0)) \
&& GET_CODE (XEXP (X, 1)) == CONST_INT) \
goto ADDR; \
if (GET_CODE (XEXP (X, 1)) == REG && \
GET_CODE (XEXP (X, 0)) == CONST_INT) \
goto ADDR; } \
if (GET_CODE (XEXP (X, 1)) == REG \
&& REG_OK_FOR_BASE_P (XEXP (X, 0)) \
&& GET_CODE (XEXP (X, 0)) == CONST_INT) \
goto ADDR; \
} \
}
......
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