Class JvmOpcodes

java.lang.Object
org.ek9lang.compiler.backend.jvm.support.JvmOpcodes

public final class JvmOpcodes extends Object
The JVM class-file version every generator stamps (CLASS_FILE_VERSION). The shared opcode selections are THE helpers, held as instances: IsJvmPrimitive, LoadOpcode, StoreOpcode and PushIntConstant - they single-source the per-type opcode switches and the ICONST/BIPUSH/SIPUSH/LDC ladder that were duplicated across several generators.
  • Field Details

    • CLASS_FILE_VERSION

      public static final int CLASS_FILE_VERSION
      THE class-file version stamped on every EK9-generated JVM class. EK9 targets Java 25+, so this is Opcodes.V25. Single source of truth: every ClassWriter.visit(...) in the JVM backend MUST pass this rather than a bare Vxx, so the class-file version cannot drift across generators again — it did once (MainClassGenerator emitted V25 while every other generator emitted V21).
      See Also: