RFR (M): 8005418: JSR 292: virtual dispatch bug in 292 impl

Christian Thalinger christian.thalinger at oracle.com
Wed Jan 9 15:36:18 PST 2013


Based on John's verbal comments I did some smaller changes to the out-parameters to emphasize that these are truly out-parameters.  The webrev is updated and I'm going to push this.

-- Chris

On Jan 7, 2013, at 6:37 PM, Christian Thalinger <christian.thalinger at oracle.com> wrote:

> 
> On Jan 7, 2013, at 5:48 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
> 
>> Seems fine to me. I wish the code for_method_handle_inline() was in doCall.cpp instead of callGenerator.cpp. Originally for_*() method were used only for corresponding *Generator instance creation.
> 
> Perhaps.  At least the method is a member of CallGenerator.  I'm always confused when I find Foo::* methods in bar.cpp.
> 
> Thanks for the review.
> 
> -- Chris
> 
>> 
>> Thanks,
>> Vladimir
>> 
>> On 1/7/13 4:28 PM, Christian Thalinger wrote:
>>> http://cr.openjdk.java.net/~twisti/8005418
>>> 
>>> 8005418: JSR 292: virtual dispatch bug in 292 impl
>>> Reviewed-by:
>>> 
>>> The logic in CallGenerator::for_method_handle_inline does not pass
>>> call_is_virtual correctly.  Currently target->is_abstract() is used as
>>> a workaround.
>>> 
>>> The fix is to do the same thing as Parse::do_call is doing.
>>> 
>>> src/share/vm/opto/callGenerator.cpp
>>> src/share/vm/opto/compile.hpp
>>> src/share/vm/opto/doCall.cpp
>>> src/share/vm/opto/parse.hpp
>>> src/share/vm/opto/parse1.cpp
>>> 
> 



More information about the hotspot-compiler-dev mailing list