summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* support parse errors in .fail. testsAlon Zakai2016-06-171-1/+1
|
* fix an assert to a proper error, in bad func declsAlon Zakai2016-06-171-1/+1
|
* fix interpreter on indirect calls, do arguments before checking and doing ↵Alon Zakai2016-06-171-3/+3
| | | | the call (they might flow)
* Do not create dyncall thunks for functions with i64 results or params (#586)Derek Schuff2016-06-145-68/+39
| | | | | | Dyncall thunks are meant to be used with emscripten on the web; however on the web, functions with i64 results or params are not allowed to be exported.
* Add mode to wasm validator to check for web-environment constraints (#584)Derek Schuff2016-06-148-23/+80
| | | | | | | In the web embedding, modules are not allowed to import or export functions which have i64 params or return values. Add a mode to the validator to check for this, and add flags to s2wasm and wasm-as to enable or disable this check. Also add tests.
* Merge pull request #583 from WebAssembly/br-moreAlon Zakai2016-06-1116-97/+247
|\ | | | | Fix and improve br optimizations
| * run remove-unused-brs after simplify-localsAlon Zakai2016-06-1110-105/+82
| |
| * fix br_if with value optimization in remove-unused-brsAlon Zakai2016-06-118-0/+173
| |
* | s2wasm: Validate the result module (#574)Derek Schuff2016-06-105-18/+41
|/ | | | Add an s2wasm option `--no-validate` to disable validation for debugging purposes. Also fix several validation errors by adding calls to `finalize()` after creating expressions, and ensuring that an import is created earlier in `Linker::getImportThunk`.
* use WASM_UNUSED in some places to fix compiler warning/error on unused ↵Alon Zakai2016-06-084-2/+9
| | | | variables we only use in asserts (#579)
* add a pass to remove memory segments (#580)Alon Zakai2016-06-084-0/+44
|
* Updated .gitignore for VS meta noise (#576)Peter Jas2016-06-061-0/+8
|
* fix if type; if one is none and the other is concrete, still none (#575)Alon Zakai2016-06-061-1/+9
|
* handle breaks to the function's implicit block scope (#573)Alon Zakai2016-06-061-7/+23
|
* Fixed missing type assignment of host operations in s2wasm (#572)Alexander Meißner2016-06-063-0/+23
|
* if we start to parse an s-string and find it empty, that is invalid #570 (#571)Alon Zakai2016-06-041-0/+1
|
* make call_indirect type a name, so that it is not a dependency on the ↵Alon Zakai2016-06-0312-26/+26
| | | | module, which would break consistency and make some parallel passes tricky (#568)
* Do not generate duplicate import thunks at link time. (#569)Derek Schuff2016-06-035-6/+28
| | | | | Previously every address-take of an import would cause a new thunk to be generated. Now check in getImportThunk if the thunk exists already and just return it if so.
* move function parallelism to pass and pass runner, which allows more ↵Alon Zakai2016-06-0317-139/+145
| | | | efficient parallel execution (#564)
* Merge pull request #567 from WebAssembly/spec-test-updateAlon Zakai2016-06-033-11/+25
|\ | | | | Misc fixes for new spec tests
| * check function types in s-parsingAlon Zakai2016-06-031-1/+2
| |
| * trap on invalid call_indirects with bad arguments when no type providedAlon Zakai2016-06-031-0/+4
| |
| * improve some parsing error textsAlon Zakai2016-06-032-2/+2
| |
| * check locals in s-parserAlon Zakai2016-06-031-2/+8
| |
| * check calls more carefully in validatorAlon Zakai2016-06-031-6/+9
| |
* | Update waterfall to 7268 (#566)Derek Schuff2016-06-03999-2503/+4051
|/ | | | | Also update torture-s tests. This brings in the .functype directives and causes 2 more tests to pass.
* add nm pass, that prints function names and sizes (#562)Alon Zakai2016-06-035-3/+103
|
* Fix leak of FunctionType from parseFuncType when not already in the module ↵Derek Schuff2016-06-032-5/+11
| | | | | (#563) Pass ownership into the wasm module.
* Merge pull request #560 from WebAssembly/func-runningAlon Zakai2016-06-0210-33/+352
|\ | | | | Option to optimize while building modules
| * add OptimizingIncrementalModuleBuilder for faster incremental module ↵Alon Zakai2016-06-025-26/+290
| | | | | | | | building + optimizing
| * refactor a getNumCores methodAlon Zakai2016-06-022-5/+12
| |
| * add an option to run passes on individual functions, and to get default ↵Alon Zakai2016-06-023-2/+50
|/ | | | optimization passes suitable for that, or not. refactor visitFunction/Module for this.
* Use clang from the waterfall (#557)Alon Zakai2016-06-022-18/+24
| | | This avoids relying on clang from llvm, which sometimes is down (see #553)
* Update waterfall to 7426 (#559)Derek Schuff2016-06-021045-48289/+48823
| | | | | Also update torture tests. This brings in a clang with the compiler-rt libraries, for https://github.com/WebAssembly/binaryen/pull/557
* Generate thunks for address-taken imports (#554)Derek Schuff2016-06-0210-22/+324
| | | | | | | | | | | Under emscripten, C code can take the address of a function implemented in Javascript (which is exposed via an import in wasm). Because imports do not have linear memory address in wasm, we need to generate a thunk to be the target of the indirect call; it call the import directly. This is facilited by a new .s directive (.functype) which declares the types of functions which are declared but not defined. Fixes https://github.com/WebAssembly/binaryen/issues/392
* missing test fileAlon Zakai2016-06-011-0/+2
|
* Specify version of python interpreter (#547)Sven-Hendrik Haase2016-06-011-1/+1
| | | Without this, the script won't work on distros that use python3 by default.
* Merge pull request #555 from WebAssembly/spec-test-fixesAlon Zakai2016-06-012-3/+3
|\ | | | | Spec test fixes
| * invalid break labels are parse errorsAlon Zakai2016-06-011-3/+2
| |
| * note default in type checking of switchesAlon Zakai2016-06-011-0/+1
| |
* | if we use the zero-init value of a local, we cannot coalesce it with a param ↵Alon Zakai2016-06-018-6/+139
| | | | | | | | (#556)
* | Merge pull request #552 from WebAssembly/dup-asm2wasm-exportsAlon Zakai2016-06-018-25882/+29758
|\ \ | |/ |/| asm2wasm regression fixes
| * handle stack frames we skip over by jumping up the stack, and update wasm.jsAlon Zakai2016-06-012-25877/+29723
| |
| * handle duplicate exports in asm2wasmAlon Zakai2016-05-316-5/+35
| |
* | fix bugs found using afl (#546)Dominic Chen2016-05-312-4/+12
|/
* refactor walk logic into walk* and doWalk* methods, for a more regular API ↵Alon Zakai2016-05-3010-31/+42
| | | | that is clearer where it should be overridden (#551)
* Merge pull request #550 from WebAssembly/dfe-niceAlon Zakai2016-05-2922-938/+3062
|\ | | | | Duplicate function elimination
| * add a pass that eliminates duplicate functionsAlon Zakai2016-05-2810-79/+1760
| |
| * add hash utility, and support for hashing and comparing expressionsAlon Zakai2016-05-282-0/+417
| |
| * canonicalize the order in reorder-locals, by using first-appearance to break ↵Alon Zakai2016-05-289-859/+868
| | | | | | | | ties