Better tabselect

Torbjorn Granlund tg at
Fri Apr 12 19:30:42 CEST 2013

David Miller <davem at> writes:

  It isn't really conditional execution on sparc, the resources and
  timing required for the "move" instruction are constant whether the
  condition matches or not.
That's not enough.

It needs to have the same data-dependency behaviour too.

And it needs to be a documented feature, since it is easy to imagine an
implementation which does create different data-dependency behaviour,
even if all current ones do not.

Using carry seems safer.  Of course, it is conceivable that a
carry-dependent instruction could run diffferently depending on the
value of the carry flag, but that'd be quite strange.

(For generic sparc64 code, we should perhaps avoid movXX for other
reasons too, since it interacts poorly with loads on US1-2, IIRC.)


More information about the gmp-devel mailing list