Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | remove final elements in vacuum carefully: we must preserve a return value ↵ | Alon Zakai | 2016-09-11 | 2 | -0/+75 |
| | | | | if there is one | ||||
* | run another optimize-expressions at the end of asm2wasm | Alon Zakai | 2016-09-10 | 7 | -32/+209 |
| | |||||
* | optimize if-else to br_if when in a block | Alon Zakai | 2016-09-10 | 11 | -369/+375 |
| | |||||
* | optimize eqz^2 in select and br_if | Alon Zakai | 2016-09-10 | 4 | -42/+36 |
| | |||||
* | test name fix | Alon Zakai | 2016-09-10 | 2 | -2/+2 |
| | |||||
* | sort locals by number of total copies | Alon Zakai | 2016-09-10 | 12 | -12094/+12000 |
| | |||||
* | take into account removed copies even when number of locals is the same, in ↵ | Alon Zakai | 2016-09-09 | 9 | -6768/+6754 |
| | | | | coalesce-locals | ||||
* | optimize loop endings in RemoveUnusedBrs | Alon Zakai | 2016-09-09 | 10 | -6716/+6693 |
| | | | | | * 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 | ||||
* | enable udivmoddi4 opts in asm2wasm | Alon Zakai | 2016-09-08 | 4 | -4403/+144 |
| | |||||
* | autodrop if body if no else | Alon Zakai | 2016-09-07 | 19 | -283/+438 |
| | |||||
* | properly handle blocks with return values in vacuum - we cannot remove their ↵ | Alon Zakai | 2016-09-07 | 4 | -8/+17 |
| | | | | final value directly, we can only do that if it is dropped, from the drop | ||||
* | vacuum drops better | Alon Zakai | 2016-09-07 | 6 | -114/+117 |
| | |||||
* | do a first pass in SimplifyLocals that focuses on single-use locals | Alon Zakai | 2016-09-07 | 2 | -5082/+4776 |
| | |||||
* | add a test | Alon Zakai | 2016-09-07 | 5 | -1/+37 |
| | |||||
* | flip select-eqz when possible | Alon Zakai | 2016-09-07 | 8 | -262/+220 |
| | |||||
* | optimize out a set of a get of a global | Alon Zakai | 2016-09-07 | 4 | -18/+0 |
| | |||||
* | track globals in EffectAnalyzer | Alon Zakai | 2016-09-07 | 7 | -304/+433 |
| | |||||
* | optimize loads+shifts into signed loads | Alon Zakai | 2016-09-07 | 7 | -428/+464 |
| | |||||
* | optimize out eqz^2 | Alon Zakai | 2016-09-07 | 4 | -588/+304 |
| | |||||
* | use eqz as an optimization | Alon Zakai | 2016-09-07 | 10 | -4357/+3682 |
| | |||||
* | new validation checks for upcoming spec tests | Alon Zakai | 2016-09-07 | 5 | -51/+51 |
| | |||||
* | new export syntax in spec repo | Alon Zakai | 2016-09-07 | 40 | -283/+283 |
| | |||||
* | new import syntax in spec repo | Alon Zakai | 2016-09-07 | 43 | -475/+475 |
| | |||||
* | re-enable spec tests | Alon Zakai | 2016-09-07 | 1 | -0/+0 |
| | |||||
* | Add a ReFinalize helper, and use that to properly handle asm.js imports ↵ | Alon Zakai | 2016-09-07 | 5 | -56/+210 |
| | | | | whose return value is polymorphic | ||||
* | support HEAP8[x | 0| notation in asm2wasm | Alon Zakai | 2016-09-07 | 5 | -0/+29 |
| | |||||
* | import memoryBase and tableBase | Alon Zakai | 2016-09-07 | 32 | -16/+72 |
| | |||||
* | import table | Alon Zakai | 2016-09-07 | 32 | -0/+32 |
| | |||||
* | import memory #684 | Alon Zakai | 2016-09-07 | 32 | -32/+32 |
| | |||||
* | update empty.fromast test output | Alon Zakai | 2016-09-07 | 1 | -0/+2 |
| | |||||
* | add asm2wasm option to import a mem init file | Alon Zakai | 2016-09-07 | 7 | -0/+14 |
| | | | | | | | | apply memory segments only if there isn't a memory initializer (which we need for asmjs and asm2wasm modes) use wasm-opt to check recreated wasts for validity, as wasm-shell would try to execute them add testing for combined modes like asmjs,interpret-binary | ||||
* | do a little more optimization at the end of asm2wasm processing | Alon Zakai | 2016-09-07 | 6 | -136/+68 |
| | |||||
* | sink a drop into a single if arm | Alon Zakai | 2016-09-07 | 4 | -34/+63 |
| | |||||
* | autodrop must be run before we optimize in asm2wasm, as otherwise its input ↵ | Alon Zakai | 2016-09-07 | 4 | -76/+102 |
| | | | | | | is not yet valid then after finalizeCalls, we must autodrop again to drop things that finalizeCalls changed | ||||
* | don't simplify locals out of loops if they contain branching, as it may ↵ | Alon Zakai | 2016-09-07 | 2 | -0/+49 |
| | | | | invalidate the branch | ||||
* | when replacing an if with its condition (when it has no body), we must drop it | Alon Zakai | 2016-09-07 | 5 | -0/+77 |
| | |||||
* | add a test for loop finalization | Alon Zakai | 2016-09-07 | 5 | -0/+108 |
| | |||||
* | run vacuum again after autodrop in asm2wasm, if optimizing | Alon Zakai | 2016-09-07 | 6 | -130/+430 |
| | |||||
* | handle asm.js globals that are set and the return value used | Alon Zakai | 2016-09-07 | 1 | -0/+11 |
| | |||||
* | fix AutoDrop block handling - the block type might change as we modify its ↵ | Alon Zakai | 2016-09-07 | 4 | -168/+128 |
| | | | | contents | ||||
* | set type of calls to their target, instead of the previous behavior where ↵ | Alon Zakai | 2016-09-07 | 5 | -0/+106 |
| | | | | the asm.js context informed us. this lets us add drops where necessary | ||||
* | use globals in asm2wasm | Alon Zakai | 2016-09-07 | 20 | -2762/+1450 |
| | |||||
* | export kinds | Alon Zakai | 2016-09-07 | 32 | -35/+35 |
| | |||||
* | add a drop for final elements in blocks if they are not used | Alon Zakai | 2016-09-07 | 8 | -124/+196 |
| | |||||
* | update tests | Alon Zakai | 2016-09-07 | 1 | -4/+4 |
| | |||||
* | don't depend on order of operations in calls, it varies by compiler | Alon Zakai | 2016-09-07 | 12 | -1416/+1416 |
| | |||||
* | select values must be valid | Alon Zakai | 2016-09-07 | 1 | -16/+16 |
| | |||||
* | move drop into blocks, dropping all the breaks as well, when possible | Alon Zakai | 2016-09-07 | 1 | -274/+224 |
| | |||||
* | loops no longer have an out label and other upstream loop updates | Alon Zakai | 2016-09-07 | 38 | -40507/+41619 |
| | |||||
* | call_indirect now has the target at the end | Alon Zakai | 2016-09-07 | 22 | -302/+303 |
| |