- Nov 18, 2009
-
-
Bob Wilson authored
the tail of a block may make that block a new candidate for duplication. llvm-svn: 89264
-
Bob Wilson authored
llvm-svn: 89254
-
Jakob Stoklund Olesen authored
When TwoAddressInstructionPass deletes a dead instruction, make sure that all register kills are accounted for. The 2-addr register does not get special treatment. llvm-svn: 89246
-
Jakob Stoklund Olesen authored
Verify LiveVariables information when present. llvm-svn: 89241
-
Jakob Stoklund Olesen authored
llvm-svn: 89240
-
Lang Hames authored
Fixed the in-place spiller and trivial rewriter, which had been broken by the recent SlotIndexes work. llvm-svn: 89238
-
Bob Wilson authored
llvm-svn: 89225
-
Jakob Stoklund Olesen authored
when LiveVariables is available. The -split-phi-edges is now gone, and so is the hack to disable it when using the local register allocator. The PHIElimination pass no longer has LiveVariables as a prerequisite - that is what broke the local allocator. Instead we do critical edge splitting when possible - that is when LiveVariables is available. llvm-svn: 89213
-
Bob Wilson authored
contents of the block to be duplicated. Use this for ARM Cortex A8/9 to be more aggressive tail duplicating indirect branches, since it makes it much more likely that they will be predicted in the branch target buffer. Testcase coming soon. llvm-svn: 89187
-
Jakob Stoklund Olesen authored
llvm-svn: 89167
-
- Nov 17, 2009
-
-
Jakob Stoklund Olesen authored
llvm-svn: 89142
-
Jakob Stoklund Olesen authored
llvm-svn: 89139
-
Evan Cheng authored
llvm-svn: 89130
-
Evan Cheng authored
llvm-svn: 89129
-
Jakob Stoklund Olesen authored
The local register allocator doesn't like it when LiveVariables is run. We should also disable edge splitting under -O0, but that has to wait a bit. llvm-svn: 89125
-
Bob Wilson authored
unnecessary. It is broken because the "isIdenticalTo" check should be negated. If that is fixed, this code causes the CodeGen/X86/tail-opts.ll test to fail, in the dont_merge_oddly function. And, I confirmed that the regression is real -- the generated code is worse. As far as I can tell, that tail-opts.ll test is checking for what this code is supposed to handle and we're doing the right thing anyway. llvm-svn: 89121
-
Dan Gohman authored
llvm-svn: 89114
-
Bob Wilson authored
folding optimizations. llvm-svn: 89109
-
Bob Wilson authored
It was too difficult to keep the heuristics for merging and duplication consistent. llvm-svn: 89105
-
Evan Cheng authored
llvm-svn: 89082
-
Nick Lewycky authored
llvm-svn: 89075
-
Nick Lewycky authored
llvm-svn: 89066
-
Bill Wendling authored
more than one place. No intended functionality change. llvm-svn: 89024
-
Jakob Stoklund Olesen authored
llvm-svn: 89021
-
Dan Gohman authored
unconditional branches or fallthroghes. Instcombine/SimplifyCFG should be simplifying branches with known conditions. This fixes some problems caused by these transformations not updating the MachineBasicBlock CFG. llvm-svn: 89017
-
- Nov 16, 2009
-
-
Dan Gohman authored
uninitialized memory. llvm-svn: 88985
-
Devang Patel authored
llvm-svn: 88973
-
Dan Gohman authored
llvm-svn: 88956
-
Dan Gohman authored
llvm-svn: 88953
-
Bob Wilson authored
llvm-svn: 88940
-
Devang Patel authored
llvm-svn: 88939
-
Bob Wilson authored
llvm-svn: 88932
-
Bob Wilson authored
llvm-svn: 88929
-
Bob Wilson authored
llvm-svn: 88927
-
David Greene authored
Support spill comments. Have the asm printer emit a comment if an instruction is a spill or reload and have the spiller mark copies it introdues so the asm printer can also annotate those. llvm-svn: 88911
-
Evan Cheng authored
llvm-svn: 88899
-
Evan Cheng authored
llvm-svn: 88895
-
Lang Hames authored
Make sure when ProcessImplicitDefs removes a copy which kills its source reg that it removes the copy from said reg's Kills list. llvm-svn: 88881
-
Lang Hames authored
Fix for the original bug in PR5495 - Look at uses as well as defs when determining the PHI-copy insert point. - Patch by Andrew Canis! llvm-svn: 88880
-
- Nov 15, 2009
-
-
Lang Hames authored
Added an assert to the PBQP allocator to catch infinite cost solutions which might otherwise lead to miscompilations. llvm-svn: 88829
-