77e300e8f0b8db8eec448cae9c87d7c5bfad9757 |
|
06-Sep-2012 |
Manman Ren <mren@apple.com> |
Release build: guard dump functions with "ifndef NDEBUG" No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
0eb3a3524e9d68642e574780d19c781386ed4469 |
|
12-Jun-2012 |
Andrew Trick <atrick@apple.com> |
misched: When querying RegisterPressureTracker, always save current and max pressure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158340 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
4487479543d58df84bb403f4bcfd33f72aadfa18 |
|
12-Jun-2012 |
Andrew Trick <atrick@apple.com> |
misched: regpressure getMaxPressureDelta, revert accidental checkin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
ba17293a8827a7e0e390b0a1d6075148a58d9edd |
|
09-Jun-2012 |
Andrew Trick <atrick@apple.com> |
Register pressure: added getPressureAfterInstr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158256 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
1525260b3e50cc578939ef41b60609689eecfdd2 |
|
06-Jun-2012 |
Andrew Trick <atrick@apple.com> |
Move RegisterClassInfo.h. Allow targets to access this API. It's required for RegisterPressure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
afc2657cc33988a178d3b21645dba54484600c5f |
|
06-Jun-2012 |
Andrew Trick <atrick@apple.com> |
Move RegisterPressure.h. Make it a general utility for use by Targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
396618b43a85e12d290a90b181c6af5d7c0c5f11 |
|
02-Jun-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Switch all register list clients to the new MC*Iterator interface. No functional change intended. Sorry for the churn. The iterator classes are supposed to help avoid giant commits like this one in the future. The TableGen-produced register lists are getting quite large, and it may be necessary to change the table representation. This makes it possible to do so without changing all clients (again). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157854 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
5f887fab35cd71a1e6fcbfa64ae5cbbf43b39807 |
|
25-May-2012 |
Andrew Trick <atrick@apple.com> |
regpressure: Added RegisterPressure::dump git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157423 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
a7de4b99e47fc5061181ecdf7fd65e1b8441e2e7 |
|
25-May-2012 |
Andrew Trick <atrick@apple.com> |
regpressure: physreg livein/out fix git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
73a0d8ecf838a9b333c9865d2a4b72c5768fb49f |
|
17-May-2012 |
Andrew Trick <atrick@apple.com> |
misched: Added 3-level regpressure back-off. Introduce the basic strategy for register pressure scheduling. 1) Respect target limits at all times. 2) Indentify critical register classes (pressure sets). Track pressure within the scheduled region. Avoid increasing scheduled pressure for critical registers. 3) Avoid exceeding the max pressure of the region prior to scheduling. Added logic for picking between the top and bottom ready Q's based on regpressure heuristics. Status: functional but needs to be asjusted to achieve good results. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157006 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
0556bd35e564c89149aa02ea8d76f539c87ee875 |
|
17-May-2012 |
Andrew Trick <atrick@apple.com> |
comment git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157005 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
b54ec26b355157c76b29b12388d49816eaf57da1 |
|
17-May-2012 |
Andrew Trick <atrick@apple.com> |
regpressure: Fix getMaxUpwardPressureDelta. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157004 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
24617213ba8e9d1e0f10af33d88285a92304ab95 |
|
17-May-2012 |
Andrew Trick <atrick@apple.com> |
whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
7f8ab785af09e4d6e4db07157a5b5aa449b5c3ae |
|
10-May-2012 |
Andrew Trick <atrick@apple.com> |
misched: Introducing Top and Bottom register pressure trackers during scheduling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156571 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
55ba5dff3c1a723adf302f1124aafde797dbf31a |
|
10-May-2012 |
Andrew Trick <atrick@apple.com> |
RegPressure: API for speculatively checking instruction pressure. Added getMaxExcessUpward/DownwardPressure. They somewhat abuse the tracker by speculatively handling an instruction out of order. But it is convenient for now. In the future, we will cache each instruction's pressure contribution to make this efficient. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
d25303533909f62eae18ee53ed0ff692174b092c |
|
10-May-2012 |
Andrew Trick <atrick@apple.com> |
RegPressure: fix array index iteration style. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
2b8d0501b169c3ee81a9af1cb715e1be4d6a079e |
|
29-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
RegisterPressure: ArrayRefize some functions for better readability. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|
4dfeef100d940a0c1ca22055dcb29b02a4848f65 |
|
24-Apr-2012 |
Andrew Trick <atrick@apple.com> |
RegisterPressure: A utility for computing register pressure within a MachineInstr sequence. This uses the new target interface for tracking register pressure using pressure sets to model overlapping register classes and subregisters. RegisterPressure results can be tracked incrementally or stored at region boundaries. Global register pressure can be deduced from local RegisterPressure results if desired. This is an early, somewhat untested implementation. I'm working on testing it within the context of a register pressure reducing MachineScheduler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155454 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/CodeGen/RegisterPressure.cpp
|