Andrew Morris
|
3e5aea5ba3
|
visit_registers_mut_rev
|
2023-06-30 12:19:36 +10:00 |
|
Andrew Morris
|
f20cbc9a36
|
Use register for this argument of Apply, SubCall, ThisSubCall
|
2023-06-30 11:47:18 +10:00 |
|
Andrew Morris
|
98c7839d68
|
Use single impl
|
2023-06-30 10:57:43 +10:00 |
|
Andrew Morris
|
d668433339
|
Move Instruction to its own file
|
2023-06-30 10:57:05 +10:00 |
|
Andrew Morris
|
3d5dada476
|
move (release ..) to after usage
|
2023-06-30 10:47:13 +10:00 |
|
Andrew Morris
|
da94fcb947
|
Add release pseudo-instruction
|
2023-06-30 10:04:08 +10:00 |
|
Andrew Morris
|
4005510bf2
|
Remove .take() from compiler first pass
|
2023-06-30 09:47:31 +10:00 |
|
Andrew Morris
|
ae4c0a5be2
|
Don't extract empty arrays and objects
|
2023-06-30 09:36:36 +10:00 |
|
Andrew Morris
|
ebf4ca9ae4
|
Fix bugs
|
2023-06-29 19:26:42 +10:00 |
|
Andrew Morris
|
842ad083b5
|
wip
|
2023-06-29 18:39:02 +10:00 |
|
Andrew Morris
|
bbb0a9ffaf
|
Split into simplify and apply
|
2023-06-29 16:22:20 +10:00 |
|
Andrew Morris
|
76bc24f4fb
|
Comment instead of empty
|
2023-06-29 16:09:08 +10:00 |
|
Andrew Morris
|
4d7e9a2e5c
|
Remove redundant require_mutable_this
|
2023-06-29 16:01:19 +10:00 |
|
Andrew Morris
|
76995eaf2d
|
Split out optimization dir
|
2023-06-29 15:22:06 +10:00 |
|
Andrew Morris
|
f5fa17ed25
|
Fix pointer ordering, extract constant arrays and objects
|
2023-06-29 15:03:21 +10:00 |
|
Andrew Morris
|
b315f07903
|
Extract optimize.rs
|
2023-06-29 12:03:43 +10:00 |
|
Andrew Morris
|
4642f22344
|
Make todos more descriptive
|
2023-06-28 15:59:17 +10:00 |
|
Andrew Morris
|
b798304070
|
Implement cond expressions
|
2023-06-28 15:49:44 +10:00 |
|
Andrew Morris
|
e49b1ff3da
|
Implement yield* instruction
|
2023-06-27 14:38:42 +10:00 |
|
Andrew Morris
|
fb7f925bfb
|
Use module constants in richards.ts
|
2023-06-23 16:11:22 +10:00 |
|
Andrew Morris
|
50369d18f3
|
Partial support for module constants
|
2023-06-23 15:41:16 +10:00 |
|
Andrew Morris
|
9135181634
|
Mark most module statements as not supported
|
2023-06-23 14:17:10 +10:00 |
|
Andrew Morris
|
a03aecedac
|
Add static eval for literals
|
2023-06-23 14:10:37 +10:00 |
|
Andrew Morris
|
c880dda7c9
|
Extract string constants
|
2023-06-23 13:48:58 +10:00 |
|
Andrew Morris
|
540b25225a
|
Compile static methods
|
2023-06-23 10:02:32 +10:00 |
|
Andrew Morris
|
41a6a20573
|
Include static in class assembly and bytecode
|
2023-06-23 09:47:12 +10:00 |
|
Andrew Morris
|
b3b5887d8b
|
methods -> prototype
|
2023-06-23 09:23:48 +10:00 |
|
Andrew Morris
|
fdae0c5ff4
|
Use take on iter_res
|
2023-06-22 19:49:54 +10:00 |
|
Andrew Morris
|
62aaa57b7d
|
Fix unnecessary binds
|
2023-06-22 17:46:05 +10:00 |
|
Andrew Morris
|
a4291204cb
|
Remove unnecessary mov
|
2023-06-22 16:41:26 +10:00 |
|
Andrew Morris
|
f12e3ea11b
|
Fix redundant mov in preincrements
|
2023-06-22 16:14:46 +10:00 |
|
Andrew Morris
|
6e1be5a929
|
Add Empty and Comment options to FnLine
|
2023-06-22 15:54:00 +10:00 |
|
Andrew Morris
|
48433d650e
|
Refactor - stop assuming assignment to target_register
|
2023-06-22 13:08:08 +10:00 |
|
Andrew Morris
|
70c695016e
|
Tweaks
|
2023-06-22 10:50:27 +10:00 |
|
Andrew Morris
|
0f3b02c2c5
|
Fix nested register for mov
|
2023-06-22 09:30:40 +10:00 |
|
Andrew Morris
|
1917bb51c6
|
When a value is just a nested register, take it
|
2023-06-22 08:55:52 +10:00 |
|
Andrew Morris
|
c1c5bd6f82
|
Default to take:false, add take()
|
2023-06-22 08:32:38 +10:00 |
|
Andrew Morris
|
b5ecc10b65
|
Add benchmarking
|
2023-06-21 15:07:05 +10:00 |
|
Andrew Morris
|
5969d344c4
|
Fix test - implement TargetAccessor for wrapper expressions
|
2023-06-21 11:00:20 +10:00 |
|
Andrew Morris
|
748769b039
|
Implement var hoisting for missing stmt types
|
2023-06-21 10:17:28 +10:00 |
|
Andrew Morris
|
72f9fbf0f7
|
Represent register taking
|
2023-06-20 16:57:49 +10:00 |
|
Andrew Morris
|
80786cc080
|
Implement yield* using a yield loop
|
2023-06-02 09:41:12 +10:00 |
|
Andrew Morris
|
9786625d97
|
Update playground to use generators
|
2023-06-01 13:18:35 +10:00 |
|
Andrew Morris
|
7e22dbeba0
|
Update this-mutability of yield*
|
2023-06-01 12:01:56 +10:00 |
|
Andrew Morris
|
76f78eb8ec
|
Add unimplemented yield* instruction
|
2023-06-01 09:05:55 +10:00 |
|
Andrew Morris
|
81c613a836
|
Assemble generator functions
|
2023-05-31 14:57:21 +10:00 |
|
Andrew Morris
|
d0f446b901
|
Parse function*
|
2023-05-31 14:55:00 +10:00 |
|
Andrew Morris
|
38b1bcfba2
|
Represent generators in assembly
|
2023-05-31 14:49:08 +10:00 |
|
Andrew Morris
|
56c8229d74
|
Compile yield expressions
|
2023-05-31 14:34:57 +10:00 |
|
Andrew Morris
|
12bfe5bf7f
|
Add unimplemented yield instruction
|
2023-05-31 14:20:45 +10:00 |
|