Commit 27b28c6d by Uros Bizjak Committed by Uros Bizjak

simplify-rtx.c (simplify_binary_operation): Do not simplify inner elements of…

simplify-rtx.c (simplify_binary_operation): Do not simplify inner elements of constant arguments of VEC_CONCAT insn.

	rtl-optimization/18614
        * simplify-rtx.c (simplify_binary_operation): Do not
        simplify inner elements of constant arguments of
        VEC_CONCAT insn.

testsuite:

        * gcc.dg/pr18614-1.c: New test.

From-SVN: r91094
parent 6d861604
2004-11-23 Uros Bizjak <uros@kss-loka.si>
PR rtl-optimization/18614
* simplify-rtx.c (simplify_binary_operation): Do not
simplify inner elements of constant arguments of
VEC_CONCAT insn.
2004-11-23 Eric Botcazou <ebotcazou@libertysurf.fr>
* gthr-solaris.h (__gthread_recursive_mutex_init_function): Use
......
......@@ -1185,6 +1185,7 @@ simplify_binary_operation (enum rtx_code code, enum machine_mode mode,
trueop1 = avoid_constant_pool_reference (op1);
if (VECTOR_MODE_P (mode)
&& code != VEC_CONCAT
&& GET_CODE (trueop0) == CONST_VECTOR
&& GET_CODE (trueop1) == CONST_VECTOR)
{
......
2004-11-23 Uros Bizjak <uros@kss-loka.si>
* gcc.dg/pr18614-1.c: New test.
2004-11-23 Eric Botcazou <ebotcazou@libertysurf.fr>
* gcc.dg/setjmp-2.c: New test.
......
/* PR rtl-optimization/18614 */
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -msse2" } */
typedef double v2df __attribute__ ((vector_size (16)));
v2df foo (void)
{
v2df yd = { 1.0, 4.0 };
v2df xd;
xd = __builtin_ia32_cvtps2pd (__builtin_ia32_rsqrtps
(__builtin_ia32_cvtpd2ps (yd)));
return xd;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment