[wasm] Ongoing AOT work. (#10541)
* [wasm] Rename 'wasm-aot' to 'wasm-cross' for consistency with the other SDKs.
* [wasm] Use the separate libmono-ee-interp.a library for linking in the interpreter.
* [wasm] Unify interp and aot runtimes.
* [wasm] Avoid cleaning the emscripten toolchain when cleaning the runtime or cross compilers.
* [wasm] Use the sdk llvm targets to build the cross compiler, so it can use a downloaded llvm instead of building its own.
* [offset-tool] Add WASM support.
* [wasm] Generate offsets file for wasm.
* [wasm] Switch packager.exe to use Mono.Options, add a --mono-sdkdir option to specify the path to the mono sdk.
* [wasm] Emit a ninja build file from the packager when the --builddir argument is given.
* [wasm] Auto generate the aot registration code by generating a driver-gen.c file and including it into driver.c.
* [wasm] Add emcc link step to the ninja build script.
* zoltan's changes.
* [wasm] Fix merge conflicts from picking Zoltan's patches.
* [sdks] Fix the wasm build so the package target doesn't build
394839840 llvms.
* [wasm] Fix mono_arch_create_specific_trampoline to work with the AOT compiler reverse lookup of icalls
* [wasm] Don't set minimum memory size, let it dynamically grow.
* [wasm] Remove old aot targets. Now do-aot-sample does the whole magic.
* [wasm] Attept at making the offsets-tool work on linux.
* [wasm] Cleanup the hacks early in this PR.
* [wasm] Fix rebase issue.
* Fix rebase
* Fix rebase
* [llvm] Only emit the dummy arg when targeting wasm.