]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
backport: re PR target/61239 (ICE in decompose, at rtl.h when compiling vshuf-v16hi...
authorUros Bizjak <ubizjak@gmail.com>
Mon, 2 Jun 2014 22:05:48 +0000 (00:05 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Mon, 2 Jun 2014 22:05:48 +0000 (00:05 +0200)
Backport from mainline
2014-06-02  Uros Bizjak  <ubizjak@gmail.com>

PR target/61239
* config/i386/i386.c (ix86_expand_vec_perm) [case V32QImode]: Use
GEN_INT (-128) instead of GEN_INT (128) to set MSB of QImode constant.

From-SVN: r211150

gcc/ChangeLog
gcc/config/i386/i386.c

index 8d9a352e949aea9e3a46fd081c616879212c4931..d2b03520039873c57a273a9dd02299aa97c03e7d 100644 (file)
@@ -1,3 +1,12 @@
+2014-06-03  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2014-06-02  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/61239
+       * config/i386/i386.c (ix86_expand_vec_perm) [case V32QImode]: Use
+       GEN_INT (-128) instead of GEN_INT (128) to set MSB of QImode constant.
+
 2014-05-28  Guozhi Wei  <carrot@google.com>
 
        PR target/61202
index 8ca9a03810cea1f1a5e5fc1cb027a3489321af88..fa81d0fbbefc1938de0f0f6cc704cfed4b4caa09 100644 (file)
@@ -20505,7 +20505,7 @@ ix86_expand_vec_perm (rtx operands[])
          t1 = gen_reg_rtx (V32QImode);
          t2 = gen_reg_rtx (V32QImode);
          t3 = gen_reg_rtx (V32QImode);
-         vt2 = GEN_INT (128);
+         vt2 = GEN_INT (-128);
          for (i = 0; i < 32; i++)
            vec[i] = vt2;
          vt = gen_rtx_CONST_VECTOR (V32QImode, gen_rtvec_v (32, vec));