summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* ast_utils improvements (#399)Alon Zakai2016-04-263-13/+25
| | | | | | | | | * make EffectAnalyzer a little more fun to use * create a convert() method that can turn a node into a smaller node, reusing its memory, and use that in nop() * use convert in wasm-linker
* Defer creation of CallImports to link time (#395)Derek Schuff2016-04-263-21/+41
| | | s2wasm currently creates a Call AST node if the target is implemented in the current object (thus far assumed to be the final executable) and a CallImport node if not. In preparation for adding additional objects to the link before layout time, we make only Call nodes until link time, and then convert them to CallImport if they are undefined at that time.
* emit ifs in an optimized way in binary formatAlon Zakai2016-04-261-2/+16
|
* BreakSeeker needs to look at br_table tooAlon Zakai2016-04-261-0/+6
|
* Merge pull request #393 from WebAssembly/aritiesAlon Zakai2016-04-261-15/+23
|\ | | | | Arities
| * use arities in callsAlon Zakai2016-04-251-3/+9
| |
| * use arities on switchAlon Zakai2016-04-251-4/+4
| |
| * use arities on returnsAlon Zakai2016-04-251-4/+6
| |
| * use arities on breaksAlon Zakai2016-04-251-4/+4
| |
* | selectify if-elses with no control flow in themAlon Zakai2016-04-252-1/+31
| |
* | optimize returns that flow outAlon Zakai2016-04-251-3/+21
| |
* | optimize breaks with values in RemoveUnusedBrs, check if their value can ↵Alon Zakai2016-04-251-14/+32
|/ | | | flow to the target anyhow
* Separate LinkerObject from Linker (#383)Derek Schuff2016-04-254-141/+171
| | | | | Create the LinkerObject class, which has a wasm Module and represents the module plus the information needed to relocate and lay it out. Each Linker owns a "main executable" LinkerObject, and S2WasmBuilder requires a LinkerObject instead of just a Module because LLVM asm files require relocation/linking before they represent a full wasm module. No merging support yet, but the real functionality for #370 is coming soon.
* Use Module instead of AllocatingModule in binaryen.js tests (#391)Jan Wolski2016-04-251-0/+1
| | | | | | * Use Module instead of AllocatingModule in binaryen.js tests * include compiled binaryen.js, too
* optimize block and if returns, by merging set_locals that flow out of themAlon Zakai2016-04-241-72/+300
|
* comment on replaceCurrentAlon Zakai2016-04-241-1/+4
|
* provide the current expression to noteNonLinearAlon Zakai2016-04-241-2/+2
|
* fix EffectAnalyzer, blocks and loops do not branch by themselvesAlon Zakai2016-04-241-2/+0
|
* go back to using a mutex in mixed arena, until we get the atomics workingAlon Zakai2016-04-241-19/+12
|
* run multiple cycles of RemoveUnusedBrsAlon Zakai2016-04-241-1/+15
|
* run optimize-instructions a second time at the endAlon Zakai2016-04-241-0/+1
|
* get rid of nops in ifsAlon Zakai2016-04-241-0/+20
|
* handle general control flow in RemoveUnusedBrsAlon Zakai2016-04-241-59/+89
|
* vacuum dead code after br_tableAlon Zakai2016-04-241-1/+2
|
* vacuum dead code after unconditional brsAlon Zakai2016-04-241-3/+14
|
* allow allocations on side threads (#365)Alon Zakai2016-04-242-10/+68
|
* Add missing algorithm and string headersJF Bastien2016-04-231-0/+2
| | | As in #382.
* Simplify statics, segments, and relocations (#380)Derek Schuff2016-04-224-45/+78
| | | | Also defer address assignment until layout time in preparation for separating linker objects out from Linker
* fix conversion opcodes (#381)Alon Zakai2016-04-221-44/+44
|
* Merge pull request #379 from WebAssembly/zero_x_bAlon Zakai2016-04-221-4/+4
|\ | | | | More 0xb fixes
| * br_table offsets are int32s, not lebsAlon Zakai2016-04-221-4/+4
| |
| * put segments in right orderAlon Zakai2016-04-211-4/+6
| |
* | put segments in right order (#378)Alon Zakai2016-04-211-4/+6
| |
* | Merge pull request #377 from WebAssembly/zero_x_bAlon Zakai2016-04-214-60/+91
|\| | | | | More 0xb work
| * function toplevels is a listAlon Zakai2016-04-211-6/+6
| |
| * block helper utilsAlon Zakai2016-04-211-1/+14
| |
| * ifs in the binary format always have a break scopeAlon Zakai2016-04-211-12/+23
| |
| * fix if and else bodies, which can be listsAlon Zakai2016-04-211-13/+11
| |
| * fix loop binary parsingAlon Zakai2016-04-211-4/+19
| |
| * if condition is popped from before, not pre-order inlineAlon Zakai2016-04-211-3/+3
| |
| * update br_table in binary formatAlon Zakai2016-04-211-13/+8
| |
| * fix nop printing in br_tableAlon Zakai2016-04-211-3/+1
| |
| * fix a reinterpret opcodeAlon Zakai2016-04-211-1/+1
| |
| * update eqz opcodesAlon Zakai2016-04-211-3/+2
| |
| * name unnamed functions in binariesAlon Zakai2016-04-211-1/+1
| |
| * function ending fixesAlon Zakai2016-04-211-16/+15
| |
| * fix file size for binary files readAlon Zakai2016-04-211-1/+1
| |
| * support not exporting memory in binariesAlon Zakai2016-04-211-2/+5
| |
* | Move wasm-linker into its own cpp file (#375)Derek Schuff2016-04-217-344/+431
|/ | | | | | | Still making things nicer for #370 Pulling wasm-linker into its own file also necessitated pulling asm_v_wasm.h into a cpp file. It goes into a new lib directory, src/asmjs. No actual code changes in this PR.
* Removes wasm-s-parser debug logging from binaryen.idl. (#373)Yury Delendik2016-04-211-1/+1
| | | | | | | Continuation of #345 (see https://github.com/WebAssembly/binaryen/commit/2887883029de293458344a5d564039074d93246e#diff-499c4e70c8aadb9837261ebcc4725f78R262) Currently building of binaryen.js fails with "src/../glue.cpp:102:14: error: no matching constructor for initialization of 'wasm::SExpressionWasmBuilder'"