OSDN Git Service

[X86] Strip the SAE bit from the rounding mode passed to the _RND opcodes. Use Target...
authorCraig Topper <craig.topper@intel.com>
Fri, 15 Mar 2019 19:59:35 +0000 (19:59 +0000)
committerCraig Topper <craig.topper@intel.com>
Fri, 15 Mar 2019 19:59:35 +0000 (19:59 +0000)
commitbf6b4e88ed52391be5682cd4c24423686c4776de
treef23e6556363d2ff0107b01aace2aa0ed7396ec1f
parent1c838a422561b91211afdc0fc3ca7976201e157b
[X86] Strip the SAE bit from the rounding mode passed to the _RND opcodes. Use TargetConstant to save a conversion in the isel table.

The asm parser generates the immediate without the SAE bit. So for consistency we should generate the MCInst the same way from CodeGen.

Since they are now both the same, remove the masking from the printer and replace with an llvm_unreachable.

Use a target constant since we're rebuilding the node anyway. Then we don't have to have isel convert it. Saves about 500 bytes from the isel table.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@356294 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/InstPrinter/X86InstPrinterCommon.cpp
lib/Target/X86/X86ISelLowering.cpp
lib/Target/X86/X86InstrAVX512.td