Add classfile-api module: java.lang.classfile (JEP 484) parse, generate, transform with timing instrumentation, ASM 9.11.1 comparison, version limits, JDK 24/25/26 API diff

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_017ic4b4VQVEJWetTT1dYzyJ
This commit is contained in:
2026-10-29 04:14:57 +00:00
co-authored by Claude Sonnet 5.5
parent eca73ad544
commit 41101bea40
37 changed files with 1763 additions and 0 deletions
@@ -0,0 +1,19 @@
$ java -cp classes:asm-9.11.1.jar... demo.BrokenGenerate (25.0.5+8-LTS)
DROP_STACK_MAPS: verify() -> 1 problem(s)
Expecting a stackmap frame at branch target 8 in demo/Broken::pick(int) @1
DROP_STACK_MAPS: defineClass -> java.lang.VerifyError
Expecting a stackmap frame at branch target 8
Exception Details:
Location:
PASS a branching method built without stack maps fails verification
PASS the same code with default options verifies
ireturn in a String method: build() succeeded (126 bytes)
verify: Bad return type in demo/Wrong::bad() @1 (java/lang/String is not assignable from integer_type)
PASS verify() catches a wrongly typed return
PASS stack underflow is caught while building
underflow: build() threw java.lang.IllegalArgumentException
Operand stack underflow at bytecode offset 0 of method u()
swapped labels: build() succeeded (173 bytes), verify() -> 0 problem(s)
swapped labels: defineClass -> java.lang.ClassFormatError: Illegal exception table range in class file demo/Swapped
PASS the JVM rejects the swapped exception-table labels
exit=0