wasmi/src
adam-rhebo 8dac328ea7 Remove hashbrown and use BTree{Map,Set} from the alloc crate (#187)
* Remove hashbrown and use BTree{Map,Set} from the alloc crate

wasmi-validation must handle untrusted input and hence we switch from
Hash{Set,Map} (whether std's or hashbrown's) to BTree{Set,Map} to avoid
algorithmic complexity attacks while retaining no_std support.

Closes #183

* Improve memory locality of checking for duplicate exports

Using a sorted slice gives us the same O(N log N) worst case execution
time as using a BTreeMap, but using a single allocation as with HashMap,
so that we should see better memory locality and hence better constant
factors when checking for duplicate exports.
2019-06-12 11:30:10 +02:00
..
bin rustfmt (#151) 2018-12-11 12:54:06 +01:00
prepare fix(compile module): remove unused `mut` (#179) 2019-05-03 14:46:01 +01:00
tests Check type when resuming function (#152) 2019-01-02 12:18:24 +01:00
func.rs Recycle value stacks to avoid allocation costs (#184) 2019-06-12 10:51:04 +02:00
global.rs rustfmt (#151) 2018-12-11 12:54:06 +01:00
host.rs rustfmt (#151) 2018-12-11 12:54:06 +01:00
imports.rs Remove hashbrown and use BTree{Map,Set} from the alloc crate (#187) 2019-06-12 11:30:10 +02:00
isa.rs Extract validation into a separate crate (#176) 2019-04-19 16:05:09 +02:00
lib.rs Remove hashbrown and use BTree{Map,Set} from the alloc crate (#187) 2019-06-12 11:30:10 +02:00
memory.rs Replaced std with core in the TryInto import (#181) 2019-05-16 18:46:22 +02:00
module.rs Remove hashbrown and use BTree{Map,Set} from the alloc crate (#187) 2019-06-12 11:30:10 +02:00
nan_preserving_float.rs Extract validation into a separate crate (#176) 2019-04-19 16:05:09 +02:00
runner.rs Recycle value stacks to avoid allocation costs (#184) 2019-06-12 10:51:04 +02:00
table.rs Extract validation into a separate crate (#176) 2019-04-19 16:05:09 +02:00
types.rs rustfmt (#151) 2018-12-11 12:54:06 +01:00
value.rs Removed Byteorder now that rust supports it natively (#171) 2019-02-26 11:37:14 +01:00