[Mono JIT] Extend Linux perf jitdump functionality #36774
Labels
area-Codegen-JIT-mono
enhancement
Product code improvement that does NOT require public API changes/additions
Milestone
mono/mono#17024 A similar improvement as coreclr is needed. The following is copied from #13540
Added basic support for generating the Linux perf jitdump format. The initial implementation did not include support for adding:
Debug info - JIT_CODE_DEBUG_INFO. Provide assembly the line number info to improve annotation.
Unwinding info - JIT_CODE_UNWINDING_INFO. Adds dwarf unwind info. This allows/improves recording with the --callgraph dwarf option.
Consider adding these records to improve value of perf jitdump support.
Implementation Notes:
JIT_CODE_DEBUG_INFO & JIT_CODE_UNWINDING_INFO each apply to the next JIT_CODE_LOAD record. This means to properly support multithreading, the information needs to be provide when generating the JIT_CODE_LOAD record
The FEATURE_GDBJIT probably already needs similar info to construct the elf files it passes to gdb. src/vm/gdbjit.cpp may be instructive.
The text was updated successfully, but these errors were encountered: