- Dec 19, 2006
-
-
Chris Lattner authored
delete some dead ones. llvm-svn: 32694
-
- Dec 17, 2006
-
-
Bill Wendling authored
rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. llvm-svn: 32636
-
- Dec 13, 2006
-
-
Reid Spencer authored
creation calls. llvm-svn: 32521
-
- Dec 12, 2006
-
-
Reid Spencer authored
llvm-svn: 32477
-
Reid Spencer authored
llvm-svn: 32469
-
- Dec 07, 2006
-
-
Bill Wendling authored
now cerr, cout, and NullStream resp. llvm-svn: 32298
-
- Dec 06, 2006
-
-
Chris Lattner authored
is 'unsigned'. llvm-svn: 32279
-
- Nov 27, 2006
-
-
Reid Spencer authored
The long awaited CAST patch. This introduces 12 new instructions into LLVM to replace the cast instruction. Corresponding changes throughout LLVM are provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the exception of 175.vpr which fails only on a slight floating point output difference. llvm-svn: 31931
-
- Nov 26, 2006
-
-
Bill Wendling authored
llvm-svn: 31925
-
- Nov 18, 2006
-
-
Chris Lattner authored
only do these transformations if there are a small number of phi's. This speeds up Ptrdist/ks from 2.35s to 2.19s on my mac pro. llvm-svn: 31853
-
- Nov 08, 2006
-
-
Jim Laskey authored
llvm-svn: 31561
-
Reid Spencer authored
This patch converts the old SHR instruction into two instructions, AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not dependent on the sign of their operands. llvm-svn: 31542
-
- Nov 05, 2006
-
-
Jeff Cohen authored
llvm-svn: 31464
-
- Nov 02, 2006
-
-
Reid Spencer authored
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. llvm-svn: 31380
-
- Oct 31, 2006
-
-
Chris Lattner authored
Transforms/LCSSA/2006-10-31-UnreachableBlock-2.ll llvm-svn: 31317
-
Chris Lattner authored
llvm-svn: 31315
-
- Oct 29, 2006
-
-
Chris Lattner authored
llvm-svn: 31284
-
- Oct 28, 2006
-
-
Chris Lattner authored
llvm-svn: 31258
-
Chris Lattner authored
llvm-svn: 31256
-
- Oct 20, 2006
-
-
Reid Spencer authored
This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. llvm-svn: 31063
-
Chris Lattner authored
llvm-svn: 31061
-
- Oct 04, 2006
-
-
Chris Lattner authored
ever is, we want to get an assert instead of silent bad codegen. llvm-svn: 30716
-
- Oct 03, 2006
-
-
Chris Lattner authored
The critical edge block dominates the dest block if the destblock dominates all edges other than the one incoming from the critical edge. llvm-svn: 30696
-
- Sep 29, 2006
-
-
Chris Lattner authored
llvm-svn: 30656
-
- Sep 23, 2006
-
-
Chris Lattner authored
or when splitting loops with a common header into multiple loops. In particular the old code would always insert the preheader before the old loop header. This is disasterous in cases where the loop hasn't been rotated. For example, it can produce code like: .. outside the loop... jmp LBB1_2 #bb13.outer LBB1_1: #bb1 movsd 8(%esp,%esi,8), %xmm1 mulsd (%edi), %xmm1 addsd %xmm0, %xmm1 addl $24, %edi incl %esi jmp LBB1_3 #bb13 LBB1_2: #bb13.outer leal (%edx,%eax,8), %edi pxor %xmm1, %xmm1 xorl %esi, %esi LBB1_3: #bb13 movapd %xmm1, %xmm0 cmpl $4, %esi jl LBB1_1 #bb1 Note that the loop body is actually LBB1_1 + LBB1_3, which means that the loop now contains an uncond branch WITHIN it to jump around the inserted loop header (LBB1_2). Doh. This patch changes the preheader insertion code to insert it in the right spot, producing this code: ... outside the loop, fall into the header ... LBB1_1: #bb13.outer leal (%edx,%eax,8), %esi pxor %xmm0, %xmm0 xorl %edi, %edi jmp LBB1_3 #bb13 LBB1_2: #bb1 movsd 8(%esp,%edi,8), %xmm0 mulsd (%esi), %xmm0 addsd %xmm1, %xmm0 addl $24, %esi incl %edi LBB1_3: #bb13 movapd %xmm0, %xmm1 cmpl $4, %edi jl LBB1_2 #bb1 Totally crazy, no branch in the loop! :) llvm-svn: 30587
-
Chris Lattner authored
reachable, making it general purpose enough for use by InsertPreheaderForLoop. Eliminate custom dominfo updating code in InsertPreheaderForLoop, using UpdateDomInfoForRevectoredPreds instead. llvm-svn: 30586
-
- Sep 13, 2006
-
-
Chris Lattner authored
This folds unconditional branches that are often produced by code specialization. llvm-svn: 30307
-
Chris Lattner authored
llvm-svn: 30303
-
- Sep 05, 2006
-
-
Chris Lattner authored
lowerinvoke regtests. llvm-svn: 30115
-
- Sep 04, 2006
-
-
Duraid Madina authored
Call these from your backend to enjoy setjmp/longjmp goodness, see lib/Target/IA64/IA64ISelLowering.cpp for an example llvm-svn: 30095
-
- Aug 28, 2006
-
-
Chris Lattner authored
llvm-svn: 29925
-
- Aug 27, 2006
-
-
Chris Lattner authored
llvm-svn: 29911
-
- Aug 12, 2006
-
-
Chris Lattner authored
Not only will this take huge amounts of compile time, the resultant loop nests won't be useful for optimization. This reduces loopsimplify time on Transforms/LoopSimplify/2006-08-11-LoopSimplifyLongTime.ll from ~32s to ~0.4s with a debug build of llvm on a 2.7Ghz G5. llvm-svn: 29647
-
Chris Lattner authored
blocks that target loop blocks. Before, the code was run once per loop, and depended on the number of predecessors each block in the loop had. Unfortunately, scanning preds can be really slow when huge numbers of phis exist or when phis with huge numbers of inputs exist. Now, the code is run once per function and scans successors instead of preds, which is far faster. In addition, the new code is simpler and is goto free, woo. This change speeds up a nasty testcase Duraid provided me from taking hours to taking ~72s with a debug build. The functionality this implements is already tested in the testsuite as Transforms/CodeExtractor/2004-03-13-LoopExtractorCrash.ll. llvm-svn: 29644
-
- Aug 03, 2006
-
-
Chris Lattner authored
Transforms/SimplifyCFG/2006-08-03-Crash.ll llvm-svn: 29515
-
- Aug 02, 2006
-
-
Chris Lattner authored
up lcssa much in practice. llvm-svn: 29465
-
Chris Lattner authored
down approach, inspired by discussions with Tanya. This approach is significantly faster, because it does not need dominator frontiers and it does not insert extraneous unused PHI nodes. For example, on 252.eon, in a release-asserts build, this speeds up LCSSA (which is the slowest pass in gccas) from 9.14s to 0.74s on my G5. This code is also slightly smaller and significantly simpler than the old code. Amusingly, in a normal Release build (which includes the "assert(L->isLCSSAForm());" assertion), asserting that the result of LCSSA is in LCSSA form is actually slower than the LCSSA transformation pass itself on 252.eon. I will see if Loop::isLCSSAForm can be sped up next. llvm-svn: 29463
-
- Jul 27, 2006
-
-
Chris Lattner authored
llvm-svn: 29324
-
- Jul 18, 2006
-
-
Chris Lattner authored
llvm-svn: 29189
-
- Jul 15, 2006
-
-
Chris Lattner authored
llvm-svn: 29149
-