Displaying 3 results from an estimated 3 matches for "liveoncall".
2015 Jun 01
4
[LLVMdev] RFC: liveoncall parameter attribute
...og
of the callee actual starts executing. It is illegal to make any
assumptions in the caller about whether the callee uses this value or
not. This attribute does not inhibit inlining. The semantics only
apply if a call must be emitted (including tail or sibling calls).
My tentative name is liveoncall, but I'm open to better names. Feel
free to make suggestions.
Today, the actual implementation would be quite simple. It will
basically consist of a single special case in DeadArgumentElimination.
In the long run, we might have to extend this to other inter-procedural
analysis and optim...
2014 Oct 31
2
[LLVMdev] Stackmaps: caller-save-registers passed as deopt args
This is a follow up on a conversation some of us had at the hacker lab -- I
noticed that sometimes I will get notified that a deopt value lives in a
register that is not callee-save (caller-save I guess, but is there another
term for this that is less similar to callee-save?). This surprised me
quite a bit since those registers immediately got clobbered by the call
inside the patchpoint, so we
2014 Nov 05
2
[LLVMdev] Stackmaps: caller-save-registers passed as deopt args
...n!
Yes, sorry for being unresponsive for a few days. Sanjoy summarized the issues perfectly.
> I think the distinction is really between whether the live values are
> "live on call" or "live on return". Ideally we should be able to mark
> values to be of either kind (liveoncall vs. liveonreturn) in the call
> to the patchpoint intrinsic. This will make the semantics of
> patchpoint slightly odd though -- we'll end up with an SSA instruction
> where some inputs are expected to be live *after* the instruction has
> been retired. Are there other SSA instruc...