[wasm] Ongoing AOT work. (#10541)
commit350d063e2aafe51168615a5a94f22ba9f8d47464
authorZoltan Varga <vargaz@gmail.com>
Tue, 11 Sep 2018 20:32:53 +0000 (11 22:32 +0200)
committerLudovic Henry <luhenry@microsoft.com>
Tue, 11 Sep 2018 20:32:53 +0000 (11 16:32 -0400)
treeb08b165da2cbf9bad1aecca81f96d06fcbbcc66a
parent9f0099ea1f5dc454d9f233ae3a67d1c76fea5546
[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.
13 files changed:
mono/metadata/sgen-mono.c
mono/mini/mini-llvm.c
mono/mini/mini-runtime.c
mono/mini/mini.h
mono/mini/tramp-wasm.c
scripts/ci/run-jenkins.sh
sdks/Make.config.sample
sdks/builds/Makefile
sdks/builds/wasm.mk
sdks/wasm/Makefile
sdks/wasm/driver.c
sdks/wasm/packager.cs
tools/offsets-tool/MonoAotOffsetsDumper.cs