|
|
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 |
|
|
|
c472c7a62c
|
fix: reserve return pointer and RBP on stack for user func bodies
|
2025-02-27 18:15:48 +00:00 |
|
|
|
507cb7dd9b
|
fix: zero-out sub-32 bit expressions
|
2025-02-27 18:15:48 +00:00 |
|
|
|
887b982331
|
fix: variable-sized values, heap-allocated arrays (and printCharArray)
|
2025-02-27 18:15:48 +00:00 |
|
|
|
58df1d7bb9
|
refactor: extract Stack, proper register naming and sizes
|
2025-02-27 18:15:48 +00:00 |
|
Alex Ling
|
808a59f58a
|
feat: almost implemented arrays
|
2025-02-27 18:15:48 +00:00 |
|
Jonny
|
bdee6ba756
|
feat: zero registers via xor
|
2025-02-27 15:48:48 +00:00 |
|
|
|
09df7af2ab
|
fix: reset scope after all branching
|
2025-02-26 20:25:27 +00:00 |
|
|
|
2cf18a47a8
|
fix: only push one item to stack on comparisons
|
2025-02-26 20:00:50 +00:00 |
|
Jonny
|
631f9ddca5
|
feat: (maybe) tail call optimisation
|
2025-02-26 19:49:10 +00:00 |
|
|
|
4fb399a5e1
|
feat: generate microWacc for printing booleans
|
2025-02-26 19:14:12 +00:00 |
|
|
|
16de964f74
|
refactor: do not append epilogue to user functions since they all return anyway
|
2025-02-26 18:45:03 +00:00 |
|
|
|
c748a34e4c
|
feat: user functions and calls
|
2025-02-26 18:31:15 +00:00 |
|
|
|
85190ce174
|
refactor: make microWacc.ArrayElem recursive rather than flat
|
2025-02-26 18:08:30 +00:00 |
|
Alex Ling
|
62df2c2244
|
fix: added dword in sizedir
|
2025-02-26 16:58:01 +00:00 |
|
Guy C
|
fb91dc89ee
|
Merge branch 'branch-fix' into asm-gen
|
2025-02-26 07:21:26 +00:00 |
|