Prefetcher.py (13825:90e5b4dfeaff) Prefetcher.py (13829:b623eae407f0)
1# Copyright (c) 2012, 2014 ARM Limited
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license

--- 29 unchanged lines hidden (view full) ---

38#
39# Authors: Ron Dreslinski
40# Mitch Hayenga
41
42from m5.SimObject import *
43from m5.params import *
44from m5.proxy import *
45
1# Copyright (c) 2012, 2014 ARM Limited
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license

--- 29 unchanged lines hidden (view full) ---

38#
39# Authors: Ron Dreslinski
40# Mitch Hayenga
41
42from m5.SimObject import *
43from m5.params import *
44from m5.proxy import *
45
46from m5.objects.BaseCPU import BaseCPU
47from m5.objects.ClockedObject import ClockedObject
48from m5.objects.IndexingPolicies import *
49from m5.objects.ReplacementPolicies import *
50
51class HWPProbeEvent(object):
52 def __init__(self, prefetcher, obj, *listOfNames):
53 self.obj = obj
54 self.prefetcher = prefetcher

--- 421 unchanged lines hidden (view full) ---

476 index_indexing_policy = Param.BaseIndexingPolicy(
477 SetAssociative(entry_size = 1, assoc = Parent.index_assoc,
478 size = Parent.index_entries),
479 "Indexing policy of the index")
480 index_replacement_policy = Param.BaseReplacementPolicy(LRURP(),
481 "Replacement policy of the index")
482
483 def listenFromProbeRetiredInstructions(self, simObj):
46from m5.objects.ClockedObject import ClockedObject
47from m5.objects.IndexingPolicies import *
48from m5.objects.ReplacementPolicies import *
49
50class HWPProbeEvent(object):
51 def __init__(self, prefetcher, obj, *listOfNames):
52 self.obj = obj
53 self.prefetcher = prefetcher

--- 421 unchanged lines hidden (view full) ---

475 index_indexing_policy = Param.BaseIndexingPolicy(
476 SetAssociative(entry_size = 1, assoc = Parent.index_assoc,
477 size = Parent.index_entries),
478 "Indexing policy of the index")
479 index_replacement_policy = Param.BaseReplacementPolicy(LRURP(),
480 "Replacement policy of the index")
481
482 def listenFromProbeRetiredInstructions(self, simObj):
484 if not isinstance(simObj, BaseCPU):
485 raise TypeError("argument must be of BaseCPU type")
483 if not isinstance(simObj, SimObject):
484 raise TypeError("argument must be of SimObject type")
486 self.addEvent(HWPProbeEventRetiredInsts(self, simObj,"RetiredInstsPC"))
485 self.addEvent(HWPProbeEventRetiredInsts(self, simObj,"RetiredInstsPC"))