RFR (XXS): 8024275: During CTW: assert(sig_bt[member_arg_pos] == T_OBJECT) failed: dispatch argument must be an object
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Tue Sep 10 15:52:03 PDT 2013
On 9/11/13 2:43 AM, Christian Thalinger wrote:
>
> On Sep 10, 2013, at 3:11 PM, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
>
>> On 9/11/13 1:48 AM, Christian Thalinger wrote:
>>>
>>> On Sep 10, 2013, at 2:41 PM, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
>>>
>>>> Chris,
>>>>
>>>> Thanks for fixing this!
>>>>
>>>> Minor commments:
>>>>
>>>> - can you rename (for now) can_be_compiled method to something specific to CTW to disambiguate it?
>>>
>>> I can but it's unique because there is no other can_be_compiled in ClassLoader.
>> Ok. I was thinking mostly about can_be_compiled() vs CompilationPolicy::can_be_compiled(). But assert in the beginning is good enough.
>>
>>>> - why do you place "... Skipping method: ..." message under the guard? I'd prefer to be verbose here.
>>>
>>> Because we are already skipping methods for other reasons and it would change the output. Being paranoid here to not break any existing tests.
>> Sometimes tests should be broken. So we know where to fix them :-)
>> I haven't found any tests which exercise -XX:+CompileTheWorld, so it should be safe.
>
> So you want me to remove the Verbose guard?
Yes, please. I don't see much value having it under Verbose.
Best regards,
Vladimir Ivanov
>
> -- Chris
>
>>
>> Best regards,
>> Vladimir Ivanov
>>
>>>
>>> -- Chris
>>>
>>>>
>>>> Otherwise, looks good (not a Reviewer).
>>>>
>>>> Best regards,
>>>> Vladimir Ivanov
>>>>
>>>> On 9/11/13 1:16 AM, Christian Thalinger wrote:
>>>>> http://cr.openjdk.java.net/~twisti/8024275/webrev/
>>>>>
>>>>> 8024275: During CTW: assert(sig_bt[member_arg_pos] == T_OBJECT) failed: dispatch argument must be an object
>>>>> Reviewed-by:
>>>>>
>>>>> The issue is that we cannot compile MethodHandle::linkTo* when doing a CompileTheWorld since the signatures are not correct.
>>>>>
>>>>> The fix is to skip these methods during a CTW.
>>>>>
>>>>> src/share/vm/classfile/classLoader.cpp
>>>>>
>>>
>
More information about the hotspot-compiler-dev
mailing list