sim: Ensure draining is deterministic
authorAndreas Hansson <andreas.hansson@arm.com>
Sun, 19 Feb 2017 10:30:31 +0000 (05:30 -0500)
committerAndreas Hansson <andreas.hansson@arm.com>
Sun, 19 Feb 2017 10:30:31 +0000 (05:30 -0500)
commit184c6d7ebd7faa0869f294526a54a239a216b7c8
tree136ca9e844392f986649f571c43393ef77a687ca
parent912b20d02a4ec12b076e675ff150e3f1e89febaa
sim: Ensure draining is deterministic

The traversal of drainable objects could potentially be
non-deterministic when using an unordered set containing object
pointers. To ensure that the iteration is deterministic, we switch to
a vector. Note that the lookup and traversal of the drainable objects
is not performance critical, so the change has no negative consequences.
src/mem/cache/cache.hh
src/mem/coherent_xbar.hh
src/sim/drain.cc
src/sim/drain.hh