[llvm] [PseudoProbe] Add PseudoProbeDescUpdatePass (PR #99839)

via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 22 10:22:04 PDT 2024


WenleiHe wrote:

> > > Compiler generated functions are not unique to partial inline. Coroutine split is another example. How is that handled and how is partial inline different? cc @wlei-llvm
> > 
> > 
> > We use debug info symbol so that the different suffix function can be mapped to the original function, it seems also applicable to partial inlining. but maybe the debug info is only missing for that function:
> > ```
> >   if (auto *SP = F.getSubprogram()) {
> >     FName = SP->getLinkageName();
> >     if (FName.empty())
> >       FName = SP->getName();
> >   }
> > ```
> 
> Lost of debug info should be fixed. However, I think it shouldn't cause crash of llvm-profgen in long term.

So, if missing debug info for partial inline funclet is the root case, we can deal with this by: 

1) Fixing missing debug info for paritial inline.
2) Let llvm-profgen emit a warning such cases and tolerate it instead of crashing. 

https://github.com/llvm/llvm-project/pull/99839


More information about the llvm-commits mailing list