https://github.com/egorbo/jitdisasmsample
COMPlus_JitDisasm usage example
https://github.com/egorbo/jitdisasmsample
Last synced: over 1 year ago
JSON representation
COMPlus_JitDisasm usage example
- Host: GitHub
- URL: https://github.com/egorbo/jitdisasmsample
- Owner: EgorBo
- Created: 2020-11-13T18:23:01.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2020-11-13T20:01:04.000Z (over 5 years ago)
- Last Synced: 2024-10-26T06:52:20.924Z (over 1 year ago)
- Language: Shell
- Size: 6.84 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# JitDisasmSample
CLR JIT is able to print "disam" for any method it compiles (or asked to compile via `RuntimeHelpers.PrepareMethod`)
However, this (and other) capabilities are enabled only in a special (Checked) version of clrjit
So we can download it (published from dotnet/runtime builds now) and use.
It also allows to play with experimental or inner features which are stripped in release versions.
# Known issue
Doesn't work on Linux/macOS for some reason (JIT<->VM version mismatch?) so only Windows at the moment
# Alternatives
[https://github.com/xoofx/JitBuddy](https://github.com/xoofx/JitBuddy) - it's based on clrmd so it doesn't require any
special version of JIT. But disasm output is less friendly (addresses instead of friendly names for calls/CORINFO helpers, branch weights, etc)