From 561c33f0824a705cb360ecb4ae3bf8cfd490f007 Mon Sep 17 00:00:00 2001 From: Korey Sewell Date: Sun, 19 Jun 2011 21:43:40 -0400 Subject: 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. --- src/cpu/inorder/resources/graduation_unit.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/cpu/inorder/resources/graduation_unit.hh') 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]; }; -- cgit v1.2.3