[llvm] Remove the assertion to unblock breakages (PR #88035)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 9 15:33:23 PDT 2024
WenleiHe wrote:
> > > OK, so this is because there is no profile loaded for this function in pre-link time (so it never run this profileIsValid), the attr is not set(unknown).
> >
> >
> > I'm curious why does this happen?
>
> This can happen when meet:
>
> 1. there is no outline/top-level function in the profile( the function is all inlined into its caller or pre-inliner all inlines them).
> 2. because we use flattened profile. In prelink, all the internal function's nested(children) profile doesn't have this function.
> 3. In post-link, one (external) function 's nested profile have this function.
>
> basically this is caused by the profile flattening.
Ok, so the function's profile only exists as nested inlinee profile in a different module, so for pre-link compilation of that module, we don't have a profile to check for mismatch.
https://github.com/llvm/llvm-project/pull/88035
More information about the llvm-commits
mailing list