Triggers the next time based interrupt to occur (if time-based interrupts are enabled).
(&mut self)
| 620 | |
| 621 | /// Triggers the next time based interrupt to occur (if time-based interrupts are enabled). |
| 622 | fn trigger_next_time_based_interrupt(&mut self) { |
| 623 | /// Configures whether interrupts are triggered directly when a sleep event is triggered, |
| 624 | /// instead of simply adjusting timers. |
| 625 | /// |
| 626 | /// This is disabled by default to maintain backwards compatibility with previous traces. |
| 627 | const IMPROVED_SLEEP_INTERRUPT_TRIGGERING: bool = false; |
| 628 | |
| 629 | if IMPROVED_SLEEP_INTERRUPT_TRIGGERING { |
| 630 | self.force_trigger_next_time_based_interrupt(); |
| 631 | } |
| 632 | else { |
| 633 | // Warp time forward until the next timer event. |
| 634 | unsafe { unicorn_api::set_timer_countdown((*self.uc_ptr).ctx, 1) }; |
| 635 | } |
| 636 | } |
| 637 | |
| 638 | /// Triggers the next time based interrupt to occur (if time-based interrupts are enabled). |
| 639 | fn force_trigger_next_time_based_interrupt(&mut self) { |
no test coverage detected