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