- Jan 11, 2011
-
-
Chandler Carruth authored
point values to their integer representation through the SSE intrinsic calls. This is the last part of a README.txt entry for which I have real world examples. llvm-svn: 123206
-
Owen Anderson authored
Fix a random missed optimization by making InstCombine more aggressive when determining which bits are demanded by a comparison against a constant. llvm-svn: 123203
-
Eric Christopher authored
llvm-svn: 123202
-
Eric Christopher authored
restore the stack pointer from the frame pointer on thumbv6. Fixes rdar://8819685 llvm-svn: 123196
-
Eric Christopher authored
llvm-svn: 123193
-
- Jan 10, 2011
-
-
Dale Johannesen authored
There's an inherent tension in DAGCombine between assuming that things will be put in canonical form, and the Depth mechanism that disables transformations when recursion gets too deep. It would not surprise me if there's a lot of little bugs like this one waiting to be discovered. The mechanism seems fragile and I'd suggest looking at it from a design viewpoint. llvm-svn: 123191
-
Chris Lattner authored
operation in some cases. llvm-svn: 123190
-
Daniel Dunbar authored
llvm-svn: 123189
-
Daniel Dunbar authored
instructions but are restricted pseudo forms. llvm-svn: 123177
-
Daniel Dunbar authored
instructions but are restricted pseudo forms. llvm-svn: 123176
-
Daniel Dunbar authored
llvm-svn: 123175
-
Anton Korobeynikov authored
llvm-svn: 123172
-
Anton Korobeynikov authored
llvm-svn: 123171
-
Anton Korobeynikov authored
Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs and fixes here and there. llvm-svn: 123170
-
Daniel Dunbar authored
llvm-svn: 123169
-
Chandler Carruth authored
IDs when available rather than using a mixture of IDs and textual name comparisons. llvm-svn: 123165
-
Chris Lattner authored
rolled std::find. llvm-svn: 123164
-
Chandler Carruth authored
intrinsics element dependencies. Reviewed by Nick. llvm-svn: 123161
-
Jakob Stoklund Olesen authored
These functions not longer assert when passed 0, but simply return false instead. No functional change intended. llvm-svn: 123155
-
Michael J. Spencer authored
llvm-svn: 123152
-
Michael J. Spencer authored
llvm-svn: 123151
-
Chris Lattner authored
llvm-svn: 123149
-
Chris Lattner authored
back to life. llvm-svn: 123146
-
Chris Lattner authored
llvm-svn: 123145
-
Chris Lattner authored
llvm-svn: 123144
-
Chris Lattner authored
llvm-svn: 123142
-
Chris Lattner authored
llvm-svn: 123141
-
Chris Lattner authored
llvm-svn: 123139
-
- Jan 09, 2011
-
-
Chris Lattner authored
NUW AddRec's much more aggressively. We now get a trip count for @test2 in nsw.ll llvm-svn: 123138
-
Chris Lattner authored
llvm-svn: 123136
-
Chandler Carruth authored
perform rounding other than truncation in the IR. Common C code for this turns into really an LLVM intrinsic call that blocks a lot of further optimizations. llvm-svn: 123135
-
Chris Lattner authored
a + {b,+,stride} into {a+b,+,stride} (because a is LIV), then the resultant AddRec is NUW/NSW if the client says it is. llvm-svn: 123133
-
Chris Lattner authored
void f(int* begin, int* end) { std::fill(begin, end, 0); } which turns into a != exit expression where one pointer is strided and (thanks to step #1) known to not overflow, and the other is loop invariant. The observation here is that, though the IV is strided by 4 in this case, that the IV *has* to become equal to the end value. It cannot "miss" the end value by stepping over it, because if it did, the strided IV expression would eventually wrap around. Handle this by turning A != B into "A-B != 0" where the A-B part is known to be NUW. llvm-svn: 123131
-
Jakob Stoklund Olesen authored
when no virtual registers have been allocated. It was only used to resize IndexedMaps, so provide an IndexedMap::resize() method such that Map.grow(MRI.getLastVirtReg()); can be replaced with the simpler Map.resize(MRI.getNumVirtRegs()); This works correctly when no virtuals are allocated, and it bypasses the to/from index conversions. llvm-svn: 123130
-
Chris Lattner authored
llvm-svn: 123129
-
Jakob Stoklund Olesen authored
physical register numbers. This makes the hack used in LiveInterval official, and lets LiveInterval be oblivious of stack slots. The isPhysicalRegister() and isVirtualRegister() predicates don't know about this, so when a variable may contain a stack slot, isStackSlot() should always be tested first. llvm-svn: 123128
-
Chandler Carruth authored
llvm-svn: 123126
-
Chris Lattner authored
without informing memdep. This could cause nondeterminstic weirdness based on where instructions happen to get allocated, and will hopefully breath some life into some broken testers. llvm-svn: 123124
-
Jakob Stoklund Olesen authored
llvm-svn: 123123
-
Tobias Grosser authored
llvm-svn: 123121
-