It's still with-compiling. Shipping SPIR-V just means it gets compiled on the end user machine, which thus needs to have a compiler toolchain running. So it's more convenient, and popular with closed source libraries, but not magic.
Intel compiles LLVM IR to SPIR-V to LLVM IR. There was a thing on HSA/AMDGPU called HSAIL which I think was meant to work broadly like PTX but didn't work out.
I think we should adapt LLVM IR for use as a serialisation format which gets specialised to the hardware at the last moment, instead of bothering with the SPIR-V indirection, but that's somewhat in tension with LLVM changing their IR representation.
I'd be pretty happy with running the same code on those architectures _with recompiling_ as a first step, there's way too much #ifdef noise needed to make that hold together today.
Intel compiles LLVM IR to SPIR-V to LLVM IR. There was a thing on HSA/AMDGPU called HSAIL which I think was meant to work broadly like PTX but didn't work out.
I think we should adapt LLVM IR for use as a serialisation format which gets specialised to the hardware at the last moment, instead of bothering with the SPIR-V indirection, but that's somewhat in tension with LLVM changing their IR representation.
I'd be pretty happy with running the same code on those architectures _with recompiling_ as a first step, there's way too much #ifdef noise needed to make that hold together today.