Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
| * | fix set_local finalize() | Alon Zakai | 2016-05-05 | 1 | -0/+4 | |
| | | ||||||
* | | Fix NaN / 0 (#442) | JF Bastien | 2016-05-05 | 1 | -4/+30 | |
|/ | | | As discussed in: https://github.com/WebAssembly/spec/pull/282#issuecomment-217280544 | |||||
* | Nicer shift masks (#431) | JF Bastien | 2016-05-04 | 1 | -7/+13 | |
| | | | | | | | | * Nicer shift masks * Yet nicer shift mask. * Fix typo. | |||||
* | Harmonize the internal opcodes with the binary format (#433) | Alon Zakai | 2016-05-03 | 1 | -2/+8 | |
| | | | | | | * harmonize the internal opcodes with the binary format, so they clearly parallel, and also this helps us avoid needing the type to disambiguate * comment on GetLocal in C API | |||||
* | Merge pull request #427 from WebAssembly/c-api-nice | Alon Zakai | 2016-05-03 | 1 | -1/+9 | |
|\ | | | | | C API | |||||
| * | kitchen sink test for c api | Alon Zakai | 2016-05-03 | 1 | -0/+6 | |
| | | ||||||
| * | add a default finalize() so it is valid to call on any node | Alon Zakai | 2016-05-02 | 1 | -1/+3 | |
| | | ||||||
* | | Fix signed integer overflow UB (#430) | JF Bastien | 2016-05-03 | 1 | -6/+6 | |
| | | | | | | This puts us back where #404 wanted to be: all UB that ubsan knows about now causes an abort. This ins't to say that it's all gone, merely that our tests don't trigger any more UB which ubsan knows how to find :-) | |||||
* | | Fix shift UB (#429) | JF Bastien | 2016-05-03 | 1 | -6/+6 | |
| | | | | | | Getting close to finishing #404. | |||||
* | | Fix UB with FP divide by zero (#424) | JF Bastien | 2016-05-02 | 1 | -2/+40 | |
| | | | | | | Another fix for #404. | |||||
* | | Fix memcpy UB (#422) | JF Bastien | 2016-05-02 | 1 | -1/+1 | |
|/ | | | Can't call memcpy with size of 0 and nullptr init. | |||||
* | add wasm.cpp which does full type detection for blocks, and prepare for full ↵ | Alon Zakai | 2016-04-29 | 1 | -5/+12 | |
| | | | | type checking everywhere | |||||
* | just use a simple vector in data segments | Alon Zakai | 2016-04-27 | 1 | -3/+8 | |
| | ||||||
* | use an arena vector for switch targets | Alon Zakai | 2016-04-27 | 1 | -3/+2 | |
| | ||||||
* | allocate only expressions in arenas - functions, imports, exports, function ↵ | Alon Zakai | 2016-04-27 | 1 | -18/+16 | |
| | | | | types, can more simply be held by unique_ptrs on the owning module. this avoids need to coordinate arena allocation for their elements, and only the far more plentiful expression nodes are a perf factor anyhow | |||||
* | add an ArenaVector for internal array allocations in expression nodes | Alon Zakai | 2016-04-26 | 1 | -66/+89 | |
| | ||||||
* | update MemorySize => CurrentMemory | Alon Zakai | 2016-04-18 | 1 | -2/+2 | |
| | ||||||
* | remove the AllocatingModule class, and just make Module have allocations. ↵ | Alon Zakai | 2016-04-18 | 1 | -5/+2 | |
| | | | | 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) | |||||
* | index locals, so that get_local and set_local have just an index, and local ↵ | Alon Zakai | 2016-04-18 | 1 | -12/+62 | |
| | | | | names are kept on the Function object (#354) | |||||
* | rename function locals, to params and vars, which together are all the ↵ | Alon Zakai | 2016-04-14 | 1 | -2/+2 | |
| | | | | locals. preparation for #336 (#349) | |||||
* | dyn_cast => dynCast | Alon Zakai | 2016-04-11 | 1 | -1/+1 | |
| | ||||||
* | add counter for expression ids | Alon Zakai | 2016-04-09 | 1 | -1/+2 | |
| | ||||||
* | AST Builder class, and use it to optimzie umoddi4 in asm2wasm | Alon Zakai | 2016-04-08 | 1 | -3/+2 | |
| | ||||||
* | fix bug in If.finalize | Alon Zakai | 2016-04-08 | 1 | -1/+1 | |
| | ||||||
* | refactor wasm traversal code into separate file | Alon Zakai | 2016-04-06 | 1 | -295/+0 | |
| | ||||||
* | add apis for accessing module elements | Alon Zakai | 2016-04-04 | 1 | -5/+23 | |
| | ||||||
* | Fix the build with GCC 5.3.1 and Clang 3.8.0. | Csaba Osztrogonác | 2016-03-31 | 1 | -10/+10 | |
| | | | | Fixes #299 | |||||
* | Make type of EqZ unary operators always i32 | Derek Schuff | 2016-03-21 | 1 | -1/+8 | |
| | | | | | This makes them symmetric to binary relational operators. Also support eqz in the s2wasm parser. | |||||
* | update spec tests and support eqz | Alon Zakai | 2016-03-19 | 1 | -1/+1 | |
| | ||||||
* | todo | Alon Zakai | 2016-03-16 | 1 | -1/+1 | |
| | ||||||
* | add explicit memory export support | Alon Zakai | 2016-03-15 | 1 | -0/+1 | |
| | ||||||
* | de-recurse operations on nested blocks | Alon Zakai | 2016-03-10 | 1 | -1/+31 | |
| | ||||||
* | Move rol/ror to src/support/bits.h | Derek Schuff | 2016-03-09 | 1 | -17/+4 | |
| | ||||||
* | Implement rotates | Derek Schuff | 2016-03-09 | 1 | -1/+28 | |
| | ||||||
* | Make initial and max memory sizes be in pages instead of bytes | Derek Schuff | 2016-03-09 | 1 | -1/+3 | |
| | | | | | | | The AST and everything that uses it treats the values as pages. Javascript continues to use bytes. This matches v8 and sexpr-wasm, and the consensus from live discussion and PR209 in the spec. | |||||
* | br_table, no more cases | Alon Zakai | 2016-03-07 | 1 | -15/+7 | |
| | ||||||
* | add a finalize() method for blocks | Alon Zakai | 2016-03-07 | 1 | -0/+6 | |
| | ||||||
* | grow memory returns a value now, and we can update the spec tests after ↵ | Alon Zakai | 2016-02-23 | 1 | -1/+1 | |
| | | | | doing that | |||||
* | debugging tweaks | Alon Zakai | 2016-02-21 | 1 | -7/+2 | |
| | ||||||
* | Reorder locals. | Michael | 2016-02-19 | 1 | -0/+1 | |
| | ||||||
* | move printing to a pass | Alon Zakai | 2016-02-17 | 1 | -510/+1 | |
| | ||||||
* | memory max is optional, don't emit it when not necessary | Alon Zakai | 2016-02-17 | 1 | -1/+1 | |
| | ||||||
* | refactor operations into Literal | Alon Zakai | 2016-02-12 | 1 | -11/+400 | |
| | ||||||
* | fix store printing | Alon Zakai | 2016-02-10 | 1 | -1/+3 | |
| | ||||||
* | Update binaryen and several tests for the new br_if operand order. | Dan Gohman | 2016-02-08 | 1 | -2/+2 | |
| | ||||||
* | update spec tests and shift to putting the br_if condition at the end, as ↵ | Alon Zakai | 2016-02-08 | 1 | -3/+4 | |
| | | | | was just changed to in the spec | |||||
* | Fix select | JF Bastien | 2016-02-05 | 1 | -3/+3 | |
| | | | | | | | | | The ordering changed in: https://github.com/WebAssembly/spec/pull/221 Which changed the spec tests, breaking sexpr-wasm because it pulls in the spec tests. This was then fixed: https://github.com/WebAssembly/sexpr-wasm-prototype/commit/23dc368148fc7827a603e3853f5a40287eb9effe Which in turn breaks when binaryen feeds sexpr-wasm .wast files with the old select operand ordering. Note that this PR has new failures when running the torture tests in binaryen-shell: the order of evaluation is correct in binaryen-shell but isn't emitted properly by LLVM in the .s files. This will require another patch to fix LLVM. | |||||
* | Support start | JF Bastien | 2016-02-05 | 1 | -0/+8 | |
| | | | | | | | | | | | | | | As spec'd in: https://github.com/WebAssembly/design/pull/495 And discussed in: https://github.com/WebAssembly/spec/issues/231 This will make it simpler and more uniform to add a start entry point. s2wasm is the right place to add start because it'll eventually need to do other basic setup, e.g. put code in start to setup the stack, as dschuff is doing in: https://github.com/WebAssembly/binaryen/pull/179 Or rather, the linker is the right place and s2wasm happens to act as our linker right now. | |||||
* | Break and Return have unreachable type | Alon Zakai | 2016-02-03 | 1 | -2/+10 | |
| | ||||||
* | fix nan comparisons | Alon Zakai | 2016-02-02 | 1 | -4/+4 | |
| |