├── .clang-format ├── .gitignore ├── .vscode ├── c_cpp_properties.json ├── launch.json └── settings.json ├── CMakeLists.txt ├── Documentations ├── 1-parser │ ├── Basics.md │ ├── Flex-matching.md │ ├── Flex-regular-expressions.md │ ├── Parser-FurtherReadings.md │ └── README.md ├── 2-ir-gen-warmup │ └── README.md ├── 3-ir-gen │ ├── README.md │ └── more-tips.md ├── 4.1-ssa │ ├── README.md │ └── ssa.pdf ├── 4.2-gvn │ ├── README.md │ └── gvn.pdf └── common │ ├── LightIR.md │ ├── cminusf.md │ ├── figs │ ├── cpp_class_inherits.png │ └── image-20201109145323504.png │ ├── logging.md │ └── simple_cpp.md ├── README.md ├── Reports ├── 1-parser │ ├── README.md │ ├── lexer_output │ └── parser_output ├── 2-ir-gen-warmup │ ├── README.md │ └── figs │ │ └── 3.1.png ├── 3-ir-gen │ └── README.md ├── 4.1-ssa │ └── README.md └── 4.2-gvn │ └── README.md ├── include ├── ast.hpp ├── cminusf_builder.hpp ├── lightir │ ├── BasicBlock.h │ ├── Constant.h │ ├── Function.h │ ├── GlobalVariable.h │ ├── IRBuilder.h │ ├── IRprinter.h │ ├── Instruction.h │ ├── Module.h │ ├── Type.h │ ├── User.h │ └── Value.h ├── logging.hpp ├── optimization │ ├── DeadCode.h │ ├── Dominators.h │ ├── FuncInfo.h │ ├── GVN.h │ ├── Mem2Reg.hpp │ └── PassManager.hpp └── syntax_tree.h ├── shell.nix ├── src ├── CMakeLists.txt ├── cminusfc │ ├── CMakeLists.txt │ ├── cminusf_builder.cpp │ └── cminusfc.cpp ├── common │ ├── CMakeLists.txt │ ├── ast.cpp │ ├── logging.cpp │ └── syntax_tree.c ├── io │ ├── CMakeLists.txt │ └── io.c ├── lightir │ ├── BasicBlock.cpp │ ├── CMakeLists.txt │ ├── Constant.cpp │ ├── Function.cpp │ ├── GlobalVariable.cpp │ ├── IRprinter.cpp │ ├── Instruction.cpp │ ├── Module.cpp │ ├── Type.cpp │ ├── User.cpp │ └── Value.cpp ├── optimization │ ├── CMakeLists.txt │ ├── Dominators.cpp │ ├── GVN.cpp │ └── Mem2Reg.cpp └── parser │ ├── CMakeLists.txt │ ├── lexical_analyzer.l │ └── syntax_analyzer.y └── tests ├── 2-ir-gen-warmup ├── CMakeLists.txt ├── c_cases │ ├── assign.c │ ├── fun.c │ ├── if.c │ └── while.c ├── calculator │ ├── CMakeLists.txt │ ├── calc.cpp │ ├── calc_ast.cpp │ ├── calc_ast.hpp │ ├── calc_builder.cpp │ ├── calc_builder.hpp │ ├── calculator.l │ └── calculator.y ├── stu_cpp │ ├── assign_generator.cpp │ ├── fun_generator.cpp │ ├── if_generator.cpp │ └── while_generator.cpp ├── stu_ll │ ├── assign_hand.ll │ ├── fun_hand.ll │ ├── if_hand.ll │ └── while_hand.ll └── ta_gcd │ ├── gcd_array.c │ └── gcd_array_generator.cpp ├── 3-ir-gen ├── answers │ ├── lv0_1 │ │ ├── decl_float.out │ │ ├── decl_float_array.out │ │ ├── decl_int.out │ │ ├── decl_int_array.out │ │ ├── input.in │ │ ├── input.out │ │ ├── output_float.out │ │ ├── output_int.out │ │ └── return.out │ ├── lv0_2 │ │ ├── num_add_float.out │ │ ├── num_add_int.out │ │ ├── num_add_mixed.out │ │ ├── num_comp1.out │ │ ├── num_comp2.out │ │ ├── num_div_float.out │ │ ├── num_div_int.out │ │ ├── num_div_mixed.out │ │ ├── num_eq_float.out │ │ ├── num_eq_int.out │ │ ├── num_eq_mixed.out │ │ ├── num_ge_float.out │ │ ├── num_ge_int.out │ │ ├── num_ge_mixed.out │ │ ├── num_gt_float.out │ │ ├── num_gt_int.out │ │ ├── num_gt_mixed.out │ │ ├── num_le_float.out │ │ ├── num_le_int.out │ │ ├── num_le_mixed.out │ │ ├── num_lt_float.out │ │ ├── num_lt_int.out │ │ ├── num_lt_mixed.out │ │ ├── num_mul_float.out │ │ ├── num_mul_int.out │ │ ├── num_mul_mixed.out │ │ ├── num_neq_float.out │ │ ├── num_neq_int.out │ │ ├── num_neq_mixed.out │ │ ├── num_sub_float.out │ │ ├── num_sub_int.out │ │ └── num_sub_mixed.out │ ├── lv1 │ │ ├── assign_cmp.out │ │ ├── assign_float_array_global.out │ │ ├── assign_float_array_local.out │ │ ├── assign_float_var_global.out │ │ ├── assign_float_var_local.out │ │ ├── assign_int_array_global.out │ │ ├── assign_int_array_local.out │ │ ├── assign_int_var_global.out │ │ ├── assign_int_var_local.out │ │ ├── idx_float.out │ │ ├── innout.in │ │ ├── innout.out │ │ ├── iteration1.out │ │ ├── iteration2.out │ │ ├── negidx_float.out │ │ ├── negidx_floatfuncall.out │ │ ├── negidx_int.out │ │ ├── negidx_intfuncall.out │ │ ├── negidx_voidfuncall.out │ │ ├── scope.out │ │ ├── selection1.out │ │ ├── selection2.out │ │ ├── selection3.out │ │ ├── transfer_float_to_int.out │ │ └── transfer_int_to_float.out │ ├── lv2 │ │ ├── assign_chain.out │ │ ├── funcall_array.out │ │ ├── funcall_array_array.out │ │ ├── funcall_chain.out │ │ ├── funcall_float_array.out │ │ ├── funcall_int_array.out │ │ ├── funcall_type_mismatch1.out │ │ ├── funcall_type_mismatch2.out │ │ ├── funcall_var.out │ │ ├── return_in_middle1.out │ │ ├── return_in_middle2.out │ │ ├── return_type_mismatch1.out │ │ └── return_type_mismatch2.out │ └── lv3 │ │ ├── complex1.out │ │ ├── complex2.in │ │ ├── complex2.out │ │ ├── complex3.in │ │ ├── complex3.out │ │ └── complex4.out ├── eval.py └── testcases │ ├── lv0_1 │ ├── decl_float.cminus │ ├── decl_float_array.cminus │ ├── decl_int.cminus │ ├── decl_int_array.cminus │ ├── input.cminus │ ├── output_float.cminus │ ├── output_int.cminus │ └── return.cminus │ ├── lv0_2 │ ├── num_add_float.cminus │ ├── num_add_int.cminus │ ├── num_add_mixed.cminus │ ├── num_comp1.cminus │ ├── num_comp2.cminus │ ├── num_div_float.cminus │ ├── num_div_int.cminus │ ├── num_div_mixed.cminus │ ├── num_eq_float.cminus │ ├── num_eq_int.cminus │ ├── num_eq_mixed.cminus │ ├── num_ge_float.cminus │ ├── num_ge_int.cminus │ ├── num_ge_mixed.cminus │ ├── num_gt_float.cminus │ ├── num_gt_int.cminus │ ├── num_gt_mixed.cminus │ ├── num_le_float.cminus │ ├── num_le_int.cminus │ ├── num_le_mixed.cminus │ ├── num_lt_float.cminus │ ├── num_lt_int.cminus │ ├── num_lt_mixed.cminus │ ├── num_mul_float.cminus │ ├── num_mul_int.cminus │ ├── num_mul_mixed.cminus │ ├── num_neq_float.cminus │ ├── num_neq_int.cminus │ ├── num_neq_mixed.cminus │ ├── num_sub_float.cminus │ ├── num_sub_int.cminus │ └── num_sub_mixed.cminus │ ├── lv1 │ ├── assign_cmp.cminus │ ├── assign_float_array_global.cminus │ ├── assign_float_array_local.cminus │ ├── assign_float_var_global.cminus │ ├── assign_float_var_local.cminus │ ├── assign_int_array_global.cminus │ ├── assign_int_array_local.cminus │ ├── assign_int_var_global.cminus │ ├── assign_int_var_local.cminus │ ├── idx_float.cminus │ ├── innout.cminus │ ├── iteration1.cminus │ ├── iteration2.cminus │ ├── negidx_float.cminus │ ├── negidx_floatfuncall.cminus │ ├── negidx_int.cminus │ ├── negidx_intfuncall.cminus │ ├── negidx_voidfuncall.cminus │ ├── scope.cminus │ ├── selection1.cminus │ ├── selection2.cminus │ ├── selection3.cminus │ ├── transfer_float_to_int.cminus │ └── transfer_int_to_float.cminus │ ├── lv2 │ ├── assign_chain.cminus │ ├── funcall_array_array.cminus │ ├── funcall_chain.cminus │ ├── funcall_float_array.cminus │ ├── funcall_int_array.cminus │ ├── funcall_type_mismatch1.cminus │ ├── funcall_type_mismatch2.cminus │ ├── funcall_var.cminus │ ├── return_in_middle1.cminus │ ├── return_in_middle2.cminus │ ├── return_type_mismatch1.cminus │ └── return_type_mismatch2.cminus │ └── lv3 │ ├── complex1.cminus │ ├── complex2.cminus │ ├── complex3.cminus │ └── complex4.cminus ├── 4-ir-opt ├── lab4_evals.py └── testcases │ └── GVN │ ├── functional │ ├── bin.cminus │ ├── bin.json │ ├── loop3.cminus │ ├── loop3.json │ ├── pure_func.cminus │ ├── pure_func.json │ ├── single_bb1.cminus │ └── single_bb1.json │ └── performance │ ├── baseline │ ├── const-prop.in │ ├── const-prop.ll │ ├── transpose.in │ └── transpose.ll │ ├── const-prop.cminus │ ├── const-prop.in │ ├── const-prop.out │ ├── transpose.cminus │ ├── transpose.in │ └── transpose.out ├── CMakeLists.txt ├── parser ├── .gitignore ├── CMakeLists.txt ├── cleanup.sh ├── easy │ ├── FAIL_comment.cminus │ ├── FAIL_comment2.cminus │ ├── FAIL_function.cminus │ ├── FAIL_id.cminus │ ├── expr.cminus │ └── id.cminus ├── hard │ ├── You_Should_Pass.cminus │ ├── assoc.cminus │ ├── gcd.cminus │ ├── hanoi.cminus │ ├── if.cminus │ └── selectionsort.cminus ├── lexer.c ├── normal │ ├── FAIL_assign.cminus │ ├── FAIL_local-decl.cminus │ ├── array.cminus │ ├── func.cminus │ ├── if.cminus │ ├── local-decl.cminus │ └── skip_spaces.cminus ├── parser.c ├── syntree_easy_std │ ├── FAIL_comment.syntax_tree │ ├── FAIL_comment2.syntax_tree │ ├── FAIL_function.syntax_tree │ ├── FAIL_id.syntax_tree │ ├── expr.syntax_tree │ └── id.syntax_tree ├── syntree_hard_std │ ├── You_Should_Pass.syntax_tree │ ├── assoc.syntax_tree │ ├── gcd.syntax_tree │ ├── hanoi.syntax_tree │ ├── if.syntax_tree │ └── selectionsort.syntax_tree ├── syntree_normal_std │ ├── FAIL_assign.syntax_tree │ ├── FAIL_local-decl.syntax_tree │ ├── array.syntax_tree │ ├── func.syntax_tree │ ├── if.syntax_tree │ ├── local-decl.syntax_tree │ └── skip_spaces.syntax_tree └── test_syntax.sh ├── test_ast.cpp └── test_logging.cpp /.clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/.clang-format -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build 2 | -------------------------------------------------------------------------------- /.vscode/c_cpp_properties.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/.vscode/c_cpp_properties.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /Documentations/1-parser/Basics.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/1-parser/Basics.md -------------------------------------------------------------------------------- /Documentations/1-parser/Flex-matching.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/1-parser/Flex-matching.md -------------------------------------------------------------------------------- /Documentations/1-parser/Flex-regular-expressions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/1-parser/Flex-regular-expressions.md -------------------------------------------------------------------------------- /Documentations/1-parser/Parser-FurtherReadings.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/1-parser/Parser-FurtherReadings.md -------------------------------------------------------------------------------- /Documentations/1-parser/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/1-parser/README.md -------------------------------------------------------------------------------- /Documentations/2-ir-gen-warmup/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/2-ir-gen-warmup/README.md -------------------------------------------------------------------------------- /Documentations/3-ir-gen/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/3-ir-gen/README.md -------------------------------------------------------------------------------- /Documentations/3-ir-gen/more-tips.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/3-ir-gen/more-tips.md -------------------------------------------------------------------------------- /Documentations/4.1-ssa/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/4.1-ssa/README.md -------------------------------------------------------------------------------- /Documentations/4.1-ssa/ssa.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/4.1-ssa/ssa.pdf -------------------------------------------------------------------------------- /Documentations/4.2-gvn/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/4.2-gvn/README.md -------------------------------------------------------------------------------- /Documentations/4.2-gvn/gvn.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/4.2-gvn/gvn.pdf -------------------------------------------------------------------------------- /Documentations/common/LightIR.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/common/LightIR.md -------------------------------------------------------------------------------- /Documentations/common/cminusf.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/common/cminusf.md -------------------------------------------------------------------------------- /Documentations/common/figs/cpp_class_inherits.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/common/figs/cpp_class_inherits.png -------------------------------------------------------------------------------- /Documentations/common/figs/image-20201109145323504.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/common/figs/image-20201109145323504.png -------------------------------------------------------------------------------- /Documentations/common/logging.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/common/logging.md -------------------------------------------------------------------------------- /Documentations/common/simple_cpp.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Documentations/common/simple_cpp.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/README.md -------------------------------------------------------------------------------- /Reports/1-parser/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/1-parser/README.md -------------------------------------------------------------------------------- /Reports/1-parser/lexer_output: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/1-parser/lexer_output -------------------------------------------------------------------------------- /Reports/1-parser/parser_output: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/1-parser/parser_output -------------------------------------------------------------------------------- /Reports/2-ir-gen-warmup/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/2-ir-gen-warmup/README.md -------------------------------------------------------------------------------- /Reports/2-ir-gen-warmup/figs/3.1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/2-ir-gen-warmup/figs/3.1.png -------------------------------------------------------------------------------- /Reports/3-ir-gen/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/3-ir-gen/README.md -------------------------------------------------------------------------------- /Reports/4.1-ssa/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/4.1-ssa/README.md -------------------------------------------------------------------------------- /Reports/4.2-gvn/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/Reports/4.2-gvn/README.md -------------------------------------------------------------------------------- /include/ast.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/ast.hpp -------------------------------------------------------------------------------- /include/cminusf_builder.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/cminusf_builder.hpp -------------------------------------------------------------------------------- /include/lightir/BasicBlock.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/BasicBlock.h -------------------------------------------------------------------------------- /include/lightir/Constant.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/Constant.h -------------------------------------------------------------------------------- /include/lightir/Function.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/Function.h -------------------------------------------------------------------------------- /include/lightir/GlobalVariable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/GlobalVariable.h -------------------------------------------------------------------------------- /include/lightir/IRBuilder.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/IRBuilder.h -------------------------------------------------------------------------------- /include/lightir/IRprinter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/IRprinter.h -------------------------------------------------------------------------------- /include/lightir/Instruction.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/Instruction.h -------------------------------------------------------------------------------- /include/lightir/Module.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/Module.h -------------------------------------------------------------------------------- /include/lightir/Type.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/Type.h -------------------------------------------------------------------------------- /include/lightir/User.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/User.h -------------------------------------------------------------------------------- /include/lightir/Value.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/lightir/Value.h -------------------------------------------------------------------------------- /include/logging.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/logging.hpp -------------------------------------------------------------------------------- /include/optimization/DeadCode.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/optimization/DeadCode.h -------------------------------------------------------------------------------- /include/optimization/Dominators.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/optimization/Dominators.h -------------------------------------------------------------------------------- /include/optimization/FuncInfo.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/optimization/FuncInfo.h -------------------------------------------------------------------------------- /include/optimization/GVN.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/optimization/GVN.h -------------------------------------------------------------------------------- /include/optimization/Mem2Reg.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/optimization/Mem2Reg.hpp -------------------------------------------------------------------------------- /include/optimization/PassManager.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/optimization/PassManager.hpp -------------------------------------------------------------------------------- /include/syntax_tree.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/include/syntax_tree.h -------------------------------------------------------------------------------- /shell.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/shell.nix -------------------------------------------------------------------------------- /src/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/CMakeLists.txt -------------------------------------------------------------------------------- /src/cminusfc/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/cminusfc/CMakeLists.txt -------------------------------------------------------------------------------- /src/cminusfc/cminusf_builder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/cminusfc/cminusf_builder.cpp -------------------------------------------------------------------------------- /src/cminusfc/cminusfc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/cminusfc/cminusfc.cpp -------------------------------------------------------------------------------- /src/common/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/common/CMakeLists.txt -------------------------------------------------------------------------------- /src/common/ast.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/common/ast.cpp -------------------------------------------------------------------------------- /src/common/logging.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/common/logging.cpp -------------------------------------------------------------------------------- /src/common/syntax_tree.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/common/syntax_tree.c -------------------------------------------------------------------------------- /src/io/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/io/CMakeLists.txt -------------------------------------------------------------------------------- /src/io/io.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/io/io.c -------------------------------------------------------------------------------- /src/lightir/BasicBlock.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/BasicBlock.cpp -------------------------------------------------------------------------------- /src/lightir/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/CMakeLists.txt -------------------------------------------------------------------------------- /src/lightir/Constant.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/Constant.cpp -------------------------------------------------------------------------------- /src/lightir/Function.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/Function.cpp -------------------------------------------------------------------------------- /src/lightir/GlobalVariable.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/GlobalVariable.cpp -------------------------------------------------------------------------------- /src/lightir/IRprinter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/IRprinter.cpp -------------------------------------------------------------------------------- /src/lightir/Instruction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/Instruction.cpp -------------------------------------------------------------------------------- /src/lightir/Module.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/Module.cpp -------------------------------------------------------------------------------- /src/lightir/Type.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/Type.cpp -------------------------------------------------------------------------------- /src/lightir/User.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/User.cpp -------------------------------------------------------------------------------- /src/lightir/Value.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/lightir/Value.cpp -------------------------------------------------------------------------------- /src/optimization/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/optimization/CMakeLists.txt -------------------------------------------------------------------------------- /src/optimization/Dominators.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/optimization/Dominators.cpp -------------------------------------------------------------------------------- /src/optimization/GVN.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/optimization/GVN.cpp -------------------------------------------------------------------------------- /src/optimization/Mem2Reg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/optimization/Mem2Reg.cpp -------------------------------------------------------------------------------- /src/parser/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/parser/CMakeLists.txt -------------------------------------------------------------------------------- /src/parser/lexical_analyzer.l: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/parser/lexical_analyzer.l -------------------------------------------------------------------------------- /src/parser/syntax_analyzer.y: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/src/parser/syntax_analyzer.y -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/CMakeLists.txt -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/c_cases/assign.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/c_cases/assign.c -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/c_cases/fun.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/c_cases/fun.c -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/c_cases/if.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/c_cases/if.c -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/c_cases/while.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/c_cases/while.c -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/CMakeLists.txt -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calc.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calc_ast.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calc_ast.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calc_ast.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calc_ast.hpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calc_builder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calc_builder.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calc_builder.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calc_builder.hpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calculator.l: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calculator.l -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/calculator/calculator.y: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/calculator/calculator.y -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_cpp/assign_generator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_cpp/assign_generator.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_cpp/fun_generator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_cpp/fun_generator.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_cpp/if_generator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_cpp/if_generator.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_cpp/while_generator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_cpp/while_generator.cpp -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_ll/assign_hand.ll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_ll/assign_hand.ll -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_ll/fun_hand.ll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_ll/fun_hand.ll -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_ll/if_hand.ll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_ll/if_hand.ll -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/stu_ll/while_hand.ll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/stu_ll/while_hand.ll -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/ta_gcd/gcd_array.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/ta_gcd/gcd_array.c -------------------------------------------------------------------------------- /tests/2-ir-gen-warmup/ta_gcd/gcd_array_generator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/2-ir-gen-warmup/ta_gcd/gcd_array_generator.cpp -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/decl_float.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/decl_float_array.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/decl_int.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/decl_int_array.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/input.in: -------------------------------------------------------------------------------- 1 | 4 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/input.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/output_float.out: -------------------------------------------------------------------------------- 1 | 123.400002 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/output_int.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_1/return.out: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_add_float.out: -------------------------------------------------------------------------------- 1 | 123 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_add_int.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_add_mixed.out: -------------------------------------------------------------------------------- 1 | 1023 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_comp1.out: -------------------------------------------------------------------------------- 1 | -44.720001 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_comp2.out: -------------------------------------------------------------------------------- 1 | 1 2 | 1 3 | 0 4 | 0 5 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_div_float.out: -------------------------------------------------------------------------------- 1 | 12 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_div_int.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_div_mixed.out: -------------------------------------------------------------------------------- 1 | 12 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_eq_float.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_eq_int.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_eq_mixed.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_ge_float.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_ge_int.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_ge_mixed.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_gt_float.out: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_gt_int.out: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_gt_mixed.out: -------------------------------------------------------------------------------- 1 | 0 2 | 0 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_le_float.out: -------------------------------------------------------------------------------- 1 | 1 2 | 1 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_le_int.out: -------------------------------------------------------------------------------- 1 | 1 2 | 1 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_le_mixed.out: -------------------------------------------------------------------------------- 1 | 1 2 | 1 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_lt_float.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_lt_int.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_lt_mixed.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_mul_float.out: -------------------------------------------------------------------------------- 1 | 123 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_mul_int.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_mul_mixed.out: -------------------------------------------------------------------------------- 1 | 123 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_neq_float.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_neq_int.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_neq_mixed.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 1 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_sub_float.out: -------------------------------------------------------------------------------- 1 | 192 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_sub_int.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv0_2/num_sub_mixed.out: -------------------------------------------------------------------------------- 1 | 1923 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_cmp.out: -------------------------------------------------------------------------------- 1 | 1 2 | 0 3 | 0 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_float_array_global.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv1/assign_float_array_global.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_float_array_local.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv1/assign_float_array_local.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_float_var_global.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv1/assign_float_var_global.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_float_var_local.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv1/assign_float_var_local.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_int_array_global.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_int_array_local.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_int_var_global.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/assign_int_var_local.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/idx_float.out: -------------------------------------------------------------------------------- 1 | 1024 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/innout.in: -------------------------------------------------------------------------------- 1 | 9 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/innout.out: -------------------------------------------------------------------------------- 1 | 9 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/iteration1.out: -------------------------------------------------------------------------------- 1 | 10 2 | 9 3 | 8 4 | 7 5 | 6 6 | 5 7 | 4 8 | 3 9 | 2 10 | 1 11 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/iteration2.out: -------------------------------------------------------------------------------- 1 | 10 2 | 9 3 | 8 4 | 7 5 | 6 6 | 5 7 | 4 8 | 3 9 | 2 10 | 1 11 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/negidx_float.out: -------------------------------------------------------------------------------- 1 | negative index exception 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/negidx_floatfuncall.out: -------------------------------------------------------------------------------- 1 | negative index exception 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/negidx_int.out: -------------------------------------------------------------------------------- 1 | negative index exception 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/negidx_intfuncall.out: -------------------------------------------------------------------------------- 1 | negative index exception 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/negidx_voidfuncall.out: -------------------------------------------------------------------------------- 1 | negative index exception 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/scope.out: -------------------------------------------------------------------------------- 1 | 3 2 | 11 3 | 3 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/selection1.out: -------------------------------------------------------------------------------- 1 | 42 2 | 24 3 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/selection2.out: -------------------------------------------------------------------------------- 1 | 42 2 | 24 3 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/selection3.out: -------------------------------------------------------------------------------- 1 | 42 2 | 24 3 | 1234 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/transfer_float_to_int.out: -------------------------------------------------------------------------------- 1 | 1 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv1/transfer_int_to_float.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv1/transfer_int_to_float.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/assign_chain.out: -------------------------------------------------------------------------------- 1 | 3 2 | 3 3 | 3 4 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_array.out: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_array_array.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv2/funcall_array_array.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_chain.out: -------------------------------------------------------------------------------- 1 | 1234 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_float_array.out: -------------------------------------------------------------------------------- 1 | 3 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_int_array.out: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_type_mismatch1.out: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_type_mismatch2.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv2/funcall_type_mismatch2.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/funcall_var.out: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/return_in_middle1.out: -------------------------------------------------------------------------------- 1 | 0 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/return_in_middle2.out: -------------------------------------------------------------------------------- 1 | 0 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/return_type_mismatch1.out: -------------------------------------------------------------------------------- 1 | 233 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv2/return_type_mismatch2.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv2/return_type_mismatch2.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv3/complex1.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv3/complex1.out -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv3/complex2.in: -------------------------------------------------------------------------------- 1 | 9 2 | 8 3 | 7 4 | 6 5 | 5 6 | 4 7 | 3 8 | 2 9 | 1 10 | 0 11 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv3/complex2.out: -------------------------------------------------------------------------------- 1 | 0 2 | 1 3 | 2 4 | 3 5 | 4 6 | 5 7 | 6 8 | 7 9 | 8 10 | 9 11 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv3/complex3.in: -------------------------------------------------------------------------------- 1 | 78 2 | 117 3 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv3/complex3.out: -------------------------------------------------------------------------------- 1 | 39 2 | -------------------------------------------------------------------------------- /tests/3-ir-gen/answers/lv3/complex4.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/answers/lv3/complex4.out -------------------------------------------------------------------------------- /tests/3-ir-gen/eval.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/eval.py -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/decl_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/decl_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/decl_float_array.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/decl_float_array.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/decl_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/decl_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/decl_int_array.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/decl_int_array.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/input.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/input.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/output_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/output_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/output_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/output_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_1/return.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_1/return.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_add_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_add_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_add_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_add_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_add_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_add_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_comp1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_comp1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_comp2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_comp2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_div_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_div_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_div_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_div_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_div_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_div_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_eq_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_eq_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_eq_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_eq_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_eq_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_eq_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_ge_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_ge_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_ge_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_ge_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_ge_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_ge_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_gt_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_gt_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_gt_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_gt_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_gt_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_gt_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_le_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_le_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_le_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_le_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_le_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_le_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_lt_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_lt_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_lt_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_lt_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_lt_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_lt_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_mul_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_mul_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_mul_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_mul_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_mul_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_mul_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_neq_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_neq_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_neq_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_neq_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_neq_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_neq_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_sub_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_sub_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_sub_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_sub_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv0_2/num_sub_mixed.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv0_2/num_sub_mixed.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_cmp.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_cmp.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_float_array_global.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_float_array_global.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_float_array_local.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_float_array_local.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_float_var_global.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_float_var_global.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_float_var_local.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_float_var_local.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_int_array_global.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_int_array_global.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_int_array_local.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_int_array_local.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_int_var_global.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_int_var_global.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/assign_int_var_local.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/assign_int_var_local.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/idx_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/idx_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/innout.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/innout.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/iteration1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/iteration1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/iteration2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/iteration2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/negidx_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/negidx_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/negidx_floatfuncall.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/negidx_floatfuncall.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/negidx_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/negidx_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/negidx_intfuncall.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/negidx_intfuncall.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/negidx_voidfuncall.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/negidx_voidfuncall.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/scope.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/scope.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/selection1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/selection1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/selection2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/selection2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/selection3.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/selection3.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/transfer_float_to_int.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/transfer_float_to_int.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv1/transfer_int_to_float.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv1/transfer_int_to_float.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/assign_chain.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/assign_chain.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_array_array.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_array_array.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_chain.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_chain.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_float_array.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_float_array.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_int_array.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_int_array.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_type_mismatch1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_type_mismatch1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_type_mismatch2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_type_mismatch2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/funcall_var.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/funcall_var.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/return_in_middle1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/return_in_middle1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/return_in_middle2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/return_in_middle2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/return_type_mismatch1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/return_type_mismatch1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv2/return_type_mismatch2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv2/return_type_mismatch2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv3/complex1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv3/complex1.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv3/complex2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv3/complex2.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv3/complex3.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv3/complex3.cminus -------------------------------------------------------------------------------- /tests/3-ir-gen/testcases/lv3/complex4.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/3-ir-gen/testcases/lv3/complex4.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/lab4_evals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/lab4_evals.py -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/bin.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/bin.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/bin.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/bin.json -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/loop3.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/loop3.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/loop3.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/loop3.json -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/pure_func.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/pure_func.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/pure_func.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/pure_func.json -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/single_bb1.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/single_bb1.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/functional/single_bb1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/functional/single_bb1.json -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/baseline/const-prop.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/baseline/const-prop.in -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/baseline/const-prop.ll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/baseline/const-prop.ll -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/baseline/transpose.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/baseline/transpose.in -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/baseline/transpose.ll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/baseline/transpose.ll -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/const-prop.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/const-prop.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/const-prop.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/const-prop.in -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/const-prop.out: -------------------------------------------------------------------------------- 1 | 711082625 2 | -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/transpose.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/transpose.cminus -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/transpose.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/4-ir-opt/testcases/GVN/performance/transpose.in -------------------------------------------------------------------------------- /tests/4-ir-opt/testcases/GVN/performance/transpose.out: -------------------------------------------------------------------------------- 1 | 1042523985 2 | -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/parser/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/.gitignore -------------------------------------------------------------------------------- /tests/parser/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/CMakeLists.txt -------------------------------------------------------------------------------- /tests/parser/cleanup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/cleanup.sh -------------------------------------------------------------------------------- /tests/parser/easy/FAIL_comment.cminus: -------------------------------------------------------------------------------- 1 | /* unclosed comment -------------------------------------------------------------------------------- /tests/parser/easy/FAIL_comment2.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/easy/FAIL_comment2.cminus -------------------------------------------------------------------------------- /tests/parser/easy/FAIL_function.cminus: -------------------------------------------------------------------------------- 1 | /* unclosed function */ 2 | int main(void) 3 | { -------------------------------------------------------------------------------- /tests/parser/easy/FAIL_id.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/easy/FAIL_id.cminus -------------------------------------------------------------------------------- /tests/parser/easy/expr.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/easy/expr.cminus -------------------------------------------------------------------------------- /tests/parser/easy/id.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/easy/id.cminus -------------------------------------------------------------------------------- /tests/parser/hard/You_Should_Pass.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/hard/You_Should_Pass.cminus -------------------------------------------------------------------------------- /tests/parser/hard/assoc.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/hard/assoc.cminus -------------------------------------------------------------------------------- /tests/parser/hard/gcd.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/hard/gcd.cminus -------------------------------------------------------------------------------- /tests/parser/hard/hanoi.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/hard/hanoi.cminus -------------------------------------------------------------------------------- /tests/parser/hard/if.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/hard/if.cminus -------------------------------------------------------------------------------- /tests/parser/hard/selectionsort.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/hard/selectionsort.cminus -------------------------------------------------------------------------------- /tests/parser/lexer.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/lexer.c -------------------------------------------------------------------------------- /tests/parser/normal/FAIL_assign.cminus: -------------------------------------------------------------------------------- 1 | int main(void) 2 | { 3 | a=1; 4 | 1=a; 5 | } 6 | -------------------------------------------------------------------------------- /tests/parser/normal/FAIL_local-decl.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/normal/FAIL_local-decl.cminus -------------------------------------------------------------------------------- /tests/parser/normal/array.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/normal/array.cminus -------------------------------------------------------------------------------- /tests/parser/normal/func.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/normal/func.cminus -------------------------------------------------------------------------------- /tests/parser/normal/if.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/normal/if.cminus -------------------------------------------------------------------------------- /tests/parser/normal/local-decl.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/normal/local-decl.cminus -------------------------------------------------------------------------------- /tests/parser/normal/skip_spaces.cminus: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/normal/skip_spaces.cminus -------------------------------------------------------------------------------- /tests/parser/parser.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/parser.c -------------------------------------------------------------------------------- /tests/parser/syntree_easy_std/FAIL_comment.syntax_tree: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/parser/syntree_easy_std/FAIL_comment2.syntax_tree: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/parser/syntree_easy_std/FAIL_function.syntax_tree: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/parser/syntree_easy_std/FAIL_id.syntax_tree: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/parser/syntree_easy_std/expr.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_easy_std/expr.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_easy_std/id.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_easy_std/id.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_hard_std/You_Should_Pass.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_hard_std/You_Should_Pass.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_hard_std/assoc.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_hard_std/assoc.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_hard_std/gcd.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_hard_std/gcd.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_hard_std/hanoi.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_hard_std/hanoi.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_hard_std/if.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_hard_std/if.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_hard_std/selectionsort.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_hard_std/selectionsort.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/FAIL_assign.syntax_tree: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/FAIL_local-decl.syntax_tree: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/array.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_normal_std/array.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/func.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_normal_std/func.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/if.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_normal_std/if.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/local-decl.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_normal_std/local-decl.syntax_tree -------------------------------------------------------------------------------- /tests/parser/syntree_normal_std/skip_spaces.syntax_tree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/syntree_normal_std/skip_spaces.syntax_tree -------------------------------------------------------------------------------- /tests/parser/test_syntax.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/parser/test_syntax.sh -------------------------------------------------------------------------------- /tests/test_ast.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/test_ast.cpp -------------------------------------------------------------------------------- /tests/test_logging.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hyjwpk/USTC_2022_Principles-and-Techniques-of-Compiler/HEAD/tests/test_logging.cpp --------------------------------------------------------------------------------