base: Iterable CircularQueue implementation
authorRekai Gonzalez-Alberquilla <rekai.gonzalezalberquilla@arm.com>
Wed, 26 Apr 2017 16:44:33 +0000 (17:44 +0100)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Thu, 6 Dec 2018 15:30:27 +0000 (15:30 +0000)
commit2e8e51dcea5dec866953333dcf951f060fb46b03
treec5c1307e70efd51afba4bc9881b6dd97f80e1432
parent202a4c37ee88e47c614a61db5fe0f134f9f6ea1a
base: Iterable CircularQueue implementation

The former implementation of CircleBuf is functional but a bit too
tailored to match a use-case. This patches introduces a new iterable
circular queue, which adds some more functionality so it can also be
used for the newer LSQ implementation, where iteration and iterators
are a very desirable feature.

Additional contributors: Gabor Dozsa.

Change-Id: I5cfb95c8abc1f5e566a114acdbf23fc52a38ce5e
Signed-off-by: Giacomo Gabrielli <giacomo.gabrielli@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/13127
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br>
src/base/SConscript
src/base/circular_queue.hh [new file with mode: 0644]
src/base/circular_queue.test.cc [new file with mode: 0644]