- Dec 09, 2007
-
-
Chris Lattner authored
llvm-svn: 44726
-
Chris Lattner authored
%f8 = type <8 x float> define void @test_f8(%f8* %P, %f8* %Q, %f8* %S) { %p = load %f8* %P ; <%f8> [#uses=1] %q = load %f8* %Q ; <%f8> [#uses=1] %R = add %f8 %p, %q ; <%f8> [#uses=1] store %f8 %R, %f8* %S ret void } into: _test_f8: movaps 16(%rdi), %xmm0 addps 16(%rsi), %xmm0 movaps (%rdi), %xmm1 addps (%rsi), %xmm1 movaps %xmm0, 16(%rdx) movaps %xmm1, (%rdx) ret llvm-svn: 44725
-
Chris Lattner authored
llvm-svn: 44724
-
- Dec 08, 2007
-
-
Chris Lattner authored
llvm-svn: 44723
-
Chris Lattner authored
llvm-svn: 44722
-
Chris Lattner authored
llvm-svn: 44720
-
Chris Lattner authored
llvm-svn: 44719
-
Chris Lattner authored
llvm-svn: 44718
-
Chris Lattner authored
llvm-svn: 44717
-
Chris Lattner authored
llvm-svn: 44716
-
Chris Lattner authored
llvm-svn: 44715
-
Chris Lattner authored
Leave it visibility hidden, but not in an anon namespace. llvm-svn: 44714
-
Chris Lattner authored
llvm-svn: 44710
-
Chris Lattner authored
llvm-svn: 44707
-
Gordon Henriksen authored
llvm-svn: 44705
-
Chris Lattner authored
what 'Available' is, please add a comment near it and rename it if appropriate. llvm-svn: 44703
-
Bill Wendling authored
isTriviallyReMaterializable -> hasNoSideEffects isReallyTriviallyReMaterializable -> isTriviallyReMaterializable llvm-svn: 44702
-
Chris Lattner authored
a while ago. We now produce: _foo: mflr r0 std r0, 16(r1) ld r2, 16(r1) std r2, 0(r3) ld r0, 16(r1) mtlr r0 blr instead of: _foo: mflr r0 std r0, 16(r1) lis r0, 0 ori r0, r0, 16 ldx r2, r1, r0 std r2, 0(r3) ld r0, 16(r1) mtlr r0 blr for: void foo(void **X) { *X = __builtin_return_address(0); } on ppc64. llvm-svn: 44701
-
Chris Lattner authored
llvm-svn: 44700
-
Chris Lattner authored
different places to mean different things. Document what the one in PPCFunctionInfo means and when it is valid. llvm-svn: 44699
-
Owen Anderson authored
Fix several cache coherence bugs in MemDep/GVN that were found. Also add some (disabled) debugging code to make such problems easier to diagnose in the future, written by Duncan Sands. llvm-svn: 44695
-
Evan Cheng authored
llvm-svn: 44694
-
Evan Cheng authored
llvm-svn: 44692
-
Evan Cheng authored
llvm-svn: 44691
-
- Dec 07, 2007
-
-
Bill Wendling authored
_foo: li r2, 0 LBB1_1: ; bb li r5, 0 stw r5, 0(r3) addi r2, r2, 1 addi r3, r3, 4 cmplw cr0, r2, r4 bne cr0, LBB1_1 ; bb LBB1_2: ; return blr to: _foo: li r2, 0 li r5, 0 LBB1_1: ; bb stw r5, 0(r3) addi r2, r2, 1 addi r3, r3, 4 cmplw cr0, r2, r4 bne cr0, LBB1_1 ; bb LBB1_2: ; return blr ZOMG!! :-) Moar to come... llvm-svn: 44687
-
Evan Cheng authored
llvm-svn: 44686
-
Evan Cheng authored
llvm-svn: 44676
-
Evan Cheng authored
llvm-svn: 44671
-
- Dec 06, 2007
-
-
Evan Cheng authored
Remove a bogus optimization. It's not possible to do a move to low element to a <8 x i16> or <16 x i8> vector. llvm-svn: 44669
-
Dale Johannesen authored
Simpler and safer. llvm-svn: 44663
-
Evan Cheng authored
llvm-svn: 44660
-
Chris Lattner authored
only disable it if we don't know it will be obviously profitable. Still fixme, but less so. :) llvm-svn: 44658
-
Chris Lattner authored
the X86 backend are needed before this should be enabled by default. llvm-svn: 44657
-
Chris Lattner authored
_foo: movl $12, %eax andl 4(%esp), %eax movl _array(%eax), %eax ret instead of: _foo: movl 4(%esp), %eax shrl $2, %eax andl $3, %eax movl _array(,%eax,4), %eax ret As it turns out, this triggers all the time, in a wide variety of situations, for example, I see diffs like this in various programs: - movl 8(%eax), %eax - shll $2, %eax - andl $1020, %eax - movl (%esi,%eax), %eax + movzbl 8(%eax), %eax + movl (%esi,%eax,4), %eax - shll $2, %edx - andl $1020, %edx - movl (%edi,%edx), %edx + andl $255, %edx + movl (%edi,%edx,4), %edx Unfortunately, I also see stuff like this, which can be fixed in the X86 backend: - andl $85, %ebx - addl _bit_count(,%ebx,4), %ebp + shll $2, %ebx + andl $340, %ebx + addl _bit_count(%ebx), %ebp llvm-svn: 44656
-
Chris Lattner authored
llvm-svn: 44655
-
Chris Lattner authored
llvm-svn: 44654
-
Chuck Rose III authored
llvm-svn: 44651
-
Chris Lattner authored
llvm-svn: 44650
-
Dale Johannesen authored
llvm-svn: 44649
-