@Override
	public void generateInitCode(JitCodeGenerator gen, ClassVisitor cv, MethodVisitor iv) {
		cv.visitField(ACC_PRIVATE | ACC_FINAL, name(), TDESC_PCODE_USEROP_DEFINITION, null,
			null);

		// []
		InitFixedLocal.THIS.generateLoadCode(iv);
		// [this]
		iv.visitInsn(DUP);
		// [this,this]
		iv.visitLdcInsn(userop.getName());
		// [this,this,name]
		iv.visitMethodInsn(INVOKEINTERFACE, NAME_JIT_COMPILED_PASSAGE, "getUseropDefinition",
			MDESC_JIT_COMPILED_PASSAGE__GET_USEROP_DEFINITION, true);
		// [this,userop]
		iv.visitFieldInsn(PUTFIELD, gen.nameThis, name(), TDESC_PCODE_USEROP_DEFINITION);
		// []
	}
{@inheritDoc}

<p>
Consider the userop {@code syscall()}. The declaration is equivalent to:

<pre>
private final {@link PcodeUseropDefinition} userop_syscall;
</pre>

<p>
And the initialization is equivalent to:

<pre>
userop_syscall = {@link JitCompiledPassage#getUseropDefinition(String) getUseropdDefinition}("syscall");
</pre>
Ghidra/Framework/Emulation/src/main/java/ghidra/pcode/emu/jit/gen/FieldForUserop.java