- Oct 23, 2010
-
-
Andrew Trick authored
framework. It's purpose is not to improve register allocation per se, but to make it easier to develop powerful live range splitting. I call it the basic allocator because it is as simple as a global allocator can be but provides the building blocks for sophisticated register allocation with live range splitting. A minimal implementation is provided that trivially spills whenever it runs out of registers. I'm checking in now to get high-level design and style feedback. I've only done minimal testing. The next step is implementing a "greedy" allocation algorithm that does some register reassignment and makes better splitting decisions. llvm-svn: 117174
-
Owen Anderson authored
llvm-svn: 117173
-
Bob Wilson authored
llvm-svn: 117172
-
Owen Anderson authored
llvm-svn: 117171
-
Jakob Stoklund Olesen authored
llvm-svn: 117170
-
Jakob Stoklund Olesen authored
When a block has exactly two uses and the register is both live-in and live-out, don't isolate the block. We would be inserting two copies, so we haven't really made any progress. If the live-in and live-out values separate into disconnected components after splitting, we would be making progress. We can't detect that for now. llvm-svn: 117169
-
Jim Grosbach authored
llvm-svn: 117166
-
Jim Grosbach authored
llvm-svn: 117165
-
Bob Wilson authored
Apple builds. Radar 8585383. llvm-svn: 117164
-
Jim Grosbach authored
llvm-svn: 117158
-
Jim Grosbach authored
llvm-svn: 117157
-
- Oct 22, 2010
-
-
Jim Grosbach authored
llvm-svn: 117156
-
Evan Cheng authored
llvm-svn: 117155
-
Bob Wilson authored
llvm-svn: 117154
-
Evan Cheng authored
llvm-svn: 117151
-
Owen Anderson authored
llvm-svn: 117145
-
Jakob Stoklund Olesen authored
An exit block with a critical edge must only have predecessors in the loop, or just before the loop. This guarantees that the inserted copies in the loop predecessors dominate the exit block. llvm-svn: 117144
-
Jakob Stoklund Olesen authored
llvm-svn: 117143
-
Owen Anderson authored
llvm-svn: 117134
-
Jim Grosbach authored
llvm-svn: 117133
-
Michael J. Spencer authored
llvm-svn: 117132
-
Owen Anderson authored
llvm-svn: 117131
-
Oscar Fuentes authored
llvm-svn: 117130
-
Evan Cheng authored
llvm-svn: 117128
-
Owen Anderson authored
llvm-svn: 117126
-
Michael J. Spencer authored
llvm-svn: 117124
-
Stuart Hastings authored
llvm-svn: 117122
-
Jim Grosbach authored
llvm-svn: 117121
-
Evan Cheng authored
llvm-svn: 117119
-
Owen Anderson authored
llvm-svn: 117115
-
Jim Grosbach authored
definitions. llvm-svn: 117114
-
Oscar Fuentes authored
Patch by Frits van Bommel! llvm-svn: 117113
-
Benjamin Kramer authored
llvm-svn: 117111
-
Oscar Fuentes authored
See PR 8473. llvm-svn: 117109
-
Jim Grosbach authored
llvm-svn: 117108
-
Oscar Fuentes authored
actually changed. Patch by Frits van Bommel! llvm-svn: 117102
-
Wesley Peck authored
llvm-svn: 117099
-
NAKAMURA Takumi authored
llvm-svn: 117095
-
Peter Collingbourne authored
test equality to 1, and fix/update documentation to reflect this llvm-svn: 117094
-
NAKAMURA Takumi authored
lit -jN causes crash on Cygwin's python. llvm-svn: 117093
-