L'ottimizzazione è una parte del processo di compilazione / collegamento. Non puoi davvero separarlo da quel processo. La soluzione migliore è guardare il codice di assemblaggio effettivo creato dal compilatore. Per quanto riguarda l'impatto reale dell'ottimizzazione, questo è il risultato che conta.
Probabilmente il più noto nel mondo C ++ è il Compiler Explorer di Matt Goldbolt online dove puoi compilare e guardare l'assemblaggio creato da un ampio varietà di compilatori, piattaforme e impostazioni. Inoltre, si ottiene una mappatura visiva piuttosto buona tra le righe nel codice C ++ e l'assembly corrispondente.
Mi sembra di ricordare vagamente che Visual Studio ha una modalità simile che mostra assembly mappati al codice sorgente. Se questo è il tuo IDE, potresti volerlo esaminare.