"git@repo.hca.bsc.es:rferrer/llvm-epi-0.8.git" did not exist on "feb332c0f74323287bb971197732fe1cde8b1199"
- Jul 13, 2010
-
-
Duncan Sands authored
by a return that returns a constant, while elsewhere in the function another return instruction returns a different constant. This is a special case of accumulator recursion, so just generalize the existing logic a bit. llvm-svn: 108241
-
- Jul 12, 2010
-
-
Gabor Greif authored
llvm-svn: 108131
-
- Jul 10, 2010
-
-
Duncan Sands authored
operation, but the way it's implemented requires the operation to also be commutative. So add a check for commutativity (and tweak the corresponding comments). This makes no difference in practice since every associative LLVM instruction is also commutative! Here's an example to show the need for commutativity: the accum_recursion.ll testcase calculates the factorial function. Before the transformation the result of a call is ((((1*1)*2)*3)...)*x while afterwards it is (((1*x)*(x-1))...*2)*1 which clearly requires both associativity and commutativity of * to be equal to the original. llvm-svn: 108056
-
- Jun 26, 2010
-
-
Duncan Sands authored
the returned value after the tail call if it differs from other return values. The optimal thing to do would be to introduce a phi node for the return value, but for the moment just fix the miscompile. llvm-svn: 106947
-
- Jun 24, 2010
-
-
Gabor Greif authored
llvm-svn: 106709
-
Gabor Greif authored
llvm-svn: 106707
-
- May 28, 2010
-
-
Dan Gohman authored
lib/Transforms/Utils and into lib/Analysis so that Analysis passes can use them. llvm-svn: 104949
-
- Apr 17, 2010
-
-
Eric Christopher authored
Probably the best way to know that all getOperand() calls have been handled is to replace that API instead of updating. llvm-svn: 101579
-
- Apr 16, 2010
-
-
Dan Gohman authored
callee is expected to be expanded to something else by codegen, so that normal infinitely recursive calls are still transformed. llvm-svn: 101468
-
Gabor Greif authored
with a fix for self-hosting rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101465
-
Gabor Greif authored
llvm-svn: 101434
-
- Apr 15, 2010
-
-
Gabor Greif authored
with a fix rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101397
-
Gabor Greif authored
llvm-svn: 101368
-
Gabor Greif authored
of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101364
-
- Feb 03, 2010
-
-
Evan Cheng authored
llvm-svn: 95198
-
- Jan 31, 2010
-
-
Evan Cheng authored
Do not mark no-return calls tail calls. It'll screw up special calls like longjmp and it doesn't make much sense for performance reason. If my logic is faulty, please let me know. llvm-svn: 94937
-
- Jan 30, 2010
-
-
Bob Wilson authored
unconditionally. Besides checking the offset, also check that the underlying object is aligned as much as the load itself. llvm-svn: 94875
-
- Nov 07, 2009
-
-
Nick Lewycky authored
llvm-svn: 86403
-
Nick Lewycky authored
things. Back out part of r86349 for a moment. llvm-svn: 86353
-
Nick Lewycky authored
and add a .ll to demo the new capability. llvm-svn: 86349
-
- Sep 02, 2009
-
-
Chris Lattner authored
llvm-svn: 80766
-
- Aug 13, 2009
-
-
Owen Anderson authored
llvm-svn: 78948
-
- Jun 19, 2009
-
-
Chris Lattner authored
when it allows forming a tail call. Patch by Frits van Bommel. This implements PR4323. llvm-svn: 73752
-
- May 06, 2009
-
-
Duncan Sands authored
the optimizers about this. For example, a readonly function with no uses cannot be removed unless it is also marked nounwind. llvm-svn: 71071
-
- Sep 04, 2008
-
-
Dan Gohman authored
llvm-svn: 55779
-
- Jun 14, 2008
-
-
Chris Lattner authored
llvm-svn: 52267
-
- May 15, 2008
-
-
Gabor Greif authored
Fix a bunch of 80col violations that arose from the Create API change. Tweak makefile targets to find these better. llvm-svn: 51143
-
- May 13, 2008
-
-
Dan Gohman authored
several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
-
- Apr 06, 2008
-
-
Gabor Greif authored
Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
-
- Mar 11, 2008
-
-
Devang Patel authored
Right now, the pass does not optimize tail recursions involving multiple return values. llvm-svn: 48228
-
- Feb 20, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 47371
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- Sep 10, 2007
-
-
Chris Lattner authored
llvm-svn: 41804
-
- May 06, 2007
-
-
Nick Lewycky authored
llvm-svn: 36873
-
- May 03, 2007
-
-
Devang Patel authored
llvm-svn: 36662
-
- May 02, 2007
-
-
Devang Patel authored
Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. llvm-svn: 36652
-
- May 01, 2007
-
-
Devang Patel authored
llvm-svn: 36632
-
- Mar 22, 2007
-
-
Dan Gohman authored
llvm-svn: 35265
-
- Feb 11, 2007
-
-
Chris Lattner authored
llvm-svn: 34176
-
- Feb 06, 2007
-
-
Reid Spencer authored
the Transforms library. This reduces debug library size by 132 KB, debug binary size by 376 KB, and reduces link time for llvm tools slightly. llvm-svn: 33939
-