summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-mca/Scheduler.cpp
diff options
context:
space:
mode:
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2018-03-22 14:14:49 +0000
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2018-03-22 14:14:49 +0000
commit2dee62bd0af3178b656ba0409bb9f8af89c7ac2d (patch)
tree2dcf1fa31422549d020c6968934c8c661565f6ba /llvm/tools/llvm-mca/Scheduler.cpp
parent94c91b78e7f6a7fca6f569eb8264bc94a6e21511 (diff)
downloadbcm5719-llvm-2dee62bd0af3178b656ba0409bb9f8af89c7ac2d.tar.gz
bcm5719-llvm-2dee62bd0af3178b656ba0409bb9f8af89c7ac2d.zip
[llvm-mca] Minor refactoring. NFCI
Also, removed a couple of unused methods from class Instruction. llvm-svn: 328198
Diffstat (limited to 'llvm/tools/llvm-mca/Scheduler.cpp')
-rw-r--r--llvm/tools/llvm-mca/Scheduler.cpp13
1 files changed, 3 insertions, 10 deletions
diff --git a/llvm/tools/llvm-mca/Scheduler.cpp b/llvm/tools/llvm-mca/Scheduler.cpp
index 70b073b46e7..08ddf6ebe7d 100644
--- a/llvm/tools/llvm-mca/Scheduler.cpp
+++ b/llvm/tools/llvm-mca/Scheduler.cpp
@@ -260,16 +260,9 @@ void Scheduler::scheduleInstruction(unsigned Idx, Instruction &MCIS) {
notifyReservedBuffers(Desc.Buffers);
}
- bool MayLoad = Desc.MayLoad;
- bool MayStore = Desc.MayStore;
- if (MayLoad || MayStore)
- LSU->reserve(Idx, MayLoad, MayStore, Desc.HasSideEffects);
-
- bool IsReady = MCIS.isReady();
- if (IsReady && (MayLoad || MayStore))
- IsReady &= LSU->isReady(Idx);
-
- if (!IsReady) {
+ // If necessary, reserve queue entries in the load-store unit (LSU).
+ bool Reserved = LSU->reserve(Idx, Desc);
+ if (!MCIS.isReady() || (Reserved && !LSU->isReady(Idx))) {
DEBUG(dbgs() << "[SCHEDULER] Adding " << Idx << " to the Wait Queue\n");
WaitQueue[Idx] = &MCIS;
return;
OpenPOWER on IntegriCloud