diff --git a/src/mem/cache/prefetch/Prefetcher.py b/src/mem/cache/prefetch/Prefetcher.py index 5346937a95..62b5841f44 100644 --- a/src/mem/cache/prefetch/Prefetcher.py +++ b/src/mem/cache/prefetch/Prefetcher.py @@ -81,6 +81,8 @@ class BasePrefetcher(ClockedObject): "Notify the hardware prefetcher on hit on prefetched lines") use_virtual_addresses = Param.Bool(False, "Use virtual addresses for prefetching") + page_bytes = Param.MemorySize('4KiB', + "Size of pages for virtual addresses") def __init__(self, **kwargs): super(BasePrefetcher, self).__init__(**kwargs) diff --git a/src/mem/cache/prefetch/base.cc b/src/mem/cache/prefetch/base.cc index 06d2b91050..cb4c1e8118 100644 --- a/src/mem/cache/prefetch/base.cc +++ b/src/mem/cache/prefetch/base.cc @@ -98,7 +98,7 @@ Base::Base(const BasePrefetcherParams &p) lBlkSize(floorLog2(blkSize)), onMiss(p.on_miss), onRead(p.on_read), onWrite(p.on_write), onData(p.on_data), onInst(p.on_inst), requestorId(p.sys->getRequestorId(this)), - pageBytes(p.sys->getPageBytes()), + pageBytes(p.page_bytes), prefetchOnAccess(p.prefetch_on_access), prefetchOnPfHit(p.prefetch_on_pf_hit), useVirtualAddresses(p.use_virtual_addresses),