summaryrefslogtreecommitdiff
path: root/scripts/fuzz_relooper.py
Commit message (Collapse)AuthorAgeFilesLines
* Convert remaining python scripts to run under python3 (#2643)Sam Clegg2020-02-111-1/+1
|
* Switch python indentation from 2-space to 4-space (#2299)Sam Clegg2019-08-161-136/+136
| | | | | | | | pep8 specifies 4 space indentation. The use of 2 spaces is, I believe a historical anomaly where certain large organizations such as google chose 2 over 4 and have yet to make the switch. Since there isn't too much code in binaryen today it seems reasonable to make the switch.
* Upgrade flake8 and run it on python 3 (#2297)Guanzhong Chen2019-08-131-9/+11
|
* Reflect instruction renaming in code (#2128)Heejin Ahn2019-05-211-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Reflected new renamed instruction names in code and tests: - `get_local` -> `local.get` - `set_local` -> `local.set` - `tee_local` -> `local.tee` - `get_global` -> `global.get` - `set_global` -> `global.set` - `current_memory` -> `memory.size` - `grow_memory` -> `memory.grow` - Removed APIs related to old instruction names in Binaryen.js and added APIs with new names if they are missing. - Renamed `typedef SortedVector LocalSet` to `SetsOfLocals` to prevent name clashes. - Resolved several TODO renaming items in wasm-binary.h: - `TableSwitch` -> `BrTable` - `I32ConvertI64` -> `I32WrapI64` - `I64STruncI32` -> `I64SExtendI32` - `I64UTruncI32` -> `I64UExtendI32` - `F32ConvertF64` -> `F32DemoteI64` - `F64ConvertF32` -> `F64PromoteF32` - Renamed `BinaryenGetFeatures` and `BinaryenSetFeatures` to `BinaryenModuleGetFeatures` and `BinaryenModuleSetFeatures` for consistency.
* Check $NODE environment variable when looking for node (#1792)Sam Clegg2018-11-301-1/+2
| | | | This allows me to run tests on a system where the default installed node is not recent enough.
* Relooper CFG optimizations (#1759)Alon Zakai2018-11-211-44/+102
| | | | | | | | | | | | | | | | Previously the relooper would do some optimizations when deciding when to use an if vs a switch, how to group blocks, etc. This PR adds an additional pre-optimization phase with some basic but useful simplify-cfg style passes, * Skip empty blocks when they have just one exit. * Merge exiting branches when they are equivalent. * Canonicalize block contents to make such comparisons more useful. * Turn a trivial one-target switch into a simple branch. This can help in noticeable ways when running the rereloop pass, e.g. on LLVM wasm backend output. Also: * Binaryen C API changes to the relooper, which now gets a Module for its constructor. It needs it for the optimizations, as it may construct new nodes. * Many relooper-fuzzer improvements. * Clean up HashType usage.
* Unify imported and non-imported things (#1678)Alon Zakai2018-09-191-3/+3
| | | | | | | | | | | | | | Fixes #1649 This moves us to a single object for functions, which can be imported or nor, and likewise for globals (as a result, GetGlobals do not need to check if the global is imported or not, etc.). All imported things now inherit from Importable, which has the module and base of the import, and if they are set then it is an import. For convenient iteration, there are a few helpers like ModuleUtils::iterDefinedGlobals(wasm, [&](Global* global) { .. use global .. }); as often iteration only cares about imported or defined (non-imported) things.
* Cleanup scripts in scripts/test (#1566)Sam Clegg2018-05-251-12/+12
| | | | | | | | | | Remove executable bit and #! from scripts that don't have entry point. Add missing licence test. Move arg parsing into a function. Remove legacy --only_prepare (with underscrore) argument.
* Fix flake8 failures in scripts/ (#1239)Taiju Tsuiki2017-10-241-1/+1
| | | flake8 starts warning on bare "except:" in python scripts, and all CI job is failing for that.
* add drop and tee expressionsAlon Zakai2016-09-071-2/+4
|
* update relooper fuzzerAlon Zakai2016-07-181-1/+1
|
* Relooper switch support (#617)Alon Zakai2016-07-021-4/+41
| | | | | | * support switches in relooper and c api * update relooper fuzzer for switches
* use separate internal opcodes for binary variantsAlon Zakai2016-05-181-6/+6
|
* remove obsolete comment from relooper fuzzerAlon Zakai2016-05-071-1/+1
|
* relooper fuzzing improvements (#453)Alon Zakai2016-05-061-15/+22
|
* add a fuzzer for the relooper through the C APIAlon Zakai2016-05-061-0/+282