Hello, I can give a little bit more details regarding 1.5 support enabling for DRL VM. As Rana already mentioned there are 8 new attributes should be supported by VM. To be precise there are three common attributes (Signature_attribute, RuntimeVisibleAnnotations_attribute, RuntimeInvisibleAnnotations_attribute) for ClassFile, field_info and method_info. One specific attribute (EnclosingMethod_attribute) for ClassFile. Three additional attributes (RuntimeVisibleParameterAnnotations_attribute, RuntimeInvisibleParameterAnnotations_attribute, AnnotationDefault_attribute) for method_info. And one attirbute (LocalVariableTypeTable_attribute) for Code. All these new attributes should be proccessed in vmcore/src/class_support/Class_File_Loader.cpp file. It seems to be convenient to proccess common attributes in one place. Field::parse, Method::parse and class_parse methods look like the right place for corresponding attributes proccessing.Method::_parse_code method is suitable place to support LocalVariableTypeTable_attribute. New attributes suppport seems to be the most challenging part of 1.5 class format support. A few changes required to basic structures such as Class, Field, Method and ClassMemeber declared in vmcore/includes/Class.h. For example is_varargs() & is_bridge() methods should be supported by Method structure, is_enum() by Field and get_signature() by Class_Member. One more feature is left for full 1.5 class file format support. It's ldc opcode. 1.5 extends the scope of this opcode from runtime constant of type int or float and string literals to symbolic references to a class. Thus to support new semantic of the ldc opcode in interpreter mode one need to incorporate required changes into interpreter/src/interpreter.cpp. The only one change for JITRINO.JET compiler is required. Currently the rth_get_lil_ldc_string method which is located in vmcore/src/jit/jit_runtime_support.cpp can load strings only. The implemetation should be extended to load classes as well. Unfortunatelly, I haven't investigated what should be changed in verification proccess for 1.5 class file format support Probably someone else can give us an advice. I hope this inforamtion is helpfull. Open to ansewr your questions.
Evgueni --------------------------------------------------------------------- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
