Когда собираешь с межмодульной оптимизацией. Тогда шансы есть.
-flto -fdevirtualize-at-ltrans
На гцц изредка работало. Как на кланге - хз.
А, точно. У gcc оно так.
А у кланга, при lto, он не до конца собирает в бинарный объектный файл, а в ir. И уже во время lto дорабатывает напильником.
Из-за этого, кланговская межмодульная чутка получше. Но они не совместимы.
Т.е. если ты собрал либу с lto клангом, и после юзаешь её, с lto гцц, то лто будет менее эффективен и может вообще не собраться (пару раз бывало, линкер ругался на непонятный формат).