Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Move wasm binary reader and writer from the header file into libwasm (#797) | Derek Schuff | 2016-10-20 | 3 | -1815/+2023 | |
| | ||||||
* | Adds a pass to print call graphs in .dot (graphviz) format. (#794) | Michael Bebenita | 2016-10-20 | 4 | -0/+118 | |
| | ||||||
* | Move wasm.cpp and wasm-s-parser into a library (#796) | Derek Schuff | 2016-10-20 | 4 | -1759/+1848 | |
| | | | | | Also moves the bulk of the code in wasm-s-parser into a cpp file. Allows namespace and #include cleanups, and improves j4 compile time by 20%. Should also make any future parser changes easier and more localized. | |||||
* | Add priority to copies on backedges (#791) | Alon Zakai | 2016-10-20 | 2 | -1/+33 | |
| | | | | | | | | * add a coalesce-locals test for costly backedges * add script to strip local names out, for convenient diffing * prioritize backedge copies | |||||
* | Optimize to i64.store[less] (#792) | Alon Zakai | 2016-10-20 | 1 | -4/+10 | |
| | ||||||
* | update wasm-js.cpp code for asm2wasm constructor change (#793) | Alon Zakai | 2016-10-20 | 1 | -1/+1 | |
| | ||||||
* | Fix some C6246: "Local declaration of 'i' hides declaration of the same name ↵ | juj | 2016-10-20 | 2 | -5/+5 | |
| | | | | in outer scope." warnings. (#795) | |||||
* | Add support for i64.store[N] (#789) | jgravelle-google | 2016-10-19 | 1 | -4/+4 | |
| | | | | | | | | | | | | * Add support for i64.store[N] Previously storing i64 in the interpreter assumed an 8byte store. Stores like i64.store8 would then use the special-case i64 storing code, when they could just use the i32.store8 code. * Add printf test for interpreter * Update wasm.js | |||||
* | Add -O0,-O1,etc. options (#790) | Alon Zakai | 2016-10-19 | 5 | -37/+111 | |
| | | | | And use them in wasm-opt and asm2wasm consistently and uniformly. | |||||
* | Minor improvements to the wasm-interpreter debug messages (#784) | jgravelle-google | 2016-10-18 | 2 | -8/+67 | |
| | | | | | | | | | | | * Minor improvements to the wasm-interpreter debug messages 1. Indent nested blocks for more readable structure (with numeric labels to make it even clearer) 2. Print the names of the variables used for NOTE_EVALs 3. Print the values of arguments when entering a function call * Move Indenter class to wasm-interpreter.cpp | |||||
* | Pass options (#788) | Alon Zakai | 2016-10-18 | 5 | -11/+59 | |
| | | | | * add PassOptions structure, and use it for new -Os param to wasm-opt | |||||
* | add table and memory contents to metrics (#787) | Alon Zakai | 2016-10-18 | 1 | -0/+17 | |
| | ||||||
* | Use steady_clock to measure code execution time (#776) | Loo Rong Jie | 2016-10-17 | 2 | -6/+5 | |
| | ||||||
* | reorder locals after simplify-locals, to remove unused locals before ↵ | Alon Zakai | 2016-10-16 | 1 | -0/+1 | |
| | | | | coalesce-locals, making it much faster (#783) | |||||
* | optimize out i32.and of -1 | Alon Zakai | 2016-10-15 | 1 | -4/+9 | |
| | ||||||
* | optimize loads and stores that mask their values, as the load/store ↵ | Alon Zakai | 2016-10-15 | 1 | -0/+28 | |
| | | | | operation masks itself | |||||
* | Merge pull request #778 from WebAssembly/passe | Alon Zakai | 2016-10-14 | 1 | -15/+3 | |
|\ | | | | | Add remove-unused-functions to default passes | |||||
| * | run remove-unused-functions by default | Alon Zakai | 2016-10-14 | 1 | -0/+2 | |
| | | ||||||
| * | reuse code in add*Passes | Alon Zakai | 2016-10-14 | 1 | -15/+1 | |
| | | ||||||
* | | Import memory instead of defining/exporting it when using emscripten glue (#777) | Derek Schuff | 2016-10-14 | 3 | -18/+33 | |
| | | | | | | | | | | The emscripten JS module code creates the memory using the native wasm APIs, and imports that into the wasm module. | |||||
* | | Fix crash when loading archive files, dereferencing iterator .end() is ↵ | juj | 2016-10-14 | 1 | -7/+3 | |
|/ | | | | undefined behavior. (#769) | |||||
* | Do not use exported memory as a root set of RemoveUnusedFunctions pass (#763) | Taiju Tsuiki | 2016-10-14 | 1 | -1/+3 | |
| | | | | | | | | * Do not use exported memory as a root set of RemoveUnusedFunctions pass RemoveUnusedFunctions pass of wasm-opt fails when the memory is exported. That's due to a wrong root set handling on the exported symbols. This CL fixes the failure by ignoring non-function exported symbol. | |||||
* | Merge pull request #775 from WebAssembly/sl-fix | Alon Zakai | 2016-10-13 | 1 | -4/+8 | |
|\ | | | | | Fix simplify-locals when adding a value to a br_if | |||||
| * | when simplify-locals give br_if a value, the br_if also returns it, so it ↵ | Alon Zakai | 2016-10-13 | 1 | -4/+8 | |
| | | | | | | | | must be dropped | |||||
* | | Merge pull request #774 from WebAssembly/dce-fix | Alon Zakai | 2016-10-13 | 1 | -1/+3 | |
|\ \ | | | | | | | dce fix for globals | |||||
| * | | don't convert unreachable -> unreachable in dce | Alon Zakai | 2016-10-13 | 1 | -1/+1 | |
| | | | ||||||
| * | | handle globals in dce | Alon Zakai | 2016-10-13 | 1 | -0/+2 | |
| |/ | ||||||
* / | Expand "a.js" export check in binaryen.js to also work when running on ↵ | juj | 2016-10-13 | 1 | -1/+2 | |
|/ | | | | Windows. (#767) | |||||
* | Fix crash on loading archives, firstRegularData member field was not ↵ | juj | 2016-10-13 | 1 | -1/+1 | |
| | | | | initialized to null which caused dereferencing a garbage pointer. (#770) | |||||
* | Don't create a memory section for an imported memory; fixes #772 (#773) | Benjamin Bouvier | 2016-10-13 | 6 | -20/+32 | |
| | ||||||
* | handle unreachable tee_local properly in coalesce-locals (#761) | Alon Zakai | 2016-10-12 | 1 | -1/+5 | |
| | ||||||
* | fix bug where we set memory max to the initial value if the max wasn't ↵ | Alon Zakai | 2016-10-12 | 1 | -2/+0 | |
| | | | | specified (#760) | |||||
* | Implement binary search for coalesce-locals (#744) | Loo Rong Jie | 2016-10-12 | 1 | -27/+14 | |
| | | | | * Implement binary search using <algorithm> | |||||
* | handle memory growth with native wasm support: the result of grow_memory ↵ | Alon Zakai | 2016-10-11 | 1 | -2/+12 | |
| | | | | tells us if it succeeded, and then the new buffer can be found on the Memory object | |||||
* | remove memory maximum in asm2wasm when memory growth is on | Alon Zakai | 2016-10-11 | 1 | -0/+1 | |
| | ||||||
* | Merge pull request #757 from WebAssembly/js-api | Alon Zakai | 2016-10-11 | 4 | -28/+32 | |
|\ | | | | | Tiny fixes for native wasm support | |||||
| * | wasmTableSize of 0 is allowed | Alon Zakai | 2016-10-11 | 1 | -1/+2 | |
| | | ||||||
| * | if we see no asm.js function tables, the table size is 0 | Alon Zakai | 2016-10-11 | 1 | -1/+4 | |
| | | ||||||
| * | allow a maximum 0 size for a table | Alon Zakai | 2016-10-11 | 2 | -19/+19 | |
| | | ||||||
| * | refactor memoryBase and tableBase init to a shared location, so it affects ↵ | Alon Zakai | 2016-10-11 | 1 | -7/+7 | |
| | | | | | | | | native builds too | |||||
| * | use wasmTableSize when provided | Alon Zakai | 2016-10-11 | 1 | -1/+1 | |
| | | ||||||
* | | put heavy pass debugging operations behind BINARYEN_PASS_DEBUG (#755) | Alon Zakai | 2016-10-11 | 1 | -2/+9 | |
|/ | ||||||
* | Don't create table sections for imported tables (#756) | Derek Schuff | 2016-10-11 | 6 | -13/+23 | |
| | | | Previously the Print pass searched the imports for a table import and skipped printing a local table declaration if found. Instead this refactors to make importation explicit, and also create importation records (previously we were inconsistent about whether such records were created in the IR depending on the wast syntax). | |||||
* | improve comment | Alon Zakai | 2016-10-08 | 1 | -1/+2 | |
| | ||||||
* | track unreachable code in coalesce-locals, we know what is unreachable ↵ | Alon Zakai | 2016-10-08 | 2 | -9/+27 | |
| | | | | anyhow, and it just adds overhead to not ignore it | |||||
* | remove unneeded param to doStartBasicBlock | Alon Zakai | 2016-10-08 | 1 | -11/+15 | |
| | ||||||
* | clean up some unneeded processing in cfg-walker | Alon Zakai | 2016-10-07 | 1 | -3/+0 | |
| | ||||||
* | use 0xc Memory and Table in JS glue (#752) | Alon Zakai | 2016-10-07 | 1 | -5/+18 | |
| | ||||||
* | Change print order of top-level module components (#751) | Derek Schuff | 2016-10-07 | 1 | -12/+13 | |
| | | | | | | | | In wast files, the spec and WABT require imports to appear before any non-import definitions (see also https://github.com/WebAssembly/wabt/issues/152). This patch re-orders visitModule in the wast printer to meet this requirement, and more or less match the order of the binary sections. Also remove extraneous whitespace around table definitions. | |||||
* | Require unique names in binaryen IR (#746) | Alon Zakai | 2016-10-06 | 6 | -65/+167 | |
| |