Commit 0e159e0f by Andrew Pinski Committed by Andrew Pinski

re PR rtl-optimization/41833 (vec_splat followed by vec_splat could be improved)

2009-11-04  Andrew Pinski  <andrew_pinski@playstation.sony.com>
            Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>

        PR rtl-opt/41833
        * simplify-rtx.c (simplify_binary_operation_1): Simplify vec_select of
        a vec_duplicate.

2009-11-04  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR rtl-opt/41833
        * gcc.target/powerpc/altivec-33.c: New testcase.


Co-Authored-By: Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>

From-SVN: r153906
parent ac3554c5
2009-11-04 Andrew Pinski <andrew_pinski@playstation.sony.com>
Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
PR rtl-opt/41833
* simplify-rtx.c (simplify_binary_operation_1): Simplify vec_select of
a vec_duplicate.
2009-11-04 Richard Guenther <rguenther@suse.de>
Rafael Avila de Espindola <espindola@google.com>
* gcc.c (process_command): Handle arguments name@offset.
2009-11-04 Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
......@@ -2946,6 +2946,9 @@ simplify_binary_operation_1 (enum rtx_code code, enum machine_mode mode,
tmp_op, gen_rtx_PARALLEL (VOIDmode, vec));
return tmp;
}
if (GET_CODE (trueop0) == VEC_DUPLICATE
&& GET_MODE (XEXP (trueop0, 0)) == mode)
return XEXP (trueop0, 0);
}
else
{
......
2009-11-04 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR rtl-opt/41833
* gcc.target/powerpc/altivec-33.c: New testcase.
2009-11-04 Jason Merrill <jason@redhat.com>
PR c++/17365, DR 218
......
/* { dg-do compile } */
/* { dg-require-effective-target powerpc_altivec_ok } */
/* { dg-options "-O2 -maltivec" } */
/* We should only produce one vspltw as we already splatted the value. */
/* { dg-final { scan-assembler-times "vspltw" 1 } } */
#include <altivec.h>
vector float f(vector float a)
{
vector float b = vec_splat (a, 2);
return vec_splat (b, 0);
}
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