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
dcodeIO
c6af2d1454
Implement ternary using if, see AssemblyScript/assemblyscript#123
2017-12-04 14:49:24 +01:00
dcodeIO
017efc71b6
Fixes; Builtins; Testing in the interpreter
2017-12-03 23:04:33 +01:00
dcodeIO
ef859937a8
Better testing infrastructure; Initial exports/imports/re-exports
2017-12-02 01:14:15 +01:00
dcodeIO
df637164a6
Cleanup
2017-11-26 04:03:28 +01:00