[PATCH] D103275: Update musttail verification to check all swiftasync->swiftasync tail calls.

Arnold Schwaighofer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 27 14:08:33 PDT 2021


aschwaighofer added a comment.

The whole point behind the `swiftasynccc` convention (`swifttailcc` in llvm; whose clang support we still have to upstream I think) is to use only constant stack space for an unbounded number of calls in tail call position. So this is an invariant in my opinion. If a frontend wants to opt out of that invariant in can annotate the call with `nottail`. The c frontend marks calls in tail position immediately followed by a `return` as musttail. The swift frontend uses `musttail` wherever appropriate.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D103275/new/

https://reviews.llvm.org/D103275



More information about the llvm-commits mailing list