L'ottimizzazione del compilatore implica l'adattamento di un compilatore per ridurre il tempo di esecuzione o la dimensione dell'oggetto o entrambi. Ciò può essere ottenuto utilizzando gli argomenti del compilatore (ad esempio CFLAGS, LDFLAGS), plugin del compilatore (DEHYDRA per esempio) o modifiche dirette al compilatore (come la modifica del codice sorgente).