Few questions about invokeDynamic
Christian Thalinger
christian.thalinger at oracle.com
Tue Nov 9 01:54:24 PST 2010
On Nov 9, 2010, at 9:33 AM, Rémi Forax wrote:
> Le 09/11/2010 08:53, Christian Thalinger a écrit :
>> On Nov 8, 2010, at 11:46 PM, Rémi Forax wrote:
>>> But sadly, it crashes the VM.
>>> The test case below reproduces the bug.
>> I haven't tried yet but I guess it crashes in compiled code?
>>
>> -- Christian
>
> yes, no problem with the interpreter.
A debug build hits this assert:
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/methodHandleWalk.cpp:
262
=
=
=
=
=
=
========================================================================
Unexpected Error
------------------------------------------------------------------------------
Internal Error at methodHandleWalk.cpp:262, pid=17691, tid=7
assert(false) failed: IMPLEMENT ME
Do you want to debug the problem?
To debug, run 'dbx - 17691'; then switch to thread 7
Enter 'yes' to launch dbx automatically (PATH must include dbx)
Otherwise, press RETURN to abort...
=
=
=
=
=
=
========================================================================
The reason for that is an unimplemented path in the MethodHandleWalker
handling return-type conversion for raw-retypes. What's odd here is:
(dbx) p inrbt
inrbt = T_VOID
(dbx) p outrbt
outrbt = T_INT
The incoming return-type is void but the outgoing should be int.
-- Christian
More information about the mlvm-dev
mailing list