This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [lno] auto vectorizing on x86-64 broken


Andi,

I committed your patch, as well as a minor cleanup that fixes the failure
you saw in tree-ssa-vect-4*.c.

We now have 4 test-cases that ICE (8,30,46,none) on all platforms (a fix is
in the works), and 4 test-cases that currently fail to get vectorized on
i?86 (17,18,19,20).

'make check-gcc RUNTESTFLAGS="tree-ssa-vect.exp"' results are currently as
follows:

on powerpc-apple-darwin7.0.0:

                === gcc Summary ===

# of expected passes            116
# of unexpected failures        11
# of expected failures          32


on i686-pc-linux-gnu:

                === gcc Summary ===

# of expected passes            114
# of unexpected failures        13
# of expected failures          32

dorit

2004-07-04  Andi Kleen <ak@muc.de>

        * gcc.dg/tree-ssa-vect/tree-ssa-vect-*.c: Add support for i?86-*-*
        and x86_64-*-*.
        * gcc.dg/tree-ssa-vect/tree-vect.h: New file.

2004-07-04  Dorit Naishlos <dorit@il.ibm.com>

        * gcc.dg/tree-ssa-vect/tree-ssa-vect-4*.c: Abort instead of print,
and
        remove redundant check loop in main.

        * gcc.dg/tree-ssa-vect/tree-ssa-vect-40.c: Move call to bar from
main1
        to main.
        * gcc.dg/tree-ssa-vect/tree-ssa-vect-42.c: Likewise.
        * gcc.dg/tree-ssa-vect/tree-ssa-vect-46.c: Likewise.


(See attached file: testcases_patch.July4)




                                                                                                                                     
                      Dorit                                                                                                          
                      Naishlos/Haifa/IB        To:       Andi Kleen <ak@muc.de>                                                      
                      M@IBMIL                  cc:       gcc@gcc.gnu.org, Sebastian Pop <sebastian.pop@cri.ensmp.fr>                 
                      Sent by:                 Subject:  Re: [lno] auto vectorizing on x86-64 broken                                 
                      gcc-owner@gcc.gnu                                                                                              
                      .org                                                                                                           
                                                                                                                                     
                                                                                                                                     
                      04/07/2004 16:45                                                                                               
                                                                                                                                     





> This means the i386 backend needs new patterns for logical operations
> like you added to altivec.md ?

I suspect so.

> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-17.c scan-tree-dump-times
vectorized 3 loops 1
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-18.c scan-tree-dump-times
vectorized 3 loops 1
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-19.c scan-tree-dump-times
vectorized 3 loops 1
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-20.c scan-tree-dump-times
vectorized 3 loops 1

bitwise operations - may need to add new patterns to i*86 (see
http://gcc.gnu.org/ml/gcc-patches/2004-04/msg00907.html).

> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-30.c (test for excess errors)
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-30.c scan-tree-dump-times
vectorized 1 loops 2
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-46.c (test for excess errors)
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-46.c scan-tree-dump-times
vectorized 1 loops 1
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-8.c (test for excess errors)
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-8.c scan-tree-dump-times
vectorized 1 loops 1
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-none.c (test for excess errors)
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-none.c scan-tree-dump-times
vectorized  3
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-none.c scan-tree-dump-times
vectorized 1 loops 1

known ICE in test-cases with unknown loop bound (a fix is in the works).

> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-40.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-41.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-42.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-43.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-44.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-45.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-47.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-48.c execution test
> FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-49.c execution test

These are because there's no "return 0" at the end of the test-cases - I'll
commit a fix shortly.

dorit.





                      Andi Kleen

                      <ak@muc.de>              To:       Dorit
Naishlos/Haifa/IBM@IBMIL
                                               cc:       gcc@gcc.gnu.org,
Sebastian Pop <sebastian.pop@cri.ensmp.fr>
                      04/07/2004 01:44         Subject:  Re: [lno] auto
vectorizing on x86-64 broken





On Sat, Jul 03, 2004 at 10:24:38PM +0300, Dorit Naishlos wrote:
> > FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-17.c scan-tree-dump-times
> vectorized lloops 1
>
> This one, as well as tree-ssa-vect-[18,19,20].c, are known problems:
> http://gcc.gnu.org/ml/gcc-patches/2004-04/msg00907.html

This means the i386 backend needs new patterns for logical operations
like you added to altivec.md ?

>
> > It seems to vectorize a few loops in some test cases, but the majority
> > fails. Any ideas why this doesn't work on x86-64?
>
> The only other failures I know of (on any platform) are an ICE in
> tree-ssa-vect-[8,30,46,none].c which is related to the unknown loop bound
> support; it has since been rewritten (should be submitted to lno soon).
> There's also an execution error (on ppc) in tree-ssa-vect-[6,all].c
(looks
> like swapped arguments in vnmsubfp). Do you see other failures? I can
check
> what's the status of the tests on i686-pc-linux-gnu.

Here's all failures I see on x86-64:

FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-17.c scan-tree-dump-times
vectorized 3 loops 1
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-18.c scan-tree-dump-times
vectorized 3 loops 1
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-19.c scan-tree-dump-times
vectorized 3 loops 1
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-20.c scan-tree-dump-times
vectorized 3 loops 1
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-30.c (test for excess errors)
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-30.c scan-tree-dump-times
vectorized 1 loops 2
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-40.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-41.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-42.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-43.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-44.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-45.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-46.c (test for excess errors)
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-46.c scan-tree-dump-times
vectorized 1 loops 1
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-47.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-48.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-49.c execution test
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-8.c (test for excess errors)
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-8.c scan-tree-dump-times
vectorized 1 loops 1
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-none.c (test for excess errors)
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-none.c scan-tree-dump-times
vectorized  3
FAIL: gcc.dg/tree-ssa-vect/tree-ssa-vect-none.c scan-tree-dump-times
vectorized 1 loops 1

-Andi




Attachment: testcases_patch.July4
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]