1
0
mirror of https://github.com/fluencelabs/assemblyscript synced 2025-06-14 15:31:31 +00:00
Commit Graph

31 Commits

Author SHA1 Message Date
bf597a06c6 Fix lifetime issues in field inits/ctors and refactor inlining 2019-06-05 00:18:26 +02:00
b19005f5bb Use new RC utility for inlining so we can eventually inline everything 2019-05-29 03:41:03 +02:00
3224925e47 eliminate retainRelease and skippedRelease 2019-05-25 19:16:09 +02:00
7cd04b65ef Add lightweight paths for memcpy & memset for shrink level != 0 () 2019-05-24 16:00:02 +02:00
51fdf9db4f fix 2019-05-23 03:08:25 +02:00
c16c19e18d unify runtime header 2019-04-08 23:22:13 +02:00
e1070cee86 rtti & refactoring 2019-04-06 20:17:48 +02:00
25c5dfddad slim down runtime 2019-04-04 02:25:22 +02:00
a3095478a3 Merge branch 'master' into runtime 2019-03-27 16:10:59 +01:00
3146f8f9e0 use gc interface directly, document 2019-03-26 23:35:08 +01:00
527d73ece8 Use fully qualified names in generic types ()
* Also fixes infinite parser loops
* Also implements command line option forwarding to node.js
2019-03-25 21:58:19 +01:00
9b664dc175 harden / elaborate on makeCallInline 2019-03-20 14:16:18 +01:00
7693b543f4 optimize array literal init, warn on unsupported inlining 2019-03-19 08:20:10 +01:00
e63c6bd388 local flow flags, see what works 2019-03-17 01:35:44 +01:00
4e1bba3a24 Use Binaryen's function signature naming scheme () 2019-03-01 00:01:23 +01:00
0c64f21250 Rework resolver ()
* Rework IR and resolver to use nested lookup tables
* Integrate types into IR
* Make components prefer IR, slimmed down AST
* Implement `export *`
* Add `@lazy` annotation and remove `--noTreeShaking`
* Add `@start` annotation and remove magic `main`
* Related refactoring, cleanup and docs
2019-02-21 00:11:22 +01:00
2f1a6c44ce Add SIMD prerequisites () 2019-02-07 15:26:26 +01:00
831054dfd3 Rework inlining logic () 2019-02-06 23:42:43 +01:00
cd1cfe6957 Update Binaryen to latest and rebuild dist files 2019-02-05 17:12:10 +01:00
2131c51932 Rework constructor handling () 2019-02-02 16:03:21 +01:00
d62d84521e Reduce inlining verbosity
With debug info and source maps in place there is not much value anymore in emitting explicitly named blocks.
2018-11-12 14:54:08 +01:00
2bdc2a72f1 Use stack IR when emitting text format () 2018-11-08 08:04:24 +01:00
6f8a0fe03a Rework compileUnaryPostfixExpression
Previously this tried to reuse too much code, making it hard to implement operator overloading
2018-10-29 20:06:21 +01:00
f7c734789e Update Binaryen to latest; Various fixes 2018-10-11 08:49:08 +02:00
16d1a833dd Always add a null function at table index zero
This allows function references (a table index internally) to be nullable
2018-09-17 01:48:35 +02:00
9613d29d93 Add a setter for Pointer<T>#value 2018-09-15 03:19:41 +02:00
3f93808914 Integrate Buffer<T> experiment into Pointer<T>; Remove CArray 2018-09-15 02:54:30 +02:00
a1b75b69b7 Rename memory instructions; Rework constant handling 2018-07-18 23:49:32 +02:00
7a8995b18b Properly inline getters; Simplify blocks when last statement returns 2018-06-22 15:26:59 +02:00
c74eed2bd8 Add initial std Symbol; Fix some type inference issues 2018-06-21 19:42:18 +02:00
02e0a91070 Add pointer arithmetic experiment to tests
While questionable, it highlights some of the things that currently do not inline well.
2018-06-21 03:09:58 +02:00