[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bytecode generation



Pat is correct in that we still go from Jimple through either Baf or
Grimp to Jasmin, as described in the old papers. The conversion from
Baf to Jasmin is done in soot.baf.JasminClass. The conversion from
Grimp to Jasmin is done in soot.jimple.JasminClass. I agree that this
is very misleading, as are the comments in those files. I am currently
working on a big cleanup of Soot, so I will add this to my list of
things to clean up.

Ondrej

On Thu, Feb 20, 2003 at 05:19:47PM +1300, Stephen Cheng wrote:
> I am attempting to understand how JasminClass generates bytecode from the
> Jimple IR representation of a method. I have been reading the papers
> Sable-paper-2000-1 and sable-paper-1999-1. However it would appear that the
> bytecode generation algorithm has substantially changed since the
> publication of these papers. Sable-paper-2000-1 talks about Baf and Grimp
> approaches, neither of which seems to be implemented in the current version
> of Soot.
> 
> I am in particular looking for these answers:
> 1. Where I can get the relevant information or latest papers on this topic
> 2. sable-paper-2000-1 talks about using stack to store variables within the
> basic block, but not intra-block. Is this still the same in the current
> version of soot?
> 
> Thanks very much,
> Stephen Cheng
> 
>