Adrien DEGRANGE via llvm-dev
2016-Jan-11 14:31 UTC
[llvm-dev] Apply optimization passes with short names
Hi all, I apologize for bothering you, but even after many efforts, I can't solve my issue. There is a great command-line optimizer tool, "opt", which can apply optimization passes to the IR code : opt -mem2reg -S myFile.ll -o myFile.ll With that tool, an optimization pass is referred as its "short name" (mem2reg), and these passes are pretty well documented, for instance here: http://llvm.org/docs/Passes.html However, if I want to apply the same optimization pass in a C++ code, I have to call a specific function, such as: myPassManager->add(createPromoteMemoryToRegisterPass()); The link between the "mem2reg" short name and the "createPromoteMemoryToRegister" function is pretty obvious, but not completely straightforward. Is there any dictionary, or at least a comprehensive documentation about these translations? Thanks a lot in advance! Have a great day, AD Adrien Dégrange Recherche & Développement
David Blaikie via llvm-dev
2016-Jan-11 17:20 UTC
[llvm-dev] Apply optimization passes with short names
If you look for all the calls to the INITIALIZE_PASS_BEGIN macro in LLVM
(all in lib/{Transforms,Analysis}/**/*.cpp) you should find all the
short/long name pairs, I think.
On Mon, Jan 11, 2016 at 6:31 AM, Adrien DEGRANGE via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hi all,
>
> I apologize for bothering you, but even after many efforts, I can't
solve
> my issue.
>
> There is a great command-line optimizer tool, "opt", which can
apply
> optimization passes to the IR code :
> opt -mem2reg -S myFile.ll -o myFile.ll
>
> With that tool, an optimization pass is referred as its "short
name"
> (mem2reg), and these passes are pretty well documented, for instance here:
> http://llvm.org/docs/Passes.html
>
> However, if I want to apply the same optimization pass in a C++ code, I
> have to call a specific function, such as:
> myPassManager->add(createPromoteMemoryToRegisterPass());
>
> The link between the "mem2reg" short name and the
> "createPromoteMemoryToRegister" function is pretty obvious, but
not
> completely straightforward.
> Is there any dictionary, or at least a comprehensive documentation about
> these translations?
>
> Thanks a lot in advance!
>
> Have a great day,
>
> AD
>
> Adrien Dégrange
> Recherche & Développement
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20160111/517839d9/attachment.html>