if (VM.VerifyAssertions) VM.assert(fpStackOffset >= 0);
if (VM.VerifyAssertions) VM._assert(fpStackOffset >= 0);
    private void rewriteFPStack(OPT_IR ir) {      //-#if RVM_FOR_IA32      OPT_PhysicalRegisterSet phys = ir.regpool.getPhysicalRegisterSet();      for (Enumeration b = ir.getBasicBlocks(); b.hasMoreElements(); ) {        OPT_BasicBlock bb = (OPT_BasicBlock)b.nextElement();        // The following holds the floating point stack offset from its        // 'normal' position.        int fpStackOffset = 0;        for (OPT_InstructionEnumeration inst = bb.forwardInstrEnumerator();              inst.hasMoreElements();) {          OPT_Instruction s = inst.next();          for (OPT_OperandEnumeration ops = s.getOperands();                ops.hasMoreElements(); ) {            OPT_Operand op = ops.next();            if (op.isRegister()) {              OPT_RegisterOperand rop = op.asRegister();              OPT_Register r = rop.register;              // Update MIR state for every phyiscal FPR we see              if (r.isPhysical() && r.isFloatingPoint() &&                  s.operator() != DUMMY_DEF &&                   s.operator() != DUMMY_USE) {                int n = phys.getFPRIndex(r);                if (fpStackOffset != 0) {                  n += fpStackOffset;                  rop.register = phys.getFPR(n);                }                ir.MIRInfo.fpStackHeight =                   Math.max(ir.MIRInfo.fpStackHeight, n+1);              }            } else if (op instanceof OPT_BURSManagedFPROperand) {              int regNum = ((OPT_BURSManagedFPROperand)op).regNum;              s.replaceOperand(op, new OPT_RegisterOperand(phys.getFPR(regNum),                                                            VM_Type.DoubleType));            }          }          // account for any effect s has on the floating point stack          // position.          if (s.operator().isFpPop()) {            fpStackOffset--;          } else if (s.operator().isFpPush()) {            fpStackOffset++;          }          if (VM.VerifyAssertions) VM.assert(fpStackOffset >= 0);        }      }      //-#endif    }  }