This is a Zero infrastructure improvement that makes Zero VM work with AsyncGetCallTrace, and by extension, async-profiler.
Zero is quite odd in stack management. The "real" stack actually contains the C++ Interpreter and the rest of VM code. The Java stack is reported through the usual "frame" mechanism the rest of VM uses to get the mapping from Template Interpreter, stub, and compiled code. So, to support Java-centric AsyncGetCallTrace, we t "only" need Zero to report the proper Java frames from its ZeroStack from the profiling/signal handlers. Additional testing: - [x] Linux x86_64 Zero `serviceability/AsyncGetCallTrace` now pass - [x] Linux x86_64 Zero works with `async-profiler` ------------- Commit messages: - Initial work: runs async-profiler successfully Changes: https://git.openjdk.java.net/jdk/pull/5848/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=5848&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8274903 Stats: 136 lines in 4 files changed: 124 ins; 6 del; 6 mod Patch: https://git.openjdk.java.net/jdk/pull/5848.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/5848/head:pull/5848 PR: https://git.openjdk.java.net/jdk/pull/5848