diff --git a/08-code-generator/Makefile b/08-code-generator/Makefile index 0ba6866..3cfae8c 100644 --- a/08-code-generator/Makefile +++ b/08-code-generator/Makefile @@ -1,9 +1,9 @@ a.out: yacc lex - gcc -g y.tab.c lex.yy.c func.c sem_func.c gen_func.c main.c -w + gcc -g y.tab.c lex.yy.c func.c sem_func.c gen_func.c main.c -w -o code_generator yacc: yacc.y yacc -d yacc.y lex: lex.l lex lex.l make clean: - rm a.out \ No newline at end of file + rm code_generator \ No newline at end of file diff --git a/08-code-generator/mk_test b/08-code-generator/mk_test new file mode 100755 index 0000000..f962a65 Binary files /dev/null and b/08-code-generator/mk_test differ diff --git a/08-code-generator/mk_test.c b/08-code-generator/mk_test.c new file mode 100644 index 0000000..1b77339 --- /dev/null +++ b/08-code-generator/mk_test.c @@ -0,0 +1,26 @@ +#include +#include + +int main(void){ + for (int i=1; i<=13; i++){ + char asm_cmd[128]; + char asm_fname[128]; + char interp_fname[128]; + if (i < 10) { + sprintf(asm_cmd, "./code_generator ./test-src/test0%d.c", i); + sprintf(asm_fname, "test-asm/test0%d.asm", i); + sprintf(interp_fname, "test-interp/interp-res0%d", i); + } else { + sprintf(asm_cmd, "./code_generator ./test-src/test%d.c", i); + sprintf(asm_fname, "test-asm/test%d.asm", i); + sprintf(interp_fname, "test-interp/interp-res%d", i); + } + system(asm_cmd); + rename("./a.asm", asm_fname); + + char interp_cmd[512]; + sprintf(interp_cmd, "./interp %s > %s", asm_fname, interp_fname); + system(interp_cmd); + } + exit(0); +} \ No newline at end of file diff --git a/08-code-generator/test-asm/test01.asm b/08-code-generator/test-asm/test01.asm new file mode 100644 index 0000000..f717d57 --- /dev/null +++ b/08-code-generator/test-asm/test01.asm @@ -0,0 +1,12 @@ + INT 0, 16 + SUP 0, main + RET 0, 0 +main: + INT 0, 20 + LDA 1, 16 + LOD 0, 12 + LOD 1, 12 + ADDI 0, 0 + STX 0, 0 + POP 0, 1 + RET 0, 0 diff --git a/08-code-generator/test-asm/test02.asm b/08-code-generator/test-asm/test02.asm new file mode 100644 index 0000000..95b006c --- /dev/null +++ b/08-code-generator/test-asm/test02.asm @@ -0,0 +1,14 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +main: + INT 0, 16 + LDA 1, 12 + LITI 0, 10 + LITI 0, 20 + LITI 0, 3 + MULI 0, 0 + ADDI 0, 0 + STX 0, 0 + POP 0, 1 + RET 0, 0 diff --git a/08-code-generator/test-asm/test03.asm b/08-code-generator/test-asm/test03.asm new file mode 100644 index 0000000..e9a57a4 --- /dev/null +++ b/08-code-generator/test-asm/test03.asm @@ -0,0 +1,26 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +main: + INT 0, 16 +L2: + LOD 1, 12 + LITI 0, 5 + LSSI 0, 0 + JPC 0, L3 + LOD 1, 12 + LITI 0, 3 + EQLI 0, 0 + JPC 0, L4 + JMP 0, L3 +L4: + LOD 1, 12 + LDA 1, 12 + LDX 0, 0 + INCI 0, 0 + STO 0, 0 + POP 0, 1 +L1: + JMP 0, L2 +L3: + RET 0, 0 diff --git a/08-code-generator/test-asm/test04.asm b/08-code-generator/test-asm/test04.asm new file mode 100644 index 0000000..f02003e --- /dev/null +++ b/08-code-generator/test-asm/test04.asm @@ -0,0 +1,24 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +add: + INT 0, 20 + LDA 1, -4 + LOD 1, 12 + LOD 1, 16 + ADDI 0, 0 + STO 0, 0 + RET 0, 0 + RET 0, 0 +main: + INT 0, 16 + LDA 1, 12 + INT 0, 16 + LITI 0, 10 + LITI 0, 20 + POP 0, 5 + ADDR 0, add + CAL 0, 0 + STX 0, 0 + POP 0, 1 + RET 0, 0 diff --git a/08-code-generator/test-asm/test05.asm b/08-code-generator/test-asm/test05.asm new file mode 100644 index 0000000..4e0f876 --- /dev/null +++ b/08-code-generator/test-asm/test05.asm @@ -0,0 +1,30 @@ + INT 0, 32 + SUP 0, main + RET 0, 0 +main: + INT 0, 16 + LDA 0, 12 + LITI 0, 2 + LITI 0, 4 + MULI 0, 0 + OFFSET 0, 0 + LITI 0, 10 + STX 0, 0 + POP 0, 1 + LDA 1, 12 + LDA 0, 12 + LITI 0, 1 + LITI 0, 4 + MULI 0, 0 + OFFSET 0, 0 + STX 0, 0 + POP 0, 1 + LOD 1, 12 + LITI 0, 1 + LITI 0, 4 + MULI 0, 0 + ADDI 0, 0 + LITI 0, 20 + STX 0, 0 + POP 0, 1 + RET 0, 0 diff --git a/08-code-generator/test-asm/test06.asm b/08-code-generator/test-asm/test06.asm new file mode 100644 index 0000000..90a29c5 --- /dev/null +++ b/08-code-generator/test-asm/test06.asm @@ -0,0 +1,22 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +set: + INT 0, 16 + LOD 1, 12 + LITI 0, 1 + LITI 0, 4 + MULI 0, 0 + OFFSET 0, 0 + LITI 0, 99 + STX 0, 0 + POP 0, 1 + RET 0, 0 +main: + INT 0, 24 + INT 0, 12 + LDA 1, 12 + POP 0, 4 + ADDR 0, set + CAL 0, 0 + RET 0, 0 diff --git a/08-code-generator/test-asm/test07.asm b/08-code-generator/test-asm/test07.asm new file mode 100644 index 0000000..58a62bd --- /dev/null +++ b/08-code-generator/test-asm/test07.asm @@ -0,0 +1,24 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +main: + INT 0, 20 + LOD 1, 12 + LITI 0, 5 + GTRI 0, 0 + JPCR 0, L1 + LOD 1, 16 + LDA 1, 16 + LDX 0, 0 + INCI 0, 0 + STO 0, 0 + LITI 0, 5 + GTRI 0, 0 +L1: + JPC 0, L2 + LDA 1, 12 + LITI 0, 1 + STX 0, 0 + POP 0, 1 +L2: + RET 0, 0 diff --git a/08-code-generator/test-asm/test08.asm b/08-code-generator/test-asm/test08.asm new file mode 100644 index 0000000..5105f29 --- /dev/null +++ b/08-code-generator/test-asm/test08.asm @@ -0,0 +1,38 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +fact: + INT 0, 16 + LOD 1, 12 + LITI 0, 1 + EQLI 0, 0 + JPC 0, L1 + LDA 1, -4 + LITI 0, 1 + STO 0, 0 + RET 0, 0 +L1: + LDA 1, -4 + LOD 1, 12 + INT 0, 16 + LOD 1, 12 + LITI 0, 1 + SUBI 0, 0 + POP 0, 4 + ADDR 0, fact + CAL 0, 0 + MULI 0, 0 + STO 0, 0 + RET 0, 0 + RET 0, 0 +main: + INT 0, 16 + LDA 1, 12 + INT 0, 16 + LITI 0, 5 + POP 0, 4 + ADDR 0, fact + CAL 0, 0 + STX 0, 0 + POP 0, 1 + RET 0, 0 diff --git a/08-code-generator/test-asm/test09.asm b/08-code-generator/test-asm/test09.asm new file mode 100644 index 0000000..5858426 --- /dev/null +++ b/08-code-generator/test-asm/test09.asm @@ -0,0 +1,21 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +main: + INT 0, 20 + LDA 1, 16 + LOD 1, 12 + LDA 1, 12 + LDX 0, 0 + INCI 0, 0 + STO 0, 0 + STX 0, 0 + POP 0, 1 + LDA 1, 16 + LDA 1, 12 + LDX 0, 0 + INCI 0, 0 + STX 0, 0 + STX 0, 0 + POP 0, 1 + RET 0, 0 diff --git a/08-code-generator/test-asm/test10.asm b/08-code-generator/test-asm/test10.asm new file mode 100644 index 0000000..d8771e3 --- /dev/null +++ b/08-code-generator/test-asm/test10.asm @@ -0,0 +1,22 @@ + INT 0, 16 + SUP 0, main + RET 0, 0 +main: + INT 0, 20 + LDA 1, 16 + LOD 1, 12 + CVTF 0, 0 + LOD 0, 12 + ADDF 0, 0 + STX 0, 0 + POP 0, 1 + LDA 1, 12 + LOD 1, 16 + LITI 0, 10 + CVTF 0, 0 + ADDF 0, 0 + CVTI 0, 0 + STX 0, 0 + POP 0, 1 + RET 0, 0 +.literal 12 3.140000 diff --git a/08-code-generator/test-asm/test11.asm b/08-code-generator/test-asm/test11.asm new file mode 100644 index 0000000..ba93374 --- /dev/null +++ b/08-code-generator/test-asm/test11.asm @@ -0,0 +1,30 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +main: + INT 0, 20 + LDA 1, 12 + LITI 0, 1 + STX 0, 0 + POP 0, 1 +L2: + LOD 1, 12 + LITI 0, 3 + LEQI 0, 0 + JPC 0, L3 + LDA 1, 16 + LOD 1, 16 + LOD 1, 12 + ADDI 0, 0 + STX 0, 0 + POP 0, 1 +L1: + LOD 1, 12 + LDA 1, 12 + LDX 0, 0 + INCI 0, 0 + STO 0, 0 + POP 0, 1 + JMP 0, L2 +L3: + RET 0, 0 diff --git a/08-code-generator/test-asm/test12.asm b/08-code-generator/test-asm/test12.asm new file mode 100644 index 0000000..91356f6 --- /dev/null +++ b/08-code-generator/test-asm/test12.asm @@ -0,0 +1,25 @@ + INT 0, 12 + SUP 0, main + RET 0, 0 +main: + INT 0, 16 +L3: + LOD 1, 12 + LDA 1, 12 + LDX 0, 0 + INCI 0, 0 + STO 0, 0 + POP 0, 1 + LOD 1, 12 + LITI 0, 2 + EQLI 0, 0 + JPC 0, L4 + JMP 0, L2 +L4: +L2: + LOD 1, 12 + LITI 0, 5 + LSSI 0, 0 + JPT 0, L3 +L1: + RET 0, 0 diff --git a/08-code-generator/test-asm/test13.asm b/08-code-generator/test-asm/test13.asm new file mode 100644 index 0000000..19b3a6f --- /dev/null +++ b/08-code-generator/test-asm/test13.asm @@ -0,0 +1,11 @@ + INT 0, 20 + SUP 0, main + RET 0, 0 +main: + INT 0, 16 + LDA 1, 12 + LDA 0, 12 + STX 0, 0 + POP 0, 1 + RET 0, 0 +.literal 12 "Hello" diff --git a/08-code-generator/test-interp/interp-res01 b/08-code-generator/test-interp/interp-res01 new file mode 100644 index 0000000..3912144 --- /dev/null +++ b/08-code-generator/test-interp/interp-res01 @@ -0,0 +1,19 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 +======== code ========== + 0: INT 0,16 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,20 + 4: LDA 1,16 + 5: LOD 0,12 + 6: LOD 1,12 + 7: ADDI 0,0 + 8: STX 0,0 + 9: POP 0,1 + 10: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res02 b/08-code-generator/test-interp/interp-res02 new file mode 100644 index 0000000..077e8b2 --- /dev/null +++ b/08-code-generator/test-interp/interp-res02 @@ -0,0 +1,21 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 +======== code ========== + 0: INT 0,12 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,16 + 4: LDA 1,12 + 5: LITI 0,10 + 6: LITI 0,20 + 7: LITI 0,3 + 8: MULI 0,0 + 9: ADDI 0,0 + 10: STX 0,0 + 11: POP 0,1 + 12: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res03 b/08-code-generator/test-interp/interp-res03 new file mode 100644 index 0000000..40343e9 --- /dev/null +++ b/08-code-generator/test-interp/interp-res03 @@ -0,0 +1,33 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 + 5: L2 4 + 6: L3 20 + 7: L4 13 + 8: L1 19 +======== code ========== + 0: INT 0,12 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,16 + 4: LOD 1,12 + 5: LITI 0,5 + 6: LSSI 0,0 + 7: JPC 0,20 + 8: LOD 1,12 + 9: LITI 0,3 + 10: EQLI 0,0 + 11: JPC 0,13 + 12: JMP 0,20 + 13: LOD 1,12 + 14: LDA 1,12 + 15: LDX 0,0 + 16: INCI 0,0 + 17: STO 0,0 + 18: POP 0,1 + 19: JMP 0,4 + 20: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res04 b/08-code-generator/test-interp/interp-res04 new file mode 100644 index 0000000..037489a --- /dev/null +++ b/08-code-generator/test-interp/interp-res04 @@ -0,0 +1,31 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 11 + 5: add 3 +======== code ========== + 0: INT 0,12 + 1: SUP 0,11 + 2: RET 0,0 + 3: INT 0,20 + 4: LDA 1,-4 + 5: LOD 1,12 + 6: LOD 1,16 + 7: ADDI 0,0 + 8: STO 0,0 + 9: RET 0,0 + 10: RET 0,0 + 11: INT 0,16 + 12: LDA 1,12 + 13: INT 0,16 + 14: LITI 0,10 + 15: LITI 0,20 + 16: POP 0,5 + 17: ADDR 0,3 + 18: CAL 0,0 + 19: STX 0,0 + 20: POP 0,1 + 21: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res05 b/08-code-generator/test-interp/interp-res05 new file mode 100644 index 0000000..2888431 --- /dev/null +++ b/08-code-generator/test-interp/interp-res05 @@ -0,0 +1,37 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 +======== code ========== + 0: INT 0,32 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,16 + 4: LDA 0,12 + 5: LITI 0,2 + 6: LITI 0,4 + 7: MULI 0,0 + 8: OFFSET 0,0 + 9: LITI 0,10 + 10: STX 0,0 + 11: POP 0,1 + 12: LDA 1,12 + 13: LDA 0,12 + 14: LITI 0,1 + 15: LITI 0,4 + 16: MULI 0,0 + 17: OFFSET 0,0 + 18: STX 0,0 + 19: POP 0,1 + 20: LOD 1,12 + 21: LITI 0,1 + 22: LITI 0,4 + 23: MULI 0,0 + 24: ADDI 0,0 + 25: LITI 0,20 + 26: STX 0,0 + 27: POP 0,1 + 28: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res06 b/08-code-generator/test-interp/interp-res06 new file mode 100644 index 0000000..fe4d10c --- /dev/null +++ b/08-code-generator/test-interp/interp-res06 @@ -0,0 +1,29 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 13 + 5: set 3 +======== code ========== + 0: INT 0,12 + 1: SUP 0,13 + 2: RET 0,0 + 3: INT 0,16 + 4: LOD 1,12 + 5: LITI 0,1 + 6: LITI 0,4 + 7: MULI 0,0 + 8: OFFSET 0,0 + 9: LITI 0,99 + 10: STX 0,0 + 11: POP 0,1 + 12: RET 0,0 + 13: INT 0,24 + 14: INT 0,12 + 15: LDA 1,12 + 16: POP 0,4 + 17: ADDR 0,3 + 18: CAL 0,0 + 19: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res07 b/08-code-generator/test-interp/interp-res07 new file mode 100644 index 0000000..e021636 --- /dev/null +++ b/08-code-generator/test-interp/interp-res07 @@ -0,0 +1,31 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 + 5: L1 15 + 6: L2 20 +======== code ========== + 0: INT 0,12 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,20 + 4: LOD 1,12 + 5: LITI 0,5 + 6: GTRI 0,0 + 7: JPCR 0,15 + 8: LOD 1,16 + 9: LDA 1,16 + 10: LDX 0,0 + 11: INCI 0,0 + 12: STO 0,0 + 13: LITI 0,5 + 14: GTRI 0,0 + 15: JPC 0,20 + 16: LDA 1,12 + 17: LITI 0,1 + 18: STX 0,0 + 19: POP 0,1 + 20: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res08 b/08-code-generator/test-interp/interp-res08 new file mode 100644 index 0000000..82ce992 --- /dev/null +++ b/08-code-generator/test-interp/interp-res08 @@ -0,0 +1,45 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 25 + 5: fact 3 + 6: L1 12 +======== code ========== + 0: INT 0,12 + 1: SUP 0,25 + 2: RET 0,0 + 3: INT 0,16 + 4: LOD 1,12 + 5: LITI 0,1 + 6: EQLI 0,0 + 7: JPC 0,12 + 8: LDA 1,-4 + 9: LITI 0,1 + 10: STO 0,0 + 11: RET 0,0 + 12: LDA 1,-4 + 13: LOD 1,12 + 14: INT 0,16 + 15: LOD 1,12 + 16: LITI 0,1 + 17: SUBI 0,0 + 18: POP 0,4 + 19: ADDR 0,3 + 20: CAL 0,0 + 21: MULI 0,0 + 22: STO 0,0 + 23: RET 0,0 + 24: RET 0,0 + 25: INT 0,16 + 26: LDA 1,12 + 27: INT 0,16 + 28: LITI 0,5 + 29: POP 0,4 + 30: ADDR 0,3 + 31: CAL 0,0 + 32: STX 0,0 + 33: POP 0,1 + 34: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res09 b/08-code-generator/test-interp/interp-res09 new file mode 100644 index 0000000..bde7fea --- /dev/null +++ b/08-code-generator/test-interp/interp-res09 @@ -0,0 +1,28 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 +======== code ========== + 0: INT 0,12 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,20 + 4: LDA 1,16 + 5: LOD 1,12 + 6: LDA 1,12 + 7: LDX 0,0 + 8: INCI 0,0 + 9: STO 0,0 + 10: STX 0,0 + 11: POP 0,1 + 12: LDA 1,16 + 13: LDA 1,12 + 14: LDX 0,0 + 15: INCI 0,0 + 16: STX 0,0 + 17: STX 0,0 + 18: POP 0,1 + 19: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res10 b/08-code-generator/test-interp/interp-res10 new file mode 100644 index 0000000..2d54b32 --- /dev/null +++ b/08-code-generator/test-interp/interp-res10 @@ -0,0 +1,28 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 +======== code ========== + 0: INT 0,16 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,20 + 4: LDA 1,16 + 5: LOD 1,12 + 6: CVTF 0,0 + 7: LOD 0,12 + 8: ADDF 0,0 + 9: STX 0,0 + 10: POP 0,1 + 11: LDA 1,12 + 12: LOD 1,16 + 13: LITI 0,10 + 14: CVTF 0,0 + 15: ADDF 0,0 + 16: CVTI 0,0 + 17: STX 0,0 + 18: POP 0,1 + 19: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res11 b/08-code-generator/test-interp/interp-res11 new file mode 100644 index 0000000..f46b438 --- /dev/null +++ b/08-code-generator/test-interp/interp-res11 @@ -0,0 +1,37 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 + 5: L2 8 + 6: L3 25 + 7: L1 18 +======== code ========== + 0: INT 0,12 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,20 + 4: LDA 1,12 + 5: LITI 0,1 + 6: STX 0,0 + 7: POP 0,1 + 8: LOD 1,12 + 9: LITI 0,3 + 10: LEQI 0,0 + 11: JPC 0,25 + 12: LDA 1,16 + 13: LOD 1,16 + 14: LOD 1,12 + 15: ADDI 0,0 + 16: STX 0,0 + 17: POP 0,1 + 18: LOD 1,12 + 19: LDA 1,12 + 20: LDX 0,0 + 21: INCI 0,0 + 22: STO 0,0 + 23: POP 0,1 + 24: JMP 0,8 + 25: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res12 b/08-code-generator/test-interp/interp-res12 new file mode 100644 index 0000000..27522e9 --- /dev/null +++ b/08-code-generator/test-interp/interp-res12 @@ -0,0 +1,32 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 + 5: L3 4 + 6: L4 15 + 7: L2 15 + 8: L1 19 +======== code ========== + 0: INT 0,12 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,16 + 4: LOD 1,12 + 5: LDA 1,12 + 6: LDX 0,0 + 7: INCI 0,0 + 8: STO 0,0 + 9: POP 0,1 + 10: LOD 1,12 + 11: LITI 0,2 + 12: EQLI 0,0 + 13: JPC 0,15 + 14: JMP 0,15 + 15: LOD 1,12 + 16: LITI 0,5 + 17: LSSI 0,0 + 18: JPT 0,4 + 19: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test-interp/interp-res13 b/08-code-generator/test-interp/interp-res13 new file mode 100644 index 0000000..6dd2fbe --- /dev/null +++ b/08-code-generator/test-interp/interp-res13 @@ -0,0 +1,17 @@ +======== symbol ========= + 1: printf -1 + 2: malloc -2 + 3: scanf -3 + 4: main 3 +======== code ========== + 0: INT 0,20 + 1: SUP 0,3 + 2: RET 0,0 + 3: INT 0,16 + 4: LDA 1,12 + 5: LDA 0,12 + 6: STX 0,0 + 7: POP 0,1 + 8: RET 0,0 +start execution +end execution diff --git a/08-code-generator/test/test01.c b/08-code-generator/test-src/test01.c similarity index 100% rename from 08-code-generator/test/test01.c rename to 08-code-generator/test-src/test01.c diff --git a/08-code-generator/test/test02.c b/08-code-generator/test-src/test02.c similarity index 100% rename from 08-code-generator/test/test02.c rename to 08-code-generator/test-src/test02.c diff --git a/08-code-generator/test/test03.c b/08-code-generator/test-src/test03.c similarity index 100% rename from 08-code-generator/test/test03.c rename to 08-code-generator/test-src/test03.c diff --git a/08-code-generator/test/test04.c b/08-code-generator/test-src/test04.c similarity index 100% rename from 08-code-generator/test/test04.c rename to 08-code-generator/test-src/test04.c diff --git a/08-code-generator/test/test05.c b/08-code-generator/test-src/test05.c similarity index 100% rename from 08-code-generator/test/test05.c rename to 08-code-generator/test-src/test05.c diff --git a/08-code-generator/test/test06.c b/08-code-generator/test-src/test06.c similarity index 100% rename from 08-code-generator/test/test06.c rename to 08-code-generator/test-src/test06.c diff --git a/08-code-generator/test/test07.c b/08-code-generator/test-src/test07.c similarity index 100% rename from 08-code-generator/test/test07.c rename to 08-code-generator/test-src/test07.c diff --git a/08-code-generator/test/test08.c b/08-code-generator/test-src/test08.c similarity index 100% rename from 08-code-generator/test/test08.c rename to 08-code-generator/test-src/test08.c diff --git a/08-code-generator/test/test09.c b/08-code-generator/test-src/test09.c similarity index 100% rename from 08-code-generator/test/test09.c rename to 08-code-generator/test-src/test09.c diff --git a/08-code-generator/test/test10.c b/08-code-generator/test-src/test10.c similarity index 100% rename from 08-code-generator/test/test10.c rename to 08-code-generator/test-src/test10.c diff --git a/08-code-generator/test/test11.c b/08-code-generator/test-src/test11.c similarity index 100% rename from 08-code-generator/test/test11.c rename to 08-code-generator/test-src/test11.c diff --git a/08-code-generator/test/test12.c b/08-code-generator/test-src/test12.c similarity index 100% rename from 08-code-generator/test/test12.c rename to 08-code-generator/test-src/test12.c diff --git a/08-code-generator/test/test13.c b/08-code-generator/test-src/test13.c similarity index 100% rename from 08-code-generator/test/test13.c rename to 08-code-generator/test-src/test13.c