RFR: 8272586: emit abstract machine code in hs-err logs [v3]

Doug Simon dnsimon at openjdk.java.net
Thu Oct 7 13:33:41 UTC 2021


> This enhances hs-err logs to:
> * Show the [abstract machine code](https://bugs.openjdk.java.net/browse/JDK-8213084) of the crashing frame if a disassembler is not installed.
> * Show machine code for the top frames on the native stack.
> 
> An interpreter or stub frame is only shown if it is the crashing frame.
> 
> A sample of the enhanced hs-err log can be seen [here](https://bugs.openjdk.java.net/secure/attachment/96664/hs_err_pid7179.log).

Doug Simon has updated the pull request incrementally with five additional commits since the last revision:

 - improved test for platforms such as Windows where only a single frame can have its code printed
 - more nullptr usage
   changed should_print_code to add_if_absent
   made printed_capacity a const value
   handle platforms where native stack cannot be walked directly by VMError
   improved Crasher such that the crash happens in a JIT compiled frame
 - refined MachCodeFramesInErrorFile test
 - omit timestamp from nmethod decoding and printing
 - removed leftover debug printing

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/5446/files
  - new: https://git.openjdk.java.net/jdk/pull/5446/files/0a69c058..ba55d0e3

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=5446&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=5446&range=01-02

  Stats: 169 lines in 6 files changed: 83 ins; 26 del; 60 mod
  Patch: https://git.openjdk.java.net/jdk/pull/5446.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/5446/head:pull/5446

PR: https://git.openjdk.java.net/jdk/pull/5446


More information about the hotspot-dev mailing list