Ulf Norell
|
ad54134961
|
Parse negative literal patterns
|
2019-12-16 17:04:49 +01:00 |
|
Ulf Norell
|
b51a79b5e1
|
Allow patterns in lets and list comprehension binds
|
2019-12-16 17:04:49 +01:00 |
|
Ulf Norell
|
d844c4d276
|
Fix missing type annotation in list comprehension body
|
2019-12-12 09:39:13 +01:00 |
|
Ulf Norell
|
64e2fff91a
|
Handle list comprehensions in pretty printer
|
2019-12-12 09:39:13 +01:00 |
|
Ulf Norell
|
d4f291f252
|
Handle qualified constructors in patterns
|
2019-12-12 09:34:26 +01:00 |
|
Ulf Norell
|
b9f585ebaf
|
Merge pull request #205 from aeternity/fate-flatten-store
FATE backend optimisations
|
2019-12-12 09:22:37 +01:00 |
|
Ulf Norell
|
954af13f59
|
Fix debug printing of store registers
|
2019-12-12 09:14:34 +01:00 |
|
Ulf Norell
|
a403a9d227
|
Unbox singleton tuples and records
|
2019-12-10 12:24:05 +01:00 |
|
Ulf Norell
|
bf5e2e2443
|
Fix parse errors causing crashes instead of nice errors
|
2019-12-09 08:45:55 +01:00 |
|
Hans Svensson
|
1c24a700dc
|
Add BLS12-381 operations (to FATE)
|
2019-11-27 10:57:24 +01:00 |
|
Hans Svensson
|
2d49426fe0
|
Merge 'origin/lima' into master
|
2019-11-27 10:46:18 +01:00 |
|
Ulf Norell
|
46a30b118f
|
Get rid of unnecessary return instruction after tail-call
|
2019-11-26 13:33:11 +01:00 |
|
Ulf Norell
|
bb1a45c557
|
Improve case-on-constructor optimisation
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
0a22c7a34a
|
More let-floating
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
c8153f94a6
|
More aggressive freshening to avoid shadowing issues
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
63d51baaa3
|
Dialyzer issues
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
cb045b0256
|
whitespace
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
c84064da7f
|
Inline local functions and simplify case-on-constructor
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
ad88797cef
|
Proper handling of lets in term_to_fate
|
2019-11-26 13:10:58 +01:00 |
|
Ulf Norell
|
6c3932b10c
|
Flattened state layout
... with necessary optimizations.
|
2019-11-26 13:10:56 +01:00 |
|
Ulf Norell
|
8d7c637241
|
Don't confuse variables and store registers in fate asm generation
|
2019-11-26 13:10:04 +01:00 |
|
Ulf Norell
|
a8119f1219
|
Track state layout
... but only default layout still.
|
2019-11-26 13:10:04 +01:00 |
|
Ulf Norell
|
d0fdd06d66
|
Change get_state and set_state fcode primitives to take a register
|
2019-11-26 13:10:04 +01:00 |
|
Ulf Norell
|
e645a8d034
|
Optimize before lambda lifting
(lambdas are either in dead code or not dead, so dead code elimination won't be affected)
|
2019-11-26 13:10:04 +01:00 |
|
Ulf Norell
|
499e2f8200
|
Handle records and type aliases correctly in fcode
|
2019-11-26 13:10:04 +01:00 |
|
Ulf Norell
|
5465b74ac9
|
Allow specifying store register in FATE backend
|
2019-11-26 13:10:04 +01:00 |
|
Ulf Norell
|
08b6148223
|
Bump version to 4.1.0
|
2019-11-26 09:02:26 +01:00 |
|
Ulf Norell
|
eec70f03a5
|
Merge pull request #183 from aeternity/lima
Merge lima into master
|
2019-11-25 13:16:17 +01:00 |
|
Ulf Norell
|
8984ecc32d
|
Bump version numbers
|
2019-11-25 11:55:31 +01:00 |
|
Ulf Norell
|
bd64260e37
|
Remove impossible case
h/t dialyzer
|
2019-11-25 10:42:37 +01:00 |
|
Ulf Norell
|
6380e04a97
|
Strip switches on variants with only catch-all
|
2019-11-19 16:39:01 +01:00 |
|
Ulf Norell
|
2be3c9194d
|
Optimize switches with a single successful branch
Typical case: require(_, _)
|
2019-11-19 15:14:00 +01:00 |
|
Ulf Norell
|
d0cfd9cbbe
|
Export to_basic_blocks for tests
|
2019-11-19 13:11:06 +01:00 |
|
Ulf Norell
|
7f7f53e044
|
Fix issue in basic block generation
|
2019-11-19 13:10:56 +01:00 |
|
Ulf Norell
|
7d8a773d6a
|
Fix type specs
|
2019-11-19 13:10:26 +01:00 |
|
skkw
|
5c5d3c60ef
|
changed type of client ttl to int option
|
2019-11-18 16:25:47 +01:00 |
|
Ulf Norell
|
d3f5d7f5c5
|
Fix lost dependency when inlining switch target
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
0b474843f9
|
Protect against ill-typed code
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
1a628ab29f
|
Fix bad annotations on switch-body
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
03ad1ad1dd
|
Protect switch optimizations against ill-typed code
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
bfcb9ab324
|
Annotate switch bodies
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
4cc88be296
|
Desugar STORE R a to POP R
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
505603ad71
|
More optimizations for impure instructions
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
2d7c860e3a
|
Rewrite liveness analysis
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
4976e0402e
|
Don't crash constant propagation on ill-typed code
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
0478df72fc
|
Fix dependency analysis for loops
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
35b20800c9
|
Refactor argument inlining optimization
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
d4c5c610ee
|
Don't include stack and immediates in liveness annotations
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
6868bec3ed
|
Fix bug in dependency analysis of GAS
|
2019-11-18 12:20:32 +01:00 |
|
Ulf Norell
|
e5702c068c
|
Impure == writes to the chain
Reading is ok
|
2019-11-18 12:20:31 +01:00 |
|