summary refs log tree commit diff stats
path: root/results/classifier/zero-shot/105/assembly/2186
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/zero-shot/105/assembly/2186')
-rw-r--r--results/classifier/zero-shot/105/assembly/218647
1 files changed, 47 insertions, 0 deletions
diff --git a/results/classifier/zero-shot/105/assembly/2186 b/results/classifier/zero-shot/105/assembly/2186
new file mode 100644
index 000000000..2483d2d0e
--- /dev/null
+++ b/results/classifier/zero-shot/105/assembly/2186
@@ -0,0 +1,47 @@
+assembly: 0.966
+instruction: 0.904
+graphic: 0.763
+device: 0.739
+other: 0.725
+socket: 0.587
+semantic: 0.570
+vnc: 0.566
+network: 0.501
+mistranslation: 0.395
+boot: 0.358
+KVM: 0.081
+
+riscv virt pflash0 writes not supported
+Description of problem:
+I am using GDB to debug some Firmware related stuff. At some point in the execution my BIOS/Firmware writes into some global variable (at 0x2000525C)  inside the .bss section which is linked to be inside the memory mapped pflash0. But when I step forward with GDB to the exact location where the store instruction (sw) is executed, QEMU prints the following:
+```
+pflash_write: Unimplemented flash cmd sequence (offset 000000000000525c, wcycle 0x0 cmd 0x0 value 0x1)
+```
+According to the top of `hw/block/pflash_cfi01.c` Flash writes are supported. I was also under the impression that the flash is memory mapped, but maybe that is not true? I am probably missing something here so it would be nice if someone could point me in the right direction. I would also gladly contribute if there is something missing in the riscv virt target. 
+
+I made a simple program to more easily reproduce this:
+```
+.section .text
+.global _start
+_start:
+	lui a5, 0x20000
+	li a4, 5
+	sw a4, 24(a5)
+
+```
+results in QEMU error msg:
+```
+pflash_write: Unimplemented flash cmd sequence (offset 0000000000000018, wcycle 0x0 cmd 0x0 value 0x5)
+```
+Steps to reproduce:
+1. compile above assembly program like this:
+```
+riscv64-unknown-elf-gcc -nostdlib -O0 bios.S
+riscv64-unknown-elf-objcopy -O binary a.out
+truncate -s 33554432 a.out
+```
+2. start QEMU like this:
+```
+qemu-system-riscv64 -M virt -bios none -drive if=pflash,format=raw,unit=0,file=a.out -nographic -d unimp
+```
+3. notice the error message printed by QEMU