You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by "Martin Zaun (JIRA)" <ji...@apache.org> on 2005/10/28 17:48:55 UTC

[jira] Created: (JDO-195) JDO11 RI enhancer support for JDK1.5 classfiles

JDO11 RI enhancer support for JDK1.5 classfiles
-----------------------------------------------

         Key: JDO-195
         URL: http://issues.apache.org/jira/browse/JDO-195
     Project: JDO
        Type: New Feature
  Components: ri11  
    Reporter: Martin Zaun
 Assigned to: Martin Zaun 


The JDO11 RI enhancer should be extended to support JDK 1.5 classfiles.

According to the JDK 1.5 ammendments to the VM Spec, 2nd edition
  http://java.sun.com/docs/books/vmspec/2nd-edition/jvms-maintenance.html
support for the following new features is needed:

- new major, minor version number: {49,0}

- new access and property modifiers:
  - new class modifiers:
    ACC_ANNOTATION 0x2000 Declared as an annotation type.
    ACC_ENUM 0x4000 Declared as an enum type.
  - new field flag:
    ACC_ENUM 0x4000 Declared as an element of an enum.
  - new method flags:
    ACC_BRIDGE 0x0040 A bridge method, generated by the compiler.
    ACC_VARARGS 0x0080 Declared with variable number of arguments.

- new opcode: invokedynamic
  Operation: Invoke instance method; resolve and dispatch based on class
  Format: invokedynamic, indexbyte1, indexbyte2
  Forms: invokedynamic = 186 (0xba)
  Operand Stack: ..., objectref, [arg1, [arg2 ,T](B] => ...

- new ldc, ldc_w operand type: CONSTANT_Class

- new Signature Attribute
  It needs to be investigated whether Signature attributes have to be
  supplied for JDO methods that carry the type of managed fields or
  the PC class as parameter or return.

- The other new, pre-defined attributes don't need explicit support but
  can be handled by the enhancer generically:
  - new EnclosingMethod attribute
  - new RuntimeVisibleAnnotations attribute
  - new RuntimeInvisibleAnnotations attribute
  - new RuntimeVisibleParameterAnnotations attribute
  - new RuntimeInvisibleParameterAnnotations attribute
  - new AnnotationDefault attribute
  - new SourceDebugExtension Attribute
  - new LocalVariableTypeTable Attribute


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Re: JDO-195 patch for review (JDO11 RI enhancer support for JDK1.5 classfiles)

Posted by Michael Bouschen <mb...@spree.de>.
Hi Martin,

I added a few comments to the jira issue.

I noticed you added a new java file which seems to have the executable 
bit. Are you using subversion with cygwin? We had some issues with the 
executable bit and Michelle summarized the result on the JDO wiki. You 
find it in the subversion page 
(http://wiki.apache.org/jdo/SubversionRepository) in section "Using 
subversion on Windows with cygwin".

Regards Michael

>
> Please review the attached patch for the JDO11 RI enhancer support
> for JDK1.5 classfiles.
>
> There's an open issue whether Signature attributes have to be
> supplied for augmented JDO methods that carry the type of managed
> fields or the PC class as parameter or return.  This patch provides
> support for SignatureAttribute in the enhancer's classfile library
> but does not have the changes to the enhancer's core component to
> generate signatures for the JDO accessor, mutator, and jdoCopyField
> methods.  Once resolved, we might address this by a second patch.
>
> Martin
>


-- 
Michael Bouschen		Tech@Spree Engineering GmbH
mailto:mbo.tech@spree.de	http://www.tech.spree.de/
Tel.:++49/30/235 520-33		Buelowstr. 66			
Fax.:++49/30/2175 2012		D-10783 Berlin			


JDO-195 patch for review (JDO11 RI enhancer support for JDK1.5 classfiles)

Posted by Martin Zaun <Ma...@Sun.COM>.
Please review the attached patch for the JDO11 RI enhancer support
for JDK1.5 classfiles.

There's an open issue whether Signature attributes have to be
supplied for augmented JDO methods that carry the type of managed
fields or the PC class as parameter or return.  This patch provides
support for SignatureAttribute in the enhancer's classfile library
but does not have the changes to the enhancer's core component to
generate signatures for the JDO accessor, mutator, and jdoCopyField
methods.  Once resolved, we might address this by a second patch.

Martin

[jira] Commented: (JDO-195) JDO11 RI enhancer support for JDK1.5 classfiles

Posted by "Michael Bouschen (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JDO-195?page=comments#action_12356506 ] 

Michael Bouschen commented on JDO-195:
--------------------------------------

I can't say much about the patch, just two comments:

- It looks like the new opcode opc_invokedynamic replaces the placeholder opc_xxxunusedxxx used in the old code. There are a couple of places where the old code used the placeholder opc_xxxunusedxxx and the new code still has this line in comments. I propose to remove this comment. Please have a look at VMOp.java, Insn.java, InsnSingle.java and VMConstants.java.
- The patch sets the executable flag for file SignatureAttribute.java. I'm not sure whether this is na issue, but please check whether the file has the correct permissions before you check in.

> JDO11 RI enhancer support for JDK1.5 classfiles
> -----------------------------------------------
>
>          Key: JDO-195
>          URL: http://issues.apache.org/jira/browse/JDO-195
>      Project: JDO
>         Type: New Feature
>   Components: ri11
>     Reporter: Martin Zaun
>     Assignee: Martin Zaun
>  Attachments: patch_ri11_enhancer_jdk15_wo_signatures
>
> The JDO11 RI enhancer should be extended to support JDK 1.5 classfiles.
> According to the JDK 1.5 ammendments to the VM Spec, 2nd edition
>   http://java.sun.com/docs/books/vmspec/2nd-edition/jvms-maintenance.html
> support for the following new features is needed:
> - new major, minor version number: {49,0}
> - new access and property modifiers:
>   - new class modifiers:
>     ACC_ANNOTATION 0x2000 Declared as an annotation type.
>     ACC_ENUM 0x4000 Declared as an enum type.
>   - new field flag:
>     ACC_ENUM 0x4000 Declared as an element of an enum.
>   - new method flags:
>     ACC_BRIDGE 0x0040 A bridge method, generated by the compiler.
>     ACC_VARARGS 0x0080 Declared with variable number of arguments.
> - new opcode: invokedynamic
>   Operation: Invoke instance method; resolve and dispatch based on class
>   Format: invokedynamic, indexbyte1, indexbyte2
>   Forms: invokedynamic = 186 (0xba)
>   Operand Stack: ..., objectref, [arg1, [arg2 ,T](B] => ...
> - new ldc, ldc_w operand type: CONSTANT_Class
> - new Signature Attribute
>   It needs to be investigated whether Signature attributes have to be
>   supplied for JDO methods that carry the type of managed fields or
>   the PC class as parameter or return.
> - The other new, pre-defined attributes don't need explicit support but
>   can be handled by the enhancer generically:
>   - new EnclosingMethod attribute
>   - new RuntimeVisibleAnnotations attribute
>   - new RuntimeInvisibleAnnotations attribute
>   - new RuntimeVisibleParameterAnnotations attribute
>   - new RuntimeInvisibleParameterAnnotations attribute
>   - new AnnotationDefault attribute
>   - new SourceDebugExtension Attribute
>   - new LocalVariableTypeTable Attribute

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Closed: (JDO-195) JDO11 RI enhancer support for JDK1.5 classfiles

Posted by "Craig Russell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JDO-195?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Craig Russell closed JDO-195.
-----------------------------

    Resolution: Won't Fix

No more work is being planned for this release.

> JDO11 RI enhancer support for JDK1.5 classfiles
> -----------------------------------------------
>
>                 Key: JDO-195
>                 URL: https://issues.apache.org/jira/browse/JDO-195
>             Project: JDO
>          Issue Type: New Feature
>          Components: ri11
>            Reporter: Martin Zaun
>            Assignee: Martin Zaun
>            Priority: Minor
>         Attachments: patch_ri11_enhancer_jdk15_wo_signatures
>
>
> The JDO11 RI enhancer should be extended to support JDK 1.5 classfiles.
> According to the JDK 1.5 ammendments to the VM Spec, 2nd edition
>   http://java.sun.com/docs/books/vmspec/2nd-edition/jvms-maintenance.html
> support for the following new features is needed:
> - new major, minor version number: {49,0}
> - new access and property modifiers:
>   - new class modifiers:
>     ACC_ANNOTATION 0x2000 Declared as an annotation type.
>     ACC_ENUM 0x4000 Declared as an enum type.
>   - new field flag:
>     ACC_ENUM 0x4000 Declared as an element of an enum.
>   - new method flags:
>     ACC_BRIDGE 0x0040 A bridge method, generated by the compiler.
>     ACC_VARARGS 0x0080 Declared with variable number of arguments.
> - new opcode: invokedynamic
>   Operation: Invoke instance method; resolve and dispatch based on class
>   Format: invokedynamic, indexbyte1, indexbyte2
>   Forms: invokedynamic = 186 (0xba)
>   Operand Stack: ..., objectref, [arg1, [arg2 ,T](B] => ...
> - new ldc, ldc_w operand type: CONSTANT_Class
> - new Signature Attribute
>   It needs to be investigated whether Signature attributes have to be
>   supplied for JDO methods that carry the type of managed fields or
>   the PC class as parameter or return.
> - The other new, pre-defined attributes don't need explicit support but
>   can be handled by the enhancer generically:
>   - new EnclosingMethod attribute
>   - new RuntimeVisibleAnnotations attribute
>   - new RuntimeInvisibleAnnotations attribute
>   - new RuntimeVisibleParameterAnnotations attribute
>   - new RuntimeInvisibleParameterAnnotations attribute
>   - new AnnotationDefault attribute
>   - new SourceDebugExtension Attribute
>   - new LocalVariableTypeTable Attribute

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (JDO-195) JDO11 RI enhancer support for JDK1.5 classfiles

Posted by "Martin Zaun (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/JDO-195?page=all ]

Martin Zaun updated JDO-195:
----------------------------

    Attachment: patch_ri11_enhancer_jdk15_wo_signatures

There's an open issue whether Signature attributes have to be
supplied for augmented JDO methods that carry the type of managed
fields or the PC class as parameter or return.  This patch provides
support for SignatureAttribute in the enhancer's classfile library
but does not have the changes to the enhancer's core component to
generate signatures for the JDO accessor, mutator, and jdoCopyField
methods.  Once resolved, we might address this by a second patch.

Martin

> JDO11 RI enhancer support for JDK1.5 classfiles
> -----------------------------------------------
>
>          Key: JDO-195
>          URL: http://issues.apache.org/jira/browse/JDO-195
>      Project: JDO
>         Type: New Feature
>   Components: ri11
>     Reporter: Martin Zaun
>     Assignee: Martin Zaun
>  Attachments: patch_ri11_enhancer_jdk15_wo_signatures
>
> The JDO11 RI enhancer should be extended to support JDK 1.5 classfiles.
> According to the JDK 1.5 ammendments to the VM Spec, 2nd edition
>   http://java.sun.com/docs/books/vmspec/2nd-edition/jvms-maintenance.html
> support for the following new features is needed:
> - new major, minor version number: {49,0}
> - new access and property modifiers:
>   - new class modifiers:
>     ACC_ANNOTATION 0x2000 Declared as an annotation type.
>     ACC_ENUM 0x4000 Declared as an enum type.
>   - new field flag:
>     ACC_ENUM 0x4000 Declared as an element of an enum.
>   - new method flags:
>     ACC_BRIDGE 0x0040 A bridge method, generated by the compiler.
>     ACC_VARARGS 0x0080 Declared with variable number of arguments.
> - new opcode: invokedynamic
>   Operation: Invoke instance method; resolve and dispatch based on class
>   Format: invokedynamic, indexbyte1, indexbyte2
>   Forms: invokedynamic = 186 (0xba)
>   Operand Stack: ..., objectref, [arg1, [arg2 ,T](B] => ...
> - new ldc, ldc_w operand type: CONSTANT_Class
> - new Signature Attribute
>   It needs to be investigated whether Signature attributes have to be
>   supplied for JDO methods that carry the type of managed fields or
>   the PC class as parameter or return.
> - The other new, pre-defined attributes don't need explicit support but
>   can be handled by the enhancer generically:
>   - new EnclosingMethod attribute
>   - new RuntimeVisibleAnnotations attribute
>   - new RuntimeInvisibleAnnotations attribute
>   - new RuntimeVisibleParameterAnnotations attribute
>   - new RuntimeInvisibleParameterAnnotations attribute
>   - new AnnotationDefault attribute
>   - new SourceDebugExtension Attribute
>   - new LocalVariableTypeTable Attribute

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (JDO-195) JDO11 RI enhancer support for JDK1.5 classfiles

Posted by "Martin Zaun (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/JDO-195?page=all ]

Martin Zaun updated JDO-195:
----------------------------

    Priority: Minor  (was: Major)

> JDO11 RI enhancer support for JDK1.5 classfiles
> -----------------------------------------------
>
>          Key: JDO-195
>          URL: http://issues.apache.org/jira/browse/JDO-195
>      Project: JDO
>         Type: New Feature
>   Components: ri11
>     Reporter: Martin Zaun
>     Assignee: Martin Zaun
>     Priority: Minor
>  Attachments: patch_ri11_enhancer_jdk15_wo_signatures
>
> The JDO11 RI enhancer should be extended to support JDK 1.5 classfiles.
> According to the JDK 1.5 ammendments to the VM Spec, 2nd edition
>   http://java.sun.com/docs/books/vmspec/2nd-edition/jvms-maintenance.html
> support for the following new features is needed:
> - new major, minor version number: {49,0}
> - new access and property modifiers:
>   - new class modifiers:
>     ACC_ANNOTATION 0x2000 Declared as an annotation type.
>     ACC_ENUM 0x4000 Declared as an enum type.
>   - new field flag:
>     ACC_ENUM 0x4000 Declared as an element of an enum.
>   - new method flags:
>     ACC_BRIDGE 0x0040 A bridge method, generated by the compiler.
>     ACC_VARARGS 0x0080 Declared with variable number of arguments.
> - new opcode: invokedynamic
>   Operation: Invoke instance method; resolve and dispatch based on class
>   Format: invokedynamic, indexbyte1, indexbyte2
>   Forms: invokedynamic = 186 (0xba)
>   Operand Stack: ..., objectref, [arg1, [arg2 ,T](B] => ...
> - new ldc, ldc_w operand type: CONSTANT_Class
> - new Signature Attribute
>   It needs to be investigated whether Signature attributes have to be
>   supplied for JDO methods that carry the type of managed fields or
>   the PC class as parameter or return.
> - The other new, pre-defined attributes don't need explicit support but
>   can be handled by the enhancer generically:
>   - new EnclosingMethod attribute
>   - new RuntimeVisibleAnnotations attribute
>   - new RuntimeInvisibleAnnotations attribute
>   - new RuntimeVisibleParameterAnnotations attribute
>   - new RuntimeInvisibleParameterAnnotations attribute
>   - new AnnotationDefault attribute
>   - new SourceDebugExtension Attribute
>   - new LocalVariableTypeTable Attribute

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira