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

Reply via email to