diff options
author | Sean Wilson <spwilson2@wisc.edu> | 2017-06-07 13:23:09 -0500 |
---|---|---|
committer | Sean Wilson <spwilson2@wisc.edu> | 2017-06-20 18:03:21 +0000 |
commit | 475f613f2661f3be5f7479c5c7229e5adcb74d93 (patch) | |
tree | 7220347dc181487ae9a2909c873af5e837637f19 /src/arch/arm | |
parent | ebe5f0df9a6158ec4ed84429d1619f388eb1388b (diff) | |
download | gem5-475f613f2661f3be5f7479c5c7229e5adcb74d93.tar.xz |
arm: Replace EventWrapper use with EventFunctionWrapper
Change-Id: I08de5f72513645d1fe92bde99fa205dde897e951
Signed-off-by: Sean Wilson <spwilson2@wisc.edu>
Reviewed-on: https://gem5-review.googlesource.com/3747
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Diffstat (limited to 'src/arch/arm')
-rw-r--r-- | src/arch/arm/table_walker.cc | 11 | ||||
-rw-r--r-- | src/arch/arm/table_walker.hh | 20 |
2 files changed, 14 insertions, 17 deletions
diff --git a/src/arch/arm/table_walker.cc b/src/arch/arm/table_walker.cc index 8783d0a00..2d6664264 100644 --- a/src/arch/arm/table_walker.cc +++ b/src/arch/arm/table_walker.cc @@ -64,12 +64,15 @@ TableWalker::TableWalker(const Params *p) numSquashable(p->num_squash_per_cycle), pendingReqs(0), pendingChangeTick(curTick()), - doL1DescEvent(this), doL2DescEvent(this), - doL0LongDescEvent(this), doL1LongDescEvent(this), - doL2LongDescEvent(this), doL3LongDescEvent(this), + doL1DescEvent([this]{ doL1DescriptorWrapper(); }, name()), + doL2DescEvent([this]{ doL2DescriptorWrapper(); }, name()), + doL0LongDescEvent([this]{ doL0LongDescriptorWrapper(); }, name()), + doL1LongDescEvent([this]{ doL1LongDescriptorWrapper(); }, name()), + doL2LongDescEvent([this]{ doL2LongDescriptorWrapper(); }, name()), + doL3LongDescEvent([this]{ doL3LongDescriptorWrapper(); }, name()), LongDescEventByLevel { &doL0LongDescEvent, &doL1LongDescEvent, &doL2LongDescEvent, &doL3LongDescEvent }, - doProcessEvent(this) + doProcessEvent([this]{ processWalkWrapper(); }, name()) { sctlr = 0; diff --git a/src/arch/arm/table_walker.hh b/src/arch/arm/table_walker.hh index c52cfcb4c..b322c50d7 100644 --- a/src/arch/arm/table_walker.hh +++ b/src/arch/arm/table_walker.hh @@ -920,28 +920,22 @@ class TableWalker : public MemObject void doL1Descriptor(); void doL1DescriptorWrapper(); - EventWrapper<TableWalker, - &TableWalker::doL1DescriptorWrapper> doL1DescEvent; + EventFunctionWrapper doL1DescEvent; void doL2Descriptor(); void doL2DescriptorWrapper(); - EventWrapper<TableWalker, - &TableWalker::doL2DescriptorWrapper> doL2DescEvent; + EventFunctionWrapper doL2DescEvent; void doLongDescriptor(); void doL0LongDescriptorWrapper(); - EventWrapper<TableWalker, - &TableWalker::doL0LongDescriptorWrapper> doL0LongDescEvent; + EventFunctionWrapper doL0LongDescEvent; void doL1LongDescriptorWrapper(); - EventWrapper<TableWalker, - &TableWalker::doL1LongDescriptorWrapper> doL1LongDescEvent; + EventFunctionWrapper doL1LongDescEvent; void doL2LongDescriptorWrapper(); - EventWrapper<TableWalker, - &TableWalker::doL2LongDescriptorWrapper> doL2LongDescEvent; + EventFunctionWrapper doL2LongDescEvent; void doL3LongDescriptorWrapper(); - EventWrapper<TableWalker, - &TableWalker::doL3LongDescriptorWrapper> doL3LongDescEvent; + EventFunctionWrapper doL3LongDescEvent; void doLongDescriptorWrapper(LookupLevel curr_lookup_level); Event* LongDescEventByLevel[4]; @@ -960,7 +954,7 @@ class TableWalker : public MemObject static bool checkAddrSizeFaultAArch64(Addr addr, int currPhysAddrRange); Fault processWalkAArch64(); void processWalkWrapper(); - EventWrapper<TableWalker, &TableWalker::processWalkWrapper> doProcessEvent; + EventFunctionWrapper doProcessEvent; void nextWalk(ThreadContext *tc); |