Releases: 0xpantera/halcyon
Releases · 0xpantera/halcyon
v0.4.0
What's Changed
- Refactor compiler driver pipeline by @0xpantera in #5
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
- Refactor core types by @0xpantera in #3
- Binary Operators by @0xpantera in #4
Full Changelog: v0.2.1...v0.3.0
v0.2.1
Unary operators and TACKY IR
0.2.0.0 -- 2024-11-22
Added
- Support for unary operators (negation and bitwise complement)
- New TACKY intermediate representation between AST and Assembly
- Stack frame management in generated assembly
- Function prologue and epilogue handling
- Pseudoregister allocation and replacement
- Invalid instruction detection and fixing
- New compiler passes in pipeline:
- TACKY generation
- Pseudoregister replacement
- Stack allocation
- Instruction fixing
Changed
- Compiler pipeline now includes TACKY transformation stage
- Assembly generation now works from TACKY rather than directly from AST
- Parser improved to handle nested expressions correctly
Basic Compiler
0.1.0.0 -- 2024-11-13
Added
- Initial version of the compiler
- Support for basic C programs with return statements
- Lexer using Megaparsec
- Recursive descent parser
- Defined CompilerT monad transformer
- x86_64 code generation
- Basic compiler driver with preprocessing and assembly