I'm pretty sure that was in the code a while back, but I can not locate this currently in O3. Has this been removed?
In SE mode, I would think squashing after a system call is necessary because real system calls would need to save/restore context to Memory before returning to user-mode execution since the OS would naturally use the context on the CPU to service the syscall. M5 in SE mode just models that the register return values get set correctly. However, in O3 speculative execution, there is no dependency kept between what registers a system call might update and the next PC counters of the system call. It would probably be unrealistic to keep that type of dependency in the 1st place, so I'm wondering how does SE mode work for other ISAs if we aren't squashing after system calls? Or are we just lucky there? And lastly, since we are incorporating timing for events like TLB translation in SE mode wouldnt it also make sense to have some default latency for system calls as well? -- ---------- Korey L Sewell Graduate Student - PhD Candidate Computer Science & Engineering University of Michigan
_______________________________________________ m5-dev mailing list m5-dev@m5sim.org http://m5sim.org/mailman/listinfo/m5-dev