[patch] enabling vectorization by default at -O3

Richard Guenther richard.guenther@gmail.com
Wed Sep 19 15:16:00 GMT 2007


On 9/19/07, Dorit Nuzman <DORIT@il.ibm.com> wrote:
> > On 9/18/07, Dorit Nuzman <DORIT@il.ibm.com> wrote:
> > > committed.
> >
> >
> > And this causes a regression on spu-elf with PCH.
> > FAIL: gcc.dg/pch/static-3.c  -O3 -fomit-frame-pointer  (internal
> > compiler error)
> >
> > The backtrace:
> > #0  0x1082f1f0 in build_pointer_type_for_mode (to_type=0xa5a5a5a5,
> > mode=SImode, can_alias_all=0 '\0') at
> > /home/apinski/src/local/gcc/gcc/tree.c:5400
> > #1  0x1082f990 in build_pointer_type (to_type=0xa5a5a5a5) at
> > /home/apinski/src/local/gcc/gcc/tree.c:5437
> > #2  0x1016e980 in build_call_expr (fndecl=0xf7d721e0, n=1) at
> > /home/apinski/src/local/gcc/gcc/builtins.c:10568
> > #3  0x10a75e24 in vect_setup_realignment (stmt=0xf7bbafe0,
> > bsi=0xfffb6148, realignment_token=0xfffb6010,
> > alignment_support_scheme=dr_explicit_realign_optimized,
> >     init_addr=0xf7db3940, at_loop=0xfffb6018) at
> > /home/apinski/src/local/gcc/gcc/tree-vect-transform.c:5074
> >
> >
> > The value which is returned by targetm.vectorize.builtin_mask_for_load
> > () is being GC'd away.
> >
>
> does this fix it? (I only checked that the cross make works; don't have a
> way to do regression testing on the spu right now)
>
> (See attached file: spufix.txt)

I don't think annotating a function call result works.  Rather in spu.c

struct spu_builtin_description spu_builtins[] = {
#define DEF_BUILTIN(fcode, icode, name, type, params) \
  {fcode, icode, name, type, params, NULL_TREE},
#include "spu-builtins.def"
#undef DEF_BUILTIN
};

misses a GTY(()).

Richard.



More information about the Gcc-patches mailing list