diff options
Diffstat (limited to 'README.rst')
-rw-r--r-- | README.rst | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..c2c3a05 --- /dev/null +++ b/README.rst @@ -0,0 +1,22 @@ +CIBIC: C Implemented Bare and Ingenuous Compiler +================================================= + +Build Requirements +------------------ +- flex >= 2.5.37 +- bison >= 2.4.3 +- gcc >= 4.7.3 + +Features +--------- +- Complex declaration support (``int (*a)[10]``, ``int (*f)()``, ``int (*g(int ***e[10]))()``, etc.) +- Complex cast support (``(int (*)())addr``, ``(int (*)[10])addr``, etc.) +- ``typedef`` support (together with complex decl) +- Forward declaration +- Real Single Static Assignment (with dominator frontier, renaming, interval + building and register allocation algorithm) +- Safe and conservative CSE (common subexpression elimination) +- Sophisticated semantic checking +- Small memory footprint +- Sophisticated error reporting +- User-friendly AST printing |