summaryrefslogtreecommitdiffstats
path: root/results/classifier/zero-shot-user-mode/instruction/1248168
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-07-08 13:28:15 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-07-08 13:28:28 +0200
commit5aa276efcbd67f4300ca1a7f809c6e00aadb03da (patch)
tree9b8f0e074014cda8d42f5a97a95bc25082d8b764 /results/classifier/zero-shot-user-mode/instruction/1248168
parent1a3c4faf4e0a25ed0b86e8739d5319a634cb9112 (diff)
downloademulator-bug-study-5aa276efcbd67f4300ca1a7f809c6e00aadb03da.tar.gz
emulator-bug-study-5aa276efcbd67f4300ca1a7f809c6e00aadb03da.zip
restructure results
Diffstat (limited to 'results/classifier/zero-shot-user-mode/instruction/1248168')
-rw-r--r--results/classifier/zero-shot-user-mode/instruction/124816830
1 files changed, 30 insertions, 0 deletions
diff --git a/results/classifier/zero-shot-user-mode/instruction/1248168 b/results/classifier/zero-shot-user-mode/instruction/1248168
new file mode 100644
index 00000000..d5094794
--- /dev/null
+++ b/results/classifier/zero-shot-user-mode/instruction/1248168
@@ -0,0 +1,30 @@
+instruction: 0.634
+syscall: 0.253
+runtime: 0.113
+
+
+
+MIPS, self-modifying code and uncached memory
+
+Self-modifying code does not work properly in MIPS in uncached and unmapped kseg1 memory region.
+
+For example, when running this code I get unexpected behavior:
+
+ 0: e3000010 b 0x390
+ 4: 00000000 nop
+ ...
+ 380: 00701f40 mfc0 ra,c0_epc
+ 384: 0400e0bb swr zero,4(ra)
+ 388: 18000042 eret
+ 38c: 00000000 nop
+ 390: 25500000 move t2,zero
+ 394: 02000b34 li t3,0x2
+ 398: 23504b01 subu t2,t2,t3
+ 39c: e9003c0b j 0xcf003a4
+ 3a0: 0a004a21 addi t2,t2,10
+ 3a4: ffff0010 b 0x3a4
+ 3a8: 00000000 nop
+ 3ac: 00000000 nop
+
+ I expect that swr instruction in line 384 would change `addi t2,t2,1`0 to `nop`
+This should work because no cache is used for this memory region. \ No newline at end of file