|
|
e1971b469e
|
Track token source position
|
2026-03-08 18:16:06 +01:00 |
|
|
|
aab7e42260
|
Move register allocation into the allocation pass
|
2026-03-07 22:50:13 +01:00 |
|
|
|
8678a09694
|
Allow peeking and reading tokens
|
2026-03-04 18:02:12 +01:00 |
|
|
|
9cf052dfeb
|
Pass lexer state explicitly
|
2026-03-01 23:14:24 +01:00 |
|
|
|
63ecc4e71b
|
Do not generate pseudo variables for literals and local variables
|
2026-02-26 21:24:19 +01:00 |
|
|
|
68a305b00b
|
Rewrite RTL with the new singly linked list
|
2026-02-25 23:15:35 +01:00 |
|
|
|
c3d4449fc7
|
Extend ElnaErrorList to a generic ElnaList
|
2026-02-23 23:51:20 +01:00 |
|
|
|
b987dd741a
|
Use operand record in TAC expression visitor
|
2026-02-22 00:11:41 +01:00 |
|
|
|
8142680fb7
|
Allow compound types on the stack
|
2026-02-17 19:59:15 +01:00 |
|
|
|
512a57ccca
|
Add statement section description
|
2026-02-15 19:29:10 +01:00 |
|
|
|
80364d429e
|
Remove the old version code
|
2026-02-15 13:17:33 +01:00 |
|
|
|
fe055aa1ae
|
Document expressions
|
2026-02-14 21:25:33 +01:00 |
|
|
|
d7c27f1c63
|
Split documentation chapters into files
|
2026-02-12 23:44:22 +01:00 |
|
|
|
b37eb0690c
|
Remove the old, not self-hosted frontend
|
2026-02-12 14:50:09 +01:00 |
|
|
|
2061fece3d
|
Migrate documentation to LaTeX
|
2026-02-10 00:13:05 +01:00 |
|
|
|
e9bcd234e5
|
Save TAC pseudo registers in the symbol table
|
2026-02-04 23:13:15 +01:00 |
|
|
|
8e89d33c21
|
Split up the rakefile
|
2026-02-04 18:17:47 +01:00 |
|
|
|
39197fe88a
|
Remove GCC glue code
|
2026-02-01 19:01:06 +01:00 |
|
|
|
a00f0d57b8
|
Lower global static array and record access
|
2026-01-30 23:21:19 +01:00 |
|
|
|
08b5325f58
|
Generate pseudo variables where possible
|
2026-01-28 20:51:04 +01:00 |
|
|
|
f0f0f431ba
|
Parse more than 7 procedure arguments
|
2026-01-22 16:05:34 +01:00 |
|
|
|
ec83bbcc1e
|
Use static arrays as instruction operands
|
2026-01-19 12:45:52 +01:00 |
|
|
|
cfef0550ca
|
Implement array access expressions
|
2026-01-14 19:48:28 +01:00 |
|
|
|
30e18517ab
|
Fix static arrays in type expressions
|
2026-01-10 12:11:38 +01:00 |
|
|
|
396c329b63
|
Calculate record field sizes
|
2026-01-07 17:07:20 +01:00 |
|
|
|
e4257b08be
|
Allow enumeration field types
|
2026-01-05 18:24:03 +01:00 |
|
|
|
955161b36e
|
Use ninja for build
|
2026-01-04 21:04:43 +01:00 |
|
|
|
f86d06236c
|
Remove support for hardware registers in TAC
|
2026-01-04 13:04:22 +01:00 |
|
|
|
58e708f44c
|
Implement type size trait
|
2026-01-01 21:52:14 +01:00 |
|
|
|
3db3a0f20e
|
Make designator independent of hardware registers
|
2025-12-29 00:33:32 +01:00 |
|
|
|
b4eabfae4e
|
Use pseudo register in binary expressions
|
2025-12-22 20:38:26 +01:00 |
|
|
|
3a8bf8ae88
|
Preserve passed procedure parameters
|
2025-12-17 12:00:25 +01:00 |
|
|
|
1cf71f1a5f
|
Move procedure call register allocation to RTL
|
2025-12-12 18:32:01 +01:00 |
|
|
|
305032b534
|
Assign stack offset to local variables in a later pass
|
2025-12-09 18:49:11 +01:00 |
|
|
|
cc8f815337
|
Describe the type system
|
2025-12-04 18:57:51 +01:00 |
|
|
|
8eb87757a0
|
Remove modula-2 definitions
|
2025-12-03 09:36:26 +01:00 |
|
|
|
1c2a8e6da8
|
Add boolean literals and type
|
2025-12-02 22:28:40 +01:00 |
|
|
|
23b6f074c7
|
Merge GCC frontend into the branch
|
2025-12-02 17:14:18 +01:00 |
|
|
|
5f7d839741
|
Replace getters and setters with field access
|
2025-11-30 19:41:16 +01:00 |
|
|
|
eb691db24a
|
Allow parsing multiple designator expressions in a row
|
2025-11-28 12:42:51 +01:00 |
|
|
|
f35bdd07c2
|
Annotate record field access expressions
|
2025-11-25 17:49:55 +01:00 |
|
|
|
b5b129a90c
|
Build documentation
|
2025-11-25 16:20:48 +01:00 |
|
|
|
c20d9b7240
|
Set expression type for enumeration values
|
2025-11-25 08:03:05 +01:00 |
|
|
|
c3eff02f8d
|
Visit expressions in the type checker
|
2025-11-22 23:27:00 +01:00 |
|
|
|
52b9152158
|
Support nil literals
|
2025-11-20 15:43:08 +01:00 |
|
|
|
fd9e8a36b5
|
Add jump_if_not_zero and bnez instructions
|
2025-11-19 13:05:51 +01:00 |
|
|
|
76f55d0796
|
Rename RTL instructions to Risc-V versions
|
2025-11-18 20:10:34 +01:00 |
|
|
|
8da9241233
|
Use custom 3-address code operands
|
2025-11-16 09:26:13 +01:00 |
|
|
|
cc3acdfd12
|
Handle immediate values in RTL
|
2025-11-13 20:40:17 +01:00 |
|
|
|
c24373927c
|
Add assembly generation stage
|
2025-11-12 20:07:24 +01:00 |
|