Tail call optimization in dmd

Jonathan M Davis jmdavisProg at gmx.com
Wed Oct 6 15:05:54 PDT 2010


On Wednesday, October 06, 2010 13:23:37 Andrei Alexandrescu wrote:
> dmd currently optimizes tail recursion but not tail calls. Tail
> recursion == function calls itself as the last expression. Tail call ==
> function issues a call to another function as the last expression.
> Without tail call optimization, mutual recursion will consume stack as
> you noted.

Also, doesn't dmd only ever do one level of inlining right now? That could 
severely limit its ability to inline this kind of code.

- Jonathan M Davis


More information about the Digitalmars-d mailing list