Commit b8168f0d by Richard Stallman

*** empty log message ***

From-SVN: r998
parent 75473182
...@@ -830,7 +830,17 @@ __transfer_from_trampoline () \ ...@@ -830,7 +830,17 @@ __transfer_from_trampoline () \
|| (GET_CODE (X) == PLUS \ || (GET_CODE (X) == PLUS \
&& GET_CODE (XEXP (X, 0)) == REG \ && GET_CODE (XEXP (X, 0)) == REG \
&& REG_OK_FOR_BASE_P (XEXP (X, 0)) \ && REG_OK_FOR_BASE_P (XEXP (X, 0)) \
&& CONSTANT_ADDRESS_P (XEXP (X, 1)))) && CONSTANT_ADDRESS_P (XEXP (X, 1)) \
&& (GET_CODE (X) != CONST_INT || NS32K_DISPLACEMENT_P (INTVAL (X)))))
/* 1 if integer I will fit in a 4 byte displacement field.
Strictly speaking, we can't be sure that a symbol will fit this range.
But, in practice, it always will. */
#define NS32K_DISPLACEMENT(i) \
(((i) <= 16777215 && (i) >= -16777216) \
|| ((TARGET_32532 || TARGET_32332) \
&& (i) <= 536870913 && (i) >= -536870912))
/* Check for frame pointer or stack pointer. */ /* Check for frame pointer or stack pointer. */
#define MEM_REG(X) \ #define MEM_REG(X) \
......
...@@ -833,7 +833,7 @@ ...@@ -833,7 +833,7 @@
if (which_alternative == 1) if (which_alternative == 1)
{ {
int i = INTVAL (operands[2]); int i = INTVAL (operands[2]);
if ( i < 0x40000000 && i >= -0x40000000 ) if (NS32K_DISPLACEMENT_P (i))
return \"addr %c2(%1),%0\"; return \"addr %c2(%1),%0\";
else else
return \"movd %1,%0\;addd %2,%0\"; return \"movd %1,%0\;addd %2,%0\";
......
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