| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 53270
|
| |
|
|
|
|
| |
more complete version is now available from the LoopVR pass.
llvm-svn: 53269
|
| |
|
|
| |
llvm-svn: 53268
|
| |
|
|
|
|
| |
not split the loop.
llvm-svn: 53265
|
| |
|
|
| |
llvm-svn: 53264
|
| |
|
|
|
|
| |
parent is non-null. It now always is.
llvm-svn: 53263
|
| |
|
|
| |
llvm-svn: 53262
|
| |
|
|
|
|
|
| |
available to getAtomic in addition to just getLoad and getStore,
to prevent MachineMemOperands with 0 alignment.
llvm-svn: 53261
|
| |
|
|
|
|
| |
to MachineBasicBlock::iterator.
llvm-svn: 53260
|
| |
|
|
|
|
|
|
|
| |
information for itself
rather than depending on LiveVariables. This decreases compile time from:
0.5909s (LV + Regalloc) to 0.421s (just regalloc).
llvm-svn: 53256
|
| |
|
|
|
|
|
|
|
|
|
| |
This is a question of the debugging setup code not
being called at the right time, and it's called from
target-dependent code for some reason. I have only
attempted to fix Darwin, but I'm pretty sure it's
broken elsewhere; I'll leave that to people who can
test it.
llvm-svn: 53254
|
| |
|
|
| |
llvm-svn: 53253
|
| |
|
|
|
|
| |
SDNode's. This improves compile time slightly at -O0 -g.
llvm-svn: 53246
|
| |
|
|
|
|
|
|
|
| |
soft float: experiments show that targets aren't
expecting this for results or for operands. Add
support select/select_cc result soft float and
correct operand soft float for these.
llvm-svn: 53245
|
| |
|
|
|
|
| |
in LegalizeTypes.
llvm-svn: 53244
|
| |
|
|
| |
llvm-svn: 53243
|
| |
|
|
|
|
|
| |
out every volatile load and store. This is useful for tracking
down insane volatile memory bugs.
llvm-svn: 53241
|
| |
|
|
|
|
|
|
|
| |
into phis. This is actually the same bug as PR2262 /
2008-04-29-VolatileLoadDontMerge.ll, but I missed checking the first
predecessor for multiple successors. Testcase here:
InstCombine/2008-07-08-VolatileLoadMerge.ll
llvm-svn: 53240
|
| |
|
|
| |
llvm-svn: 53237
|
| |
|
|
|
|
| |
soft float.
llvm-svn: 53231
|
| |
|
|
|
|
| |
parameter attributes.
llvm-svn: 53228
|
| |
|
|
| |
llvm-svn: 53227
|
| |
|
|
|
|
| |
call attributes.
llvm-svn: 53223
|
| |
|
|
|
|
|
|
|
|
|
| |
1) evaluate [v]fcmp true/false with undefs to true or false instead
of undef.
2) fix vector comparisons with undef to return a vector result instead
of i1
3) fix vector comparisons with evaluatable results to return vector
true/false instead of i1 true/false (PR2529)
llvm-svn: 53220
|
| |
|
|
| |
llvm-svn: 53217
|
| |
|
|
| |
llvm-svn: 53215
|
| |
|
|
|
|
|
|
|
|
|
| |
MachineMemOperands. The pools are owned by MachineFunctions.
This drastically reduces the number of calls to malloc/free made
during the "Emit" phase of scheduling, as well as later phases
in CodeGen. Combined with other changes, this speeds up the
"instruction selection" phase of CodeGen by 10% in some cases.
llvm-svn: 53212
|
| |
|
|
|
|
|
|
|
| |
and reused across SelectionDAGs.
This drastically reduces the number of calls to malloc/free made during
instruction selection, and improves memory locality.
llvm-svn: 53211
|
| |
|
|
|
|
|
|
| |
for handling bookkeeping for deleted objects, as well as the alist class
template, for keeping lists of objects allocated from Recyclers, and some
related utilities.
llvm-svn: 53210
|
| |
|
|
| |
llvm-svn: 53209
|
| |
|
|
|
|
| |
each charater of Name. This speeds it up by 10%.
llvm-svn: 53208
|
| |
|
|
|
|
| |
There is no need for targets to specify register names in addition to their AsmName's.
llvm-svn: 53207
|
| |
|
|
| |
llvm-svn: 53206
|
| |
|
|
| |
llvm-svn: 53202
|
| |
|
|
|
|
|
| |
properly track dead nodes that are on the original SDNode's operand
list but not the new one, and have no other uses.
llvm-svn: 53201
|
| |
|
|
|
|
| |
#include dependency on Support/MathExtras.h in the header file.
llvm-svn: 53200
|
| |
|
|
|
|
| |
pool-allocating MachineInstrs.
llvm-svn: 53198
|
| |
|
|
| |
llvm-svn: 53197
|
| |
|
|
| |
llvm-svn: 53196
|
| |
|
|
|
|
| |
their cleanup code.
llvm-svn: 53194
|
| |
|
|
|
|
|
| |
1. LSR runOnLoop is always returning false regardless if any transformation is made.
2. AddUsersIfInteresting can create new instructions that are added to DeadInsts. But there is a later early exit which prevents them from being freed.
llvm-svn: 53193
|
| |
|
|
| |
llvm-svn: 53192
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
simple const SDOperand*, which is what's usually needed.
For AddNodeIDOperands, which is small, just duplicate the function to
accept an SDUse*.
For SelectionDAG::getNode - Add an overload that accepts SDUse* that
copies the operands into a temporary SDOperand array, but also has
special-case checks for 0 through 3 operands to avoid the copy in
the common cases.
llvm-svn: 53183
|
| |
|
|
| |
llvm-svn: 53179
|
| |
|
|
| |
llvm-svn: 53178
|
| |
|
|
| |
llvm-svn: 53177
|
| |
|
|
|
|
| |
Richard Osborne.
llvm-svn: 53169
|
| |
|
|
|
|
| |
Comment the xor %x, -1 case.
llvm-svn: 53167
|
| |
|
|
| |
llvm-svn: 53166
|
| |
|
|
|
|
| |
float value.
llvm-svn: 53165
|