- Mar 07, 2012
-
-
Andrew Trick authored
llvm-svn: 152203
-
Chandler Carruth authored
to hash_combine. One of the interfaces could already do this, and the other can just use a small buffer. This is a much more efficient way to use the hash_combine interface, although I don't have any particular benchmark where this code was hot, so I can't measure much of an impact. It at least doesn't slow anything down. llvm-svn: 152200
-
Chandler Carruth authored
"is sized". This prevents every query to isSized() from recursing over every sub-type of a struct type. This could get *very* slow for extremely deep nesting of structs, as in 177.mesa. This change is a 45% speedup for 'opt -O2' of 177.mesa.linked.bc, and likely a significant speedup for other cases as well. It even impacts -O0 cases because so many part of the code try to check whether a type is sized. Thanks for the review from Nick Lewycky and Benjamin Kramer on IRC. llvm-svn: 152197
-
Nick Lewycky authored
until after other inexpensive tests. llvm-svn: 152195
-
Jim Grosbach authored
llvm-svn: 152188
-
Jim Grosbach authored
llvm-svn: 152185
-
Jim Grosbach authored
llvm-svn: 152184
-
Andrew Trick authored
GV and XDOT paths are untested but should work the same. llvm-svn: 152179
-
Andrew Trick authored
llvm-svn: 152178
-
Andrew Trick authored
Soon, ScheduleDAG will not refer to the BB. llvm-svn: 152177
-
Andrew Trick authored
llvm-svn: 152176
-
Andrew Trick authored
llvm-svn: 152175
-
Andrew Trick authored
llvm-svn: 152174
-
Andrew Trick authored
llvm-svn: 152173
-
Andrew Trick authored
llvm-svn: 152172
-
Eric Christopher authored
as well as completely defined classes. This fixes rdar://10956070 llvm-svn: 152171
-
Evan Cheng authored
Extend r148086 to check for [r +/- reg] address mode. This fixes queens performance regression (due to increased register pressure from overly aggressive pre-inc formation). llvm-svn: 152162
-
Jim Grosbach authored
Register pair, all lanes subscripting. llvm-svn: 152157
-
- Mar 06, 2012
-
-
Jakob Stoklund Olesen authored
llvm-svn: 152153
-
Jim Grosbach authored
Register pair VLD1/VLD2 all-lanes instructions. Kill off more of the pseudos as a result. llvm-svn: 152150
-
Benjamin Kramer authored
SmallPtrSet: Provide a more efficient implementation of swap than the default triple-copy std::swap. This currently assumes that both sets have the same SmallSize to keep the implementation simple, a limitation that can be lifted if someone cares. llvm-svn: 152143
-
Eli Friedman authored
llvm-svn: 152136
-
Jim Grosbach authored
llvm-svn: 152131
-
Jakob Stoklund Olesen authored
llvm-svn: 152129
-
Kevin Enderby authored
llvm-svn: 152127
-
Roman Divacky authored
llvm-svn: 152122
-
Jay Foad authored
implementation. Patch by Meador Inge llvm-svn: 152116
-
Jakob Stoklund Olesen authored
When an instruction only writes sub-registers, it is still necessary to add an <imp-def> operand for the super-register. When reloading into a virtual register, rewriting will add the operand, but when loading directly into a virtual register, the <imp-def> operand is still necessary. llvm-svn: 152095
-
Evan Cheng authored
llvm-svn: 152089
-
Owen Anderson authored
Make it possible for a target to mark FSUB as Expand. This requires providing a default expansion (FADD+FNEG), and teaching DAGCombine not to form FSUBs post-legalize if they are not legal. llvm-svn: 152079
-
Lang Hames authored
The fpscr register contains both flags (set by FP operations/comparisons) and control bits. The control bits (FPSCR) should be reserved, since they're always available and needn't be defined before use. The flag bits (FPSCR_NZCV) should like to be unreserved so they can be hoisted by MachineCSE. This fixes PR12165. llvm-svn: 152076
-
Eli Friedman authored
llvm-svn: 152070
-
Jim Grosbach authored
rdar://10988114 llvm-svn: 152068
-
Eli Friedman authored
llvm-svn: 152066
-
- Mar 05, 2012
-
-
Jim Grosbach authored
Use the new composite physical registers. llvm-svn: 152063
-
Jim Grosbach authored
llvm-svn: 152061
-
Jim Grosbach authored
With the new composite physical registers to represent arbitrary pairs of DPR registers, we don't need the pseudo-registers anymore. Get rid of a bunch of them that use DPR register pairs and just use the real instructions directly instead. llvm-svn: 152045
-
Jim Grosbach authored
Used to allow context sensitive printing of super-register or sub-register references. llvm-svn: 152043
-
Bill Wendling authored
Patch by Sean Silva! llvm-svn: 152042
-
Chad Rosier authored
Specifically, remove the magic number when checking to see if the copy has a glue operand and simplify the checking logic. rdar://10930395 llvm-svn: 152041
-