All tail-calls are sibling calls

If you’re going to specifically identify tail call functions, you can just switch the calling convention to a custom callee-cleanup one, which allows the number of arguments to change (without having to do any magic with calculating stack sizes in advance). See also this ancient bug and this RFC bug.