RFR: 8314508: Improve how relativized pointers are printed by frame::describe [v2]

Fredrik Bredberg fbredberg at openjdk.org
Tue Mar 5 13:07:02 UTC 2024


> The output from frame::describe has been improved so that it now prints the actual derelativized pointer value, regardless if it's on the stack or on the heap. It also clearly shows which members of the fixed stackframe are relativized. See sample output of a riscv64 stackframe below:
> 
> 
> [6.693s][trace][continuations]  0x000000409e14cc88: 0x00000000eeceaf58 locals for #10
> [6.693s][trace][continuations]                                         local 0
> [6.693s][trace][continuations]                                         oop for #10
> [6.693s][trace][continuations]  0x000000409e14cc80: 0x00000000eec34548 local 1
> [6.693s][trace][continuations]                                         oop for #10
> [6.693s][trace][continuations]  0x000000409e14cc78: 0x00000000eeceac58 local 2
> [6.693s][trace][continuations]                                         oop for #10
> [6.693s][trace][continuations]  0x000000409e14cc70: 0x00000000eee03eb0 #10 method java.lang.invoke.LambdaForm$DMH/0x0000000050001000.invokeVirtual(Ljava/lang/Object;Ljava/lang/Object;)V @ 10
> [6.693s][trace][continuations]                                         - 3 locals 3 max stack
> [6.693s][trace][continuations]                                         -  codelet: return entry points
> [6.693s][trace][continuations]                                         saved fp
> [6.693s][trace][continuations]  0x000000409e14cc68: 0x00000040137dc790 return address
> [6.693s][trace][continuations]  0x000000409e14cc60: 0x000000409e14ccf0
> [6.693s][trace][continuations]  0x000000409e14cc58: 0x000000409e14cc60 interpreter_frame_sender_sp
> [6.693s][trace][continuations]  0x000000409e14cc50: 0x000000409e14cc00 interpreter_frame_last_sp        (relativized: fp-14)
> [6.693s][trace][continuations]  0x000000409e14cc48: 0x0000004050401a88 interpreter_frame_method
> [6.693s][trace][continuations]  0x000000409e14cc40: 0x0000000000000000 interpreter_frame_mdp
> [6.693s][trace][continuations]  0x000000409e14cc38: 0x000000409e14cbe0 interpreter_frame_extended_sp    (relativized: fp-18)
> [6.693s][trace][continuations]  0x000000409e14cc30: 0x00000000ef093110 interpreter_frame_mirror
> [6.693s][trace][continuations]                                         oop for #10
> [6.693s][trace][continuations]  0x000000409e14cc28: 0x0000004050401c68 interpreter_frame_cache
> [6.693s][trace][continuations]  0x000000409e14cc20: 0x000000409e14cc88 interpreter_frame_locals         (relativized: fp+3)
> [6.693s][trace][continuations]  0x000000409e14cc18: 0x0000004050401a7a interpre...

Fredrik Bredberg has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:

 - Merge branch 'master' into 8314508_relativized_ptr_frame_describe
 - Small white space fix
 - 8314508: Improve how relativized pointers are printed by frame::describe

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/18102/files
  - new: https://git.openjdk.org/jdk/pull/18102/files/c5457c7f..4ade221c

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=18102&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=18102&range=00-01

  Stats: 13240 lines in 1183 files changed: 6449 ins; 2864 del; 3927 mod
  Patch: https://git.openjdk.org/jdk/pull/18102.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/18102/head:pull/18102

PR: https://git.openjdk.org/jdk/pull/18102


More information about the hotspot-dev mailing list