summaryrefslogtreecommitdiff
path: root/src/wasm-binary.h
Commit message (Collapse)AuthorAgeFilesLines
...
* support expressions in segment offsetsAlon Zakai2016-08-121-7/+13
|
* Fix trailing whitespace, single-character strings, checking map element ↵Dominic Chen2016-07-221-4/+4
| | | | presence, and eliminate explicit index counter (#633)
* binary support for wasm globals (#652)Alon Zakai2016-07-221-13/+70
|
* update spec tests, and handle some flux in call_indirect in upstreamAlon Zakai2016-07-061-0/+1
|
* add shared-constants.h for wasm constantsAlon Zakai2016-06-261-11/+11
|
* Add mode to wasm validator to check for web-environment constraints (#584)Derek Schuff2016-06-141-4/+0
| | | | | | | In the web embedding, modules are not allowed to import or export functions which have i64 params or return values. Add a mode to the validator to check for this, and add flags to s2wasm and wasm-as to enable or disable this check. Also add tests.
* use WASM_UNUSED in some places to fix compiler warning/error on unused ↵Alon Zakai2016-06-081-0/+5
| | | | variables we only use in asserts (#579)
* make call_indirect type a name, so that it is not a dependency on the ↵Alon Zakai2016-06-031-4/+5
| | | | module, which would break consistency and make some parallel passes tricky (#568)
* fix bugs found using afl (#546)Dominic Chen2016-05-311-4/+9
|
* use separate internal opcodes for binary variantsAlon Zakai2016-05-181-73/+89
|
* use separate internal opcodes for unary variantsAlon Zakai2016-05-181-37/+48
|
* spec test updates, and many validation fixesAlon Zakai2016-05-181-1/+1
|
* don't emit extra unnecessary blocks for loops in binary format (#523)Alon Zakai2016-05-171-2/+1
|
* fix binary reinterpret opcode bugAlon Zakai2016-05-131-2/+2
|
* Merge pull request #488 from WebAssembly/error_reportingAlon Zakai2016-05-121-9/+9
|\ | | | | Better error reporting
| * parse error detailsAlon Zakai2016-05-121-8/+8
| |
| * use exceptions consistently to report input errorsAlon Zakai2016-05-121-9/+9
| |
* | Use a class with implicit overflow checks for Address (#486)Derek Schuff2016-05-121-1/+1
|/ | | | It includes implicit conversion from u64 and implicit conversion to address_t. This makes it easier to use without ugly casting and but still gets the overflow checks.
* add error handling for binary errors in new spec testAlon Zakai2016-05-091-7/+7
|
* allow error handling in binary parsingAlon Zakai2016-05-091-1/+2
|
* Harmonize the internal opcodes with the binary format (#433)Alon Zakai2016-05-031-30/+40
| | | | | | * 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
* Check LEB128 encoding fits in destination integer (#408)JF Bastien2016-04-301-7/+23
| | | | | | | | | | | * Check LEB128 encoding fits in destination integer As found by #404, the insignificant LEB128 bits were silently dropped when dealing with signed LEB values which tripped UBSAN in hello_world. This fixes #409. * Fix typo.
* validate in binaryen shell and on wasm binaries, and fix type checkingAlon Zakai2016-04-291-0/+6
|
* get the reinterpret opcodes right on float/intAlon Zakai2016-04-281-6/+6
|
* fix size detection on reinterpret operations in binary formatAlon Zakai2016-04-281-2/+2
|
* avoid dynamic allocas (#410)Alon Zakai2016-04-281-2/+3
|
* just use a simple vector in data segmentsAlon Zakai2016-04-271-8/+6
|
* allocate only expressions in arenas - functions, imports, exports, function ↵Alon Zakai2016-04-271-15/+14
| | | | 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
* Remove UB (#405)JF Bastien2016-04-271-8/+6
| | | | | ubsan fails with: wasm-binary.h:97:32: runtime error: left shift of negative value -1 Also use type_traits for is_signed.
* Split construction, scanning, and building phases of S2WasmBuilder (#400)Derek Schuff2016-04-271-1/+1
| | | | | | | | | | | Instead of doing all of the S2Wasm work in the constructor, split construction, scanning (to determine implemented functions) and building of the wasm module. This allows the linker to get the symbol information (e.g. implemented functions) without having to build an entire module (which will be useful for archives) and to allow the linker to link a new object into the existing one by building the wasm module in place on the existing module.
* add an ArenaVector for internal array allocations in expression nodesAlon Zakai2016-04-261-111/+113
|
* emit ifs in an optimized way in binary formatAlon Zakai2016-04-261-2/+16
|
* 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
|
* allow allocations on side threads (#365)Alon Zakai2016-04-241-3/+1
|
* fix conversion opcodes (#381)Alon Zakai2016-04-221-44/+44
|
* br_table offsets are int32s, not lebsAlon Zakai2016-04-221-4/+4
|
* put segments in right orderAlon Zakai2016-04-211-4/+6
|
* function toplevels is a listAlon Zakai2016-04-211-6/+6
|
* 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 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
|