Richard Earnshaw wrote:

> This patch fixes a couple of cases where reload incorrectly thinks it
> should be messing around with the result of a match_operator operand.
> Given that it's never even tried to validate the contents of such an
> operand the changes it tries to make are bogus.

I'm wondering why this change is necessary; existing code seems to
attempt to handle match_operator operands by detecting an empty
constraint string:

      if (*constraints[i] == 0)
        /* Ignore things like match_operator operands.  */
        ;
[...]
          /* An empty constraint or empty alternative
             allows anything which matched the pattern.  */
          if (*p == 0 || *p == ',')
            win = 1, badop = 0;

So it seems to me that for match_operator operands, the
goal_alternative_win flag should always be true ...

Can you find out why this isn't true in your case?

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  GNU Toolchain for Linux on System z and Cell BE
  ulrich.weig...@de.ibm.com

Reply via email to