Jonny
7953790f4d
feat: used Chains instead of Lists
2025-02-25 21:01:02 +00:00
Alex Ling
7fd92b4212
refactor: passed exit and read tests
2025-02-25 18:25:34 +00:00
Alex Ling
87a239f37c
fix: alignment issue with stack in read
2025-02-25 18:20:50 +00:00
4f3596b48a
ci: fix check commits
2025-02-25 17:35:04 +00:00
efe9f91303
refactor: use non-singleton labelgenerator (instead use class)
2025-02-25 17:10:56 +00:00
5f8b87221c
fix: escape characters within assembly
2025-02-25 17:07:21 +00:00
8558733719
style: scala format lexer
2025-02-25 16:33:17 +00:00
f628d16d3d
fix: always push a value onto stack on expr evaluation
2025-02-25 16:27:47 +00:00
Alex Ling
3f76a2c5bf
refactor: extract stack into seperate class
2025-02-25 04:44:08 +00:00
Alex Ling
8ed94e4df3
fix: initial exprs on stack
2025-02-25 03:17:05 +00:00
Guy C
58d280462e
feat: enhance asmGenerator with additional registers and improve function call generation
...
Co-authored-by: Barf-Vader <Barf-Vader@users.noreply.github.com>
Co-authored-by: Gleb Koval
2025-02-25 02:02:57 +00:00
Guy C
f30cf42c4b
style: improve code formatting and consistency in typeChecker and assemblyIR
2025-02-25 00:05:10 +00:00
Guy C
1488281223
feat: implements binary operators in asmGenerator
...
Co-authored-by: Gleb Koval <gleb@koval.net>
Co-authored-by: Barf-Vader <Barf-Vader@users.noreply.github.com>
2025-02-25 00:00:12 +00:00
Guy C
668d7338ae
feat: move default return out of functionEpilogue into main def
2025-02-24 19:47:06 +00:00
Guy C
9d78caf6d9
feat: add support for return statements in asmGenerator
2025-02-24 18:57:13 +00:00
Guy C
909114bdce
feat: implement basic while loop generation in asmGenerator
2025-02-24 04:47:21 +00:00
Guy C
2bed722a4f
style: improve code formatting and readability in asmGenerator
2025-02-24 02:04:21 +00:00
Guy C
dc61b1e390
feat: implement label generation and basic conditional branching in asmGenerator
2025-02-24 02:00:35 +00:00
c59c28ecbd
test: retrieve raw stdout in example tests, rather than lines
2025-02-22 23:38:19 +00:00
Guy C
82230a5f66
refactor: remove unused import of IntLiter in Main.scala
2025-02-22 22:53:42 +00:00
Guy C
1255a2e74c
feat: add initialization of AX register in function prologue
2025-02-22 22:53:17 +00:00
Alex Ling
24dddcadab
feat: almost complete clib calls
2025-02-22 21:38:12 +00:00
7f2870e340
feat: generate assembly from main
2025-02-21 23:35:54 +00:00
Barf-Vader
1ce36dd8da
refactor: unit tests now work with asm ir refactor
2025-02-21 23:34:37 +00:00
Ling, Alex
de181d161d
feat: merge master
...
Merge request lab2425_spring/WACC_37!25
Co-authored-by: Gleb Koval <gleb@koval.net>
2025-02-21 23:09:13 +00:00
Barf-Vader
ee4109e9cd
style: fix style
2025-02-21 23:00:59 +00:00
Barf-Vader
02e741c52e
feat: implemented println and exit
2025-02-21 22:53:20 +00:00
0391b9deba
fix: remove logging from Main
2025-02-21 18:51:50 +00:00
ab28f0950a
fix: main outputs to current dir
2025-02-21 18:46:10 +00:00
1c6ea16b6e
feat: carrot mark + writer
...
Merge request lab2425_spring/WACC_37!24
Co-authored-by: Barf-Vader <47476490+Barf-Vader@users.noreply.github.com>
2025-02-21 18:35:06 +00:00
b2da8c2408
ci: use x86 image for tests
2025-02-21 18:30:33 +00:00
42ff9c9e79
test: backend tests
2025-02-21 18:19:23 +00:00
39c695b1bb
feat: output backend files
2025-02-21 18:19:03 +00:00
87691902be
feat: set wacc target to x86-64
2025-02-21 18:18:44 +00:00
eb7387b49c
chore: update dependencies parsley-cats and os-lib
2025-02-21 18:18:35 +00:00
Barf-Vader
67f7e64b95
feat: add writer for assembly code
2025-02-20 19:47:24 +00:00
2a234f6db8
Assembly ir
...
Merge request lab2425_spring/WACC_37!23
Co-authored-by: Barf-Vader <47476490+Barf-Vader@users.noreply.github.com>
Co-authored-by: Guy C <gc1523@ic.ac.uk>
2025-02-20 19:02:47 +00:00
Barf-Vader
a8420ae45c
Merge branch 'master' into assembly-ir
2025-02-20 19:00:11 +00:00
Barf-Vader
b692982d73
refactor: gitignore .idea/
2025-02-20 18:57:41 +00:00
Guy C
006e85d0f8
style: improve formatting for Jump case class and condition toString method
2025-02-18 18:29:16 +00:00
Guy C
43682b902b
test: add unit tests for register and instruction toString methods
2025-02-18 18:27:42 +00:00
Guy C
d49c267d50
feat: extends IR for load/move instructions and generalised conditional jumps
2025-02-18 18:26:50 +00:00
bb090ad431
feat: microwacc type checker implementation
...
Merge request lab2425_spring/WACC_37!22
2025-02-18 17:29:10 +00:00
8991024d5d
feat: initial microWacc definition
...
Merge request lab2425_spring/WACC_37!21
2025-02-18 17:27:12 +00:00
Barf-Vader
2c281066a8
refactor: used varargs instead of noOperand
2025-02-17 18:07:36 +00:00
27cc25cc0d
feat: type-checker returns micro wacc
2025-02-17 15:26:32 +00:00
Barf-Vader
7525e523bb
style: reformatted to pass stylecheck
2025-02-16 18:03:39 +00:00
Barf-Vader
4e58e41a2a
refactor: abstracted operations, used trait Operand
2025-02-16 17:58:35 +00:00
b7e442b269
refactor: introduce exit-code guard against InternalError
2025-02-14 00:35:57 +00:00
756b42dd72
refactor: remove implicit ast from type checker
2025-02-14 00:35:57 +00:00