[llvm] [LLVM] Slay undead copysign code (PR #111269)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 10 05:04:19 PDT 2024


arsenm wrote:

> > Regardless of the usage, I think these should still be recorded in RuntimeLibcalls. Ideally it would be a complete database of all calls for the system, not just used
> 
> Of all calls for... what? All function calls that are hypothetically possible at runtime? Used for what purpose? Based on what conditions? What are we assuming is linked and therefore imposing on frontends that they must guarantee is linked?
> 

The current TargetLibraryInfo + RuntimeLibcalls is an unworkable mess for doing LTO where the libc/libm/compiler-rt-esque builtins are all getting compiled in the same model. We have to have some way of knowing what function names might need to be retained for usage elsewhere in the compilation. e.g. see 615b7eeaa94d7c2d2c782fcdc21de5b62f3c168e, which is trying to make use of this list in LTO

> If a true database of all function calls that might be made at runtime is desired, @arsenm, and not "all calls that LLVM might generate", then the .def file in question is hopelessly short

Yes, this is a huge mess which needs work.

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


More information about the llvm-commits mailing list