[llvm-dev] Inlining functions from multiple assembly files

Ranjani Krishnan via llvm-dev llvm-dev at lists.llvm.org
Sat Oct 9 09:41:43 PDT 2021


In continuation to my previous doubt, I have an LLVM module with multiple
functions. I am adding the AlwaysInline attribute to all functions and
running createAlwaysInlinerLegacyPass. But 3-4 large functions are not
getting inlined. Is there any way to ensure all the functions in the module
are inlined irrespective of their size?

On Thu, Jun 25, 2020 at 11:13 AM Ranjani Krishnan <ranjani141 at gmail.com>
wrote:

> Ok, thanks a lot! Will go through it.
>
> On Wed, Jun 24, 2020 at 12:22 PM Sameer Abu Asal <sameer.abuasal at gmail.com>
> wrote:
>
>> Hi Ranjani,
>>
>> If you are talking about LLVM IR when you said (Assembly); you might also
>> want to look at LLVM Link Time optimizations:
>> https://www.llvm.org/docs/LinkTimeOptimization.html
>>
>> --Sameer Abu Asal ,
>>
>>
>>
>> On Mon, Jun 22, 2020 at 12:07 PM Ranjani Krishnan via llvm-dev <
>> llvm-dev at lists.llvm.org> wrote:
>>
>>> I am working on developing a method to do some analysis on Ada code. I
>>> have converted the high level code (multiple Ada files) to the
>>> corresponding LLVM IR (.s files) using the tool  dragonegg. The structure
>>> of my code is such that there are function calls across these files. Is
>>> there any way to inline these function calls? That is if function A in A.s
>>> calls function B in B.s, can the code for function B be added in A.s using
>>> some flag or pass in LLVM, like the AlwaysInlinerLegacyPass?
>>>
>>> I need to do the analysis on the .s file, so doing it during linking or
>>> assembling will not help.
>>>
>>> --
>>> Thanks,
>>> Ranjani
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> llvm-dev at lists.llvm.org
>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>>
>>
>
> --
> Thanks,
> Ranjani
>


-- 
Thanks,
Ranjani
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20211009/f998f287/attachment.html>


More information about the llvm-dev mailing list