├── Makefile ├── README.md ├── ast.cpp ├── ast.h ├── mytest ├── compile.sh ├── runtime.s ├── test1.tig ├── test2.tig ├── test3.tig ├── test4.tig ├── test5.tig ├── test6-c.c └── test6.tig ├── run.sh ├── test ├── merge.tig ├── queens.tig ├── spider.py ├── test1.tig ├── test10.tig ├── test11.tig ├── test12.tig ├── test13.tig ├── test14.tig ├── test15.tig ├── test16.tig ├── test17.tig ├── test18.tig ├── test19.tig ├── test2.tig ├── test20.tig ├── test21.tig ├── test22.tig ├── test23.tig ├── test24.tig ├── test25.tig ├── test26.tig ├── test27.tig ├── test28.tig ├── test29.tig ├── test3.tig ├── test30.tig ├── test31.tig ├── test32.tig ├── test33.tig ├── test34.tig ├── test35.tig ├── test36.tig ├── test37.tig ├── test38.tig ├── test39.tig ├── test4.tig ├── test40.tig ├── test41.tig ├── test42.tig ├── test43.tig ├── test44.tig ├── test45.tig ├── test46.tig ├── test47.tig ├── test48.tig ├── test49.tig ├── test5.tig ├── test6.tig ├── test7.tig ├── test8.tig └── test9.tig ├── tiger.lex ├── tiger.y └── tigerc.cpp /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/README.md -------------------------------------------------------------------------------- /ast.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/ast.cpp -------------------------------------------------------------------------------- /ast.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/ast.h -------------------------------------------------------------------------------- /mytest/compile.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/compile.sh -------------------------------------------------------------------------------- /mytest/runtime.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/runtime.s -------------------------------------------------------------------------------- /mytest/test1.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test1.tig -------------------------------------------------------------------------------- /mytest/test2.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test2.tig -------------------------------------------------------------------------------- /mytest/test3.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test3.tig -------------------------------------------------------------------------------- /mytest/test4.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test4.tig -------------------------------------------------------------------------------- /mytest/test5.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test5.tig -------------------------------------------------------------------------------- /mytest/test6-c.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test6-c.c -------------------------------------------------------------------------------- /mytest/test6.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/mytest/test6.tig -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/run.sh -------------------------------------------------------------------------------- /test/merge.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/merge.tig -------------------------------------------------------------------------------- /test/queens.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/queens.tig -------------------------------------------------------------------------------- /test/spider.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/spider.py -------------------------------------------------------------------------------- /test/test1.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test1.tig -------------------------------------------------------------------------------- /test/test10.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test10.tig -------------------------------------------------------------------------------- /test/test11.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test11.tig -------------------------------------------------------------------------------- /test/test12.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test12.tig -------------------------------------------------------------------------------- /test/test13.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test13.tig -------------------------------------------------------------------------------- /test/test14.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test14.tig -------------------------------------------------------------------------------- /test/test15.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test15.tig -------------------------------------------------------------------------------- /test/test16.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test16.tig -------------------------------------------------------------------------------- /test/test17.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test17.tig -------------------------------------------------------------------------------- /test/test18.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test18.tig -------------------------------------------------------------------------------- /test/test19.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test19.tig -------------------------------------------------------------------------------- /test/test2.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test2.tig -------------------------------------------------------------------------------- /test/test20.tig: -------------------------------------------------------------------------------- 1 | /* error: undeclared variable i */ 2 | 3 | while 10 > 5 do (i+1;()) 4 | -------------------------------------------------------------------------------- /test/test21.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test21.tig -------------------------------------------------------------------------------- /test/test22.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test22.tig -------------------------------------------------------------------------------- /test/test23.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test23.tig -------------------------------------------------------------------------------- /test/test24.tig: -------------------------------------------------------------------------------- 1 | /* error : variable not array */ 2 | let 3 | var d:=0 4 | in 5 | d[3] 6 | end 7 | 8 | -------------------------------------------------------------------------------- /test/test25.tig: -------------------------------------------------------------------------------- 1 | /* error : variable not record */ 2 | let 3 | var d:=0 4 | in 5 | d.f 6 | end 7 | 8 | -------------------------------------------------------------------------------- /test/test26.tig: -------------------------------------------------------------------------------- 1 | /* error : integer required */ 2 | 3 | 3 + "var" 4 | -------------------------------------------------------------------------------- /test/test27.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test27.tig -------------------------------------------------------------------------------- /test/test28.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test28.tig -------------------------------------------------------------------------------- /test/test29.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test29.tig -------------------------------------------------------------------------------- /test/test3.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test3.tig -------------------------------------------------------------------------------- /test/test30.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test30.tig -------------------------------------------------------------------------------- /test/test31.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test31.tig -------------------------------------------------------------------------------- /test/test32.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test32.tig -------------------------------------------------------------------------------- /test/test33.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test33.tig -------------------------------------------------------------------------------- /test/test34.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test34.tig -------------------------------------------------------------------------------- /test/test35.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test35.tig -------------------------------------------------------------------------------- /test/test36.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test36.tig -------------------------------------------------------------------------------- /test/test37.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test37.tig -------------------------------------------------------------------------------- /test/test38.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test38.tig -------------------------------------------------------------------------------- /test/test39.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test39.tig -------------------------------------------------------------------------------- /test/test4.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test4.tig -------------------------------------------------------------------------------- /test/test40.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test40.tig -------------------------------------------------------------------------------- /test/test41.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test41.tig -------------------------------------------------------------------------------- /test/test42.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test42.tig -------------------------------------------------------------------------------- /test/test43.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test43.tig -------------------------------------------------------------------------------- /test/test44.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test44.tig -------------------------------------------------------------------------------- /test/test45.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test45.tig -------------------------------------------------------------------------------- /test/test46.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test46.tig -------------------------------------------------------------------------------- /test/test47.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test47.tig -------------------------------------------------------------------------------- /test/test48.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test48.tig -------------------------------------------------------------------------------- /test/test49.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test49.tig -------------------------------------------------------------------------------- /test/test5.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test5.tig -------------------------------------------------------------------------------- /test/test6.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test6.tig -------------------------------------------------------------------------------- /test/test7.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test7.tig -------------------------------------------------------------------------------- /test/test8.tig: -------------------------------------------------------------------------------- 1 | /* correct if */ 2 | if (10 > 20) then 30 else 40 3 | -------------------------------------------------------------------------------- /test/test9.tig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/test/test9.tig -------------------------------------------------------------------------------- /tiger.lex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/tiger.lex -------------------------------------------------------------------------------- /tiger.y: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/tiger.y -------------------------------------------------------------------------------- /tigerc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhouye/tiger-compiler/HEAD/tigerc.cpp --------------------------------------------------------------------------------