OCaml implementation of the CiviC compiler for Compiler Construction course at UvA

Taddeus Kroes 73c9cb3c80 NodeError no longer fails with empty location 12 년 전
bin32 ee11dce399 Started on implementing CiviC compiler 12 년 전
doc 3d3c4d5421 Added empty assmebly phase 12 년 전
phases 93fade30ba Assembly optimizations are now only executed when -noopt is not specified 12 년 전
test 2398b7395b Fixed iinc_1/idec_1 replacement 12 년 전
.gitignore 2126ae7cee Removed preprocessor from parser, improved some error messages, moved some functions to common files 12 년 전
Makefile 30406fed9e Added a rudimentary peephole optimizer 12 년 전
OCamlMakefile ee11dce399 Started on implementing CiviC compiler 12 년 전
README.md 73c9cb3c80 NodeError no longer fails with empty location 12 년 전
lexer.mll 543db4149b Fixed position tracking when C preprocessor is enabled 12 년 전
main.ml 30406fed9e Added a rudimentary peephole optimizer 12 년 전
parser.mly 21fc065c8f Changed constant node types, added VarDecs|LocalFuns wrappers, implemented first steps of assembler 12 년 전
run 45ddddee63 Added run script for quick testing 12 년 전
stringify.ml 4225c53427 Finished first version of assembly phase 12 년 전
stringify.mli 21fc065c8f Changed constant node types, added VarDecs|LocalFuns wrappers, implemented first steps of assembler 12 년 전
types.ml 2398b7395b Fixed iinc_1/idec_1 replacement 12 년 전
util.ml 73c9cb3c80 NodeError no longer fails with empty location 12 년 전
util.mli 93fade30ba Assembly optimizations are now only executed when -noopt is not specified 12 년 전

README.md

CiviCaml

CiviCaml is a compiler for the CiviC language, written in OCaml.

Issues & TODO

  • Keep file content in buffer to prevent error messages from crashing when reading from stdin.
  • "depth analysis" -> "index analysis"