- Dec 08, 2010
-
-
Jakob Stoklund Olesen authored
Minor optimization to the use of IntervalMap iterators. They are fairly heavyweight, so prefer SI.valid() over SI != end(). llvm-svn: 121217
-
Jakob Stoklund Olesen authored
This speeds up RegAllocBasic by 20%, not counting releaseMemory which becomes way faster. llvm-svn: 121201
-
- Dec 07, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 121162
-
Jay Foad authored
zextOrTrunc(), and APSInt methods extend(), extOrTrunc() and new method trunc(), to be const and to return a new value instead of modifying the object in place. llvm-svn: 121120
-
Jakob Stoklund Olesen authored
llvm-svn: 121098
-
- Dec 06, 2010
-
-
Devang Patel authored
This will be used to truncate live range of DBG_VALUE instruction by register allocator and friends. llvm-svn: 121061
-
Devang Patel authored
If dbg_declare() or dbg_value() is not lowered by isel then emit DEBUG message instead of creating DBG_VALUE for undefined value in reg0. llvm-svn: 121059
-
Rafael Espindola authored
as llc + llvm-mc. This time ELF is not changed and I tested that llvm-gcc bootstrap on darwin10 using darwin9's assembler and linker. llvm-svn: 121006
-
Rafael Espindola authored
linux and darwin assemblers happy :-( llvm-svn: 121004
-
Rafael Espindola authored
that no relocations are used (on MochO). Fixes llc producing different output from llc + llvm-mc. llvm-svn: 121000
-
- Dec 05, 2010
-
-
Cameron Zwarich authored
StrongPHIElimination. llvm-svn: 120961
-
Cameron Zwarich authored
llvm-svn: 120959
-
Cameron Zwarich authored
PHIElimination.h. llvm-svn: 120953
-
Cameron Zwarich authored
time, this method existed, but now PHIElimination uses the method of the same name on MachineBasicBlock. llvm-svn: 120952
-
Cameron Zwarich authored
function so that it can be shared with StrongPHIElimination. llvm-svn: 120951
-
- Dec 04, 2010
-
-
Cameron Zwarich authored
llvm-svn: 120918
-
Benjamin Kramer authored
llvm-svn: 120910
-
- Dec 03, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 120846
-
Jakob Stoklund Olesen authored
be emitted. llvm-svn: 120845
-
Jakob Stoklund Olesen authored
llvm-svn: 120842
-
Jakob Stoklund Olesen authored
llvm-svn: 120841
-
Jakob Stoklund Olesen authored
The StrongPHIElimination pass did not work, and nobody has worked on it for two years. A rewrite is underway, so I am leaving this shell pass instead of deleting it completely. llvm-svn: 120830
-
- Dec 02, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 120720
-
Jakob Stoklund Olesen authored
Scan the MachineFunction for DBG_VALUE instructions, and replace them with a data structure similar to LiveIntervals. The live range of a DBG_VALUE is determined by propagating it down the dominator tree until a new DBG_VALUE is found. When a DBG_VALUE lives in a register, its live range is confined to the live range of the register's value. LiveDebugVariables runs before coalescing, so DBG_VALUEs are not artificially extended when registers are joined. The missing half will recreate DBG_VALUE instructions from the intervals when register allocation is complete. The pass is disabled by default. It can be enabled with the temporary command line option -live-debug-variables. llvm-svn: 120636
-
- Dec 01, 2010
-
-
Jay Foad authored
setAllBits(), setBit(unsigned), etc. llvm-svn: 120564
-
Andrew Trick authored
llvm-svn: 120504
-
Evan Cheng authored
legalization time. Since at legalization time there is no mapping from SDNode back to the corresponding LLVM instruction and the return SDNode is target specific, this requires a target hook to check for eligibility. Only x86 and ARM support this form of sibcall optimization right now. rdar://8707777 llvm-svn: 120501
-
Andrew Trick authored
in favor of the widespread llvm style. Capitalize variables and add newlines for visual parsing. Rename variables for readability. And other cleanup. llvm-svn: 120490
-
- Nov 30, 2010
-
-
Chris Lattner authored
and use this to disable a specific optimization. Patch by Micah Villmow! llvm-svn: 120435
-
Jay Foad authored
llvm-svn: 120413
-
Jakob Stoklund Olesen authored
This analysis is going to run immediately after LiveIntervals. It will stay alive during register allocation and keep track of user variables mentioned in DBG_VALUE instructions. When the register allocator is moving values between registers and the stack, it is very hard to keep track of DBG_VALUE instructions. We usually get it wrong. This analysis maintains a data structure that makes it easy to update DBG_VALUE instructions. llvm-svn: 120385
-
- Nov 29, 2010
-
-
Michael J. Spencer authored
llvm-svn: 120298
-
- Nov 28, 2010
-
-
Bob Wilson authored
llvm-svn: 120235
-
Anton Korobeynikov authored
llvm-svn: 120229
-
Anton Korobeynikov authored
llvm-svn: 120228
-
- Nov 25, 2010
-
-
Benjamin Kramer authored
llvm-svn: 120146
-
- Nov 23, 2010
-
-
Wesley Peck authored
llvm-svn: 119990
-
- Nov 22, 2010
-
-
Benjamin Kramer authored
This currently only catches the most basic case, a two-case switch, but can be extended later. llvm-svn: 119964
-
- Nov 20, 2010
-
-
Anton Korobeynikov authored
llvm-svn: 119904
-
Benjamin Kramer authored
llvm-svn: 119903
-