Few questions about invokeDynamic
Rémi Forax
forax at univ-mlv.fr
Tue Nov 9 02:43:50 PST 2010
So a workaround for that bug is to declare the return type of
invokedynamic
to be not void but by example int.
thanks,
Rémi
Le 09/11/2010 10:54, Christian Thalinger a écrit :
> 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
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
More information about the mlvm-dev
mailing list