summary refs log tree commit diff stats
path: root/results/classifier/phi4:14b/output/manual-review/1847467
blob: e0900ebd8be1d218e0df35d806b812e8761d6d48 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
qemu-x86_64 segment prefixes error

qemu-x86_64 version 4.1.0 (qemu-x86_64 version 4.0.0 also have the issue)

In 64-bit mode (x86_64) the DS, ES, SS or CS segment prefixes should be ignored; qemu-x86_64 does not ignore them.

example: an x86_64 instructions preceded by FS DS (0x64 0x26) segment prefixes have the linear address of its memory reference flat-mapped (as if DS was in action) whereas it should be FS-mapped (offset by FS_base, because the DS, ES, SS or CS are just ignored).


I attach a small C++ program that shows this discrepancy.

$ ./sample
I'm not in QEMU

$ qemu-x86_64 ./sample
I'm in QEMU