[LLVMdev] Interprocedural Register Allocation
madhusudancs at gmail.com
Thu Oct 4 14:38:46 PDT 2012
On Thu, Oct 4, 2012 at 2:31 PM, Jakob Stoklund Olesen <stoklund at 2pi.dk>wrote:
> On Oct 4, 2012, at 2:27 PM, "Madhusudan C.S" <madhusudancs at gmail.com>
> Basically, the PrologEpilogInsertion pass will add a bit mask to
>> MachineModuleInfo describing which registers are clobbered by the function
>> being compiled. Later, when compiling the callers, that bit mask is used to
>> initialize the regmask operands on call instructions.
> So the idea is to sidestep from the calling convention a bit if we
> already know that the called function will not be using all the
> registers required by the convention and instead use those registers
> in the caller?
> That's right.
> If I am understanding this correctly, is this something desirable for
> LLVM, even if it is not high priority?
> Would you guys be Ok if I try
> to implement this without disturbing the project priorities but with
> a little help/guidance?
Great! Thank you very much. Then, I will do some homework on how
I plan to implement this, a _very_ rough sketch if not the actual
design, and come back.
Btw, I just found this http://optimisticcompilers.blogspot.com/ So
I will just take a look at what happened to that project.
Thanks and regards,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev