- Feb 21, 2013
-
-
Jakob Stoklund Olesen authored
When findReachingDefs() finds that only one value can reach the basic block, just copy the work list of visited blocks directly into the live interval. Sort the block list and use a LiveRangeUpdater to make the bulk add fast. When multiple reaching defs are found, transfer the work list to the updateSSA() work list as before. Also use LiveRangeUpdater in updateLiveIns() following updateSSA(). This makes live interval analysis more than 3x faster on one huge test case. llvm-svn: 175685
-
- Sep 06, 2012
-
-
Jakob Stoklund Olesen authored
Kill flags are difficult to maintain, and liveness queries are better handled by live intervals. Kill flags are reinserted after register allocation by addKillFlags(). llvm-svn: 163334
-
- Jul 27, 2012
-
-
Jakob Stoklund Olesen authored
A value number is a PHI def if and only if it begins at a block boundary. This can be derived from the def slot, a separate flag is not necessary. llvm-svn: 160893
-
- Jul 14, 2012
-
-
Jakob Stoklund Olesen authored
Catch uses of undefined physregs that haven't been added to basic block live-in lists. Run the verifier to pinpoint the problem. Also run the verifier when a virtual register use is not jointly dominated by defs. llvm-svn: 160207
-
- Jun 05, 2012
-
-
Jakob Stoklund Olesen authored
These LiveRangeCalc methods are to be used when computing a live range from scratch. llvm-svn: 158027
-
- Jun 04, 2012
-
-
Jakob Stoklund Olesen authored
Remove the same pointers from all the other LiveRangeCalc functions, simplifying the interface. llvm-svn: 157941
-
- Feb 04, 2012
-
-
Jakob Stoklund Olesen authored
If a value is defined by a COPY, that instuction can easily and cheaply be found by getInstructionFromIndex(VNI->def). This reduces the size of VNInfo from 24 to 16 bytes, and improves llc compile time by 3%. llvm-svn: 149763
-
- Dec 20, 2011
-
-
Lang Hames authored
llvm-svn: 146987
-
- Sep 13, 2011
-
-
Jakob Stoklund Olesen authored
Three out of four clients prefer this interface which is consistent with extendIntervalEndTo() and LiveRangeCalc::extend(). llvm-svn: 139604
-
NAKAMURA Takumi authored
llvm-svn: 139581
-
Jakob Stoklund Olesen authored
SplitKit will soon need two copies of these data structures, and the algorithms will also be useful when LiveIntervalAnalysis becomes independent of LiveVariables. llvm-svn: 139572
-