Commit 293166be by Torbjorn Granlund

(find_reloads, case 'E'): : Make this work like

constraint character `F' when REAL_ARITHMETIC is defined.

From-SVN: r9356
parent 7ac2547f
...@@ -2849,12 +2849,14 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p) ...@@ -2849,12 +2849,14 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p)
break; break;
case 'E': case 'E':
#ifndef REAL_ARITHMETIC
/* Match any floating double constant, but only if /* Match any floating double constant, but only if
we can examine the bits of it reliably. */ we can examine the bits of it reliably. */
if ((HOST_FLOAT_FORMAT != TARGET_FLOAT_FORMAT if ((HOST_FLOAT_FORMAT != TARGET_FLOAT_FORMAT
|| HOST_BITS_PER_WIDE_INT != BITS_PER_WORD) || HOST_BITS_PER_WIDE_INT != BITS_PER_WORD)
&& GET_MODE (operand) != VOIDmode && ! flag_pretend_float) && GET_MODE (operand) != VOIDmode && ! flag_pretend_float)
break; break;
#endif
if (GET_CODE (operand) == CONST_DOUBLE) if (GET_CODE (operand) == CONST_DOUBLE)
win = 1; win = 1;
break; break;
...@@ -2997,7 +2999,7 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p) ...@@ -2997,7 +2999,7 @@ find_reloads (insn, replace, ind_levels, live_known, reload_reg_p)
/* If this is a constant that is reloaded into the desired /* If this is a constant that is reloaded into the desired
class by copying it to memory first, count that as another class by copying it to memory first, count that as another
reload. This is consistent with other code and is reload. This is consistent with other code and is
required to avoid chosing another alternative when required to avoid choosing another alternative when
the constant is moved into memory by this function on the constant is moved into memory by this function on
an early reload pass. Note that the test here is an early reload pass. Note that the test here is
precisely the same as in the code below that calls precisely the same as in the code below that calls
......
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