------- Comment #17 from jamborm at gcc dot gnu dot org  2009-06-08 17:49 
-------
(In reply to comment #16)
> Wait, (In reply to comment #15)
> > (In reply to comment #11)
> > > It is caused by revision 147980:
> > > 
> > > http://gcc.gnu.org/ml/gcc-cvs/2009-05/msg00959.html
> > > 
> > 
> > Revision 147978 also does not work if you compile the testcase with
> > the -fno-tree-sra switch.
> > 
> > New SRA uncovers this problem because it sees the structure containing
> > only a  single field  always accessed  as a structure  and never  as a
> > scalar and so  does not scalarize it.  Something  goes wrong later on,
> > probably when  expanding to RTL.  Unfortunately, I  cannot help fixing
> > that.
> 
> I think that should always scalarize as it is a single field as it is always
> better to scalarize single field structs (except maybe bitfield ones).

Well, Richi seems to disagree:

http://gcc.gnu.org/ml/gcc-patches/2009-06/msg00637.html

I am not  sure myself, I believe  that there are not so  many cases in
which  this would  prove  beneficial.  When  there  are no  operations
performed on the  scalars, the only situation I can  think of would be
some extensive copy propagation.

Martin


-- 


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

Reply via email to