https://go.dev/doc/asm
Conside the strategy employed by the gc Golang compiler. The COMPILE step outputs a platform-independent assembly-esque IR. Then the ASSEMBLE step reifies it on a per-platform basis.
gc
I hope I understood and represented that correctly.