summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2019-08-27 18:20:34 +0000
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2019-08-27 18:20:34 +0000
commit2f51a43f8c2b117e69a45eae6a7c849e035a793b (patch)
treeb0313ac4bae6ffe68f811c8d19b1bc52894aaf6d /llvm/include
parent2d247359cc399d283ae00c6b869ee05617f36e2b (diff)
downloadbcm5719-llvm-2f51a43f8c2b117e69a45eae6a7c849e035a793b.tar.gz
bcm5719-llvm-2f51a43f8c2b117e69a45eae6a7c849e035a793b.zip
[Tblgen][MCA] Add the ability to mark groups as LoadQueue and StoreQueue. NFCI
Before this patch, users were not allowed to optionally mark processor resource groups as load/store queues. That is because tablegen class MemoryQueue was originally declared as expecting a ProcResource template argument (instead of a more generic ProcResourceKind). That was an oversight, since the original intention from D54957 was to let user mark any processor resource as either load/store queue. This patch adds the ability to use processor resource groups in MemoryQueue definitions. This is not a user visible change. Differential Revision: https://reviews.llvm.org/D66810 llvm-svn: 370091
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/Target/TargetSchedule.td8
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/include/llvm/Target/TargetSchedule.td b/llvm/include/llvm/Target/TargetSchedule.td
index a36d259df83..24f37e94da9 100644
--- a/llvm/include/llvm/Target/TargetSchedule.td
+++ b/llvm/include/llvm/Target/TargetSchedule.td
@@ -563,10 +563,10 @@ class RetireControlUnit<int bufferSize, int retirePerCycle> {
// Base class for Load/StoreQueue. It is used to identify processor resources
// which describe load/store queues in the LS unit.
-class MemoryQueue<ProcResource PR> {
- ProcResource QueueDescriptor = PR;
+class MemoryQueue<ProcResourceKind PR> {
+ ProcResourceKind QueueDescriptor = PR;
SchedMachineModel SchedModel = ?;
}
-class LoadQueue<ProcResource LDQueue> : MemoryQueue<LDQueue>;
-class StoreQueue<ProcResource STQueue> : MemoryQueue<STQueue>;
+class LoadQueue<ProcResourceKind LDQueue> : MemoryQueue<LDQueue>;
+class StoreQueue<ProcResourceKind STQueue> : MemoryQueue<STQueue>;
OpenPOWER on IntegriCloud