The cost of guaranteed tail call optimization is that you have to adopt the Pascal (callee side) convention for stack frame cleanup, so functions can’t reuse outgoing argument space. Does it matter in practice? Dunno.
Right, that’s what I mean. You have to do *something* different from the C calling convention. Does it matter? I dunno! Someone should test :)
-
-
What does it mean to test this? If Chez or MLton has really fast function calls, does it prove something?
-
Run SPECint with an LLVM that compiles all functions with your custom calling convention?
- 2 more replies
New conversation -
-
-
Oh, I see! OK. Yes, for sure, I'd love to see some testing; but which language would make sense for such testing? And how could one interpret the results - what would they be comparable to?
-
The Pascal convention was ironically enough a code size *win* for old x86 compilers, which is why Win16 and Win32 used it pervasively, though that was well before the days of modern code generators that reuse stack space intelligently
- 2 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.