|| inst.isLoad() || inst.isStore()
|| inst.isImplicitLoad() || inst.isImplicitStore()
  boolean shouldCSE (OPT_Instruction inst) {        if ((  inst.isAllocation())        || inst.isDynamicLinkingPoint()        || inst.isLoad()        || inst.isStore()        || inst.operator.opcode >= ARCH_INDEPENDENT_END_opcode)      return false;        switch (inst.operator.opcode) {    case INT_MOVE_opcode:    case LONG_MOVE_opcode:      //  OPT_Operand ival = Move.getVal(inst);      //if (ival instanceof OPT_ConstantOperand)      //        return  false;      // fall through    case GET_CLASS_OBJECT_opcode:    case CHECKCAST_opcode:    case CHECKCAST_NOTNULL_opcode:    case CHECKCAST_UNRESOLVED_opcode:    case MUST_IMPLEMENT_INTERFACE_opcode:    case INSTANCEOF_opcode:    case INSTANCEOF_NOTNULL_opcode:    case INSTANCEOF_UNRESOLVED_opcode:    case PI_opcode:    case FLOAT_MOVE_opcode:    case DOUBLE_MOVE_opcode:    case REF_MOVE_opcode:    case GUARD_MOVE_opcode:    case GUARD_COMBINE_opcode:    case TRAP_IF_opcode:    case REF_ADD_opcode:    case INT_ADD_opcode:    case LONG_ADD_opcode:    case FLOAT_ADD_opcode:    case DOUBLE_ADD_opcode:    case REF_SUB_opcode:    case INT_SUB_opcode:    case LONG_SUB_opcode:    case FLOAT_SUB_opcode:    case DOUBLE_SUB_opcode:    case INT_MUL_opcode:    case LONG_MUL_opcode:    case FLOAT_MUL_opcode:    case DOUBLE_MUL_opcode:    case INT_DIV_opcode:    case LONG_DIV_opcode:    case FLOAT_DIV_opcode:    case DOUBLE_DIV_opcode:    case INT_REM_opcode:    case LONG_REM_opcode:    case FLOAT_REM_opcode:    case DOUBLE_REM_opcode:    case INT_NEG_opcode:    case LONG_NEG_opcode:    case FLOAT_NEG_opcode:    case DOUBLE_NEG_opcode:    case REF_SHL_opcode:    case INT_SHL_opcode:    case LONG_SHL_opcode:    case REF_SHR_opcode:    case INT_SHR_opcode:    case LONG_SHR_opcode:    case REF_USHR_opcode:    case INT_USHR_opcode:    case LONG_USHR_opcode:    case REF_AND_opcode:    case INT_AND_opcode:    case LONG_AND_opcode:    case REF_OR_opcode:    case INT_OR_opcode:    case LONG_OR_opcode:    case REF_XOR_opcode:    case INT_XOR_opcode:    case REF_NOT_opcode:    case INT_NOT_opcode:    case LONG_NOT_opcode:    case LONG_XOR_opcode:    case INT_2LONG_opcode:    case INT_2FLOAT_opcode:    case INT_2DOUBLE_opcode:    case INT_2ADDRSigExt_opcode:    case INT_2ADDRZerExt_opcode:  //-#if RVM_FOR_64_ADDR    case LONG_2ADDR_opcode:  //-#endif    case ADDR_2INT_opcode:    case ADDR_2LONG_opcode:    case LONG_2INT_opcode:    case LONG_2FLOAT_opcode:    case LONG_2DOUBLE_opcode:    case FLOAT_2INT_opcode:    case FLOAT_2LONG_opcode:    case FLOAT_2DOUBLE_opcode:    case DOUBLE_2INT_opcode:    case DOUBLE_2LONG_opcode:    case DOUBLE_2FLOAT_opcode:    case INT_2BYTE_opcode:    case INT_2USHORT_opcode:    case INT_2SHORT_opcode:    case LONG_CMP_opcode:    case FLOAT_CMPL_opcode:    case FLOAT_CMPG_opcode:    case DOUBLE_CMPL_opcode:    case DOUBLE_CMPG_opcode:    case NULL_CHECK_opcode:    case BOUNDS_CHECK_opcode:    case INT_ZERO_CHECK_opcode:    case LONG_ZERO_CHECK_opcode:    case OBJARRAY_STORE_CHECK_opcode:    case OBJARRAY_STORE_CHECK_NOTNULL_opcode:    case BOOLEAN_NOT_opcode:    case BOOLEAN_CMP_INT_opcode:    case BOOLEAN_CMP_ADDR_opcode:    case FLOAT_AS_INT_BITS_opcode:    case INT_BITS_AS_FLOAT_opcode:    case DOUBLE_AS_LONG_BITS_opcode:    case LONG_BITS_AS_DOUBLE_opcode:    case ARRAYLENGTH_opcode:    case GET_OBJ_TIB_opcode:    case GET_CLASS_TIB_opcode:    case GET_TYPE_FROM_TIB_opcode:    case GET_SUPERCLASS_IDS_FROM_TIB_opcode:    case GET_DOES_IMPLEMENT_FROM_TIB_opcode:    case GET_ARRAY_ELEMENT_TIB_FROM_TIB_opcode:      return !(OPT_GCP.usesOrDefsPhysicalRegisterOrAddressType(inst));    }    return false;  }