Hi All I am trying to trace the execution path of J3 jvm with input of java byte code . Once java byte codes compiled in to llvm IR it will be passed to VMKit for store them . I couldn't find out which function is getting this Jitted output from *Functioncache* and executing them ? because , VMKit doesn't have an implementation of llvm Executionengine's *runFunction* or *runFunctionAsMain* implementation which are responsible for executing Jitted llvm-IR ? Thanks Regards Sri. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140331/18a82812/attachment.html>
Hi! Everything is there: Function* JavaLLVMCompiler::parseFunction(JavaMethod* meth, Class* customizeFor); In the file JavaLLVMCompiler.cpp. At line 72, we translate the java bytecode into the llvm IR. At lines 73 and 74, we call the function passes, which generates the native code. Gaël 2014-03-31 23:49 GMT+02:00 emdc developer <emdcdeveloper at gmail.com>:> Hi All > I am trying to trace the execution path of J3 jvm with input of > java byte code . Once java byte codes compiled in to llvm IR it will be > passed to VMKit for store them . I couldn't find out which function is > getting this Jitted output from Functioncache and executing them ? because > , VMKit doesn't have an implementation of llvm Executionengine's runFunction > or runFunctionAsMain implementation which are responsible for executing > Jitted llvm-IR ? > > Thanks > > Regards > Sri. > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >-- ------------------------------------------------------------------- Gaël Thomas, Associate Professor, UPMC http://pagesperso-systeme.lip6.fr/Gael.Thomas/ -------------------------------------------------------------------
Thank you so much for your tip , I was digging in to there for more detail , how it llvm really change them in to native code , once we changed java byte code in to llvm IR in that method, we are using runPasses which is basically call passmanager ( passing function for optimization) , where it is actually converted in to machine code and how this translated IR reaching that point through runPasses method, Regards Sri. On 03/31/2014 11:38 PM, Gaël Thomas wrote:> Hi! > > Everything is there: > > Function* JavaLLVMCompiler::parseFunction(JavaMethod* meth, Class* > customizeFor); > > In the file JavaLLVMCompiler.cpp. > > At line 72, we translate the java bytecode into the llvm IR. At lines > 73 and 74, we call the function passes, which generates the native > code. > > Gaël > > > 2014-03-31 23:49 GMT+02:00 emdc developer <emdcdeveloper at gmail.com>: >> Hi All >> I am trying to trace the execution path of J3 jvm with input of >> java byte code . Once java byte codes compiled in to llvm IR it will be >> passed to VMKit for store them . I couldn't find out which function is >> getting this Jitted output from Functioncache and executing them ? because >> , VMKit doesn't have an implementation of llvm Executionengine's runFunction >> or runFunctionAsMain implementation which are responsible for executing >> Jitted llvm-IR ? >> >> Thanks >> >> Regards >> Sri. >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> > >