[LLVMdev] Interprocedural Register Allocation
Madhusudan C.S
madhusudancs at gmail.com
Thu Oct 4 14:38:46 PDT 2012
Hi Jakob,
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>
> wrote:
>
> 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?
>
>
> Yes.
>
> Would you guys be Ok if I try
> to implement this without disturbing the project priorities but with
> a little help/guidance?
>
>
> Absolutely.
>
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.
>
> /jakob
>
>
--
Thanks and regards,
Madhusudan.C.S
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121004/14ee9dd8/attachment.html>
More information about the llvm-dev
mailing list