I have empathy for this having written compiler passes for 10ish years of my career. But as I've studied register renaming, speculative branch prediction and trace caches I would no longer agree with your last sentence. It's fine though, totally just an opinion.
It's still much closer to the input machine code compared to what compiler optimizer passes do to your input C code ;)