- May 28, 2004
-
-
Chris Lattner authored
llvm-svn: 13872
-
- May 27, 2004
-
-
John Criswell authored
to eliminate the wrong type. llvm-svn: 13855
-
Chris Lattner authored
This code hadn't been updated after the "structs with more than 256 elements" related changes to the GEP instruction. Also it was not handling the ConstantAggregateZero class. Now it does! llvm-svn: 13834
-
Chris Lattner authored
llvm-svn: 13823
-
Chris Lattner authored
Add support for acos/asin/atan. 188.ammp contains three calls to acos with constant arguments. Constant folding it allows elimination of those 3 calls and three FP divisions of the results. llvm-svn: 13821
-
Alkis Evlogimenos authored
appended anywhere. llvm-svn: 13798
-
- May 26, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 13792
-
- May 25, 2004
-
-
Reid Spencer authored
llvm-svn: 13754
-
Reid Spencer authored
llvm-svn: 13751
-
Reid Spencer authored
llvm-svn: 13750
-
Reid Spencer authored
llvm-svn: 13749
-
Chris Lattner authored
into (X & (C2 << C1)) != (C3 << C1), where the shift may be either left or right and the compare may be any one. This triggers 1546 times in 176.gcc alone, as it is a common pattern that occurs for bitfield accesses. llvm-svn: 13740
-
Chris Lattner authored
Canonicalize cast X to bool into a setne instruction llvm-svn: 13736
-
- May 24, 2004
-
-
Chris Lattner authored
llvm-svn: 13717
-
- May 23, 2004
-
-
Chris Lattner authored
llvm-svn: 13702
-
Chris Lattner authored
caller was in an SCC. llvm-svn: 13693
-
Chris Lattner authored
llvm-svn: 13692
-
Chris Lattner authored
we make the transformation. This allows us to use interprocedural alias analyses successfully. llvm-svn: 13691
-
Chris Lattner authored
llvm-svn: 13690
-
Chris Lattner authored
llvm-svn: 13689
-
Chris Lattner authored
that do not have builtin support for garbage collection. llvm-svn: 13688
-
- May 19, 2004
-
-
Brian Gaeke authored
effects as) CloneFunctionInto(). llvm-svn: 13601
-
Brian Gaeke authored
CloneTrace, and because it is primarily an operation on ValueMaps. It is now a global (non-static) function which can be pulled in using ValueMapper.h. llvm-svn: 13600
-
- May 14, 2004
-
-
Brian Gaeke authored
Add better comments, including a better head-of-file comment. Prune #includes. Fix a FIXME that Chris put here by using doInitialization(). Use DEBUG() to print out debug msgs. Give names to basic blocks inserted by this pass. Expand tabs. Use InsertProfilingInitCall() from ProfilingUtils to insert the initialize call. llvm-svn: 13581
-
- May 13, 2004
-
-
Chris Lattner authored
llvm-svn: 13565
-
Chris Lattner authored
in the size calculation. This is not something you want to see: Loop Unroll: F[main] Loop %no_exit Loop Size = 2 Trip Count = 2147483648 - UNROLLING! The problem was that 2*2147483648 == 0. Now we get: Loop Unroll: F[main] Loop %no_exit Loop Size = 2 Trip Count = 2147483648 - TOO LARGE: 4294967296>100 Thanks to some anonymous person playing with the demo page that repeatedly caused zion to go into swapping land. That's one way to ensure you'll get a quick bugfix. :) Testcase here: Transforms/LoopUnroll/2004-05-13-DontUnrollTooMuch.ll llvm-svn: 13564
-
- May 12, 2004
-
-
Chris Lattner authored
give the extracted function a more useful name than just foo_code. llvm-svn: 13493
-
Chris Lattner authored
instruction in them. llvm-svn: 13490
-
Chris Lattner authored
PHI node entries from multiple outside-the-region blocks. This also fixes extraction of the entry block in a function. Yaay. This has successfully block extracted all (but one) block from the score_move function in obsequi (out of 33). Hrm, I wonder which block the bug is in. :) llvm-svn: 13489
-
Chris Lattner authored
* Add a stub for the severSplitPHINodes which will allow us to bbextract bb's with PHI nodes in them soon. * Remove unused arguments from findInputsOutputs * Dramatically simplify the code in findInputsOutputs. In particular, nothing really cares whether or not a PHI node is using something. * Move moveCodeToFunction to after emitCallAndSwitchStatement as that's the order they get called. * Fix a bug where we would code extract a region that included a call to vastart. Like 'alloca', calls to vastart must stay in the function that they are defined in. * Add some comments. llvm-svn: 13482
-
Chris Lattner authored
from the extracted region. If the return has 0 or 1 exit blocks, the new function returns void. If it has 2 exits, it returns bool, otherwise it returns a ushort as before. This allows us to use a conditional branch instruction when there are two exit blocks, as often happens during block extraction. llvm-svn: 13481
-
Chris Lattner authored
1. Get rid of the silly abort block. When doing bb extraction, we get one abort block for every block extracted, which is kinda annoying. 2. If the switch ends up having a single destination, turn it into an unconditional branch. I would like to add support for conditional branches, but to do this we will want to have the function return a bool instead of a ushort. llvm-svn: 13478
-
- May 09, 2004
-
-
Chris Lattner authored
llvm-svn: 13429
-
- May 08, 2004
-
-
Chris Lattner authored
%tmp.0 = getelementptr [50 x sbyte]* %ar, uint 0, int 5 ; <sbyte*> [#uses=2] %tmp.7 = getelementptr sbyte* %tmp.0, int 8 ; <sbyte*> [#uses=1] together. This patch actually allows us to simplify and generalize the code. llvm-svn: 13415
-
- May 07, 2004
-
-
Chris Lattner authored
llvm-svn: 13400
-
- May 04, 2004
-
-
Chris Lattner authored
This fixes PR332 and ADCE/2004-05-04-UnreachableBlock.llx llvm-svn: 13349
-
Chris Lattner authored
llvm-svn: 13341
-
Brian Gaeke authored
llvm-svn: 13340
-
Brian Gaeke authored
which case you'll get a null array and zero passed to the profiling function. llvm-svn: 13336
-
Brian Gaeke authored
llvm-svn: 13335
-