aboutsummaryrefslogtreecommitdiff
path: root/src/cljcc/compiler.clj
AgeCommit message (Collapse)Author
2024-12-14Add code emission for long typeShagun Agrawal
Finish chapter 11 Fix several bugs caused due to refactoring Add code emission for longs
2024-12-12Assembly codeden for long typeShagun Agrawal
Used clojure core match Added assembly phase
2024-12-01Validate typechecker output with MalliShagun Agrawal
2024-11-10Add assembly emission for storage specifiersShagun Agrawal
Pass chapter 10, finish book part 1 Fixed bug by threading symbol map through all statements Fixed emitting tacky instructions for variables which are supposed to be initialized in static section
2024-11-09Add codegen for storage class specifiersShagun Agrawal
Switch map/filter to eager versions
2024-10-30Fix stack allocation bugShagun Agrawal
Error in rounding stack allocator to nearest 16 divisible value Pass all tests in chapter 9 Used as reference https://github.com/nlsandler/nqcc2
2024-10-30Add emission for functionsShagun Agrawal
Able to execute "hello, world" program. Some segmentation faults in specific test steps. Executables not exiting on their own.
2024-10-28Add assembly instruction step for functionsShagun Agrawal
2024-08-30Add compound statementsShagun Agrawal
Adding compound statements Variable values changed based on scope
2024-08-20Add relational and logical operators assembly and emissionShagun Agrawal
Finish chapter 4 and extra bitwise tests
2024-08-19Lexer and parser changes for ch4Shagun Agrawal
Add logical and relational operators
2024-08-18Add bitwise operatorsShagun Agrawal
Pass chapter 3 bitwise operators
2024-08-16Switch to hand made parser, refactor asts to adjust changeShagun Agrawal
Switch to hand made recursive descent parser. Remove instaparse from dependencies.
2024-08-10Add code emission for chapter 3Shagun Agrawal
Fix small bug in driver, it emitted the file in assembly step Add new instructions for code emission
2024-08-08Add code emission, pass chapter 2 testsShagun Agrawal
Add generic code emitters Fix some minor bugs
2024-08-04Cleanup for assembly generationShagun Agrawal
2024-08-04Add assembly generation for unary operatorsShagun Agrawal
Adding assembly generation New opcodes, operands
2024-08-03Add tacky IR stageShagun Agrawal
Add Tacky IR stage General formatting etc
2024-07-30Fix linux specific compilation bugShagun Agrawal
Add the line which specifies linux does not need executable stack at the end.
2024-07-24Add initial compiler implementationShagun Agrawal