[LLVMdev] outlining in llvm

Bataev, Alexey a.bataev at hotmail.com
Mon Jan 12 21:06:31 PST 2015


Hi Tehila,
You can try to use function outlining implemented in clang. It is based 
on class CapturedStmt.
You can try it with the the following construct:

#pragma clang __debug captured
<Code to be outlined>

Implementation is in clang/lib/Parse/ParsePragma.cpp, StmtResult 
Parser::HandlePragmaCaptured()

Best regards,
Alexey Bataev
=============
Software Engineer
Intel Compiler Team
Intel Corp.

31.12.2014 23:49, Tehila Mayzels пишет:
>
> Hi,
>
> I have some questions regarding outlining (extracting piece of code 
> into a function):
>
> 1.Is there an outlining pass in llvm (IR)? I've found out 
> CodeExtractor pass, but I'm not sure it’s exactly the same idea.
>
> 2.How do I set the function name?
>
> And another question:
>
> Where do I control the execution of my pass? I'm writing a pass that 
> first works on loops, than on a function (outlined from the loop) and 
> then again on loops.
>
> How can I do that?
>
> Thanks and happy new year,
>
> Tehila.
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150113/3047bcb5/attachment.html>


More information about the llvm-dev mailing list