>> - cycles fed into advance_ccount may (and on real hardware actually >> do) depend on executed commands/pipeline/cache hits. Most of this >> stuff may be counted at the translation time; > > Since CCOUNT, as seen by any one thread of execution, on real hw depends > on cache hits, interrupts, and other asynchronous stuff, then don't bother > trying to account for it on a per-instruction basis. Just define a clock > that runs at a given rate and be done. No need to advance it manually.
It means no cycle-accurate emulation. This was one of my goals, maybe not closest one. Is it acceptable to have two simulation modes -- fast functional and slower cycle-accurate? >> - check_interrupts converts IRQs on enabled interrupt sources into current >> irq level. > This is needed during do_interrupt, but should not be used by the translator > itself. Not only during do_interrupt, but also in cpu_has_work. Thanks. -- Max