I'm neither a compiler- nor wasm-expert, but at least some of the changes posted in the last few comments on the issue look like they'd be relevant either way. From the little research on wasm vs. emscripten I did just now, it looks to me like the first step would be to allow the LLVM wasm backend to work with Swift, which I think is the backend both Clang and Rust (which indeed switched from the backend coming with emscripten) use.
Even when using that, It looks to me like emscripten can still be used to generate glue code and provide shims for libc, opengl and such things (I think that's what it is at least). Rust is using their own system, wasm-bindgen for at least a part of what emscripten provides, but I'm not sure whether they are still using emscripten for other functionality.
The wasm project also has at least some of the features emscripten provides on their roadmap