Fwd: Re: [foreign] RFR: Debug code for ShuffleRecipe translation
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Mon Dec 17 18:58:59 UTC 2018
Your v2 webrev looks good!
Maurizio
On 17/12/2018 18:54, Jorn Vernee wrote:
> Forwarding to panama-dev since I hit 'reply' instead of 'reply to all'
> by accident
>
> ---
>
> It will list
>
> Flags:
> returnsInMemory
>
> When the return in memory flag is set, but that looks confusing when
> there are no flags.
>
> I could change it to list
>
> CallingSequence: {
> returnsInMemory: false
> Classes:
> STACK_ARGUMENT_SLOT
> VECTOR_ARGUMENT_REGISTER
> INTEGER_ARGUMENT_REGISTER
> Storage { INTEGER_ARGUMENT_REGISTER[0] (size=8) } : arg0 @ 0x0
> Storage { INTEGER_ARGUMENT_REGISTER[1] (size=8) } : arg1 @ 0x0
> VECTOR_RETURN_REGISTER
> INTEGER_RETURN_REGISTER
> Storage { INTEGER_RETURN_REGISTER[0] (size=8) } : __retval @ 0x0
> X87_RETURN_REGISTER
> }
>
> Since we only have the 1 flag any ways. Also adding a level of
> indentation the the list of classes.
>
> Updated webrev:
> http://cr.openjdk.java.net/~jvernee/panama/webrevs/shuffledebug/webrev.02/
>
> Jorn
>
> Maurizio Cimadamore schreef op 2018-12-17 19:17:
>> Looks good to me! One minor nit, unrelated to your patch, is that the
>> CallingSequence::asString() generates this 'Flags:' string which is, I
>> think, confusing. E.g. this
>>
>> CallingSequence: {
>> Flags:
>> STACK_ARGUMENT_SLOT
>>
>> Should be replaced by this
>>
>> CallingSequence: {
>> Classes:
>> STACK_ARGUMENT_SLOT
>>
>> Maurizio
>>
>> On 17/12/2018 18:11, Jorn Vernee wrote:
>>> Hi,
>>>
>>> This is another piece of debugging code I wrote while porting the
>>> binder to Windows that might be useful to have in the future.
>>>
>>> This prints info on how a CallingSequence is translated into a
>>> ShuffleRecipe, e.g.:
>>>
>>> Translating CallingSequence:
>>> CallingSequence: {
>>> Flags:
>>> STACK_ARGUMENT_SLOT
>>> VECTOR_ARGUMENT_REGISTER
>>> INTEGER_ARGUMENT_REGISTER
>>> Storage { INTEGER_ARGUMENT_REGISTER[0] (size=8) } : arg0 @ 0x0
>>> Storage { INTEGER_ARGUMENT_REGISTER[1] (size=8) } : arg1 @ 0x0
>>> VECTOR_RETURN_REGISTER
>>> INTEGER_RETURN_REGISTER
>>> Storage { INTEGER_RETURN_REGISTER[0] (size=8) } : __retval @ 0x0
>>> X87_RETURN_REGISTER
>>> }
>>>
>>> into:
>>> ShuffleRecipe: {
>>> Arguments: {
>>> BUFFER: []
>>> STACK: []
>>> VECTOR: []
>>> INTEGER: [PULL, PULL]
>>> X87: []
>>> }
>>> Returns: {
>>> BUFFER: []
>>> STACK: []
>>> VECTOR: []
>>> INTEGER: [PULL]
>>> X87: []
>>> }
>>> }
>>>
>>> This is guarded by the flag
>>> `-Djdk.internal.foreign.abi.ShuffleRecipe.DEBUG=true`.
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~jvernee/panama/webrevs/shuffledebug/webrev.01/
>>>
>>> Please let me know what you think.
>>>
>>> Thanks,
>>> Jorn
>>>
More information about the panama-dev
mailing list