diff options
author | Korey Sewell <ksewell@umich.edu> | 2011-06-19 21:43:40 -0400 |
---|---|---|
committer | Korey Sewell <ksewell@umich.edu> | 2011-06-19 21:43:40 -0400 |
commit | 561c33f0824a705cb360ecb4ae3bf8cfd490f007 (patch) | |
tree | 7fb92ebc9a8f09ceacb8ad8e60e60990a9939621 /src/cpu/inorder/resources/graduation_unit.hh | |
parent | c4deabfb97928f81acb0d66338426cb5f2687c37 (diff) | |
download | gem5-561c33f0824a705cb360ecb4ae3bf8cfd490f007.tar.xz |
inorder: dont handle multiple faults on same cycle
if a faulting instruction reaches an execution unit,
then ignore it and pass it through the pipeline.
Once we recognize the fault in the graduation unit,
dont allow a second fault to creep in on the same cycle.
Diffstat (limited to 'src/cpu/inorder/resources/graduation_unit.hh')
-rw-r--r-- | src/cpu/inorder/resources/graduation_unit.hh | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cpu/inorder/resources/graduation_unit.hh b/src/cpu/inorder/resources/graduation_unit.hh index 01abae85b..836b568a6 100644 --- a/src/cpu/inorder/resources/graduation_unit.hh +++ b/src/cpu/inorder/resources/graduation_unit.hh @@ -58,9 +58,9 @@ class GraduationUnit : public Resource { void execute(int slot_num); protected: - Tick lastNonSpecTick; + Tick lastNonSpecTick[ThePipeline::MaxThreads]; + Tick lastFaultTick[ThePipeline::MaxThreads]; bool *nonSpecInstActive[ThePipeline::MaxThreads]; - InstSeqNum *nonSpecSeqNum[ThePipeline::MaxThreads]; }; |