Fix V8 emulator bugs

This commit is contained in:
Asraelite 2024-01-09 21:05:38 +01:00
parent c45ad79440
commit 476972f85a
29 changed files with 281 additions and 18 deletions

View file

@ -1,62 +0,0 @@
li x0, program_end
li x1, 512
mv x2, x0
.align 2
loop_write_word:
xori x3, x2, 0xaaa
sw x3, 0(x2)
addi x2, x2, 1
blt x2, x1, loop_write_word
mv x2, x0
.align 2
loop_read_word:
xori x3, x2, 0xaaa
lw x4, 0(x2)
bne x3, x4, error
addi x2, x2, 1
blt x2, x1, loop_read_word
.align 2
loop_write_double:
xori x6, x2, 0xaaa
xori x7, x2, 0x555
sd x67, 0(x2)
addi x2, x2, 2
blt x2, x1, loop_write_double
mv x2, x0
.align 2
loop_read_double:
xori x6, x2, 0xaaa
xori x7, x2, 0x555
ld x45, 0(x2)
bne x4, x6, error
bne x5, x7, error
lw x4, 0(x2)
bne x4, x6, error
lw x5, 1(x2)
bne x5, x7, error
addi x2, x2, 2
blt x2, x1, loop_read_double
success:
li x0, 0
wfi
error:
mv x0, x2
wfi
.align 2
program_end: