diff options
author | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-01-05 20:17:26 +0000 |
---|---|---|
committer | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-01-05 20:17:26 +0000 |
commit | ea87c5e3ae1dd4ccb0f063c3b9f035892c25ca43 (patch) | |
tree | 0bec7b41fbd97e8a68bdfad816048f68a21849d9 /gcc/ChangeLog | |
parent | e1bacdb6f1e925381a2bf22432e9158f4df6d3f7 (diff) | |
download | gcc-ea87c5e3ae1dd4ccb0f063c3b9f035892c25ca43.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232087 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r-- | gcc/ChangeLog | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2a4a71fb52b..264a7b6a4da 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2016-01-05 H.J. Lu <hongjiu.lu@intel.com> + + 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. + 2016-01-05 Sandra Loosemore <sandra@codesourcery.com> PR 1078 |