Optimization remarks and LTO


I’m building a C++ codebase on clang with LTO, while activating -fsave-optimization-remarks.

I’m surprised to see remarks like “X will not be inlined into Y because its definition is unavailable”. Here’s a public example: abstract.h

These remarks are probably generated in the per-translation-unit IR generation phase.

Do the passes in the LTO phase emit remarks? Is there a way to filter the remarks to only those that are relevant post-LTO? If not, shouldn’t there be one?



1 Like