cpu-o3: remove useless indirection from lsq to cpu
Change-Id: Idd2d4277b542da728f0740590ae7ef9ae9b76629 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/50731 Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Gabe Black <gabe.black@gmail.com>
This commit is contained in:
@@ -646,20 +646,6 @@ class CPU : public BaseCPU
|
||||
flags, res, std::move(amo_op), byte_enable);
|
||||
}
|
||||
|
||||
/** CPU read function, forwards read to LSQ. */
|
||||
Fault
|
||||
read(LSQRequest* req, int load_idx)
|
||||
{
|
||||
return iew.ldstQueue.read(req, load_idx);
|
||||
}
|
||||
|
||||
/** CPU write function, forwards write to LSQ. */
|
||||
Fault
|
||||
write(LSQRequest* req, uint8_t *data, int store_idx)
|
||||
{
|
||||
return iew.ldstQueue.write(req, data, store_idx);
|
||||
}
|
||||
|
||||
/** Used by the fetch unit to get a hold of the instruction port. */
|
||||
Port &
|
||||
getInstPort() override
|
||||
|
||||
@@ -834,9 +834,9 @@ LSQ::pushRequest(const DynInstPtr& inst, bool isLoad, uint8_t *data,
|
||||
}
|
||||
Fault fault;
|
||||
if (isLoad)
|
||||
fault = cpu->read(req, inst->lqIdx);
|
||||
fault = read(req, inst->lqIdx);
|
||||
else
|
||||
fault = cpu->write(req, data, inst->sqIdx);
|
||||
fault = write(req, data, inst->sqIdx);
|
||||
// inst->getFault() may have the first-fault of a
|
||||
// multi-access split request at this point.
|
||||
// Overwrite that only if we got another type of fault
|
||||
|
||||
Reference in New Issue
Block a user