I've been fiddling with X86_FS with O3, and determined that it's getting stuck because there's an outstanding DTLB translation but no other activity. The translation comes back, but the CPU has stopped checking for instructions that are ready to reissue and never wakes up. There was a recent change implemented for ARM in O3 that added two pass style execution for memory instructions with delayed translation. I'm going to attempt to rework that so the call back that happens when translation finishes actually calls into the CPU to make the instruction progress instead of setting some state in the instruction and expecting the CPU to poll it. That isn't going to be as clean as it might sound because there are a lot of templates and type issues to sort out, but with that in place the CPU will be notified the translation is done whether or not it's asleep. The flow of execution for memory instructions will hopefully be simpler as well.
Gabe _______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
