[llvm-commits] [llvm] r41804 - in /llvm/trunk: lib/Transforms/Scalar/TailRecursionElimination.cpp test/Transforms/TailCallElim/inf-recursion.ll

Dale Johannesen dalej at apple.com
Mon Sep 10 17:08:49 PDT 2007


On Sep 10, 2007, at 4:53 PM, Chris Lattner wrote:
>> Can't we
>> detect whether the call is going to be lowered
>> to inline code and disable the transformation only in that case?
>
> To be honest, I'm not really very happy with this approach (disabling
> tail recursion from the entry block), it's quite a hack.  However, I
> can't think of a good way to handle this: one possibility would be to
> add a new "is a builtin" attribute, and attach it to the call, but
> that is gross in its own way.
>
> -Chris

Well, it is, but the optimizers really should know which are the  
builtins;
some of them have special semantics.

Perhaps builtins should not be marked as tail calls?




More information about the llvm-commits mailing list