Class instrumentation in jdk.jfr module is a very complex class transformation spread across following classes:
- ASMToolkit
- EventClassBuilder
- EventHandlerCreator
- EventInstrumentation
- EventWriterMethod
- Utils
- ConstructorTracerWriter
- ConstructorWriter
- JIClassInstrumentation
- JIInliner
- JIMethodCallInliner
- JIMethodInliningAdapter
- JIMethodMergeAdapter
These are fixed by 3 related tasks in the issue links section; now JFR no longer has any dependency on ASM, and all its instructions use Class-File API.