Commit Graph

22 Commits

Author SHA1 Message Date
CHatingPython 8909a0cfff refactor(furc): bring back ADCE to post process
Refs: #12
2026-06-23 15:21:12 +02:00
CHatingPython dad2c180d6 refactor(furc): bring back SCCP to post process
Refs: #12
2026-06-23 15:15:01 +02:00
CHatingPython 4478a839b7 refactor(furc): improve the SSA optimization class
Improve and rename the SSA optimization class to post process.

Refs: #12
2026-06-23 14:54:28 +02:00
CHatingPython 190aa8f985 refactor(furc): move arena allocator out of the parser
Refs: #12
2026-06-20 11:56:15 +02:00
CHatingPython 767970c69b feat(furc): introduce while loop statement
Refs: #2
2026-06-12 23:10:26 +02:00
CHatingPython b4fda8d7d0 feat(furc): start working on ssa optimizations
Compute dominance frontiers.

Refs: #2
2026-06-12 12:21:52 +02:00
CHatingPython af982c11ed refactor(parser): change node handles to node results
Refs: #1
2026-06-03 11:57:09 +02:00
CHatingPython af10dfcd40 refactor(parser): organize the includes 2026-06-01 21:28:00 +02:00
CHatingPython 62619cd0bc refactor(IR)!: change IR block structure
It now requires an exit instruction.
2026-06-01 18:27:36 +02:00
CHatingPython 7caaaac4a0 feat(furc): add compound statement
This one: { [statement]... }
2026-06-01 17:23:00 +02:00
CHatingPython 55f4435670 fix(furc): bring back the LIBFURC guard to main.cpp 2026-05-31 20:12:23 +02:00
CHatingPython 91ef7f01a4 Add if statement
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:53 +02:00
CHatingPython 646d185d40 Implement basic IR generator
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:53 +02:00
CHatingPython 737f637a38 Add comparison operators
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:51 +02:00
CHatingPython 8d162f926a Add var read expression
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:51 +02:00
CHatingPython b8b13d1635 Add paren expression
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:51 +02:00
CHatingPython f178b09f89 Add unary expression parsing
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:51 +02:00
CHatingPython f130553e20 Parse binop expressions
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:50 +02:00
CHatingPython 7017d83204 Add default constructor to handle
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:50 +02:00
CHatingPython 438288f8f1 Add gtest
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:49 +02:00
CHatingPython 7df35fc075 Basic parser
Signed-off-by: CHatingPython <chatingpython@gmail.com>
2026-05-31 19:16:49 +02:00
CHatingPython 28f6deaba5 Basic lexer 2026-05-24 14:57:57 +02:00