r271216 - in /trunk/gcc: ChangeLog config/i386/...
hjl@gcc.gnu.org
hjl@gcc.gnu.org
Wed May 15 15:05:00 GMT 2019
Author: hjl
Date: Wed May 15 15:05:07 2019
New Revision: 271216
URL: https://gcc.gnu.org/viewcvs?rev=271216&root=gcc&view=rev
Log:
i386: Emulate MMX punpcklXX/punpckhXX with SSE punpcklXX
Emulate MMX punpcklXX/punpckhXX with SSE punpcklXX. For MMX punpckhXX,
move bits 64:127 to bits 0:63 in SSE register. Only SSE register source
operand is allowed.
PR target/89021
* config/i386/i386-expand.c (ix86_split_mmx_punpck): New function.
* config/i386/i386-protos.h (ix86_split_mmx_punpck): New
prototype.
* config/i386/mmx.m (mmx_punpckhbw): Changed to
define_insn_and_split to support SSE emulation.
(mmx_punpcklbw): Likewise.
(mmx_punpckhwd): Likewise.
(mmx_punpcklwd): Likewise.
(mmx_punpckhdq): Likewise.
(mmx_punpckldq): Likewise.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386-expand.c
trunk/gcc/config/i386/i386-protos.h
trunk/gcc/config/i386/mmx.md
More information about the Gcc-cvs
mailing list