review request (L): 6981777 implement JSR 292 EG adjustments from summer 2010

Rémi Forax forax at univ-mlv.fr
Wed Sep 15 02:20:08 PDT 2010


Le 15/09/2010 10:22, John Rose a écrit :
> On Sep 14, 2010, at 7:55 PM, John Rose wrote:
>
>    
>> Here's the update:
>>
>> http://cr.openjdk.java.net/~jrose/6984311/webrev.01/
>>
>> Note:  I may ask for review of an alternative form of this change set, which uses N-ary instead of binary nodes in the constant pool.  The EG is discussing both options.
>>      
> I did the variation which supports N-ary MethodApply nodes.  It is somewhat less natural than the binary MethodApply nodes, because constant pools contain mostly binary nodes, but it matches the meaning of the constants better to allow them to be N-ary.  And the extra data structure is pretty simple.  See what you think.
>
> http://cr.openjdk.java.net/~jrose/6984311/webrev.01.nary
>
> (These are only the diffs from the binary to the N-ary version.)
>
> -- John

I prefer the N-ary version :)

Questions:
   - Why having two constants InvokeDynamic and MethodApply in that case.
     Constant arguments are tied to a BSM. I don't think you can reuse
     array of arguments accross different BSMs.

   - Why argcount is stored using 2 bytes instead of one ?
     These arguments are arguments of a Java method (the BSM)
     which limit the number or argument to 255.

Rémi


More information about the hotspot-compiler-dev mailing list