Commit Graph

276 Commits

Author SHA1 Message Date
Guy C
54d6e7143b fix: add 'is' keyword to WACC syntax highlighting 2025-03-03 12:38:25 +00:00
Guy C
c2259334c1 feat: setup for intelliwacc ide with syntax highlights 2025-03-03 12:26:53 +00:00
f896cbb0dd fix: add opSize back in to stack
Merge request lab2425_spring/WACC_37!38
2025-03-02 14:10:18 +00:00
1b6d81dfca style: scala format 2025-03-01 02:15:01 +00:00
ae52fa653c fix: add opSize back in to stack 2025-03-01 02:07:45 +00:00
3b723392a7 fix: do not overwrite RDI in free WACC_Back-End 2025-02-28 18:47:36 +00:00
9a0d3e38a4 refactor: merge MemLocation with IndexedAddress
Merge request lab2425_spring/WACC_37!37
2025-02-28 18:44:48 +00:00
37812fb5a7 fix: copy whole register on assignment 2025-02-28 18:41:31 +00:00
578a28a222 Revert "fix: zero-out D32 as well"
This reverts commit 0eaf2186b6.
2025-02-28 18:28:50 +00:00
0eaf2186b6 fix: zero-out D32 as well 2025-02-28 17:51:06 +00:00
5ae65d3190 fix: sanity check 2025-02-28 17:22:49 +00:00
68903f5b69 refactor: use explicit sizes in asmGenerator 2025-02-28 17:21:45 +00:00
e1d90eabf9 fix: use MemLocation.copy for zeroRest 2025-02-28 16:40:58 +00:00
1a39950a7b refactor: merge MemLocation with IndexedAddress 2025-02-28 16:26:40 +00:00
61643a49eb refactor: merge comments and extracting constants & renaming refactors
Merge request lab2425_spring/WACC_37!36

Co-authored-by: Jonny <j.sinteix@gmail.com>
Co-authored-by: Guy C <gc1523@ic.ac.uk>
2025-02-28 15:32:46 +00:00
82997a5a38 docs: clarify evalExprOntoStack sanity check, explanation comments for generateCall 2025-02-28 15:29:41 +00:00
720d9320e2 Merge branch 'master' into comments-and-refactors 2025-02-28 15:14:47 +00:00
c3f2ce8b19 refactor: single definition for common registers 2025-02-28 14:47:47 +00:00
Teixeira, Jonny
cf72c5250d refactor: merge labelGenerator refactors
Merge request lab2425_spring/WACC_37!35

Co-authored-by: Gleb Koval <gleb@koval.net>
2025-02-28 14:28:32 +00:00
7627ec14d2 refactor: return args and defs from labelGenerator, instead of strings 2025-02-28 14:23:09 +00:00
Jonny
d0a71c1888 docs: add doc for concatall chain extension 2025-02-28 14:07:50 +00:00
fb5799dbfd refactor: use LabelGenerator for RuntimeErrors 2025-02-28 14:07:00 +00:00
Jonny
621849dfa4 refactor: rename local builder chain to asm 2025-02-28 13:55:02 +00:00
967a6fe58b refactor: replace strings ListBuffer with labelGenerator 2025-02-28 13:14:29 +00:00
Guy C
302099ab76 refactor: removes magic numbers in asmgenerator 2025-02-28 12:23:09 +00:00
Guy C
30f4309fda feat: use errorcode constant in runtime errors 2025-02-28 12:14:55 +00:00
Guy C
b733d233b0 feat: implements outofmemoryerror handling 2025-02-28 12:01:31 +00:00
Guy C
f2a1eaf24c refactor: reorganize operation classes 2025-02-28 11:38:34 +00:00
8b3e9b8380 fix: ensure all advanced wacc-examples function correctly
Merge request lab2425_spring/WACC_37!33
2025-02-28 00:31:25 +00:00
41f76e50e0 fix: evaluate all function call arguments before setting registers 2025-02-28 00:27:26 +00:00
Teixeira, Jonny
88f89ce761 feat: implement all runtime errors
Merge request lab2425_spring/WACC_37!32

Co-authored-by: Guy C <gc1523@ic.ac.uk>
Co-authored-by: Jonny <j.sinteix@gmail.com>
Co-authored-by: Connolly, Guy <guy.connolly23@imperial.ac.uk>
Co-authored-by: Gleb Koval <gleb@koval.net>
2025-02-28 00:23:12 +00:00
Guy C
cdf32d93c3 feat: outofboundserror message includes given bad value 2025-02-28 00:17:30 +00:00
Jonny
edcac2782b fix: implements null pointer checks 2025-02-27 23:57:42 +00:00
Jonny
1b2df507ba fix: array bounds checks in place 2025-02-27 23:46:51 +00:00
Jonny
3a2af6f95d feat: implements outofbounds error. array negative bounds check added 2025-02-27 23:02:10 +00:00
Jonny
4727d6c399 fix: remove incorrect newline 2025-02-27 22:32:11 +00:00
Connolly, Guy
9639221a0a feat: merge labts fixes 2025-02-27 22:20:52 +00:00
Jonny
617f6759d3 fix: underflow detected 2025-02-27 21:53:48 +00:00
Jonny
6f5fcd4d85 refactor: redesigned runtime errors with added functionality 2025-02-27 21:48:28 +00:00
c31dd9de25 style: scala format 2025-02-27 20:00:07 +00:00
edce236158 fix: read space-delimited tokens (as per spec) 2025-02-27 19:58:57 +00:00
Guy C
9e6970de62 feat: implements overflow runtime error handling 2025-02-27 19:55:35 +00:00
cb4f899b8c test: provide stdin as space-delimited tokens 2025-02-27 19:50:46 +00:00
a20f28977b fix: handle runtime_error during testing 2025-02-27 19:47:33 +00:00
9a1728fb3f fix: exit from Main with exit code rather than voiding 2025-02-27 19:39:48 +00:00
Guy C
ea262e9a56 feat: implements divByZero and badChr runtime errors 2025-02-27 19:35:50 +00:00
Jonny
332c00b15b feat: added runtime errors class and object 2025-02-27 19:13:17 +00:00
9b9f0a80cb feat: x86 code generation implementation without runtime checking
Merge request lab2425_spring/WACC_37!29

Co-authored-by: Alex Ling <al4423@ic.ac.uk>
Co-authored-by: Jonny <j.sinteix@gmail.com>
Co-authored-by: Guy C <gc1523@ic.ac.uk>
Co-authored-by: Barf-Vader <47476490+Barf-Vader@users.noreply.github.com>
Co-authored-by: Ling, Alex <alex.ling23@imperial.ac.uk>
2025-02-27 18:54:54 +00:00
ada53e518b fix: variable-sized values, heap-allocated arrays (and printCharArray)
Merge request lab2425_spring/WACC_37!28

Co-authored-by: Alex Ling <al4423@ic.ac.uk>
2025-02-27 18:50:11 +00:00
c0f2473db1 test: fix input handling for IOLoop example 2025-02-27 18:25:12 +00:00