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

RE: Question re. compilation of exceptions/monitors in Jimple (fwd)



Hello Jean-Pierre,
 
Could you please detail the command-line options you have used to generate the Jimple file? Thanks.
 
Regards,
Stephen
-----Original Message-----
From: Jean-Pierre.Talpin@irisa.fr [mailto:Jean-Pierre.Talpin@irisa.fr]
Sent: 26 April 2002 07:40
To: Feng QIAN
Cc: Stephen Cheng; soot-list@sable.mcgill.ca
Subject: Re: Question re. compilation of exceptions/monitors in Jimple (fwd)

Dear Stephen and Feng,
Many thanks for your answers, you did help us point out where the link seems to be broken.  We have tried examples with java.* and javax.real* APIs, examples with or without SOOT's method inlining. For some reason, the problem actually seems to come from the Jimple produced for the javax.realtime API by using method inlining (imethod inlining works perfect for the standard API). Any idea why it doesn't for RTJ ? Do we need to add some infomation on how to inline javax.realtime methods somewhere in SOOT ?

We are using the jdk1.3 javac compiler and IBM's javax.realtime API (from Visual Age).

Regards, and again many thanks for your help.

Jean-Pierre.
 

Feng QIAN wrote:

Hello Stephen and Jean-Pierre,

Obviously we did not test SOOT on J2ME or RTJ packages. I had a naive
question that where the javax.realtime package is available?

One point should be made clear is that jimple is more close to bytecode
rather than java source code. It is not easy to tell what
happens between MEE.java and MEE.jimple because MEE.jimple comes from
MEE.class (bytecode).

Cheers,
===========================================================
Feng Qian                             fqian@sable.mcgill.ca

Je vais recompiler la classe avec Visual Age mais il me semble que
j'obtenait le meme resultat qu'avec le compilo java 1.3 de sun

le jimple qui a été produit dans l'exemple fournit a été produit à
partir du bytecode généré par la jdk 1.3

si on ne fait appel à aucune methode d'inlining, il n'y a pas d'erreur :
les entermonitor et exitmonitor n'apparaissent pas car toute la methode
invoquée est "synchonized"
mais lorsque soot insert dans le code "principal" (ici la methode essai)
le code de la methode newInstance de la classe ImmortalMemory on a pour
alors une erreur

Je ne crois donc pas que ca soit une erreur du compilo mais plutot des
methodes d'inlining de soot