cpu: Dynamically instantiate O3 CPU LSQUnits
authorJoel Hestness <jthestness@gmail.com>
Wed, 11 Sep 2013 20:34:50 +0000 (15:34 -0500)
committerJoel Hestness <jthestness@gmail.com>
Wed, 11 Sep 2013 20:34:50 +0000 (15:34 -0500)
commita1f9081babaf67b5e98d6ad35a6b1f6130e12fd7
tree1c93aa0980ee7b6287839835181b0e38c47903c5
parent073b27c257da7118e3b17a0dc77d9da1ac863621
cpu: Dynamically instantiate O3 CPU LSQUnits

Previously, the LSQ would instantiate MaxThreads LSQUnits in the body of it's
object, but it would only initialize numThreads LSQUnits as specified by the
user. This had the effect of leaving some LSQUnits uninitialized when the
number of threads was less than MaxThreads, and when adding statistics to the
LSQUnit that must be initialized, this caused the stats initialization check to
fail. By dynamically instantiating LSQUnits, they are all initialized and this
avoids uninitialized LSQUnits from floating around during runtime.
src/cpu/o3/lsq.hh
src/cpu/o3/lsq_impl.hh