STARS/IRDB crash on prefetchnta opcode
Using the STARS test case ffmpeg.psexe from the repository, kill_deads step fails due to an assertion on an unanticipated opcode:
call disasm.getMnemonic()
$1 = {static npos = <optimized out>,
_M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x27f7ae228 "**prefetchnta**"}}
I will investigate the fix in STARS_IRDB_Instruction.cpp::GetIDAOpcode(). I will probably need to add numerous recent x86 opcodes in that switch statement.
CHECK_FOR_INSN(vfnmsubss); // Negative Multiply and Subtract Scalar Single-Precision Floating-Point
CHECK_FOR_INSN(vfnmsubsd); // Negative Multiply and Subtract Double Single-Precision Floating-Point
cerr<<"Cannot match opcode Mneumonic ("<< disasm.getMnemonic() <<") to stars insn."<<endl;
assert(0);