https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68991

--- Comment #18 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> ---
Author: hjl
Date: Tue Jan  5 20:17:26 2016
New Revision: 232087

URL: https://gcc.gnu.org/viewcvs?rev=232087&root=gcc&view=rev
Log:
Add vector_memory_operand and "Bm" constraint

SSE vector arithmetic and logic instructions only accept aligned memory
operand.  This patch adds vector_memory_operand and "Bm" constraint for
aligned SSE memory operand.  They are applied to SSE plusminus and
any_logic patterns.

gcc/

        PR target/68991
        * config/i386/constraints.md (Bm): New constraint.
        * config/i386/predicates.md (vector_memory_operand): New
        predicate.
        * config/i386/sse.md: Replace xm with xBm in plusminus and
        any_logic patterns.

gcc/testsuite/

        PR target/68991
        * g++.dg/pr68991-1.C: New test.
        * g++.dg/pr68991-2.C: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/pr68991-1.C
    trunk/gcc/testsuite/g++.dg/pr68991-2.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/constraints.md
    trunk/gcc/config/i386/predicates.md
    trunk/gcc/config/i386/sse.md
    trunk/gcc/testsuite/ChangeLog

Reply via email to