[X86] Fix XSAVE64 and similar instructions to not be allowed by the assembler in...
authorCraig Topper <craig.topper@intel.com>
Fri, 15 Dec 2017 17:22:58 +0000 (17:22 +0000)
committerCraig Topper <craig.topper@intel.com>
Fri, 15 Dec 2017 17:22:58 +0000 (17:22 +0000)
commita16395008cbe49da844d2ee020d09bfb1d6e4e88
treedc1a32a5a7f2506acff0d75ad87f02b3a559acb9
parent7670b4b3b1d1dd828522c59bfdd6cf6d7b41eef8
[X86] Fix XSAVE64 and similar instructions to not be allowed by the assembler in 32-bit mode.

There was a top level "let Predicates =" in the .td file that was overriding the Requires on each instruction.

I've added an assert to the code emitter to catch more cases like this. I'm sure this isn't the only place where the right predicates aren't being applied. This assert already found that we don't block btq/btsq/btrq in 32-bit mode.

llvm-svn: 320830
llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
llvm/lib/Target/X86/X86InstrFPStack.td
llvm/lib/Target/X86/X86InstrSystem.td
llvm/test/MC/X86/x86-32-coverage.s