cpu: Fix the O3 CPU Drain
authorRekai Gonzalez-Alberquilla <rekai.gonzalezalberquilla@arm.com>
Thu, 22 Sep 2016 09:49:10 +0000 (10:49 +0100)
committerRekai Gonzalez-Alberquilla <rekai.gonzalezalberquilla@arm.com>
Thu, 22 Sep 2016 09:49:10 +0000 (10:49 +0100)
commitad296b068cf4a0b043988be518994ac6bd7582f0
tree584633dffa6806a93d2c2c1a94b90096e3c50d2e
parentd0ffd2f9b88d6abb29ed861deec12b40bdb7419f
cpu: Fix the O3 CPU Drain

The drain did not wait until stages were ready again. Therefore, as a
result of messages in the TimeBuffer being drain, the state after the
drain was not consistent and asserts fired in some places when the
draining happened after a stage got blocked, but before the notification
arrived to the previous stages.

Change-Id: Ib50b3b40b7f745b62c1eba2931dec76860824c71
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
src/cpu/o3/decode_impl.hh
src/cpu/o3/fetch_impl.hh
src/cpu/o3/iew_impl.hh
src/cpu/o3/rename_impl.hh