Predicate predicate = Default;
if (P_ALWAYS.get(inst)) predicate = IgnoreOLC;
- if (P_OLC_ZERO.get(inst)) throw new RuntimeException("not yet supported");
if (P_OLC_NONZERO.get(inst)) predicate = Default;
+ if (P_OLC_ZERO.get(inst)) predicate = OLCZero;
if (P_A.get(inst)) predicate = FlagA;
if (P_B.get(inst)) predicate = FlagB;
if (P_NOT_A.get(inst)) predicate = NotFlagA;
if (!pi.looping) instr = OS.set(instr);
switch(pi.predicate) {
case IgnoreOLC: instr = P_ALWAYS.set(instr); break;
+ case OLCZero: instr = P_OLC_ZERO.set(instr); break;
case Default: instr = P_OLC_NONZERO.set(instr); break;
case FlagA: instr = P_A.set(instr); break;
case FlagB: instr = P_B.set(instr); break;
case NotFlagA: instr = P_NOT_A.set(instr); break;
case NotFlagB: instr = P_NOT_B.set(instr); break;
+ default: throw new RuntimeException("error!");
}
if (d instanceof Tail) {