This is the mail archive of the gcc-bugs@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]

[Bug target/56043] New: ICE in rs6000_builtin_vectorized_libmass for vsx-mass-1.c


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

             Bug #: 56043
           Summary: ICE in rs6000_builtin_vectorized_libmass for
                    vsx-mass-1.c
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: janis@gcc.gnu.org
                CC: meissner@gcc.gnu.org
            Target: powerpc-none-eabi


My mainline compiler for powerpc-none-eabi gets a null pointer dereference for
a test:

/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/testsuite/gcc.target/powerpc/vsx-mass-1.c:
In function 'test_float_atan2':^M
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/testsuite/gcc.target/powerpc/vsx-mass-1.c:80:1:
internal compiler error: Segmentation fault^M
0x85fb2d2 crash_signal^M
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/toplev.c:332^M
0x813611c contains_struct_check
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/tree.h:3782
0x88b5172 rs6000_builtin_vectorized_libmass
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/config/rs6000/rs6000.c:3751
0x88093be vect_analyze_loop_operations
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/tree-vect-loop.c:1443
0x880ac46 vect_analyze_loop_2
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/tree-vect-loop.c:1720
0x880ac46 vect_analyze_loop(loop*)
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/tree-vect-loop.c:1773
0x8825e13 vectorize_loops()
       
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/gcc/tree-vectorizer.c:113
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.

FAIL: gcc.target/powerpc/vsx-mass-1.c (internal compiler error)
FAIL: gcc.target/powerpc/vsx-mass-1.c (test for excess errors)

The null pointer dereference comes from a null value assigned to bdecl returned
from builtin_decl_implicit in calls in rs6000_builtin_vectorized_libmass.  If
that function returns NULL_TREE when bdecl is NULL then the test program
compiles but nost of the assembly scans fail, so perhaps that isn't a valid
fix.

Here's the output from my tests when the null pointers are avoided:

PASS: gcc.target/powerpc/vsx-mass-1.c (test for excess errors)
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+atan2d2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+atan2f4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+hypotd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+hypotf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+powd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+powf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+acosd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+acosf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+acoshd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+acoshf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+asind2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+asinf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+asinhd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+asinhf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+atand2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+atanf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+atanhd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+atanhf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+cbrtd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+cbrtf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+cosd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+cosf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+coshd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+coshf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+erfd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+erff4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+erfcd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+erfcf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+exp2d2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+exp2f4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+expd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+expf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+expm1d2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+expm1f4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+lgamma
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+lgammaf
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+log10d2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+log10f4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+log1pd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+log1pf4
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+log2d2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+log2f4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+logd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+logf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+sind2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+sinf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+sinhd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+sinhf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+tand2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+tanf4
PASS: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+tanhd2
FAIL: gcc.target/powerpc/vsx-mass-1.c scan-assembler bl[\\. ]+tanhf4

Here's how my compiler is configured:

Using built-in specs.
COLLECT_GCC=install/bin/powerpc-none-eabi-gcc
COLLECT_LTO_WRAPPER=/scratch/janisjo/build6/fsf-powerpc-eabi/install/bin/../libexec/gcc/powerpc-none-eabi/4.8.0/lto-wrapper
Target: powerpc-none-eabi
Configured with:
/scratch/janisjo/build6/fsf-powerpc-eabi/src/gcc-mainline/configure
--build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=powerpc-none-eabi
--enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch
--with-gnu-as --with-gnu-ld --enable-languages=c,c++ --disable-shared
--enable-lto --with-newlib --disable-nls --prefix=/opt/codesourcery
--with-headers=yes --with-sysroot=/opt/codesourcery/powerpc-none-eabi
--with-build-sysroot=/scratch/janisjo/build6/fsf-powerpc-eabi/install/powerpc-none-eabi
--with-gmp=$HOSTLIBS/usr --with-mpfr=$HOSTLIBS/usr --with-mpc=$HOSTLIBS/usr
--with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm'
--with-isl=$HOSTLIBS/usr --with-cloog=$HOSTLIBS/usr --with-libelf=$HOSTLIBS/usr
--disable-libgomp --disable-libitm --enable-poison-system-directories
--with-build-time-tools=/scratch/janisjo/build6/fsf-powerpc-eabi/install/powerpc-none-eabi/bin
--with-build-time-tools=/scratch/janisjo/build6/fsf-powerpc-eabi/install/powerpc-none-eabi/bin
Thread model: single
gcc version 4.8.0 20130119 (experimental) [trunk revision 195309] (GCC)

As far as I can tell the test has failed for this configuration since it was
added.


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