25 Commits

Author SHA1 Message Date
Daniel Wirtz
527d73ece8
Use fully qualified names in generic types (#544)
* Also fixes infinite parser loops
* Also implements command line option forwarding to node.js
2019-03-25 21:58:19 +01:00
dcode
c0738ed6b6 Correct asc output stream typings, fixes #485 2019-02-21 06:16:29 +01:00
Nidin Vinayakan
951b6f9f45 Add shared memory support to compiler (#494) 2019-02-21 00:22:25 +01:00
Daniel Wirtz
0c64f21250
Rework resolver (#489)
* 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
Daniel Wirtz
1bd1d26152
Put atomics behind a feature flag (#470) 2019-02-07 18:21:09 +01:00
Daniel Wirtz
2f1a6c44ce
Add SIMD prerequisites (#469) 2019-02-07 15:26:26 +01:00
Daniel Wirtz
f551bc78e1
Implement bulk memory operations (#467) 2019-02-07 11:40:23 +01:00
dcodeIO
ced01216f8 Use baseDir as another parameter to readDir etc. to simplify compatibility between asc running under node and in the browser, see #354 2018-12-03 19:29:49 +01:00
dcodeIO
aedc821c09 Process backlog once more after Transform#afterParse, see #356 2018-12-03 17:22:01 +01:00
dcodeIO
4f95dce6e2 Do not emit debug info by default
This basically flips the --noDebug flag to become a --debug flag, so some optimizations, like inlining, aren't skipped by default, which might be unexpected.
2018-11-09 12:28:10 +01:00
dcodeIO
658ab23ea6 Still include builtins when compiling with --noLib, fixes #190 2018-09-09 04:05:00 +02:00
dcodeIO
7965776133 Make sure output directories exist before writing a file 2018-08-04 01:02:56 +02:00
Francis Crick
5ae98013d2 Don't add default aliases if --noLib is set (#183) 2018-07-22 14:13:39 +02:00
dcodeIO
41ad2f8a70 Add a more convenient tracing utility for debugging; Fix basic GC test 2018-07-20 16:49:27 +02:00
dcodeIO
585d246165 Fix infinite loop when skipping statements, see #167 2018-07-10 17:38:03 +02:00
dcodeIO
c4ebc8c291 Fix missing dependency in asc, see #157; Downgrade ts-node to v6 2018-07-04 21:47:58 +02:00
dcodeIO
5ca5df3dc7 Restructure types; Add a use-case specific options parser; Allow (re)creation of specific parser fixtures 2018-07-03 03:06:01 +02:00
dcodeIO
82da2d1f6d Add compiler hints 2018-06-29 00:14:42 +02:00
dcodeIO
55a8e677c6 Update dependencies 2018-06-28 18:31:19 +02:00
dcodeIO
9c16363796 Initial external decorator for annotating explicit import names; Use file name as default module name in imports; Emit empty memory if there are no static segments; Update TLSF and examples accordingly 2018-06-28 01:44:32 +02:00
dcodeIO
27e61f8f67 Remove noMemory option; Omit 'start' if 'main' is present; Unwrap more unnecessary blocks 2018-06-27 19:03:39 +02:00
dcodeIO
c102fc9848 Minor CLI and README cleanup 2018-06-14 15:57:04 +02:00
dcodeIO
e18165bbbc Remove chalk dependency and replace it with something simpler, fixes #138 2018-06-12 18:34:39 +02:00
dcodeIO
c6ec5e2832 Utilize Binaryen's -O4
When specifying -O3 or -Oz, asc now automatically increases the optimize level to 4, then including costly non-LLVM optimizations for blocky code, in turn achieving similar results as an LLVM-based generator.
2018-06-09 14:05:33 +02:00
dcodeIO
c9ed03028d Add CLI definitions; CLI restructure 2018-05-28 18:55:51 +02:00