Andrew Morris
|
c9b0991907
|
Use this_subcall and avoid require_mutable_this when packing up those calls
|
2023-04-05 10:55:17 +10:00 |
|
Andrew Morris
|
f2db17ef27
|
Use .effectively_const to exclude from TargetAccessor, producing const_subcall
|
2023-04-04 14:55:32 +10:00 |
|
Andrew Morris
|
c25ebe2e14
|
Copy pre-increment values into registers
|
2023-03-31 17:39:32 +11:00 |
|
Andrew Morris
|
eaa5616193
|
Limit register copying to only variables that are mutated
|
2023-03-31 17:05:09 +11:00 |
|
Andrew Morris
|
a5a861d570
|
Use extra register for every identifier
|
2023-03-31 16:44:22 +11:00 |
|
Andrew Morris
|
c4c348a231
|
Fix captureShadowed.ts
|
2023-03-31 14:35:34 +11:00 |
|
Andrew Morris
|
67b8825f99
|
Fix false positive tdz capture issues by analyzing binds instead
|
2023-03-31 14:24:36 +11:00 |
|
Andrew Morris
|
0bc3269d66
|
Move Scope into its own file
|
2023-03-31 10:59:26 +11:00 |
|
Andrew Morris
|
a48783af81
|
Fix register release for args of new expressions
|
2023-03-30 12:16:22 +11:00 |
|
Andrew Morris
|
c8d5143bc9
|
Fix transitive captures
|
2023-03-24 17:44:50 +11:00 |
|
Andrew Morris
|
36e0b0d2cc
|
Fix capturing for function declarations
|
2023-03-24 16:25:27 +11:00 |
|
Andrew Morris
|
9efd517980
|
Only bind register captures
|
2023-03-24 14:40:31 +11:00 |
|
Andrew Morris
|
c811d0944e
|
Improve diagnostic
|
2023-03-24 14:02:20 +11:00 |
|
Andrew Morris
|
1164de3f3f
|
Include member.prop
|
2023-03-24 11:41:39 +11:00 |
|
Andrew Morris
|
6a87fbb2c2
|
Include non-mutations in assignment
|
2023-03-24 11:16:48 +11:00 |
|
Andrew Morris
|
fe2e281d0b
|
Improve diagnostic
|
2023-03-24 10:55:08 +11:00 |
|
Andrew Morris
|
026c3e1619
|
Lookup returns option, enabling diagnostics, include ref when inserting name
|
2023-03-24 10:06:19 +11:00 |
|
Andrew Morris
|
ec14f657e9
|
wiiiip
|
2023-03-24 09:24:17 +11:00 |
|
Andrew Morris
|
64e79cf13b
|
oof wip
|
2023-03-23 21:14:05 +11:00 |
|
Andrew Morris
|
1d1c4496b3
|
wip
|
2023-03-23 21:14:00 +11:00 |
|
Andrew Morris
|
7594eeeadd
|
Replace capture_finder with scope_analysis data
|
2023-03-22 14:27:06 +11:00 |
|
Andrew Morris
|
d2c437a9b6
|
BigInt
|
2023-03-20 17:59:07 +11:00 |
|
Andrew Morris
|
549e7e546a
|
NaN, Infinity
|
2023-03-20 11:34:48 +11:00 |
|
Andrew Morris
|
812b51dbba
|
Fix inputs/passing/projEuler/p15.ts
|
2023-03-06 19:38:19 +11:00 |
|
Andrew Morris
|
88cac1fbe2
|
Removed remaining inline assembly
|
2023-03-06 18:29:56 +11:00 |
|
Andrew Morris
|
508f00e95c
|
Simpler api for pushing instructions and labels
|
2023-03-06 17:16:44 +11:00 |
|
Andrew Morris
|
9dc82acebc
|
Use asm::Instruction throughout expression_compiler
|
2023-03-06 16:17:33 +11:00 |
|
Andrew Morris
|
a18d6eec65
|
Use asm::Instruction for compound assignments
|
2023-03-06 16:02:40 +11:00 |
|
Andrew Morris
|
6000440313
|
Use asm::Instruction for unary and binary operators
|
2023-03-06 15:53:50 +11:00 |
|
Andrew Morris
|
018407dabc
|
Start using asm::Instruction in compiler
|
2023-03-06 15:35:34 +11:00 |
|
Andrew Morris
|
eaf26f7a88
|
Prefer to_string
|
2023-03-06 15:05:38 +11:00 |
|
Andrew Morris
|
8c98da80be
|
Use asm::Value in CompiledExpression
|
2023-03-06 14:59:56 +11:00 |
|
Andrew Morris
|
3093016344
|
Use asm::Pointer during compilation
|
2023-03-06 14:02:27 +11:00 |
|
Andrew Morris
|
6be70c189b
|
Replace register strings with Register throughout expression_compiler
|
2023-03-06 12:48:41 +11:00 |
|
Andrew Morris
|
9400ab1643
|
Add tests (and fix default expr for target-access)
|
2023-03-02 18:23:59 +11:00 |
|
Andrew Morris
|
eafe601d29
|
Implement expressions inside patterns
|
2023-03-02 18:02:10 +11:00 |
|
Andrew Morris
|
e77667bd7d
|
Move patterns into expression compiler
|
2023-03-02 17:39:12 +11:00 |
|
Andrew Morris
|
42c3ce706b
|
decl_or_param_pat -> pat
|
2023-03-02 17:17:02 +11:00 |
|
Andrew Morris
|
cae818a3c7
|
Enable more destructuring
|
2023-03-02 17:14:45 +11:00 |
|
Andrew Morris
|
e7c30899de
|
Split out assign_pat_eq
|
2023-03-02 16:51:38 +11:00 |
|
Andrew Morris
|
b75d7e57c5
|
Improve top-level member access with assign_and_packup
|
2023-03-02 15:00:04 +11:00 |
|
Andrew Morris
|
16fed23c66
|
AssignTarget::from_pat_or_expr
|
2023-03-02 11:34:30 +11:00 |
|
Andrew Morris
|
5ea2903b90
|
Deduplicate code
|
2023-03-01 18:44:46 +11:00 |
|
Andrew Morris
|
f3118298fe
|
Move AssignTarget to outer scope
|
2023-03-01 18:37:38 +11:00 |
|
Andrew Morris
|
5c57d24292
|
Fix multiCompundAssignment
|
2023-03-01 18:10:34 +11:00 |
|
Andrew Morris
|
8fdd4ca9ee
|
Fix multiAssignment
|
2023-03-01 18:02:07 +11:00 |
|
Andrew Morris
|
ef265451f2
|
Fix nested compound assignment
|
2023-03-01 17:26:33 +11:00 |
|
Andrew Morris
|
266ff3a611
|
Fix nested assignment
|
2023-03-01 17:05:18 +11:00 |
|
Andrew Morris
|
d594aaf407
|
Test nested assignment (that it fails as expected)
|
2023-03-01 16:44:39 +11:00 |
|
Andrew Morris
|
b170587576
|
Remaining targets are invalid, not todos
|
2023-03-01 15:45:33 +11:00 |
|