aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2013-05-10 20:47:27 +0200
committerUros Bizjak <uros@gcc.gnu.org>2013-05-10 20:47:27 +0200
commit5b3f93c79001d6387a5c78ae9d13482c2712972c (patch)
treef567c1d9aacfe49399fcb52a02ea8c336958a4a8 /gcc
parent1f873f0e2c79f45400f051e794ee6a67cf128a9d (diff)
downloadgcc-5b3f93c79001d6387a5c78ae9d13482c2712972c.zip
gcc-5b3f93c79001d6387a5c78ae9d13482c2712972c.tar.gz
gcc-5b3f93c79001d6387a5c78ae9d13482c2712972c.tar.bz2
i386.md (memory): Handle sseishft1.
* config/i386/i386.md (memory): Handle sseishft1. * config/i386/sse.md (*vec_extractv4si): Remove memory attribute. (*vec_extractv2di_1): Ditto. From-SVN: r198795
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.md5
-rw-r--r--gcc/config/i386/sse.md2
3 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7da1973..1b2fa2a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2013-05-10 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (memory): Handle sseishft1.
+ * config/i386/sse.md (*vec_extractv4si): Remove memory attribute.
+ (*vec_extractv2di_1): Ditto.
+
2013-05-10 Vladimir Makarov <vmakarov@redhat.com>
* lra-assigns.c (find_hard_regno_for): Add 1 to the cost of call
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index d9179ce..fb64d5e 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -615,8 +615,9 @@
"!alu1,negnot,ishift1,
imov,imovx,icmp,test,bitmanip,
fmov,fcmp,fsgn,
- sse,ssemov,ssecmp,ssecomi,ssecvt,ssecvt1,sseicvt,sselog1,
- sseshuf1,sseadd1,sseiadd1,mmx,mmxmov,mmxcmp,mmxcvt")
+ sse,ssemov,ssecmp,ssecomi,ssecvt,ssecvt1,sseicvt,
+ sselog1,sseshuf1,sseadd1,sseiadd1,sseishft1,
+ mmx,mmxmov,mmxcmp,mmxcvt")
(match_operand 2 "memory_operand"))
(const_string "load")
(and (eq_attr "type" "icmov,ssemuladd,sse4arg")
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index c9b34b41..66da4af 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -7387,7 +7387,6 @@
}
[(set_attr "isa" "*,noavx,avx")
(set_attr "type" "sselog1,sseishft1,sseishft1")
- (set_attr "memory" "*,none,none")
(set_attr "prefix_extra" "1,*,*")
(set_attr "length_immediate" "1")
(set_attr "prefix" "maybe_vex,orig,vex")
@@ -7446,7 +7445,6 @@
[(set_attr "isa" "x64_sse4,*,sse2_noavx,avx,noavx,*,x64")
(set_attr "type" "sselog1,ssemov,sseishft1,sseishft1,ssemov,ssemov,imov")
(set_attr "length_immediate" "1,*,1,1,*,*,*")
- (set_attr "memory" "*,*,none,none,*,*,*")
(set_attr "prefix_rex" "1,*,*,*,*,*,*")
(set_attr "prefix_extra" "1,*,*,*,*,*,*")
(set_attr "prefix" "maybe_vex,maybe_vex,orig,vex,orig,*,*")