if (kind == Kind.STACK) {    stack.operandStack.pop(this); } } break; }
case Kind.STACK:  if (VirtualStack.checkOperandStack) {    stack.operandStack.pop(this); } break; }
    final void push(EmitterContext ec) {        final AbstractX86Stream os = ec.getStream();        //os.log("LongItem.push "+Integer.toString(getKind()));        switch (getKind()) {        case Kind.REGISTER:            os.writePUSH(msb);            os.writePUSH(lsb);            break;        case Kind.LOCAL:            os.writePUSH(FP, getLsbOffsetToFP());            os.writePUSH(FP, getMsbOffsetToFP());            break;        case Kind.CONSTANT:            pushConstant(ec, os);            break;        case Kind.FPUSTACK:            //TODO            notImplemented();            break;        case Kind.STACK:            //nothing to do            if (VirtualStack.checkOperandStack) {                final VirtualStack stack = ec.getVStack();                if (kind == Kind.STACK) {                    // the item is not really pushed and popped                    // but this checks that it is really the top                    // element                    stack.operandStack.pop(this);                }            }            break;        }        release(ec);        kind = Kind.STACK;        if (VirtualStack.checkOperandStack) {            final VirtualStack stack = ec.getVStack();            stack.operandStack.push(this);        }    }