generateJvmCode

open fun generateJvmCode(    translator: JVMTranslator,     method: MethodVisitor,     arguments: L2ReadBoxedVectorOperand,     result: L2WriteBoxedOperand)

Write a JVM invocation of this primitive. This sets up the interpreter, calls Interpreter.beforeAttemptPrimitive, calls Primitive.attempt, calls Interpreter.afterAttemptPrimitive, and records statistics as needed. It also deals with primitive failures, suspensions, and reifications.

Subclasses may do something more specific and efficient, and should be free to neglect the statistics. However, the resultRegister must be written, even if it's always nil, to satisfy the JVM bytecode verifier.

Parameters

translator

The JVMTranslator through which to write bytecodes.

method

The MethodVisitor into which bytecodes are being written.

arguments

The L2ReadBoxedVectorOperand containing arguments for the primitive.

result

The L2WriteBoxedOperand that will be assigned the result of running the primitive, if successful.