Daniel Wirtz
f551bc78e1
Implement bulk memory operations ( #467 )
2019-02-07 11:40:23 +01:00
dcode
2fe228ff00
Cache strings shared with Binaryen
2019-01-27 02:08:04 +01:00
Nidin Vinayakan
b7c7be1fe9
Add shared memory definitions and initial API ( #435 )
2019-01-25 10:50:55 +01:00
dcodeIO
d5f72e32d7
Add initial definitions for SIMD ops
2018-12-14 08:17:08 +01:00
Daniel Wirtz
c30c62e383
Cast to bool by comparing to zero ( #343 )
2018-11-23 15:20:52 +01:00
dcodeIO
b723ff3e88
Update Binaryen to latest
2018-11-22 17:15:22 +01:00
Daniel Wirtz
2bdc2a72f1
Use stack IR when emitting text format ( #312 )
2018-11-08 08:04:24 +01:00
Daniel Wirtz
f7c734789e
Update Binaryen to latest; Various fixes
2018-10-11 08:49:08 +02:00
dcodeIO
d90cd085e5
Update Binaryen
2018-09-13 23:10:49 +02:00
Daniel Wirtz
dc0f271fc2
Initial GC integration ( #196 )
2018-08-02 18:23:02 +02:00
dcodeIO
a1b75b69b7
Rename memory instructions; Rework constant handling
2018-07-18 23:49:32 +02:00
dcodeIO
e415377cda
Avoid trampolines where optional arguments are constant literals, see #102 ; Fix temporary local flags not being cleared; Fix inlined temporary locals not being free'd; Fix inlined flows not breaking after returns; Allow changetype of u32s, i.e. function pointers
2018-05-11 16:31:56 +02:00
dcodeIO
ef9b43740d
Eliminate leftover temporary function types using latest Binaryen
2018-05-09 16:33:42 +02:00
dcodeIO
1bf0ca6525
Add a mechanism to enable additional (experimental) features and start with sign extension operations; Hashing experimentation
2018-05-08 00:36:19 +02:00
Daniel Wirtz
50f6c1c460
Update internal ABI to zero/sign-extend where necessary only ( #87 )
2018-05-06 00:00:54 +02:00
dcodeIO
05117f9ee3
Make sure that contextual type arguments are passed when resolving the target of a new
expression; Fix decoding of UTF8 strings with more than two code units in the Binaryen interface
2018-04-22 00:17:14 +02:00
Daniel Wirtz
623597c23a
Make the transition to ArrayBuffer backed Arrays ( #70 )
...
* Traverse base classes when resolving overloads
* Implement preliminary TypedArray accessors
* Extract decorator flags from common flags to make space
* Add '**' overload
* Implement basic explicit inlining
* Support inlining of instance methods
* Reduce number of required locals when inlining
* Implement inlining of operator overloads
* Fix issues when inlining generic functions
2018-04-11 23:35:19 +02:00
dcodeIO
0fef69e445
Set up documentation generation
2018-03-19 01:12:18 +01:00
dcodeIO
5eb10d404f
Document the purpose of most files
2018-03-17 23:41:48 +01:00
dcodeIO
081ac768ae
Give some love to the linter
2018-03-13 14:03:57 +01:00
dcodeIO
23a7db4dc3
Ensure consistent variable modifiers
...
'var' is a distinct local or mutable global, 'let' a shared local
2018-03-13 02:32:10 +01:00
Daniel Wirtz
423533c6b0
Implement function types / indirect calls / trampolines ( #39 )
2018-03-12 14:06:39 +01:00
dcodeIO
8dc517e352
Cleanup; Initial tslint integration
2018-02-25 00:13:39 +01:00
dcodeIO
48cbbbbd68
More cleanup
2018-02-16 18:57:51 +01:00
dcodeIO
b1c6ccab2a
Use long.js in JS and native i64 in WASM; Compile literals more thoroughly
2018-02-14 09:18:43 +01:00
dcodeIO
4736227879
Update binaryen to latest nightly; Source map support
2018-02-02 03:07:54 +01:00
dcodeIO
2fa7fc7885
Take advantage of smaller integer load and store ops
2018-01-23 15:44:25 +01:00
dcodeIO
1c4b0ddc57
Moved noEmit to compiler frontend; Added I/O and compile time measuring
2018-01-18 15:45:34 +01:00
dcodeIO
fc40ed80f7
Update Binaryen and add optimize levels to asc
2018-01-18 05:56:45 +01:00
dcodeIO
ad469ca445
Polyfill move_memory and set_memory and remove Heap
2018-01-14 02:30:20 +01:00
dcodeIO
2df318a7ec
Implicitly alias stdlib exports as program globals, see #8
2018-01-12 15:36:17 +01:00
dcodeIO
ae99adefce
Better resolve infrastructure; Instance fields
2018-01-03 18:33:27 +01:00
dcodeIO
2888ba14ad
PSON decoder example using namespaced imports
2017-12-30 05:11:58 +01:00
dcodeIO
c67f87a988
Update binaryen.js and enable tee optimizations
2017-12-29 04:42:20 +01:00
dcodeIO
4207f6460d
Warn on constant locals not being actual constants; Simplify changetype
2017-12-28 17:16:37 +01:00
dcodeIO
2ed3c22031
Cleanup: Make use of type inference and use 'var' in functions to match actual WebAssembly semantics
2017-12-28 04:09:40 +01:00
dcodeIO
4baff99125
Refactoring; Add tslint fwiw
2017-12-24 03:19:47 +01:00
dcodeIO
9632777842
Type declaration parsing; Future feature references
2017-12-19 17:49:15 +01:00
dcodeIO
c6c36613e6
Accessor parsing; Cleanup
2017-12-14 11:55:35 +01:00
dcodeIO
f75b962c74
Smarter temp locals; Less binaryen boilerplate
2017-12-12 09:32:03 +01:00
dcodeIO
7a5f7dba50
Monday night decompiler shenenigans
2017-12-12 04:35:30 +01:00
dcodeIO
b5cc2f9924
Fix unsigned ops; Fix parenthesized conversion; Minor restructure
2017-12-11 18:46:11 +01:00
dcodeIO
d0b189b437
CString/CArray was an illusion; Update and test tsconfig files
2017-12-11 02:03:15 +01:00
dcodeIO
0228ab91d9
Minor restructure and fixes; README; Proposed binaryen additions
2017-12-10 21:59:45 +01:00
dcodeIO
732068e981
Add trapMode option to asc; Disable flatten/ssa passes for now
2017-12-09 02:38:17 +01:00
dcodeIO
bbc71ebe81
More options for asc; asm.js output
2017-12-09 00:45:12 +01:00
dcodeIO
0ebb99a33c
Extract portable AS to its own definition and polyfill; Try running flatten/ssa before default optimizations, see WebAssembly/binaryen#1331
2017-12-08 19:08:03 +01:00
dcodeIO
9ae3328e58
Precompute and inline constant globals
...
This is necessary so that other constant globals referencing constant globals can be precomputed as well (NON_STANDALONE_FLOW in binaryen)
2017-12-06 23:38:17 +01:00
dcodeIO
81844a1fe7
Update binaryen
2017-12-05 15:28:01 +01:00
dcodeIO
df3e34f2aa
More options for asc
2017-12-04 19:26:50 +01:00