Item v2 = vstack.popItem(Item.LONG); Item v1 = vstack.popItem(Item.LONG);
Item v2 = vstack.popItem(Item.INT); Item v1 = vstack.popItem(Item.LONG);
    public final void visit_lushr() {        //TODO: port to orp-style        vstack.push(eContext);        Item v2 = vstack.popItem(Item.LONG);        Item v1 = vstack.popItem(Item.LONG);        v2.release(eContext);        v1.release(eContext);        vstack.pushItem(LongItem.createStack());        helper.writePOP(Register.ECX); // Value 2        helper.writePOP64(Register.EAX, Register.EDX); // Value 1        os.writeAND(Register.ECX, 63);        os.writeCMP_Const(Register.ECX, 32);        Label gt32Label = new Label(curInstrLabel + "gt32");        Label endLabel = new Label(curInstrLabel + "end");        os.writeJCC(gt32Label, X86Constants.JAE); // JAE        /** ECX < 32 */        os.writeSHRD_CL(Register.EAX, Register.EDX);        os.writeSHR_CL(Register.EDX);        os.writeJMP(endLabel);        /** ECX >= 32 */        os.setObjectRef(gt32Label);        os.writeMOV(INTSIZE, Register.EAX, Register.EDX);        os.writeXOR(Register.EDX, Register.EDX);        os.writeSHR_CL(Register.EAX);        os.setObjectRef(endLabel);        helper.writePUSH64(Register.EAX, Register.EDX);    }