Optymalizacja kodu wynikowego programu to działania, których celem jest polepszenie parametrów wykonania bez zmiany znaczenia programu (tj. bez zmiany tego, co program robi, a jedynie jak efektywnie to robi). Typowe cele optymalizacji to m.in. krótszy czas wykonywania, mniejsze zużycie pamięci, mniejsza liczba operacji, lepsze wykorzystanie procesora lub zmniejszenie rozmiaru kodu wynikowego.
Stwierdzenie, że optymalizacja "może być prowadzona na różnych etapach pracy w celu zwiększenia szybkości wykonywania kodu przez procesor" jest zgodne z praktyką kompilatorów: część optymalizacji wykonuje się na reprezentacjach pośrednich, a część już blisko kodu maszynowego. Również zdanie, że "jej celem jest poprawienie wydajności programu", trafnie opisuje istotę optymalizacji.
Odpowiedź mówiąca o "modyfikacji kodu źródłowego do postaci, w której będzie działał szybciej" bywa rozumiana szerzej (optymalizacja może dotyczyć także refaktoryzacji lub ręcznych zmian w kodzie), jednak w kontekście pytania o optymalizację kodu wynikowego kluczowy jest efekt: szybsze działanie/większa wydajność. Nie jest to opis kontroli formalnej.
Natomiast stwierdzenie: "Jej celem jest sprawdzenie zgodności z wymogami formalnymi" opisuje etap kontroli poprawności (np. składniowej/semantycznej) i walidacji względem reguł, a nie optymalizację. Sprawdzanie wymogów formalnych ma na celu upewnienie się, że program jest poprawnie zapisany i może zostać poprawnie przetworzony, a nie to, by działał szybciej. Dlatego właśnie ten opis jest błędny w odniesieniu do optymalizacji kodu wynikowego.
Wskazówka egzaminacyjna: jeśli w odpowiedzi pojawiają się słowa typu "zgodność formalna", "poprawność składni", "weryfikacja", to zwykle dotyczy to poprawności/analizy, a nie optymalizacji. Optymalizacja niemal zawsze odnosi się do "wydajności", "czasu", "pamięci", "rozmiaru" lub "zużycia zasobów".