- Apr 14, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 101286
-
Bob Wilson authored
does not have a legal type. The legalizer does not know how to handle those nodes. Radar 7854640. llvm-svn: 101282
-
Evan Cheng authored
llvm-svn: 101182
-
Bob Wilson authored
such that the entire second half is in memory. Radar 7855014. llvm-svn: 101181
-
- Apr 13, 2010
-
-
Evan Cheng authored
llvm-svn: 101163
-
Evan Cheng authored
Re-apply 101075 and fix it properly. Just reuse the debug info of the branch instruction being optimized. There is no need to --I which can deref off start of the BB. llvm-svn: 101162
-
Eric Christopher authored
in a nightly tester. llvm-svn: 101158
-
Chris Lattner authored
patch by Sylvere Teissier! llvm-svn: 101106
-
-
Bill Wendling authored
llvm-svn: 101081
-
Bill Wendling authored
llvm-svn: 101079
-
Bill Wendling authored
llvm-svn: 101077
-
Bill Wendling authored
If we have this situation: jCC L1 jmp L2 L1: ... L2: ... We can get a small performance boost by emitting this instead: jnCC L2 L1: ... L2: ... This testcase shows an example of this: float func(float x, float y) { double product = (double)x * y; if (product == 0.0) return product; return product - 1.0; } llvm-svn: 101075
-
- Apr 12, 2010
-
-
Evan Cheng authored
llvm-svn: 101023
-
- Apr 09, 2010
-
-
Benjamin Kramer authored
llvm-svn: 100879
-
Bob Wilson authored
llvm-svn: 100876
-
Chris Lattner authored
"On SPU, variables in the .bss section that are allocated with the .lcomm directive are not aligned on 16 byte boundaries. This causes misaligned loads, as the generated assembly assumes this "default" alignment. this patch disables .lcomm in favour of '.local .comm' Patch by Kalle Raisklia! llvm-svn: 100875
-
Dan Gohman authored
llvm-svn: 100860
-
- Apr 08, 2010
-
-
Evan Cheng authored
%RDI<def,dead> = MOV64rr %RAX<kill>, %EDI<imp-def> llvm-svn: 100804
-
Evan Cheng authored
llvm-svn: 100751
-
Dan Gohman authored
ensure that the expansion is dominated by the increments of those loops. llvm-svn: 100748
-
Chris Lattner authored
llvm-svn: 100705
-
Dan Gohman authored
explicitly split into stride-and-offset pairs. Also, add the ability to track multiple post-increment loops on the same expression. This refines the concept of "normalizing" SCEV expressions used for to post-increment uses, and introduces a dedicated utility routine for normalizing and denormalizing expressions. This fixes the expansion of expressions which are post-increment users of more than one loop at a time. More broadly, this takes LSR another step closer to being able to reason about more than one loop at a time. llvm-svn: 100699
-
- Apr 07, 2010
-
-
Dale Johannesen authored
those who don't build all targets. llvm-svn: 100688
-
Chris Lattner authored
llvm-svn: 100637
-
Chris Lattner authored
MachineOperand::isIdenticalTo wasn't handling metadata operands. llvm-svn: 100636
-
Sanjiv Gupta authored
llvm-svn: 100612
-
- Apr 06, 2010
-
-
Jakob Stoklund Olesen authored
This fixes the Bullet regression on i386/nocona. llvm-svn: 100553
-
Evan Cheng authored
llvm-svn: 100482
-
- Apr 05, 2010
-
-
Dan Gohman authored
llvm-svn: 100455
-
- Apr 04, 2010
-
-
Chris Lattner authored
llvm-svn: 100346
-
- Apr 02, 2010
-
-
Evan Cheng authored
llvm-svn: 100208
-
Dan Gohman authored
in particular, they end up aligning strings at 16-byte boundaries, and there's no way for GlobalOpt to check OptForSize. llvm-svn: 100172
-
Evan Cheng authored
After trivial coalescing, the MI being visited may have become a copy. Avoid adding it to CSE hash table since copies aren't being considered for CSE and they may be deleted. rdar://7819990 llvm-svn: 100170
-
Dan Gohman authored
unaligned loads into aligned loads. llvm-svn: 100166
-
Dan Gohman authored
llvm-svn: 100165
-
- Apr 01, 2010
-
-
Evan Cheng authored
llvm-svn: 100137
-
Evan Cheng authored
- Do not try to infer GV alignment unless its type is sized. It's not possible to infer alignment if it has opaque type. llvm-svn: 100118
-
Evan Cheng authored
llvm-svn: 100101
-
Evan Cheng authored
1. Makes it possible to lower with floating point loads and stores. 2. Avoid unaligned loads / stores unless it's fast. 3. Fix some memcpy lowering logic bug related to when to optimize a load from constant string into a constant. 4. Adjust x86 memcpy lowering threshold to make it more sane. 5. Fix x86 target hook so it uses vector and floating point memory ops more effectively. rdar://7774704 llvm-svn: 100090
-