return (mop.scale == scale) && (mop.disp == disp) && (mop.size == size);
return (mop.scale == scale) && (mop.disp.EQ(disp)) && (mop.size == size);
  public final boolean similar(OPT_Operand op) {    if (op instanceof OPT_MemoryOperand) {      OPT_MemoryOperand mop = (OPT_MemoryOperand)op;      if (base == null) {        if (mop.base != null) return false;      } else {        if (mop.base == null) return false;        if (!base.similar(mop.base)) return false;      }      if (index == null) {        if (mop.index != null) return false;      } else {        if (mop.index == null) return false;        if (!index.similar(mop.index)) return false;      }      return (mop.scale == scale) && (mop.disp == disp) && (mop.size == size);    } else {      return false;    }  }