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
|
0ee1f473ce
|
this_subcall
|
2023-04-05 10:31:05 +10:00 |
|
Andrew Morris
|
dc685f5892
|
require_mutable_this
|
2023-04-05 10:15:19 +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
|
f728509db9
|
const_subcall, more tests
|
2023-04-04 13:49:46 +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
|
f17ec376d5
|
Implement TDZ for captures
|
2023-03-31 13:25:19 +11:00 |
|
Andrew Morris
|
d46e823d4b
|
More tdz capture tests
|
2023-03-31 12:21:48 +11:00 |
|
Andrew Morris
|
0bc3269d66
|
Move Scope into its own file
|
2023-03-31 10:59:26 +11:00 |
|
Andrew Morris
|
10974444bb
|
Implement basic TDZ (not including captures)
|
2023-03-31 10:50:41 +11:00 |
|
Andrew Morris
|
b59e19ad9b
|
XScope -> Scope
|
2023-03-31 10:03:29 +11:00 |
|
Andrew Morris
|
a48783af81
|
Fix register release for args of new expressions
|
2023-03-30 12:16:22 +11:00 |
|
Andrew Morris
|
382d2174c6
|
Fix const (basic)
|
2023-03-30 11:57:22 +11:00 |
|
Andrew Morris
|
81f944355a
|
Snapshot variables mutated by method calls
|
2023-03-30 11:45:40 +11:00 |
|
Andrew Morris
|
1960b43a1a
|
Fix duplicate name insertion
|
2023-03-29 08:24:44 +11:00 |
|
Andrew Morris
|
08d7773314
|
Fix duplicate scope analysis
|
2023-03-29 08:13:27 +11:00 |
|
Andrew Morris
|
c199d3bb8e
|
Make compile link files
|
2023-03-28 16:36:33 +11:00 |
|
Andrew Morris
|
aaf89e2cab
|
Add and use run_linked
|
2023-03-28 16:25:30 +11:00 |
|
Andrew Morris
|
7b5f1de302
|
Revert variables on catch
|
2023-03-24 18:31:38 +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
|
a7ced2eb76
|
Fix nested function declarations
|
2023-03-24 15:31:24 +11:00 |
|
Andrew Morris
|
bb2c49d9a7
|
Fix p5 by (correctly) skipping declares
|
2023-03-24 15:15:22 +11:00 |
|
Andrew Morris
|
9efd517980
|
Only bind register captures
|
2023-03-24 14:40:31 +11:00 |
|
Andrew Morris
|
5931d8a8f9
|
Only allocate register for capture if original name is a register
|
2023-03-24 14:32:12 +11:00 |
|
Andrew Morris
|
57a95798cd
|
Include more expressions
|
2023-03-24 14:16:15 +11:00 |
|
Andrew Morris
|
c811d0944e
|
Improve diagnostic
|
2023-03-24 14:02:20 +11:00 |
|
Andrew Morris
|
e2886d209d
|
Include prop_key of object patterns
|
2023-03-24 13:45:00 +11:00 |
|
Andrew Morris
|
64cad76081
|
Only process scope of local exports
|
2023-03-24 13:17:34 +11:00 |
|
Andrew Morris
|
d3391028ba
|
Include ModuleDecl::ExportNamed
|
2023-03-24 12:47:28 +11:00 |
|
Andrew Morris
|
5f5398b566
|
Ignore non-register captures, set self.owner_id correctly
|
2023-03-24 12:32:21 +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
|
f878dbbae9
|
Insert each mutation as a ref
|
2023-03-24 10:19:44 +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
|
b95c32f45b
|
Avoid allocating special registers in RegAllocator
|
2023-03-23 19:38:01 +11:00 |
|
Andrew Morris
|
b273bf1091
|
associate values during scope analysis, add .lookup
|
2023-03-23 19:35:42 +11:00 |
|
Andrew Morris
|
e86b2b6127
|
More tests and fixes
|
2023-03-23 17:17:27 +11:00 |
|
Andrew Morris
|
2e500692bf
|
Compile try-catch
|
2023-03-23 14:12:35 +11:00 |
|
Andrew Morris
|
337c5c5296
|
Add set_catch, unset_catch instructions
|
2023-03-23 09:35:33 +11:00 |
|
Andrew Morris
|
56f6ce5922
|
Add limited comment support in assembly
|
2023-03-23 08:59:57 +11:00 |
|
Andrew Morris
|
55fceb80cb
|
Store mutations by span
|
2023-03-22 14:39:32 +11:00 |
|