Skip to content

Releases: 0xpantera/halcyon

v0.2.1

25 Nov 11:29
498833c
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.2.0...v0.2.1

Unary operators and TACKY IR

22 Nov 10:05
Compare
Choose a tag to compare

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

13 Nov 19:32
Compare
Choose a tag to compare

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