LTO is distinct, and happens after what codegen units does.

That said, it is a more fine grained parallelism, for sure. Rust does LTO as well as codegen-units.

Really, as you gesture towards, on some level, this is all semantics: our linkers are also basically compilers too, at this point.