public function leaveOp(Op $op, Block $block) { if (!$op instanceof Op\Stmt\JumpIf) { return null; } if (!$op->cond instanceof Operand\Literal) { // Non-constant op return null; } // TODO: Figure out how to eliminate redundant Phi vars (eliminated phi vars) if ($op->cond->value) { return new Op\Stmt\Jump($op->if, $op->getAttributes()); } return new Op\Stmt\Jump($op->else, $op->getAttributes()); }