| 1295 | } |
| 1296 | |
| 1297 | void LoopImpl::MutableStateSaver::on_fwd_begin() { |
| 1298 | if (!m_enabled) |
| 1299 | return; |
| 1300 | |
| 1301 | int swap_interval = m_swap_interval_setting; |
| 1302 | if (m_owner_opr->m_static_loop_time_infer) { |
| 1303 | int infer = m_owner_opr->m_static_loop_time_infer(); |
| 1304 | if (swap_interval < 0) |
| 1305 | swap_interval = infer; |
| 1306 | else |
| 1307 | swap_interval = std::min(swap_interval, infer); |
| 1308 | } else { |
| 1309 | if (swap_interval < 0) |
| 1310 | swap_interval = -swap_interval; |
| 1311 | } |
| 1312 | mgb_assert(swap_interval > 0); |
| 1313 | for (auto&& i : m_var2info) |
| 1314 | i.second.recorder->setup_for_record(swap_interval); |
| 1315 | } |
| 1316 | |
| 1317 | void LoopImpl::MutableStateSaver::on_fwd_finish() { |
| 1318 | if (!m_enabled) |
no test coverage detected