Branch: refs/heads/master
Home: https://github.com/dyninst/dyninst
Commit: 8e17bc861ac69ddf6f55629b9912dca37e87d05d
https://github.com/dyninst/dyninst/commit/8e17bc861ac69ddf6f55629b9912dca37e87d05d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2023-07-25 (Tue, 25 Jul 2023)
Changed paths:
M common/h/entryIDs.h
M common/src/arch-x86.C
M dataflowAPI/src/convertOpcodes.C
Log Message:
-----------
Fix x86 misspelled, incorrect, and invalid opcodes (#1421)
* Fix spelling of 'vpperm' stringification
* Fix spelling of 'vpcomd' stringification
* Fix spelling of 'vprolvd' stringification
* Fix spelling of 'vprolvq' stringification
* Remove duplicate entry for 'e_vpsrlvq'
* Rename 'vpclmullqlqdq' to 'vpclmulqdq'
* Rename 'punpcklqd' to 'punpckldq'
* Replace 'punpckhqd' with 'punpckhqdq'
* Replace 'pcmpgdt' with 'pcmpgtd'
* Remove instruction 'vpcmpequd'
This mnemonic does not exist in any of Intel Architecture Instruction
Set Extensions, AMD Architecture Programmers Manual, or Intel
Architecutre Software Developer's Manual.
The encoding listed under 'SSET1E_66' is a reserved space.
* Rename mnemonic for 'prefect_w' to 'prefetchw'
* Rename 'pclmullqlqdq' to 'pclmulqdq'
This is a pseudo-opcode for pclmulqdq when imm8 is 0x0.
The encoding is 660F3A44, so the lookup table location is correct.
* Remove 'mmxud'
It is an unknown instruction and has no decode table entry.
* Remove 'movslq'
This is an unknown instruction and has no decode table entry.
* Remove 'pcommit'
This is an unknown instruction and has no decode table entry.
* Rename 'cmpsd_sse' to 'cmpsd'
* Fix spelling of 'vphaddsw' mnemonic
* Fix spelling of 'vblendpd' mnemonic
* Remove redundant copy of 'prefetchwt1'
* Remove redundant 'phsubsw'
* Remove redundant 'sarx'
* Remove redundant 'shlx'
* Remove redundant 'vblendvpd'
* Remove redundant 'vcmppd'
* Remove redundant 'vcmpps'
* Remove redundant 'vcmpsd'
* Remove redundant 'vcmpss'
* Remove redundant 'vpmaddubsw'
* Remove redundant 'vpmaddwd'
* Remove redundant 'vpmovsdb'
* Remove redundant 'vpmovsdw'
* Remove redundant 'vpmovsqb'
* Remove redundant 'vpmovsqd'
* Remove redundant 'vpmovsqw'
* Remove redundant 'vpmovswb'
|