<div dir="ltr"><div class="gmail_default" style="font-size:small"><span style="color:rgb(35,38,41);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Liberation Sans",sans-serif;font-size:15px">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?</span><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 25, 2020 at 11:13 AM Ranjani Krishnan <<a href="mailto:ranjani141@gmail.com">ranjani141@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-size:small">Ok, thanks a lot! Will go through it.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jun 24, 2020 at 12:22 PM Sameer Abu Asal <<a href="mailto:sameer.abuasal@gmail.com" target="_blank">sameer.abuasal@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi Ranjani,<br><br>If you are talking about LLVM IR when you said (Assembly); you might also want to look at LLVM Link Time optimizations: <a href="https://www.llvm.org/docs/LinkTimeOptimization.html" target="_blank">https://www.llvm.org/docs/LinkTimeOptimization.html</a><br clear="all"><div><div dir="ltr"><div dir="ltr"><br>--Sameer Abu Asal ,<br><br></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 22, 2020 at 12:07 PM Ranjani Krishnan via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-size:small"><div class="gmail_default" style="font-size:small">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?</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I need to do the analysis on the .s file, so doing it during linking or assembling will not help.</div></div><br>-- <br><div dir="ltr"><div dir="ltr">Thanks,<div>Ranjani</div></div></div></div>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr"><div dir="ltr">Thanks,<div>Ranjani</div></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">Thanks,<div>Ranjani</div></div></div>