http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52656

             Bug #: 52656
           Summary: [4.8 regression] gcc.target/sparc/fpmul-2.c FAILs
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: r...@gcc.gnu.org
                CC: ebotca...@gcc.gnu.org, rgue...@gcc.gnu.org
              Host: sparc-sun-solaris2*
            Target: sparc-sun-solaris2*
             Build: sparc-sun-solaris2*


As initially mentioned in PR testsuite/52614, gcc.target/sparc/fpmul-2.c has
recently started to fail:

FAIL: gcc.target/sparc/fpmul-2.c scan-tree-dump optimized "{ 2, 4, 6, 8 }"

It turned out that the failure is unrelated to the other ones, and a reghunt
revealed the culprit patch:

2012-03-16  Richard Guenther  <rguent...@suse.de>

        * tree.h (TREE_VECTOR_CST_ELTS): Remove.
        (VECTOR_CST_NELTS, VECTOR_CST_ELTS, VECTOR_CST_ELT): New defines.
        (struct tree_vector): Remove elements member, add variable size
        elts array member.
        (build_vector_stat): Declare.
        (build_vector): Define in terms of build_vector_stat.
[...]
        * config/sparc/sparc.c (sparc_handle_vis_mul8x16): Adjust interface
        and implementation.
        (sparc_fold_builtin): Adjust.

Here's the change in the optimized dumps:

> diff -u 23[45]/gcc/fpmul-2.c*|more
--- 234/gcc/fpmul-2.c.149t.optimized    2012-03-21 14:58:58.358234100 +0100
+++ 235/gcc/fpmul-2.c.149t.optimized    2012-03-21 16:18:28.973592400 +0100
@@ -48,7 +48,7 @@
 foo3 ()
 {
 <bb 2>:
-  return { 2, 4, 6, 8 };
+  return { 1, 2, 3, 4 };

 }

  Rainer

Reply via email to