summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocFast.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* It's not safe eliminate copies where src and dst have different sub-register ↵Evan Cheng2010-05-111-1/+2
| | | | | | indices. llvm-svn: 103450
* Add argument TargetRegisterInfo to loadRegFromStackSlot and storeRegToStackSlot.Evan Cheng2010-05-061-2/+2
| | | | llvm-svn: 103193
* Run LiveVariables instead of computing liveness locally in -regalloc=fast.Jakob Stoklund Olesen2010-04-211-177/+2
| | | | | | | | | | | This actually makes everything slower, but the plan is to have isel add <kill> flags the way it is already adding <dead> flags. Then LiveVariables can be removed again. When ignoring the time spent in LiveVariables, -regalloc=fast is now twice as fast as -regalloc=local. llvm-svn: 102034
* Add fast register allocator, enabled with -regalloc=fast.Jakob Stoklund Olesen2010-04-211-0/+1107
So far this is just a clone of -regalloc=local that has been lobotomized to run 25% faster. It drops the least-recently-used calculations, and is just plain stupid when it runs out of registers. The plan is to make this go even faster for -O0 by taking advantage of the short live intervals in unoptimized code. It should not be necessary to calculate liveness when most virtual registers are killed 2-3 instructions after they are born. llvm-svn: 102006
OpenPOWER on IntegriCloud