Dan Gohman
7592c99f3b
Refactor the compilation and instantiation pipeline.
...
wasmtime-execute is now wasmtime-jit. Move `JITCode` and the TargetIsa
into a new `Compiler` type. `InstancePlus` is no more, with trampoline
functionality now handled by `Compiler`.
2019-01-03 11:47:55 -08:00
Dan Gohman
c4e10227de
Tidy up trap-handling code.
2018-12-19 15:14:30 -08:00
Dan Gohman
3f24098edc
Implement the remaining valid spec tests.
...
And lots of other miscellaneous changes. Rename InstanceWorld to
InstancePlus and reorganize its contents. This still isn't a great name,
but at least now it has a clear purpose.
2018-12-12 11:49:02 -08:00
Dan Gohman
56850d481d
Initial support for function, table, memory, and global imports.
2018-12-11 12:49:14 -08:00
Dan Gohman
548c45c604
Rename wasmtime-runtime to wasmtime-environ.
...
This mirrors changes in cranelift.
2018-08-03 15:20:19 -07:00
Dan Gohman
ef5254c0da
More code reorganization and cleanups.
2018-08-03 15:06:59 -07:00
Dan Gohman
831b481f13
More code reorganization.
2018-08-03 14:18:23 -07:00
Dan Gohman
6659ef7018
More code reorganization.
2018-08-03 13:35:25 -07:00
Dan Gohman
fdd3600f1b
Delete a redundant function.
2018-08-03 13:19:21 -07:00
Dan Gohman
779128d14d
Factor out FuncEnvironment and ModuleEnvironment into a separate file.
2018-08-03 13:04:05 -07:00
Dan Gohman
63bc52d9fd
Eliminate runtime's direct dependeny on wasmparser.
2018-08-03 12:43:36 -07:00
Dan Gohman
753d650f1a
Update to cranelift 0.18.1.
2018-08-02 20:50:28 -07:00
Dan Gohman
dd3a9dab6e
Make an initial pass through clippy warnings.
2018-07-21 06:46:53 -07:00
Dan Gohman
2608dd0c47
Update to cranelift 0.16.1, target-lexicon 0.0.3, faerie 0.4.4.
2018-07-21 06:46:19 -07:00
Dan Gohman
c612d48b33
Rename to wasmtime. It's wasmtime!
...
Also, update to Cretonne 0.13.0.
2018-07-02 16:20:22 -07:00
Dan Gohman
73639e4557
Update to cretonne 0.9.0 and faerie 0.4.1.
2018-06-07 14:37:36 -07:00
Dan Gohman
99ee96ca16
Update to latest stable rustfmt-preview.
2018-06-07 14:17:56 -07:00
Dan Gohman
9d41135fe3
Translate from function-body index to function-index-space index.
...
The wasm function index space consists of the index space of the
imported functions concatenated with the index space of the defined
functions. When iterating through function definitions, it's necessary
to adjust the index when a function-index-space index is needed.
2018-05-17 20:39:19 -07:00
Dan Gohman
b5e794a584
Update to Cretonne 0.8.0.
2018-05-14 12:58:28 -10:00
Dan Gohman
f276a021cb
Update wasmstandalone for API changes.
...
This updates to the latest faerie and cretonne API changes.
2018-02-22 09:44:02 -08:00
Dan Gohman
46ac24d172
Add a comment about call_indirect bounds/signature checking.
2017-11-17 11:14:45 -08:00
Dan Gohman
2b40f72f00
Update for more Cretonne API changes.
...
This updates to ExternalName and reloc_external.
2017-10-31 12:36:53 -07:00
Dan Gohman
226fbce0b3
Update for Cretonne API changes.
2017-10-28 06:11:56 -07:00
Dan Gohman
469b7bb5e9
Add a FIXME comment for grow/current_memory.
2017-10-27 16:46:04 -07:00
Dan Gohman
233d2cd773
Initialize function names and signatures before calling translate_from_reader.
2017-10-13 16:42:40 -07:00
Dan Gohman
b87178647b
Change get_func_type's return type to SignatureType.
...
It's the same thing, but provides more readability.
2017-10-13 16:42:01 -07:00
Dan Gohman
2c53dc69ff
Use from_str_radix to parse hex digits.
2017-10-13 16:41:45 -07:00
Dan Gohman
ca1b461375
Begin internal reorganization.
...
This begins reorganizing how translation and compilation occur, and
setting up infrastructure for imports/exports and relocations. It
splits parts out of StandaloneRuntime, forming Module, Compilation,
and Instance structs, which can be used more independently.
It also simplifies the command-line interface, in a step towards
making simple tools that just expose the functionality of the
libraries.
2017-10-13 14:47:01 -07:00
Dan Gohman
3d6f0f7045
Update for Cretonne API changes.
2017-10-10 10:24:15 -07:00
Dan Gohman
9f7d0a659c
Use VmCtx arg for globals, and a global for the heap.
...
This replaces the ReservedReg strategy, and is more flexible.
2017-10-05 09:01:38 -07:00
Dan Gohman
23bafd1218
Split the runtime and execution code into separate crates.
2017-10-03 14:57:52 -07:00