Commit Graph
41 Commits
Author SHA1 Message Date
Guy C 9e6970de62 feat: implements overflow runtime error handling 2025-02-27 19:55:35 +00:00
Guy C ea262e9a56 feat: implements divByZero and badChr runtime errors 2025-02-27 19:35:50 +00:00
Guy C fb91dc89ee Merge branch 'branch-fix' into asm-gen 2025-02-26 07:21:26 +00:00
Guy C 07c67dbef6 feat: add zero division error handling in asmGenerator 2025-02-26 07:14:52 +00:00
Guy C fc2c58002e test: include variables tests in suite 2025-02-26 02:00:28 +00:00
Guy C f15530149e fix: fix sub instruction code gen 2025-02-26 01:43:12 +00:00
Guy C 9ca50540e6 fix: fixed implementation of if statement code gen 2025-02-26 01:10:14 +00:00
Guy C c9723f9359 feat: implements sign extension operation for division 2025-02-25 21:37:18 +00:00
Guy CBarf-VaderGleb Koval
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
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
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
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
Guy C 41ed06f91c refactor: moved frontend files into dedicated folder 2025-02-11 21:36:06 +00:00
Guy C 5fce2babc0 fix: removed expired todo in parser 2025-02-07 18:48:34 +00:00
Guy C e38932a3e8 fix: uses correct comment syntax for comments on design justifications 2025-02-07 16:36:00 +00:00
Guy C 09036040d6 refactor: further commenting to the parser 2025-02-07 16:13:50 +00:00
Guy C d0324518b6 fix: style fixes in parser 2025-02-07 15:40:14 +00:00
Guy C ade1fdaffc refactor: scaladocs-style commenting added in Error.scala 2025-02-07 15:38:19 +00:00
Guy C f9e5ae4d98 refactor: scaladocs-style commenting added in parser 2025-02-07 15:37:55 +00:00
Guy C c6b57be2c3 refactor: scaladocs-style commenting added in lexer 2025-02-07 15:37:33 +00:00
Guy C b6d8eb31e3 feat: semantic error messages make use of msg strings passed from typeChecker 2025-02-07 13:22:13 +00:00
Guy C 731692d95a refactor: bringing in ast and error changes 2025-02-07 11:59:28 +00:00
Guy C 8583a815a8 refactor: style fixes in lexer and parser 2025-02-07 11:52:31 +00:00
Guy C ee1ea6c63b refactor: created printPosition method for unified error message format 2025-02-07 11:52:31 +00:00
Guy C a2c81883f4 refactor: improvements to semantic error printing format
Co-authored by: al4423
2025-02-07 11:49:31 +00:00
Guy C 2ac7744e68 feat: implements error messages for DuplicateDeclaration and UndefinedIdentifier errors 2025-02-07 11:49:31 +00:00
Guy C ded35dcc6e feat: improved error messages for atom types 2025-02-06 15:36:24 +00:00
Guy C 057d625464 fix: style fixes 2025-02-04 17:13:56 +00:00
Guy C 4602b75628 feat: improved error messages 2025-02-04 17:03:46 +00:00
Guy C 4e50ed35ba feat: more error messages 2025-02-04 03:32:52 +00:00
Guy C 3c23654356 fix: remove redundant imports 2025-02-04 03:06:56 +00:00
Guy C 5016fefc14 feat: lexer implements ErrorConfig for improved error messages 2025-02-04 03:02:37 +00:00