----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviews.m5sim.org/r/77/#review133 -----------------------------------------------------------
At some point, you and I should really go through and look at what we have here and see if we actually understand what is going on. Nothing in this diff looked wrong, so I think it's fine to go, but there are so many things that are questionable. At the very least it would be nice if we could work together for an hour or so and just comment the code. It's certainly crazy complicated. src/python/m5/SimObject.py <http://reviews.m5sim.org/r/77/#comment270> Do we explicitly do anything to prevent the same name from going into both _values and _children? src/python/m5/SimObject.py <http://reviews.m5sim.org/r/77/#comment271> So, does this mean that if I instantiate a SimObject called foo (e.g. bar = foo()), I won't get updates to children made directly to foo? If so, is that what we want? It's not exactly consistent with the values. src/python/m5/SimObject.py <http://reviews.m5sim.org/r/77/#comment272> I just noticed that we have the same __getattr__ in both SimObject and MetaSimObject. That seems a little bit odd. Do we even need the latter? src/python/m5/SimObject.py <http://reviews.m5sim.org/r/77/#comment273> Shouldn't these functions start with an underscore? Do we expect them to be used by users? - Nathan On 2010-07-29 21:52:09, Steve Reinhardt wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviews.m5sim.org/r/77/ > ----------------------------------------------------------- > > (Updated 2010-07-29 21:52:09) > > > Review request for Default. > > > Summary > ------- > > sim: clean up child handling > The old code for handling SimObject children was kind of messy, > with children stored both in _values and _children, and > inconsistent and potentially buggy handling of SimObject > vectors. Now children are always stored in _children, and > SimObject vectors are consistently handled using the > SimObjectVector class. > > Also, by deferring the parenting of SimObject-valued parameters > until the end (instead of doing it at assignment), we eliminate > the hole where one could assign a vector of SimObjects to a > parameter then append to that vector, with the appended objects > never getting parented properly. > > This patch induces small stats changes in tests with data races > due to changes in the object creation & initialization order. > The new code does object vectors in order and so should be more > stable. > > > Diffs > ----- > > src/python/m5/SimObject.py b28e7286990c > src/python/m5/params.py b28e7286990c > src/python/m5/simulate.py b28e7286990c > > Diff: http://reviews.m5sim.org/r/77/diff > > > Testing > ------- > > > Thanks, > > Steve > > _______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
