On 17 Jan 2008 11:08:54 +0300, Egor Pasko <[EMAIL PROTECTED]> wrote: > > On the 0x3CD day of Apache Harmony Simon Chow wrote: > > I am studying OPT in jitrino. For understanding the process of building > CFG, > > I have read some code of JavaByteCodeTranslator. > > In the constructor of JavaByteCodeTranslator, there is an additional > pass > > named JavaLabelPrepass, > > I would like to ask what is the exact purpose of this pass? > > the purpose is to mark basic blocks and inference stack variables and > local variables with their types. > > This information goes to the input of JavaByteCodeTranslator, which in > single pass goes through each bytecode instruction and converts it to > operand-based representation from the stack-based in bytecode. > > The problem is a little tricky (with variable merging logic) and > current design is poor. > > > Besides this, It is seems that the translator part will be refined, > which I > > saw in the wiki. Has it already been done in the current version? > > Thanks! > > no, translator is not refined, low priority task. > > Why do you study the process of building CFG? If you want to do > something with it, I would suggest to try some other place since all > JIT people here will agree that debugging JavalabelPrepass is > brain-damaging.
Thank! I am doing a project for combining static compiler with dynamic compilation environment (jitrino.OPT) As first step, now I am planning to translate the Harmony IR to WHIRL. But I can not find more information for the CFG structure in jitrino.OPT, which leads me to read the code in translation part. :( Any advice for this? -- > Egor Pasko > > -- >From : [EMAIL PROTECTED] School of Fudan University
