i386.md (memory): Handle sseishft1.
authorUros Bizjak <ubizjak@gmail.com>
Fri, 10 May 2013 18:47:27 +0000 (20:47 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Fri, 10 May 2013 18:47:27 +0000 (20:47 +0200)
* config/i386/i386.md (memory): Handle sseishft1.
* config/i386/sse.md (*vec_extractv4si): Remove memory attribute.
(*vec_extractv2di_1): Ditto.

From-SVN: r198795

gcc/ChangeLog
gcc/config/i386/i386.md
gcc/config/i386/sse.md

index 7da1973..1b2fa2a 100644 (file)
@@ -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
index d9179ce..fb64d5e 100644 (file)
                 "!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")
index c9b34b4..66da4af 100644 (file)
 }
   [(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")
   [(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,*,*")