Hi,

My name is Asaf Yaffe and I am a committer on the Eclipse Test and Performance 
Tool Platform (TPTP) Java Profiler project. We are currently working on 
updating our Binary Code Instrumentation (BCI) engine to support the new Java 6 
class file format (version 50.0) and the new StackMapTable attribute. When the 
BCI engine modifies the byte-codes of a method, it must recompute the 
StackMapTable attribute to successfully pass the Java 6 verifier. The current 
implementation of Java 6 gracefully “falls-back” to the old verification scheme 
(which does not depend on the StackMapTable attribute) in face of a 
missing/invalid StackMapTable attribute. This may not be the case in future 
Java versions, and tool writers are encouraged to update their BCI-based tools 
(see here for more information: https://jdk.dev.java.net/verifier.html). 

Instead of developing StackMapTable calculation for the BCI engine, we would 
like to explore the option of reusing code from the Harmony byte-code verifier 
to recompute the StackMapTable of a method from its byte-codes. Ideally, we 
would like to have a stand-alone library (provided in source or binary form – 
exact distribution model should be discussed) which exports two APIs:
-    IsStackMapTableAttributeValid(): given the method byte-codes and 
StackMapTable, checks whether the StackMapTable is valid.
-    RecomputeStackMapTableAttribute(): given the method byte-codes, produces a 
new valid StackMapTable that can be used by the Java 6 verifier of any Java 
6-compliant JVM.

With best regards,

Asaf Yaffe
Eclipse TPTP Committer, JVMTI Profiler component.




__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to