# Compiler **Repository Path**: NewGr8Player/Compiler ## Basic Information - **Project Name**: Compiler - **Description**: An unfinished simple-C language compiler - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-10-15 - **Last Updated**: 2021-09-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Compiler [![Build Status](https://travis-ci.org/DIYgod/Compiler.svg?branch=master)](https://travis-ci.org/DIYgod/Compiler) A simple-C language compiler --- ## Introduction Compile the simple-C program into machine code. 暂将实现分为11个阶段: 词法分析 语法分析 语义动作 语义分析 栈帧布局 翻译 规范化 指令选择 控制流分析 数据流分析 寄存器分配 代码流出. 已完成:词法分析 语法分析 相关内容:[各阶段源码](http://www.anotherhome.net/file/compiler/) [各阶段说明](http://www.anotherhome.net/1751) ## Requirements + Linux OS + GCC + Flex ``` sudo apt-get install flex ``` + Bison ``` sudo apt-get install bison ``` ## References
"Modern Compiler Implementation in C"
http://www.cs.princeton.edu/~appel/modern/c
"Modern Compiler Implementation in C"
http://www.cs.princeton.edu/~appel/modern/c
"ANSI C grammar (Lex)"
http://www.quut.com/c/ANSI-C-grammar-l-1998.html
"ANSI C grammar (Yacc)"
http://www.quut.com/c/ANSI-C-grammar-y-1998.html
"Lex和Yacc应用方法"
http://www.cppblog.com/woaidongmao/archive/2008/09/20/62322.aspx
## Keywords ``` Compiler Lex Yacc LLVM ``` ## License GPLv3 [![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/DIYgod/compiler/trend.png)](https://bitdeli.com/free "Bitdeli Badge")