re PR target/85903 (FAIL: gcc.target/i386/avx512dq-vcvtuqq2pd-2.c)
authorUros Bizjak <ubizjak@gmail.com>
Thu, 24 May 2018 18:16:29 +0000 (20:16 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Thu, 24 May 2018 18:16:29 +0000 (20:16 +0200)
PR target/85903
* config/i386/sse.md (movdi_to_sse): Do not generate pseudo
when memory input operand is handled.

From-SVN: r260681

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

index 1143e146a689210b66b66f35b5dca0b60e328377..4021500e8eb25be1e30ea2021947319c934bcfaa 100644 (file)
@@ -1,3 +1,9 @@
+2018-05-24  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/85903
+       * config/i386/sse.md (movdi_to_sse): Do not generate pseudo
+       when memory input operand is handled.
+
 2018-05-24  Luis Machado  <luis.machado@linaro.org>
 
        * config/aarch64/aarch64.c (qdf24xx_addrcost_table): New static
index 8a80fa35067596762844b21894f00e0ede5da937..9750708a80f7f0a46b387457da7a10860c83b2ae 100644 (file)
                                             operands[2]));
    }
  else if (memory_operand (operands[1], DImode))
-   {
-     rtx tmp = gen_reg_rtx (V2DImode);
-     emit_insn (gen_vec_concatv2di (tmp, operands[1], const0_rtx));
-     emit_move_insn (operands[0], gen_lowpart (V4SImode, tmp));
-   }
+   emit_insn (gen_vec_concatv2di (gen_lowpart (V2DImode, operands[0]),
+                                 operands[1], const0_rtx));
  else
    gcc_unreachable ();
  DONE;