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

           Summary: internal compiler error: in
                    reload_cse_simplify_operands, at postreload.c:396 with
                    neon optimized code
           Product: gcc
           Version: 4.5.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: nereu...@gmail.com


Created attachment 23794
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23794
preprocessed file

I have following error while building neon optimized code.


$ cat insn-unsat-constr.c 
#include <arm_neon.h>

void test(signed int *output)
{ 
    int16_t * out = (int16_t *) output;
    {
        int16x4_t a = {0, };
        int16x4_t b = {1, };
        int16x4x4_t z;
        z.val[0] = vadd_s16(a, b); 
        z.val[1] = vadd_s16(a, b); 
        z.val[2] = vsub_s16(a, b); 
        z.val[3] = vadd_s16(a, b); 

        vst4_lane_s16(&out[0]+0*4, z, 0);
        vst4_lane_s16(&out[8]+0*4, z, 1);

    }
}



$ arm-none-linux-gnueabi-gcc -mfloat-abi=softfp -mfpu=neon -O1 -o
insn-unsat-constr.o -c insn-unsat-constr.c
insn-unsat-constr.c: In function 'test':
insn-unsat-constr.c:19:1: error: insn does not satisfy its constraints:
(insn 40 38 26 2
/scratchbox/compilers/arm-linux-gnueabi-gcc4.5.1-2010.09-50/bin/../lib/gcc/arm-none-linux-gnueabi/4.5.1/include/arm_neon.h:10277
(set (reg:OI 95 d16 [orig:152 __b ] [152])
        (mem/s/c:OI (pre_dec:SI (reg/f:SI 3 r3 [151])) [0 __b+0 S32 A64])) 740
{*neon_movoi} (expr_list:REG_INC (reg/f:SI 3 r3 [151])
        (nil)))
insn-unsat-constr.c:19:1: internal compiler error: in
reload_cse_simplify_operands, at postreload.c:403
Please submit a full bug report,
with preprocessed source if appropriate.



$ arm-none-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=/scratchbox/compilers/arm-linux-gnueabi-gcc4.5.1-2010.09-50/bin/arm-none-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/scratchbox/compilers/arm-linux-gnueabi-gcc4.5.1-2010.09-50/bin/../libexec/gcc/arm-none-linux-gnueabi/4.5.1/lto-wrapper
Target: arm-none-linux-gnueabi
Configured with: /scratch/nathan/arm-lite/src/gcc-4.5-2010.09/configure
--build=i686-pc-linux-gnu --host=i686-pc-linux-gnu
--target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap
--disable-libssp --disable-libstdcxx-pch --enable-extra-sgxxlite-multilibs
--with-arch=armv5te --with-gnu-as --with-gnu-ld --with-specs='%{save-temps:
-fverbose-asm}
%{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables}
-D__CS_SOURCERYGXX_MAJ__=2010 -D__CS_SOURCERYGXX_MIN__=9
-D__CS_SOURCERYGXX_REV__=50 %{O2:%{!fno-remove-local-statics:
-fremove-local-statics}} %{O*:%{O|O0|O1|O2|Os:;:%{!fno-remove-local-statics:
-fremove-local-statics}}}' --enable-languages=c,c++ --enable-shared
--enable-lto --enable-symvers=gnu --enable-__cxa_atexit
--with-pkgversion='Sourcery G++ Lite 2010.09-50'
--with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls
--prefix=/opt/codesourcery
--with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc
--with-build-sysroot=/scratch/nathan/arm-lite/install/arm-none-linux-gnueabi/libc
--with-gmp=/scratch/nathan/arm-lite/obj/host-libs-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr
--with-mpfr=/scratch/nathan/arm-lite/obj/host-libs-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr
--with-mpc=/scratch/nathan/arm-lite/obj/host-libs-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr
--with-ppl=/scratch/nathan/arm-lite/obj/host-libs-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr
--with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm'
--with-cloog=/scratch/nathan/arm-lite/obj/host-libs-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr
--with-libelf=/scratch/nathan/arm-lite/obj/host-libs-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr
--disable-libgomp --enable-poison-system-directories
--with-build-time-tools=/scratch/nathan/arm-lite/install/arm-none-linux-gnueabi/bin
--with-build-time-tools=/scratch/nathan/arm-lite/install/arm-none-linux-gnueabi/bin
Thread model: posix
gcc version 4.5.1 (Sourcery G++ Lite 2010.09-50)

Reply via email to