ruby: Statically allocate stats in SimpleNetwork, Switch, Throttle
authorJoel Hestness <jthestness@gmail.com>
Wed, 11 Sep 2013 20:33:27 +0000 (15:33 -0500)
committerJoel Hestness <jthestness@gmail.com>
Wed, 11 Sep 2013 20:33:27 +0000 (15:33 -0500)
commitc1cf55c7388d01222825911fabca617177966ce9
treef71b0f44ae3452515d7434d0c45f3d2f1a74ed49
parente391fd151b589648901b86be71971713e8ee4c59
ruby: Statically allocate stats in SimpleNetwork, Switch, Throttle

The previous changeset (9863:9483739f83ee) used STL vector containers to
dynamically allocate stats in the Ruby SimpleNetwork, Switch and Throttle. For
gcc versions before at least 4.6.3, this causes the standard vector allocator
to call Stats copy constructors (a no-no, since stats should be allocated in
the body of each SimObject instance). Since the size of these stats arrays is
known at compile time (NOTE: after code generation), this patch changes their
allocation to be static rather than using an STL vector.
src/mem/ruby/network/simple/SimpleNetwork.cc
src/mem/ruby/network/simple/SimpleNetwork.hh
src/mem/ruby/network/simple/Switch.cc
src/mem/ruby/network/simple/Switch.hh
src/mem/ruby/network/simple/Throttle.cc
src/mem/ruby/network/simple/Throttle.hh