Add tests for stage 7

This commit is contained in:
2025-11-06 18:52:31 +01:00
parent 1c829366de
commit 37435c6677
9 changed files with 128 additions and 0 deletions
+16
View File
@@ -0,0 +1,16 @@
# expected: dead0000, dead0001, 00000000
.text
_start:
lui x2, 0xdead0
lui x3, 0x0
lui x4, 0x1
addi x5, x0, (-1)
# Add 0
add x31, x2, x3
# Basic addition
add x31, x2, x4
# Overflow
add x31, x5, x4
+11
View File
@@ -0,0 +1,11 @@
# expected: 00000000, 00000010
.text
_start:
addi x1, x0, 0x100
addi x2, x0, 0x0FF
and x31, x1, x2
addi x1, x0, -1
addi x2, x0, 0x010
and x31, x1, x2
+11
View File
@@ -0,0 +1,11 @@
# expected: 000001FF, FFFFFFFF
.text
_start:
addi x1, x0, 0x100
addi x2, x0, 0x0FF
or x31, x1, x2
addi x1, x0, -1
addi x2, x0, 0x010
or x31, x1, x2
+13
View File
@@ -0,0 +1,13 @@
# expected: 000003FC, 80000000, 00000000
.text
_start:
addi x1, x0, 0x0FF
addi x2, x0, 2
sll x31, x1, x2
addi x1, x0, 0x001
addi x2, x0, 31
sll x31, x1, x2
addi x1, x0, 0x0F0
sll x31, x1, x2
+19
View File
@@ -0,0 +1,19 @@
# expected: 00000000, 00000001, 00000001, 00000000
.text
_start:
addi x1, x0, (-1)
addi x2, x0, (-37)
slt x31, x1, x2
addi x1, x0, (-37)
addi x2, x0, (-1)
slt x31, x1, x2
addi x1, x0, (-38)
addi x2, x0, (-38)
slt x31, x1, x2
addi x1, x0, 129
addi x2, x0, (-7)
slt x31, x1, x2
+14
View File
@@ -0,0 +1,14 @@
# expected: 00000001, 00000001, 00000000
.text
_start:
addi x1, x0, 0
addi x2, x0, (-1)
sltu x31, x1, x2
addi x1, x0, 98
addi x2, x0, 99
sltu x31, x1, x2
addi x1, x0, 99
addi x2, x0, 98
sltu x31, x1, x2
+14
View File
@@ -0,0 +1,14 @@
# expected: 000000FF, FFFFFFFF, 00000000
.text
_start:
addi x1, x0, 0x3FC
addi x2, x0, 2
sra x31, x1, x2
lui x1, 0xA0000
addi x2, x0, 31
sra x31, x1, x2
lui x1, 0x0A000
addi x2, x0, 31
sra x31, x1, x2
+14
View File
@@ -0,0 +1,14 @@
# expected: 000000FF, 00000001, 00000000
.text
_start:
addi x1, x0, 0x3FC
addi x2, x0, 2
srl x31, x1, x2
lui x1, 0xA0000
addi x2, x0, 31
srl x31, x1, x2
lui x1, 0x0A000
addi x2, x0, 31
srl x31, x1, x2
+16
View File
@@ -0,0 +1,16 @@
# expected: 00000000, 000001EF
.text
_start:
# 1 XOR 1 should equal 0000000
addi x1, x0, -1
addi x2, x0, -1
xor x31, x1, x2
addi x1, x0, 0x1BC
addi x2, x0, 0x1EF
addi x3, x0, 0x1BC
# Xor is involutive and commutative, applying it twice should give us the original operand
xor x1, x1, x2
xor x31, x1, x3