On 04/16/14 07:37, Jakub Jelinek wrote:

Creating a (mem (scratch)) too early may pessimize code too much,
perhaps it can be used during say sched1 etc. for alias analysis, (mem
(scratch)) is considered to alias everything,.
Plus, I think at least so far we have not been doing different decisions
based on whether some operand has been referenced in the template or not,
not sure if it is desirable to introduce it.

Anyway, others can have different opinion on what "X" should mean,
CCing Jeff and Eric.
My recollection is that "X" was supposed to be used in cases where we conditionally needed a scratch operand. The "X" constraint was used to identify alternatives where the scratch operand wasn't actually needed.

Conceptually that meant that literally anything could go in there, it need not be valid or reloadable.

I'm a bit surprised to see it showing up outside MD files.

jeff

Reply via email to