i386: Emulate MMX plusminus/sat_plusminus with SSE
authorH.J. Lu <hongjiu.lu@intel.com>
Wed, 15 May 2019 15:05:48 +0000 (15:05 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Wed, 15 May 2019 15:05:48 +0000 (08:05 -0700)
commit1f0dc22ab5f61ed6b91118f946879dac3e7c9a67
tree480a8dfe9a9ac059adbbc1c764e4112be0b41033
parent6e9fffcf83638a50cac6e2a127817c409238cfde
i386: Emulate MMX plusminus/sat_plusminus with SSE

Emulate MMX plusminus/sat_plusminus with SSE.  Only SSE register source
operand is allowed.

PR target/89021
* config/i386/mmx.md (MMXMODEI8): Require TARGET_SSE2 for V1DI.
(plusminus:mmx_<plusminus_insn><mode>3): Check
TARGET_MMX_WITH_SSE.
(sat_plusminus:mmx_<plusminus_insn><mode>3): Likewise.
(<plusminus_insn><mode>3): New.
(*mmx_<plusminus_insn><mode>3): Add SSE emulation.
(*mmx_<plusminus_insn><mode>3): Likewise.

From-SVN: r271217
gcc/ChangeLog
gcc/config/i386/mmx.md