Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | current_memory now returns in units of page size | Alon Zakai | 2016-04-18 | 1 | -1/+1 |
| | |||||
* | update MemorySize => CurrentMemory | Alon Zakai | 2016-04-18 | 6 | -15/+11 |
| | |||||
* | fix br_table order of evaluation, the value is first | Alon Zakai | 2016-04-18 | 1 | -9/+8 |
| | |||||
* | handle dead stores in SimplifyLocals | Alon Zakai | 2016-04-18 | 1 | -2/+3 |
| | |||||
* | remove old comments in SimplifyLocals | Alon Zakai | 2016-04-18 | 1 | -2/+1 |
| | |||||
* | create a UnifiedExpressionVisitor for passes that want a single visitor ↵ | Alon Zakai | 2016-04-18 | 17 | -52/+79 |
| | | | | function, to avoid confusion with having both visit* and visitExpression in a single pass (#357) | ||||
* | use a vector for get_local counts in SimplifyLocals (#356) | Alon Zakai | 2016-04-18 | 1 | -1/+2 |
| | |||||
* | update binary section names per latest design (#363) | Alon Zakai | 2016-04-18 | 1 | -9/+9 |
| | |||||
* | remove the AllocatingModule class, and just make Module have allocations. ↵ | Alon Zakai | 2016-04-18 | 14 | -34/+25 |
| | | | | the distinction is not really that useful, and passes do need to allocate, so we would need to pass around AllocatingModules all around anyhow. (#361) | ||||
* | let traversals access the current function (#355) | Alon Zakai | 2016-04-18 | 1 | -7/+22 |
| | |||||
* | index locals, so that get_local and set_local have just an index, and local ↵ | Alon Zakai | 2016-04-18 | 15 | -213/+413 |
| | | | | names are kept on the Function object (#354) | ||||
* | Merge pull request #353 from WebAssembly/thread-tweaks | Alon Zakai | 2016-04-18 | 1 | -1/+4 |
|\ | | | | | Thread fixes | ||||
| * | fix ThreadPool::size, we don't have any thread objects created if there is ↵ | Alon Zakai | 2016-04-18 | 1 | -1/+1 |
| | | | | | | | | just one core, since then we run it all on the main thread anyhow | ||||
| * | allow limiting # of cores in thread pool, useful for debugging | Alon Zakai | 2016-04-18 | 1 | -0/+3 |
| | | |||||
* | | nicer pass printing (#358) | Alon Zakai | 2016-04-18 | 1 | -2/+19 |
| | | |||||
* | | Fixes typo in hex number parsing in asm2wasm. (#362) | Yury Delendik | 2016-04-18 | 1 | -1/+1 |
|/ | | | Fixes #352 | ||||
* | Function parallelism (#343) | Alon Zakai | 2016-04-15 | 14 | -27/+384 |
| | | | | * allow traversals to mark themselves as function-parallel, in which case we run them using a thread pool. also mark some thread-safety risks (interned strings, arena allocators) with assertions they modify only on the main thread | ||||
* | rename function locals, to params and vars, which together are all the ↵ | Alon Zakai | 2016-04-14 | 11 | -38/+38 |
| | | | | locals. preparation for #336 (#349) | ||||
* | Add a debug mode to PassRunner, which logs out times (#344) | Alon Zakai | 2016-04-14 | 3 | -1/+22 |
| | | | | | | * add a debug mode to PassRunner, which logs out times * address comments | ||||
* | remove excessive wasm-s-parser debug logging (#345) | Alon Zakai | 2016-04-14 | 4 | -9/+6 |
| | |||||
* | Generate emscripten dynCall thunks in s2wasm (#342) | Derek Schuff | 2016-04-13 | 2 | -15/+34 |
| | | | | | | | | | | | * Generate emscripten dynCall thunks in s2wasm Part of the usual emscripten glue for asm.js is thunks for calling functions on the module given a function pointer; aka a dynCall. This is implemented via thunks generated on the Module called 'dynCall_<signature>'. This gives support to s2wasm to generate these thunks in the wasm module along with other emscripten glue. It also introduces a flag to s2wasm to make generation of emscripten glue optional. | ||||
* | Merge pull request #341 from WebAssembly/opts | Alon Zakai | 2016-04-12 | 7 | -40/+69 |
|\ | | | | | More optimization goodies | ||||
| * | drop completely unused locals in ReorderLocals | Alon Zakai | 2016-04-11 | 2 | -1/+10 |
| | | |||||
| * | continue simplifying locals while opportunities present themselves | Alon Zakai | 2016-04-11 | 1 | -23/+37 |
| | | |||||
| * | allow overriding startWalk(Function*) | Alon Zakai | 2016-04-11 | 1 | -1/+1 |
| | | |||||
| * | refactor default optimization passes to a central location | Alon Zakai | 2016-04-11 | 4 | -15/+21 |
| | | |||||
* | | Add a method to generate a dyncall thunk (#337) | Derek Schuff | 2016-04-12 | 3 | -21/+62 |
|/ | | | | | Currently it's not called anywhere. The bulk of this change is refactoring to add makeFunction, makeCallIndirect, and makeReturn to wasm::Builder, and make S2wasmBuilder call it | ||||
* | dyn_cast => dynCast | Alon Zakai | 2016-04-11 | 11 | -24/+24 |
| | |||||
* | remove unneeded virtual destructor | Alon Zakai | 2016-04-11 | 1 | -1/+0 |
| | |||||
* | remove set_locals with no remaining gets in SimplifyLocals | Alon Zakai | 2016-04-11 | 1 | -4/+51 |
| | |||||
* | track individual locals in EffectAnalyzer | Alon Zakai | 2016-04-11 | 1 | -11/+27 |
| | |||||
* | De-recurse traversals (#333) | Alon Zakai | 2016-04-11 | 20 | -384/+378 |
| | | | | | | | | | | | | * refactor core walking to not recurse * add a simplify-locals test * reuse parent's non-branchey scan logic in SimpleExecutionWalker, reduce code duplication * update wasm.js * rename things following comments | ||||
* | add option to print full ast, no elisions | Alon Zakai | 2016-04-09 | 1 | -6/+28 |
| | |||||
* | clean up in Print | Alon Zakai | 2016-04-09 | 1 | -12/+14 |
| | |||||
* | add counter for expression ids | Alon Zakai | 2016-04-09 | 1 | -1/+2 |
| | |||||
* | fold eqz+comparisons | Alon Zakai | 2016-04-09 | 1 | -0/+22 |
| | |||||
* | optimize asm2wasm loop branches using eqz | Alon Zakai | 2016-04-09 | 1 | -7/+7 |
| | |||||
* | fix asm2wasm udivmoddi4 optimization when there is no getTempRet0 | Alon Zakai | 2016-04-09 | 1 | -3/+3 |
| | |||||
* | AST Builder class, and use it to optimzie umoddi4 in asm2wasm | Alon Zakai | 2016-04-08 | 5 | -6/+231 |
| | |||||
* | fix bug in If.finalize | Alon Zakai | 2016-04-08 | 1 | -1/+1 |
| | |||||
* | optimize llvm.cttz.i32 into i32.ctz | Alon Zakai | 2016-04-08 | 3 | -3/+12 |
| | |||||
* | Merge pull request #319 from WebAssembly/traversal | Alon Zakai | 2016-04-07 | 9 | -308/+672 |
|\ | | | | | Refactor traversal into its own header | ||||
| * | add missing checks on nested blocks in SimplifyExpressions | Alon Zakai | 2016-04-07 | 1 | -2/+7 |
| | | |||||
| * | refactor checks in SimplifyLocals | Alon Zakai | 2016-04-07 | 1 | -8/+15 |
| | | |||||
| * | handle loops in effect analyzer | Alon Zakai | 2016-04-07 | 2 | -8/+36 |
| | | |||||
| * | blocks must mark as branching in effects analyzer, as control flow can join ↵ | Alon Zakai | 2016-04-07 | 1 | -0/+1 |
| | | | | | | | | there if the end of the block was branched to | ||||
| * | fix invalidation logic in SimplifyLocals, visit each node as we hit it, do ↵ | Alon Zakai | 2016-04-07 | 1 | -1/+3 |
| | | | | | | | | not walk it to look for invalidating elements that are children, we already saw them | ||||
| * | derecurse blocks helper, and use it in SimplifyLocals | Alon Zakai | 2016-04-07 | 2 | -8/+32 |
| | | |||||
| * | fix effect invalidation logic | Alon Zakai | 2016-04-07 | 1 | -1/+3 |
| | | |||||
| * | add vacuum pass | Alon Zakai | 2016-04-07 | 3 | -1/+51 |
| | |