Commit Graph

80 Commits

Author SHA1 Message Date
buckle2000
01ed463c7a Change SignalHandlers.h to SignalHandlers.hpp 2019-01-14 21:30:25 -08:00
Dan Gohman
9fe08c9341 Tidy up pointer casting to avoid casts that change mutability. 2019-01-08 10:31:58 -08:00
Dan Gohman
0a2b0ee9b0 Mmap API tidying.
Establish more clear expectations for who is expected to page-align what
and when.
2019-01-06 10:08:40 -08:00
Dan Gohman
0826e32c9a Tidy up unnecessary return statements. 2019-01-05 16:23:04 -08:00
Dan Gohman
3143e22566 Move the creation of linear-memory guard pages into the mmap module.
Create linear-memory pages as PROT_NONE and then make them accessible on
demand.
2019-01-05 16:23:04 -08:00
Dan Gohman
3ac4269dc5 Add host_state() accessors to InstanceContents and VMContext too. 2019-01-04 17:24:14 -08:00
Dan Gohman
73b2c45313 Add a host_state field to Instance.
This allows hosts to embed arbitrary state along with instances.
2019-01-04 17:15:22 -08:00
Dan Gohman
3aef763046 Delete an unneeded comment. 2019-01-03 15:50:04 -08:00
Dan Gohman
6661228c86 Tidy up whitespace. 2019-01-03 14:44:30 -08:00
Dan Gohman
e876f0fb1d Add some Cargo.toml keywords. 2019-01-03 14:25:33 -08:00
Dan Gohman
40acc1f340 Add crate version identifiers. 2019-01-03 14:16:48 -08:00
Dan Gohman
585bdac91e Use vec![0; size] instead of creating an empty Vec and resizing. 2019-01-03 14:16:48 -08:00
Dan Gohman
a41bc1fe1e Fix unused use warnings. 2019-01-03 14:16:48 -08:00
Dan Gohman
ca2fdc5ccb Update no_std support.
This `no_std` support isn't complete though, as some dependencies
don't support it.
2019-01-03 14:16:48 -08:00
Dan Gohman
f6c2fe7d2d Update to Rust 2018 Edition. 2019-01-03 12:58:11 -08:00
Dan Gohman
00a84672f7 Use Vec::with_capacity. 2019-01-03 12:37:14 -08:00
Dan Gohman
fdc66e130f Eliminate unneeded casts. 2019-01-03 12:05:32 -08:00
Dan Gohman
39770ec72c Minor code tidying. 2019-01-03 12:05:26 -08:00
Dan Gohman
701b1998e9 Avoid creating slices with null pointers. 2019-01-03 12:05:17 -08:00
Dan Gohman
8a5429ce74 Factor out functions for working with table and memory initializers. 2019-01-03 12:04:58 -08:00
Dan Gohman
df7724ce2b Update Cargo.toml authors fields. 2019-01-03 12:04:37 -08:00
Dan Gohman
2f04b78ecf Use cast::usize rather than as usize to avoid silent overflow. 2019-01-03 12:04:24 -08:00
Dan Gohman
529de7ca60 Tidy up unneeded '&'s. 2019-01-03 12:03:52 -08:00
Dan Gohman
c66a3c23f3 Tidy up some documentation comments. 2019-01-03 12:03:43 -08:00
Dan Gohman
3ce2127bfa Eliminate the intermediate "base" global variables. 2019-01-03 12:03:33 -08:00
Dan Gohman
3431122440 Update to bindgen 0.46. 2019-01-03 12:03:22 -08:00
Dan Gohman
8939d1252a Document that wasmtime-runtime is meant to be compiled for the target. 2019-01-03 12:02:57 -08:00
Dan Gohman
3270369a69 Restructure VMContext to eliminate a level of indirection. 2019-01-03 12:02:35 -08:00
Dan Gohman
ff6776fe10 Refactor instance accessor routines.
This helps localize the unsafe code needed to access these fields.
2019-01-03 11:49:25 -08:00
Dan Gohman
482a054c75 Move the signature_ids field first. 2019-01-03 11:49:15 -08:00
Dan Gohman
087b5b4dff Implement cross-instance indirect calls. 2019-01-03 11:48:53 -08:00
Dan Gohman
9d73123e3e Reformat a comment to fit within 100 columns. 2019-01-03 11:48:34 -08:00
Dan Gohman
bec724b501 Whitespace tidying. 2019-01-03 11:48:26 -08:00
Dan Gohman
63c9143e87 Update to bindgen 0.45. 2019-01-03 11:48:05 -08:00
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
57a1618742 Catch EXCEPTION_INT_OVERFLOW exceptions too. 2018-12-24 22:08:36 -08:00
Dan Gohman
71c0142cd4 Rename the address field of Table/Memory/Global exports to definition.
For functions, `address` makes sense because it's the address of the
function. Bt for Table/Memory/Global, it points to a `VM*Definition` field.
2018-12-24 18:20:15 -08:00
Dan Gohman
8f74c7f3d5 Add derive(Debug) to Export. 2018-12-24 18:14:00 -08:00
Dan Gohman
c4e10227de Tidy up trap-handling code. 2018-12-19 15:14:30 -08:00
Dan Gohman
4d4ecfd812 Bump version to 0.1.0 2018-12-17 13:45:12 -08:00
Dan Gohman
0c0ccc5d09 Add unsigned access methods to VMGlobalDefinition. 2018-12-13 15:50:58 -08:00
Dan Gohman
717f60bda1 Misc cleanups in the trap handling code. 2018-12-13 13:14:08 -08:00
Dan Gohman
26eb8131da Avoid unnecessary clone() calls. 2018-12-13 09:13:04 -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
6dd39dee6a Update to Cranelift 0.26.0. 2018-12-11 13:21:03 -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
33b7dfac00 Rename ptr_size. 2018-08-03 14:20:15 -07:00
Dan Gohman
831b481f13 More code reorganization. 2018-08-03 14:18:23 -07:00