Utilizzo di GCC per trovare funzioni irraggiungibili (codice morto)

 C Programming >> Programmazione C >  >> Tags >> GCC
Utilizzo di GCC per trovare funzioni irraggiungibili (codice morto)

L'ottimizzazione del codice morto viene in genere eseguita dal linker:il compilatore non ha la panoramica. Tuttavia, il compilatore potrebbe aver eliminato static inutilizzato funzioni (poiché hanno un collegamento interno).

Pertanto, non dovresti guardare le opzioni GCC, ma le opzioni ld. Sembra che tu voglia --print-gc-sections . Tuttavia, tieni presente che probabilmente desideri che GCC inserisca ciascuna funzione nella propria sezione, -ffunction-sections . Per impostazione predefinita, GCC metterà tutte le funzioni nella stessa sezione e ld non è abbastanza intelligente da eliminare le funzioni inutilizzate:può solo eliminare le sezioni inutilizzate.