The MONITOR and MWAIT instructions have insufficient information for
authorBill Wendling <isanbard@gmail.com>
Thu, 28 May 2009 23:40:46 +0000 (23:40 +0000)
committerBill Wendling <isanbard@gmail.com>
Thu, 28 May 2009 23:40:46 +0000 (23:40 +0000)
commit2265ba071762b461ed1e65ebd73f596a98208f60
tree12961df453e2c0405f6fb6daf20d2216d238b3c2
parent056dbd0645875b69e825bf04f5360856eb3f0ece
The MONITOR and MWAIT instructions have insufficient information for
decoding. Essentially, they both map to the same column in the "opcode
extensions for one- and two-byte opcodes" table in the x86 manual. The RawFrm
complicates decoding this.

Instead, use opcode 0x01, prefix 0x01, and form MRM1r. Then have the code
emitter special case these, a la [SML]FENCE.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72556 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86CodeEmitter.cpp
lib/Target/X86/X86InstrInfo.cpp
lib/Target/X86/X86InstrSSE.td