Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | memory and table parsing fixes | Alon Zakai | 2016-09-20 | 1 | -7/+21 |
| | |||||
* | table parsing and executing fixes | Alon Zakai | 2016-09-20 | 2 | -10/+18 |
| | |||||
* | mark table as present if seen as an import | Alon Zakai | 2016-09-20 | 1 | -0/+1 |
| | |||||
* | validate spectest.print as a function | Alon Zakai | 2016-09-20 | 1 | -1/+7 |
| | |||||
* | support spectest.global | Alon Zakai | 2016-09-20 | 3 | -4/+25 |
| | |||||
* | global importing fixes: use the right counter for globals and for functions | Alon Zakai | 2016-09-20 | 2 | -14/+59 |
| | |||||
* | import parsing fixes | Alon Zakai | 2016-09-19 | 2 | -12/+22 |
| | |||||
* | globals mutability fixes | Alon Zakai | 2016-09-19 | 5 | -6/+26 |
| | |||||
* | global parsing | Alon Zakai | 2016-09-19 | 5 | -5/+37 |
| | |||||
* | new-style import parsing | Alon Zakai | 2016-09-19 | 1 | -5/+40 |
| | |||||
* | parsing and validation fixes | Alon Zakai | 2016-09-17 | 2 | -12/+28 |
| | |||||
* | support module operations in shell tests | Alon Zakai | 2016-09-17 | 5 | -32/+68 |
| | |||||
* | parse empty modules without error | Alon Zakai | 2016-09-16 | 1 | -0/+1 |
| | |||||
* | use export name as internal name if no internal name, for better s-expr ↵ | Alon Zakai | 2016-09-16 | 1 | -0/+3 |
| | | | | debugging | ||||
* | br_if returns its value | Alon Zakai | 2016-09-16 | 4 | -8/+18 |
| | |||||
* | block signatures | Alon Zakai | 2016-09-16 | 2 | -8/+26 |
| | |||||
* | support assert_malformed in shell test runner | Alon Zakai | 2016-09-16 | 3 | -7/+6 |
| | |||||
* | s-expression modules can have names | Alon Zakai | 2016-09-16 | 1 | -8/+14 |
| | |||||
* | call_import changes: no more call_import, shared index space with functions | Alon Zakai | 2016-09-16 | 3 | -54/+81 |
| | |||||
* | handle getTempRet0 having extra code, which can happen in emterpreter ↵ | Alon Zakai | 2016-09-15 | 1 | -1/+1 |
| | | | | assertions mode | ||||
* | fix remove-unused-brs bug when checking if it is safe to conditionalize code | Alon Zakai | 2016-09-15 | 2 | -13/+13 |
| | |||||
* | Update s2wasm for 0xc changes (#698) | Derek Schuff | 2016-09-15 | 2 | -24/+25 |
| | | | | | | | | | | | Several updates for s2wasm and its tests: Add explicit drops where they are emitted by LLVM already Convert loops (which are still modeled in the old way by LLVM) to wrap them in an explicit block (for the exit label). This also allows simplifying the loop creation (no need to post-process the implicit block which is the loop's body). After the engines update to 0xc we should update LLVM to model loops in the 0xc way, but for now it remains compatible with 0xb and 0xc. Fix the order of the calls to setTee() when creating tee_locals Add an explicit drop when creating the _start entry function wrapper if needed Update dot_s and llvm_autogenerated tests to remove store-results optimization (and few other minor updates) Fix the test auto-updater to fail if subprocesses fail There still seems to be a validation failure when building libc (I think it's from the stricter drop rules, but it may be in the source rather than the compiler), but this at least makes Binaryen's tests pa | ||||
* | Merge pull request #695 from WebAssembly/opts | Alon Zakai | 2016-09-14 | 24 | -339/+1115 |
|\ | | | | | Get optimizer on par with emscripten asm.js optimizer | ||||
| * | add a comment | Alon Zakai | 2016-09-14 | 1 | -1/+1 |
| | | |||||
| * | allocate newCopies on demand in coalesce-locals, to avoid n^2 allocation ↵ | Alon Zakai | 2016-09-14 | 1 | -1/+2 |
| | | | | | | | | when in practice we need a lot less (and on e.g. sqlite, n^2 is very large) | ||||
| * | coalesce-locals code cleanup | Alon Zakai | 2016-09-14 | 1 | -3/+3 |
| | | |||||
| * | fix switch traversal order | Alon Zakai | 2016-09-14 | 1 | -1/+1 |
| | | |||||
| * | fix getCopies return type, so that we take into account the full range of values | Alon Zakai | 2016-09-14 | 1 | -1/+1 |
| | | |||||
| * | when optimizing a block return value, replacing the sunk set with the value ↵ | Alon Zakai | 2016-09-14 | 1 | -5/+14 |
| | | | | | | | | is only possible if the break is unconditional; if it is condition, we must tee the value so that if the break condition is false and we do not jump, then we have the new value in the local on the line after it | ||||
| * | avoid threading jumps when there is irreducible control flow, as it is hard ↵ | Alon Zakai | 2016-09-14 | 1 | -22/+97 |
| | | | | | | | | to know if it is safe to do so | ||||
| * | drop if-else arms as necessary | Alon Zakai | 2016-09-13 | 1 | -3/+15 |
| | | |||||
| * | add ExtractFunction pass | Alon Zakai | 2016-09-13 | 4 | -0/+49 |
| | | |||||
| * | fix if finalize() | Alon Zakai | 2016-09-13 | 1 | -1/+2 |
| | | |||||
| * | update br type when turning it into a br_if in remove-unused-brs | Alon Zakai | 2016-09-13 | 2 | -0/+5 |
| | | |||||
| * | fix bug with turning if into br_if without checking for reordering dangers | Alon Zakai | 2016-09-12 | 1 | -10/+16 |
| | | |||||
| * | simple jump threading | Alon Zakai | 2016-09-12 | 1 | -3/+74 |
| | | |||||
| * | thread relooper jumps | Alon Zakai | 2016-09-12 | 5 | -0/+179 |
| | | |||||
| * | clean up database-ensuring code using the new prepareToRun method | Alon Zakai | 2016-09-12 | 1 | -9/+6 |
| | | |||||
| * | refactor pass hooks, creating a proper way to run code before a pass is run | Alon Zakai | 2016-09-12 | 6 | -218/+20 |
| | | |||||
| * | fix up types in remove-unused-brs at the first opportunity, not later | Alon Zakai | 2016-09-12 | 1 | -16/+20 |
| | | |||||
| * | remove final elements in vacuum carefully: we must preserve a return value ↵ | Alon Zakai | 2016-09-11 | 2 | -14/+41 |
| | | | | | | | | if there is one | ||||
| * | validate in debug mode in passRunner | Alon Zakai | 2016-09-11 | 1 | -5/+14 |
| | | |||||
| * | run another optimize-expressions at the end of asm2wasm | Alon Zakai | 2016-09-10 | 1 | -2/+4 |
| | | |||||
| * | refactor an optimizeBoolean method | Alon Zakai | 2016-09-10 | 3 | -50/+24 |
| | | |||||
| * | optimize if-else to br_if when in a block | Alon Zakai | 2016-09-10 | 2 | -6/+51 |
| | | |||||
| * | optimize eqz^2 in select and br_if | Alon Zakai | 2016-09-10 | 1 | -8/+23 |
| | | |||||
| * | optimization comment | Alon Zakai | 2016-09-10 | 1 | -1/+1 |
| | | |||||
| * | sort locals by number of total copies | Alon Zakai | 2016-09-10 | 1 | -11/+77 |
| | | |||||
| * | take into account removed copies even when number of locals is the same, in ↵ | Alon Zakai | 2016-09-09 | 1 | -5/+46 |
| | | | | | | | | coalesce-locals | ||||
| * | optimize loop endings in RemoveUnusedBrs | Alon Zakai | 2016-09-09 | 3 | -2/+182 |
| | | | | | | | | | | * rotate an if near the end of a loop as it can let a break out flow naturally and be removable * turn a br_if into an if it allows such an optimization in cases where it helps remove other structures |