diff options
author | Andrew Trick <atrick@apple.com> | 2013-09-06 17:32:47 +0000 |
---|---|---|
committer | Andrew Trick <atrick@apple.com> | 2013-09-06 17:32:47 +0000 |
commit | fb386db636d134b0b72cf0a37075906cf8f7248c (patch) | |
tree | 5ac0442f6c5d9ff3cdf7536d593a3b96d7c671ba /include | |
parent | 6bf0c6c53577485360247a527dd16aaa3297b93c (diff) | |
download | external_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.h | 3 | ||||
-rw-r--r-- | include/llvm/CodeGen/RegisterPressure.h | 4 |
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) { |