diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-26 22:43:07 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-26 22:43:07 +0100 |
| commit | c33368bfb49f0391cbb9fa31f93197030a4f175a (patch) | |
| tree | 30a8163ffec3c66ce4bbca3bfa08e17fa9a9d796 /src | |
| parent | 886999bc5b24d90fa609e514566279a870d71de0 (diff) | |
| download | box64-c33368bfb49f0391cbb9fa31f93197030a4f175a.tar.gz box64-c33368bfb49f0391cbb9fa31f93197030a4f175a.zip | |
Added 0F 18 opcode
Diffstat (limited to 'src')
| -rw-r--r-- | src/emu/x64run0f.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/emu/x64run0f.c b/src/emu/x64run0f.c index b6e3bd20..667dbb1f 100644 --- a/src/emu/x64run0f.c +++ b/src/emu/x64run0f.c @@ -104,6 +104,22 @@ int Run0F(x64emu_t *emu, rex_t rex) GETGX; EX->q[0] = GX->q[1]; break; + case 0x18: /* PREFETCHh Ed */ + nextop = F8; + GETED(0); + if(MODREG) { + } else + switch((nextop>>3)&7) { + case 0: //PREFETCHnta + case 1: //PREFETCH1 + case 2: //PREFETCH2 + case 3: //PREFETCH3 + __builtin_prefetch((void*)ED, 0, 0); // ignoring wich level of cache + break; + default: //NOP + break; + } + break; case 0x1F: /* NOP (multi-byte) */ nextop = F8; |