cardinal
|
7bcf77f1c1
|
fix(sema, ir): Potential elvate bugs
|
2026-06-13 09:10:49 +08:00 |
|
cardinal
|
2d87760c79
|
feat(backend): Add local local
|
2026-06-13 09:09:53 +08:00 |
|
cardinal
|
09a99bbc33
|
feat(lexer,sema,ir): Add compoundassign
|
2026-06-13 09:09:18 +08:00 |
|
cardinal
|
1de7e2876c
|
refactor(backend): Remove literal pool
|
2026-06-12 18:51:43 +08:00 |
|
cardinal
|
e3aa2e21c0
|
feat(ast, ir. sema): Add storage class
|
2026-06-12 18:33:54 +08:00 |
|
cardinal
|
5099bbaab7
|
refactor(lexer, ast): Rewrite decl with c standard grammar of decl
|
2026-06-12 18:32:13 +08:00 |
|
cardinal
|
6ff9c804aa
|
fix(ast): Equality prior than rational
|
2026-06-12 11:42:34 +08:00 |
|
cardinal
|
daae12d695
|
fix(ast): SelfInc use wrong way to recognize
|
2026-06-12 11:38:28 +08:00 |
|
cardinal
|
ef3dcb41aa
|
refactor(ast): Improve error type, remove unnecessary eof judge
|
2026-06-12 11:11:31 +08:00 |
|
cardinal
|
4dabf32c2a
|
refactor(ast): Split parser to multiple file
|
2026-06-12 10:26:13 +08:00 |
|
cardinal
|
58a2e69611
|
chore: Update .gitignore
|
2026-06-12 10:13:54 +08:00 |
|
cardinal
|
b6b45bd27c
|
feat(cfg): Support cfg analyse
|
2026-06-12 10:04:40 +08:00 |
|
cardinal
|
b7c2924e8b
|
feat(ir,backend,frontend): Support for and revise ir array param generate
|
2026-06-07 22:26:23 +08:00 |
|
cardinal
|
55636e07af
|
refactor(frontend): Move parser to ast folder, use TokenValue::Eof to replace None
|
2026-06-07 21:31:35 +08:00 |
|
cardinal
|
52f9b67018
|
fix(backend): Imm value exceeds range
|
2026-06-06 22:59:15 +08:00 |
|
cardinal
|
669c415bd7
|
feat(parser,ir,backend): Support array
|
2026-05-31 22:06:09 +08:00 |
|
cardinal
|
c42575c1c6
|
refactor(sema): Separated from ir
|
2026-05-31 20:59:18 +08:00 |
|
cardinal
|
1eca4a225b
|
Merge branch 'feat/func-param'
|
2026-05-19 20:10:35 +08:00 |
|
cardinal
|
3f64f1a965
|
feat(parser,ir,backend): Fully support func params and disable r0-r3 alloc temporarily
|
2026-05-19 20:10:11 +08:00 |
|
cardinal
|
a5b1cb6c9a
|
Merge branch 'feat/tool'
|
2026-05-15 11:05:40 +08:00 |
|
cardinal
|
bb717c11b7
|
feat(tool): Add tools to test asm and ir
|
2026-05-15 11:05:27 +08:00 |
|
cardinal
|
ffbf83df11
|
Merge branch 'feat/cond'
|
2026-05-15 11:04:43 +08:00 |
|
cardinal
|
ef11ae9d96
|
feat(backend): Support cmp/label/bc/br ir instr
|
2026-05-15 11:04:05 +08:00 |
|
cardinal
|
ace1170646
|
fix(ir): Adopt to toolchain version
|
2026-05-14 19:55:28 +08:00 |
|
cardinal
|
5afeeae562
|
fix(parser): Logic expression (and/or) priority
|
2026-05-14 19:55:08 +08:00 |
|
cardinal
|
9a6d11a6a8
|
chore(toolchain): Update rust compiler version
|
2026-05-14 19:54:08 +08:00 |
|
cardinal
|
7b6eede961
|
feat(ir, parser): Support if/while/break/logical expr/cmp in parser and ir generator
|
2026-05-14 15:54:31 +08:00 |
|
cardinal
|
41284dc14e
|
Merge branch 'feat/backend'
|
2026-05-13 08:52:22 +08:00 |
|
cardinal
|
fbdcc8bfcb
|
feat(main): Add asm options
|
2026-05-13 08:52:03 +08:00 |
|
cardinal
|
6b475fb577
|
feat(tools): Add test tool and std.c
|
2026-05-13 08:48:07 +08:00 |
|
cardinal
|
af72ed08c3
|
feat(backend): Add var align
|
2026-05-12 18:46:01 +08:00 |
|
cardinal
|
de712d0bc5
|
fix(backend): Registers can alloc, ret var and asm format
|
2026-05-12 14:42:20 +08:00 |
|
cardinal
|
6a45749113
|
feat(backend): Add backend
|
2026-05-12 12:29:43 +08:00 |
|
cardinal
|
065bc93bc6
|
feat(main): add args parse and exec process
|
2026-05-09 23:37:59 +08:00 |
|
cardinal
|
aeb955986e
|
Merge branch 'feat/parser'
|
2026-05-09 20:23:46 +08:00 |
|
cardinal
|
f1e0b3f279
|
feat(parser): Support func call
|
2026-05-09 20:23:25 +08:00 |
|
cardinal
|
d6a0762f0c
|
Merge branch 'feat/ir'
|
2026-05-09 20:22:33 +08:00 |
|
cardinal
|
b8d678a634
|
fix(ir): Binary syntax and func var declare
|
2026-05-09 20:21:50 +08:00 |
|
cardinal
|
04284000d6
|
chore: Add tools to test ir
|
2026-05-09 20:21:10 +08:00 |
|
cardinal
|
a2243122b0
|
feat(ir): Impl ir generate
|
2026-05-09 19:55:23 +08:00 |
|
cardinal
|
bed64b29bf
|
Merge branch 'fix/lexer'
|
2026-05-09 12:34:49 +08:00 |
|
cardinal
|
2f489a3178
|
fix(lexer): Return not recognized
|
2026-05-09 12:34:20 +08:00 |
|
cardinal
|
718dece2d9
|
Merge branch 'feat/parser'
|
2026-05-09 12:32:58 +08:00 |
|
cardinal
|
3c728fb2b8
|
feat(ast): Add graph output
|
2026-05-09 12:29:59 +08:00 |
|
cardinal
|
567057fd76
|
feat(parser): Impl parser for basic functionality
|
2026-05-09 11:20:26 +08:00 |
|
cardinal
|
3cb698cc5d
|
fix(util): x-y case not correctly handled
|
2026-05-09 11:19:50 +08:00 |
|
cardinal
|
a0855755f8
|
Merge branch 'feat/lexer'
|
2026-05-09 11:17:00 +08:00 |
|
cardinal
|
63a2990826
|
feat(lexer): Add diagnostic and impl error recovering
|
2026-05-08 22:54:46 +08:00 |
|
cardinal
|
e8b50ae0d7
|
feat(lexer): Finish lexer parse and add tests
|
2026-05-06 14:30:32 +08:00 |
|