aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2013-09-06 17:32:47 +0000
committerAndrew Trick <atrick@apple.com>2013-09-06 17:32:47 +0000
commitfb386db636d134b0b72cf0a37075906cf8f7248c (patch)
tree5ac0442f6c5d9ff3cdf7536d593a3b96d7c671ba /include
parent6bf0c6c53577485360247a527dd16aaa3297b93c (diff)
downloadexternal_llvm-fb386db636d134b0b72cf0a37075906cf8f7248c.zip
external_llvm-fb386db636d134b0b72cf0a37075906cf8f7248c.tar.gz
external_llvm-fb386db636d134b0b72cf0a37075906cf8f7248c.tar.bz2
mi-sched: cleanup register pressure update, remove a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190181 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/CodeGen/MachineScheduler.h3
-rw-r--r--include/llvm/CodeGen/RegisterPressure.h4
2 files changed, 6 insertions, 1 deletions
diff --git a/include/llvm/CodeGen/MachineScheduler.h b/include/llvm/CodeGen/MachineScheduler.h
index 18744e7..2003297 100644
--- a/include/llvm/CodeGen/MachineScheduler.h
+++ b/include/llvm/CodeGen/MachineScheduler.h
@@ -413,7 +413,8 @@ protected:
void updatePressureDiffs(ArrayRef<unsigned> LiveUses);
- void updateScheduledPressure(const std::vector<unsigned> &NewMaxPressure);
+ void updateScheduledPressure(const SUnit *SU,
+ const std::vector<unsigned> &NewMaxPressure);
bool checkSchedLimit();
diff --git a/include/llvm/CodeGen/RegisterPressure.h b/include/llvm/CodeGen/RegisterPressure.h
index a890bb0..1db0b9f 100644
--- a/include/llvm/CodeGen/RegisterPressure.h
+++ b/include/llvm/CodeGen/RegisterPressure.h
@@ -145,6 +145,8 @@ public:
typedef const PressureChange* const_iterator;
iterator begin() { return &PressureChanges[0]; }
iterator end() { return &PressureChanges[MaxPSets]; }
+ const_iterator begin() const { return &PressureChanges[0]; }
+ const_iterator end() const { return &PressureChanges[MaxPSets]; }
void addPressureChange(unsigned RegUnit, bool IsDec,
const MachineRegisterInfo *MRI);
@@ -159,6 +161,8 @@ public:
PressureDiffs(): PDiffArray(0), Size(0), Max(0) {}
~PressureDiffs() { free(PDiffArray); }
+ void clear() { Size = 0; }
+
void init(unsigned N);
PressureDiff &operator[](unsigned Idx) {