summaryrefslogtreecommitdiff
path: root/src/wasm.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Replace text annotations with explicit file/line for debug info (#967)Derek Schuff2017-04-131-2/+5
| | | Rather than storing debug info as text annotations, store explicit file and line information. This will make it easier to experiment with outputting other serializations or representations (e.g. source maps), and will allow outputting debug info for binaries as well.
* Wasm h to cpp (#926)jgravelle-google2017-03-101-987/+53
| | | | | | | | | | | | | | | | | | | | | | | | * Move WasmType function implementations to wasm.cpp * Move Literal methods to wasm.cpp * Reorder wasm.cpp shared constants back to top * Move expression functions to wasm.cpp * Finish moving things to wasm.cpp * Split out Literal into its own .h/.cpp. Also factor out common wasm-type module * Remove unneeded/transitive includes from wasm.h * Add comment to try/check methods * Rename tryX/checkX methods to getXOrNull * Add missing include that should fix appveyor build breakage * More appveyor
* Fully handle EM_ASM in s2wasm (#910)jgravelle-google2017-02-231-26/+1
| | | | | | | | | | | | * Fully handle EM_ASM in s2wasm * Iterate with size_ts, remember to erase from importsMap as well * Fix dot_s test EM_ASM signatures * Move Name out to its own file, support/name.h * Move removeImportsWithSubstring out of Module class
* read unknown users sections as binary data stored on the Module (#918)Alon Zakai2017-02-211-0/+10
|
* clean up raw pointer import->functionType, make it a Name like everything ↵Alon Zakai2017-02-171-2/+2
| | | | else (#915)
* asm2wasm debuginfo (#895)Alon Zakai2017-02-071-0/+3
| | | | | | | | | | | | * parse file/line comments in asm.js into debug intrinsics * convert debug intrinsics into annotations, and print them * ignore --debuginfo if not emitting text, as wasm binaries don't support that yet * emit full debug info when -g and emitting text; when -g and emitting binary, all we can do is the Names section * update wasm.js
* add a RemoveUnusedModuleElements pass, and make LegalizeJSInterface create ↵Alon Zakai2016-12-071-3/+19
| | | | TempRet0 if needed (otherwise we might remove it before we use it)
* more consistent placement of & and *, on the type (#848)Alon Zakai2016-11-281-28/+34
|
* Don't create a memory section for an imported memory; fixes #772 (#773)Benjamin Bouvier2016-10-131-1/+5
|
* Don't create table sections for imported tables (#756)Derek Schuff2016-10-111-1/+2
| | | 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).
* More binary updates for 0xc (#733)Derek Schuff2016-10-031-1/+4
| | | | | | | | | | | | | | | Refine tables to explicitly exist or not. Previously they were printed or encoded if it had any segments, or an initial or max size. However tables can be defined but empty, so we had a special hack that defined an empty segment when we really just wanted an empty table. Now, just make the existence explicit. Update Function table encoding for 0xc (Table and Element sections) Add end opcodes after function bodies (these are consumed by getMaybeBlock with the same behavior that it had before when it reached the function end, so no explicit decode) Update call_indirect encoding for 0xc (no arity, call target is last)
* Refactor Import::Kind and Export::Kind into an ExternalKind enum class (#725)Alon Zakai2016-10-031-16/+9
|
* Type check block/loop/if sigs (#717)Alon Zakai2016-09-281-25/+17
| | | | | | * type check using block/loop/if types provided in text and binary formats. * print if and loop sigs which were missing. * remove dsl from OptimizeInstructions as after those changes it needs rethinking.
* refactor wasm.h to remove numericIndex hacks, and move indexing to the parsersAlon Zakai2016-09-211-37/+10
|
* global parsingAlon Zakai2016-09-191-0/+1
|
* br_if returns its valueAlon Zakai2016-09-161-1/+5
|
* fix if finalize()Alon Zakai2016-09-131-1/+2
|
* update br type when turning it into a br_if in remove-unused-brsAlon Zakai2016-09-131-0/+2
|
* new export syntax in spec repoAlon Zakai2016-09-071-4/+10
|
* get_global and set_global use a Name instead of an Index, to be more ↵Alon Zakai2016-09-071-2/+2
| | | | consistent with refering to other global objects; e.g. this avoids ordering issues with imported vs non-imported globals
* import type for globalsAlon Zakai2016-09-071-2/+3
|
* import kindsAlon Zakai2016-09-071-1/+9
|
* export kindsAlon Zakai2016-09-071-1/+8
|
* SetGlobal should not return a valueAlon Zakai2016-09-071-4/+0
|
* loops no longer have an out label and other upstream loop updatesAlon Zakai2016-09-071-1/+1
|
* add drop and tee expressionsAlon Zakai2016-09-071-6/+22
|
* offset support in tableAlon Zakai2016-08-151-1/+13
|
* support function table initial and max sizes, and new printing formatAlon Zakai2016-08-121-0/+5
|
* support expressions in segment offsetsAlon Zakai2016-08-121-3/+3
|
* wast function type name desugaring is changing in spec:301 (#654)Alon Zakai2016-07-281-2/+6
|
* Fix trailing whitespace, single-character strings, checking map element ↵Dominic Chen2016-07-221-47/+39
| | | | presence, and eliminate explicit index counter (#633)
* support wasm globals (#650)Alon Zakai2016-07-211-6/+60
|
* fix unreachable constructor without allocator (#643)Alon Zakai2016-07-161-2/+2
|
* add support for symbol assignments, closes #4422 (#615)Dominic Chen2016-07-111-0/+3
| | | Adds support for aliases to objects, to go along with the existing support for aliases to functions.
* fix if type; if one is none and the other is concrete, still none (#575)Alon Zakai2016-06-061-1/+9
|
* make call_indirect type a name, so that it is not a dependency on the ↵Alon Zakai2016-06-031-5/+1
| | | | module, which would break consistency and make some parallel passes tricky (#568)
* fix bugs found using afl (#546)Dominic Chen2016-05-311-0/+3
|
* add getBits and not-equals helper funcs for LiteralAlon Zakai2016-05-281-0/+12
|
* update functions map in RemoveUnusedFunctions (#545)Alon Zakai2016-05-261-0/+8
|
* type check loop output type properlyAlon Zakai2016-05-201-2/+6
|
* use separate internal opcodes for binary variantsAlon Zakai2016-05-181-7/+59
|
* use separate internal opcodes for unary variantsAlon Zakai2016-05-181-16/+27
|
* spec test updates, and many validation fixesAlon Zakai2016-05-181-1/+40
|
* Use typedef instead of explicit type (#503)JF Bastien2016-05-141-1/+1
|
* Fix the maximum memory size to be valid. (#492)Dan Gohman2016-05-131-1/+2
|
* Use a class with implicit overflow checks for Address (#486)Derek Schuff2016-05-121-4/+26
| | | | 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.
* Introduce a separate type for linear memory addresses (#477)Derek Schuff2016-05-111-14/+16
| | | | | | | We've been using size_t (and other things) for addresses, which is generally wrong because it depends on the host, when it should in fact depend on the target. This is a partial fix for #278 (i.e. it's the right fix, I don't think it's applied quite everywhere yet).
* fix block finalize(type) (#457)Alon Zakai2016-05-071-1/+1
|
* add a return type parameter to call and call_import in the C API. we need it ↵Alon Zakai2016-05-061-0/+4
| | | | since we don't know the type while building functions
* Merge pull request #439 from WebAssembly/c-api-moreAlon Zakai2016-05-051-0/+4
|\ | | | | Validation in C API