os.writePOP(S0); os.writePOP(EAX); os.writeCDQ(); os.writeIDIV_EAX(S0); os.writePUSH(EDX);
final IntItem v2 = vstack.popInt(); final IntItem v1 = vstack.popInt();   L1AHelper.requestRegister(eContext, EAX, v1);   v2.loadIf(eContext, ~Item.Kind.LOCAL); v1.loadTo(eContext, EAX);   os.writeCDQ(); if (v2.isLocal()) { os.writeIDIV_EAX(FP, v2.getOffsetToFP()); } else { os.writeIDIV_EAX(v2.getRegister()); }   vstack.push(result);   v1.release(eContext); v2.release(eContext);
	public final void visit_irem() {		//TODO: port to orp-style		vstack.push(eContext);		IntItem v2 = vstack.popInt();		IntItem v1 = vstack.popInt();		v2.release1(eContext);		v1.release1(eContext);		vstack.push1(IntItem.createStack());		os.writePOP(S0); // Value2		os.writePOP(EAX); // Value1		os.writeCDQ();		os.writeIDIV_EAX(S0); // EAX = EDX:EAX / S0		os.writePUSH(EDX); // Remainder	}