@Use(REG, STACK)
Christian Wimmer
christian.wimmer at oracle.com
Fri Apr 25 23:39:30 UTC 2014
Yes, you are correct.
STACK is a hint to the register allocator that it does not need to
re-load a value to a register when it was spilled.
-Christian
On 04/25/2014 04:14 PM, Deneau, Tom wrote:
> Just checking, several of our hsail LIR Ops have annotations for source values like
> @Use({REG, STACK, CONST}) protected Value x;
>
> which as I understand it means that the value x is allowed to be instanceof StackSlot.
>
> So unless the underlying emit code can handle Values which are StackSlots, we should remove STACK from the @Use, right?
> (Most HSAIL instructions are register only so we would need to emit explicit load instructions).
>
> If the above understanding is true, I'm kind of surprised we didn't hit more problems.
> Maybe we don't have enough junits that use up all the registers.
>
> -- Tom
>
More information about the graal-dev
mailing list