Gabe Black has submitted this change and it was merged. ( https://gem5-review.googlesource.com/c/public/gem5/+/13469 )

Change subject: dev: Build most of the networking devices in the NULL_ISA build.
......................................................................

dev: Build most of the networking devices in the NULL_ISA build.

The only part of these devices which are incompatible with other ISAs,
with the possible exception of endianness transformation, is that
the dist_iface implementation refers to ThreadContext methods and
that class is heavily tied to the guest ISA. Only those few lines are
excluded in a NULL_ISA build.

Change-Id: Ic6d643fdbb792d0a996a37d75e027c5ce0ecd460
Reviewed-on: https://gem5-review.googlesource.com/c/13469
Reviewed-by: Gabor Dozsa <[email protected]>
Maintainer: Andreas Sandberg <[email protected]>
---
M src/dev/net/SConscript
M src/dev/net/dist_iface.cc
2 files changed, 4 insertions(+), 3 deletions(-)

Approvals:
  Gabor Dozsa: Looks good to me, approved
  Andreas Sandberg: Looks good to me, approved



diff --git a/src/dev/net/SConscript b/src/dev/net/SConscript
index e39df9d..908dd44 100644
--- a/src/dev/net/SConscript
+++ b/src/dev/net/SConscript
@@ -44,9 +44,6 @@

 Import('*')

-if env['TARGET_ISA'] == 'null':
-    Return()
-
 SimObject('Ethernet.py')

 # Basic Ethernet infrastructure
diff --git a/src/dev/net/dist_iface.cc b/src/dev/net/dist_iface.cc
index 7eef5d8..ded8901 100644
--- a/src/dev/net/dist_iface.cc
+++ b/src/dev/net/dist_iface.cc
@@ -869,11 +869,13 @@
         // stop point.  Suspend execution of all local thread contexts.
         // Dist-gem5 will reactivate all thread contexts when everyone has
         // reached the sync stop point.
+#if THE_ISA != NULL_ISA
         for (int i = 0; i < master->sys->numContexts(); i++) {
             ThreadContext *tc = master->sys->getThreadContext(i);
             if (tc->status() == ThreadContext::Active)
                 tc->quiesce();
         }
+#endif
     } else {
         inform("Request toggling syncronization on\n");
         master->syncEvent->start();
@@ -882,11 +884,13 @@
         // nodes to prevent causality errors.  We can also schedule CPU
         // activation here, since we know exactly when the next sync will
         // occur.
+#if THE_ISA != NULL_ISA
         for (int i = 0; i < master->sys->numContexts(); i++) {
             ThreadContext *tc = master->sys->getThreadContext(i);
             if (tc->status() == ThreadContext::Active)
                 tc->quiesceTick(master->syncEvent->when() + 1);
         }
+#endif
     }
 }


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/13469
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: Ic6d643fdbb792d0a996a37d75e027c5ce0ecd460
Gerrit-Change-Number: 13469
Gerrit-PatchSet: 3
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
Gerrit-Reviewer: Gabe Black <[email protected]>
Gerrit-Reviewer: Gabor Dozsa <[email protected]>
Gerrit-Reviewer: Jason Lowe-Power <[email protected]>
Gerrit-MessageType: merged
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to