I noticed that version 9 is still isn’t ready, but Emscripten expects you to use it as the LLVM WASM backend. Emscripten wants us to use the latest upstream version of LLVM. So I my question is when will the current upstream version, version 9, be ready to use? Also, is WebAssembly still an experimental target to build (LLVM_EXPERIMENTAL_TARGETS_TO_BUILD setting) or is it a regular target now?
Emscripten uses tip-of-tree LLVM instead of the major releases, and the current version number of tip-of tree LLVM is 9. Emscripten uses tip-of-tree LLVM because the WebAssembly backend is being developed alongside emscripten, so the major LLVM releases quickly become out of date with respect to the latest emscripten features. LLVM 9 does not need to be officially released in order for you to use it with Emscripten. WebAssembly is a regular target since LLVM 8, not an experimental target.
In the future, it would be better to send questions related to Emscripten to the emscripten-discuss email list, since Emscripten is not relevant to most LLVM developers: https://groups.google.com/forum/#!forum/emscripten-discuss