private static void validate(List<String> validList, List<String> invalidList, Unary unary) { for (String valid : validList) { assertTrue(unary.isValid(valid)); } for (String invalid : invalidList) { assertFalse(unary.isValid(invalid)); } }
/** Is there an instruction r1 = split r2 or r2 = split r1?? */ private static boolean split(OPT_Register r1, OPT_Register r2) { for (OPT_RegisterOperandEnumeration e = OPT_DefUse.defs(r1); e.hasMoreElements(); ) { OPT_RegisterOperand def = (OPT_RegisterOperand) e.nextElement(); OPT_Instruction s = def.instruction; if (s.operator == SPLIT) { OPT_Operand rhs = Unary.getVal(s); if (rhs.similar(def)) return true; } } for (OPT_RegisterOperandEnumeration e = OPT_DefUse.defs(r2); e.hasMoreElements(); ) { OPT_RegisterOperand def = (OPT_RegisterOperand) e.nextElement(); OPT_Instruction s = def.instruction; if (s.operator == SPLIT) { OPT_Operand rhs = Unary.getVal(s); if (rhs.similar(def)) return true; } } return false; }
public void flushCache() { super.flushCache(); }
private ConstantValue evaluateUnaryExpr(Unary expr, UnaryArithmeticOperation operation) { return evaluateUnaryExpr(expr.getArgument(), expr.getType().get(), operation); }
public void flushCollectionCache() { super.flushCollectionCache(); }