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));
   }
 }
Beispiel #2
0
 /** 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;
 }
Beispiel #3
0
 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();
 }