Andrew Morris
|
b4e450abcd
|
Simplifiy todo diagnostics
|
2023-03-07 10:54:12 +11:00 |
|
Andrew Morris
|
5427fb1051
|
Populate scope for export decls
|
2023-03-07 10:31:17 +11:00 |
|
Andrew Morris
|
106bded066
|
Split out populate_scope
|
2023-03-07 10:17:06 +11:00 |
|
Andrew Morris
|
19904c41ec
|
Ignore empty statements
|
2023-03-07 10:09:56 +11:00 |
|
Andrew Morris
|
be9b078864
|
Simplify default exports, fix anonymous
|
2023-03-07 10:05:17 +11:00 |
|
Andrew Morris
|
264aff25aa
|
Update assembly concepts to include export line
|
2023-03-07 09:11:00 +11:00 |
|
Andrew Morris
|
cfd427b9be
|
Add export line to assembly
|
2023-03-07 08:50:56 +11:00 |
|
Andrew Morris
|
c83432102f
|
Compiler -> ModuleCompiler
|
2023-03-07 08:12:26 +11:00 |
|
Andrew Morris
|
3565d2464f
|
Bypass rendering and parsing assembly
|
2023-03-06 20:06:21 +11:00 |
|
Andrew Morris
|
bab3ada9b8
|
Adjust newlines, as_lines()
|
2023-03-06 19:49:59 +11:00 |
|
Andrew Morris
|
eae0f1090e
|
Use numbering for tmp registers
|
2023-03-06 19:39:34 +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
|
0e9682592e
|
Use asm::Instruction in function_compiler
|
2023-03-06 16:39:59 +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
|
6734567c89
|
Use definition_allocator from self
|
2023-03-06 13:26:32 +11:00 |
|
Andrew Morris
|
082591da5c
|
Replace register strings with Register throughout function_compiler
|
2023-03-06 13:21:54 +11:00 |
|
Andrew Morris
|
6be70c189b
|
Replace register strings with Register throughout expression_compiler
|
2023-03-06 12:48:41 +11:00 |
|
Andrew Morris
|
e87410dd23
|
Apply offsets to render_pos, fix empty objects
|
2023-03-06 09:56:30 +11:00 |
|
Andrew Morris
|
23cb16e5d5
|
render_pos
|
2023-03-06 09:40:46 +11:00 |
|
Andrew Morris
|
ac71b6ea50
|
Fix parameter registers
|
2023-03-06 09:09:43 +11:00 |
|
Andrew Morris
|
442a309e34
|
Fix redundant+wrong ValueType
|
2023-03-06 08:58:09 +11:00 |
|
Andrew Morris
|
01559ce0bd
|
Use ValueType::End to mark the end of arrays and objects instead of encoding the number of elements
|
2023-03-06 08:54:47 +11:00 |
|
Andrew Morris
|
8c15b5b5eb
|
Derive from Debug for assembly ast, comment unused ValueType
|
2023-03-06 08:49:15 +11:00 |
|
Andrew Morris
|
3323455cb1
|
DefinitionRef -> Pointer, fix ValueType::Pointer serialization
|
2023-03-06 08:39:06 +11:00 |
|
Andrew Morris
|
0cfd2a9924
|
Fix register parsing and counting
|
2023-03-05 20:34:58 +11:00 |
|
Andrew Morris
|
e3208620b1
|
Fix consumption of closing ] in array exp
|
2023-03-05 20:21:06 +11:00 |
|
Andrew Morris
|
e9a5e4ab94
|
Use line and col in assembly parser
|
2023-03-05 18:22:04 +11:00 |
|
Andrew Morris
|
3a49b5aee1
|
Use new assembler
|
2023-03-05 18:21:00 +11:00 |
|
Andrew Morris
|
2dc78c2002
|
assembly_parser
|
2023-03-05 08:43:04 +11:00 |
|
Andrew Morris
|
372d9c9b36
|
Add asm::Value::Void
|
2023-03-05 07:27:59 +11:00 |
|
Andrew Morris
|
6df5bccf9c
|
assembly -> asm
|
2023-03-04 22:36:46 +11:00 |
|
Andrew Morris
|
a71e92730d
|
wip
|
2023-03-04 22:11:38 +11:00 |
|
Andrew Morris
|
d046ff8c3c
|
std::fmt::Display for Assembly
|
2023-03-03 19:33:47 +11:00 |
|
Andrew Morris
|
9e5b65b594
|
assembly_ast basic structure
|
2023-03-03 19:08:09 +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 |
|