Dataflow/alias analysis

Peter Veentjer <[email protected]>
Newsgroups gmane.comp.java.objectweb.asm
Message-ID <[email protected]>
Hi guys

I'm working on an stm and one of the optimizitions i want to add is to  
minimize transaction access and i want to do this by optimizing the  
bytecode.

If there is à transactional class, all managed fields of this class  
are removed and stored in à new class 'the tranlocal'. If a  
transactional object is used, the tranlocal of that object is stored  
in the transaction. This all works perfectly.

But what i want to do is to minimize the number of retrievals of the  
tranlocal from à transaction. One of the optimizitions i already added  
is that the tranlocal of the owner of an instance method automatically  
is added as extra method argument (i add extra parameters to a method  
including the transaction).

The problem is finding à safe way to figure out which object is on the  
stack when an put/getfield/invoke is executed. I could go back to the  
previous instruction and see if it was an aload 0, but this doesnt  
cover all the cases (cant deal with dup, swap etc). So i need  
something more intelligent.

Another related optimization i want to add is that the same tranlocal  
for the same transactional object doesnt need to be retrieved more  
than once in the same method body. But what is a safe way to determine  
this.

If someone could point me in the right direction.
message-footer.txt (text/plain, 238 B)
-- 
You receive this message as a subscriber of the [email protected] mailing list.
To unsubscribe: mailto:[email protected]
For general help: mailto:[email protected]?subject=help
OW2 mailing lists service home page: http://www.ow2.org/wws
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.