This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [committed] clarify sleu_operand
> Um, this doesn't do the same thing at all. Please revert.
>
True, but it's more accurate this way.
> The point of the original is to exclude comparisons against ~0U,
> which can't be done, because we implement X <= C as X < (C + 1).
> That obviously isn't the same thing when C + 1 carries. Your patch
> now _allows_ comparisons against ~0U, and so from that point of view,
> it's a correctness regression.
>
I don't see this since...
> On the other hand, comparisons against ~2U are fine, and aren't
> allowed after your change. From that point of view it's a
> performance regression too.
The sltiu instruction only handles integer constants between 0 and 32767
according to the documentation. This makes that clear in the predicate
which it wasn't before.
-eric