Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
doc
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Introduction

This is a homework project for Project Workshop of Compiler Principles, 08 ACM Honored Class at Shanghai Jiao Tong University.

进度

基本模块全部完成,期中部分和期末部分都通过全部测试数据。期末测试数据中F9_Spill2.tig编译时间过长,需55s。

实现的优化:

  • 局部公共子表达式消除
  • 局部复写传播
  • 全局死代码删除
  • 常量传播
  • 函数内联
  • 强度削弱
  • 常数折叠
  • 在IR树上对IfExp、ForExp和WhileExp的翻译进行了优化

使用

  • make.bat生成.class文件
  • 执行compiler.bat+文件名生成汇编代码,如compiler.bat test.tig
  • 注意:文件名必须以.tig结尾。

About

lqhl's Tiger compiler

Resources

Releases

No releases published
You can’t perform that action at this time.