rounds-exhaustedInlining rounds ran out before this call was revisited
Reported by --explain after a verdict.
mettle explain rounds-exhausted
The callee passes every check. The call site only appeared late, exposed by an earlier round of inlining, and the round limit was reached before the inliner came back to it.
Fix: mark the callee @inline, which raises its priority. Deep call chains hit this most: each level of nesting costs a round.
Related
- callee-no-bodyThe callee has no body to inline
- callee-noinlineThe callee is marked @noinline
- callee-denylistedThe callee is on the compiler's inline denylist
- too-many-parametersThe callee takes more than 16 parameters
- callee-parameter-namesThe callee's parameter names are unavailable
- callee-over-budgetThe callee's body is over the inline size budget
- callee-call-countThe callee makes more calls than the inline call-count budget allows
- callee-inline-asmThe callee contains inline assembly