Henry Chung
2014-Nov-25 07:13 UTC
[LLVMdev] some of Basic blocks are deleted after running embedded ExecutionEngine
Hi llvm-ers, I have integrated an ExecutionEngine in my pass, before I run the execution engine, I check the program has 32 basic blocks. However, after I run the execution engine, the number of basic blocks is 30. Two basic blocks are deleted by the embedded JIT execution engine. Does the ExecutionEngine perform any optimization? If yes, how can I disable it? Thanks, Henry -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141125/e30641e2/attachment.html>
David Blaikie
2014-Nov-25 15:30 UTC
[LLVMdev] some of Basic blocks are deleted after running embedded ExecutionEngine
+Lang for jit things On Nov 24, 2014 11:15 PM, "Henry Chung" <zhguanwen at gmail.com> wrote:> Hi llvm-ers, > > I have integrated an ExecutionEngine in my pass, before I run the > execution engine, I check the program has 32 basic blocks. However, after I > run the execution engine, the number of basic blocks is 30. Two basic > blocks are deleted by the embedded JIT execution engine. > > Does the ExecutionEngine perform any optimization? If yes, how can I > disable it? > > Thanks, > Henry > > > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141125/7e409c0f/attachment.html>
Lang Hames
2014-Nov-26 19:10 UTC
[LLVMdev] some of Basic blocks are deleted after running embedded ExecutionEngine
Hi Henry, The ExecutionEngine owns any module that you pass to it, and it may make modifications to the module even at O0. If you want to preserve the existing module as-is you'll need to clone it and pass the clone to the ExecutionEngine instead. Cheers, Lang. On Tue, Nov 25, 2014 at 7:30 AM, David Blaikie <dblaikie at gmail.com> wrote:> +Lang for jit things > On Nov 24, 2014 11:15 PM, "Henry Chung" <zhguanwen at gmail.com> wrote: > >> Hi llvm-ers, >> >> I have integrated an ExecutionEngine in my pass, before I run the >> execution engine, I check the program has 32 basic blocks. However, after I >> run the execution engine, the number of basic blocks is 30. Two basic >> blocks are deleted by the embedded JIT execution engine. >> >> Does the ExecutionEngine perform any optimization? If yes, how can I >> disable it? >> >> Thanks, >> Henry >> >> >> >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141126/ebd33e1c/attachment.html>