https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87763

--- Comment #4 from Segher Boessenkool <segher at gcc dot gnu.org> ---
(In reply to Wilco from comment #3)
> IRA costing doesn't consider the possibility of a simple move being
> removeable.

Not always, yeah (only if you have matching constraints, which are silly to
have for moves; IRA or LRA should do the work, not the machine description).

> Neither does it consider that some variants are more expensive
> than others - use of '?' is the only way to mark more expensive variants.

? and !, or ^ and $ if it only more expensive if it needs reloads.

> The example shown is fixed when I change the w=rZ variant to ?w=rZ in
> movsi_aarch64.

Is it always more expensive than the other alternatives?  Then it *should*
have "?" modifiers!

Reply via email to