From 1412250b368f123211ca21996924bf7e9b1dbbf0 Mon Sep 17 00:00:00 2001 From: Persson-dev Date: Sun, 22 Dec 2024 18:18:41 +0100 Subject: [PATCH] tests --- test/testUAL.asm | 68 ++++++++++++++++++++++++++++++++++++++ test/testsAutres.asm | 79 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 test/testUAL.asm create mode 100644 test/testsAutres.asm diff --git a/test/testUAL.asm b/test/testUAL.asm new file mode 100644 index 0000000..11862e2 --- /dev/null +++ b/test/testUAL.asm @@ -0,0 +1,68 @@ + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 + XOR R4 R4 R4 + XOR R5 R5 R5 + XOR R6 R6 R6 + XOR R7 R7 R7 +ADD: + ADD R0 R0 #1 + ADD R1 R1 R0 + XOR R0 R0 R0 + XOR R1 R1 R1 +SUB: + ADD R0 R0 #1 + ADD R1 R1 #1 + ADD R2 R2 #2 + SUB R0 R0 #1 + SUB R3 R2 R1 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 +AND: + ADD R0 R0 #5 + ADD R1 R1 #3 + AND R2 R0 #1 + AND R3 R1 R0 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 +OR: + ADD R0 R0 #5 + ADD R1 R1 #2 + OR R2 R0 #1 + OR R3 R1 R0 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 +SL: + ADD R0 R0 #5 + ADD R1 R1 #2 + SL R2 R0 #1 + SL R3 R0 R1 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 +SR: + ADD R0 R0 #20 + ADD R1 R1 #2 + SR R2 R0 #1 + SR R3 R0 R1 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 +MUL: + ADD R0 R0 #20 + ADD R1 R1 #2 + MUL R2 R0 #2 + MUL R3 R0 R1 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 diff --git a/test/testsAutres.asm b/test/testsAutres.asm new file mode 100644 index 0000000..aa09351 --- /dev/null +++ b/test/testsAutres.asm @@ -0,0 +1,79 @@ +debut: + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 + XOR R4 R4 R4 + XOR R5 R5 R5 + XOR R6 R6 R6 + XOR R7 R7 R7 +jump: + JMP jump_equ + ADD R7 R7 #1 +jump_equ: + ADD R0 R0 #1 + ADD R1 R1 #1 + JEQU R0 R1 jump_equ2 + ADD R7 R7 #2 +jump_equ2: + ADD R0 R0 #1 + ADD R6 R6 #1 + JEQU R0 R1 jump_neq + SUB R6 R6 #1 +jump_neq: + JNEQ R0 R1 jump_neq2 + ADD R7 R7 #4 +jump_neq2: + ADD R2 R2 #1 + ADD R6 R6 #2 + JNEQ R1 R2 jump_sup + SUB R6 R6 #2 +jump_sup: + JSUP R1 R0 jump_sup2 + ADD R7 R7 #8 +jump_sup2: + ADD R6 R6 #4 + JSUP R0 R1 jump_inf + SUB R6 R6 #4 +jump_inf: + JINF R0 R1 jump_inf2 + ADD R7 R7 #16 +jump_inf2: + ADD R6 R6 #8 + JSUP R1 R0 store + SUB R6 R6 #8 +store: + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + ADD R0 R0 #1 + ADD R1 R1 #24 + STR R0 R1 +load: + LD R0 R2 + JEQU R1 R2 fin_load + ADD R7 R7 #32 +fin_load: + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 + XOR R4 R4 R4 + XOR R5 R5 R5 +foo: + ADD R0 R0 #1 + JEQU R0 R1 fin + CALL bar + RET +bar: + ADD R1 R1 #2 + CALL foo + RET +fin: + ADD R0 R0 #42 + XOR R0 R0 R0 + XOR R1 R1 R1 + XOR R2 R2 R2 + XOR R3 R3 R3 + XOR R4 R4 R4 + XOR R5 R5 R5