// First Kill
box.new Event(
- new Object[] { instr, ififo_out,
+ new Object[] { instr,
"`instruction_is_kill(instr)",
"!`instruction_is_unclog(instr)",
- newMayProceed.isFull() },
- new Action[] { instr, ififo_out,
+ ondeckFull.isFull()
+ },
+ new Action[] { instr,
+ ondeckFull.doDrain(),
new ConditionalAction("`instruction_count(instr)!=0", new AssignAction(repcount, instruction_count_instr+"-1")),
new ConditionalAction("`instruction_count(instr)!=0", doRepeatKill.doFill()),
new ConditionalAction("`instruction_count(instr)!=0", newMayProceed.doDrain()),
box.new Event(
new Object[] { doKill.isFull() },
new Action[] { doKill.doDrain(),
- new ConditionalAction("`instruction_count(instr)!=0", new AssignAction(repcount, instruction_count_instr+"-1")),
- new ConditionalAction("`instruction_count(instr)!=0", doRepeatKill.doFill()),
- new ConditionalAction("`instruction_count(instr)==0", newMayProceed.doFill())
+ new ConditionalAction("`instruction_count(ondeck)!=0", new AssignAction(repcount, instruction_count_ondeck+"-1")),
+ new ConditionalAction("`instruction_count(ondeck)!=0", doRepeatKill.doFill()),
+ new ConditionalAction("`instruction_count(ondeck)==0", newMayProceed.doFill())
});
// RepKill