On Mon, 5 Jun 2023 22:03:59 GMT, Vladimir Ivanov <vliva...@openjdk.org> wrote:

>> Thanks @iwanowww . Does the output below look good to you? It prints 
>> ObjectValue in the same format as it was before this PR and only print 
>> details of the merge in the "Objects" section. Is there other output section 
>> that you think needs to be adjusted?
>> 
>> 
>> Compiled method (c2)     436   24             TestMultiSFO::test (48 bytes)
>>  total in heap  [0x00007f1df5155590,0x00007f1df5155850] = 704
>>  relocation     [0x00007f1df5155700,0x00007f1df5155718] = 24
>>  main code      [0x00007f1df5155720,0x00007f1df5155788] = 104
>>  stub code      [0x00007f1df5155788,0x00007f1df51557a0] = 24
>>  oops           [0x00007f1df51557a0,0x00007f1df51557b0] = 16
>>  metadata       [0x00007f1df51557b0,0x00007f1df51557b8] = 8
>>  scopes data    [0x00007f1df51557b8,0x00007f1df51557f8] = 64
>>  scopes pcs     [0x00007f1df51557f8,0x00007f1df5155848] = 80
>>  dependencies   [0x00007f1df5155848,0x00007f1df5155850] = 8
>> scopes:
>> ScopeDesc(pc=0x00007f1df515573a offset=1a):
>>    TestMultiSFO::test@-1 (line 12)
>> ScopeDesc(pc=0x00007f1df515575c offset=3c):
>>    TestMultiSFO::test@28 (line 19)
>>    Locals
>>     - l0: empty
>>     - l1: empty
>>     - l2: empty
>>     - l3: merge_obj[14]
>>     - l4: obj[15]
>> 
>>    Objects
>>     - merge_obj[14], selector="reg rbp [10],int", merge_pointer="nullptr", 
>> candidate_objs=[15, 16]
>>     - obj[15], is_root=1, klass: TestMultiSFO$Point 
>>        Fields: stack[12], stack[8]
>>     - obj[16], is_root=0, klass: TestMultiSFO$Point 
>>        Fields: stack[8], stack[12]
>
> Thanks, it looks much better now (except the position in Objects array is 
> missing). 
> 
> It makes sense to mention `is_root` for merge_obj case even though it's 
> always equals to '1`. Also, make merge_pointer optional and omit it when its 
> value is null.
> 
> BTW instead of printing `is_root=0/1`, you can introduce a more compact 
> notation  and mark relevant lines with a single symbol:
> 
>     - 0: R merge_obj[14], selector="reg rbp [10],int" candidates=[15, 16]
>     - 1: R obj[15], klass: TestMultiSFO$Point 
>               Fields: stack[12], stack[8]
>     - 2:   obj[16], klass: TestMultiSFO$Point 
>               Fields: stack[8], stack[12]

Sounds good. I'll make the changes and push them asap.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/12897#discussion_r1218671994

Reply via email to