This is the mail archive of the 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: Semi-Latent Bug in tree vectorizer

On Fri, Apr 08, 2005 at 10:52:02AM -0600, Jeffrey A Law wrote:
> > There's a rather annoying bug in the vectorizer which can cause us to
> > have SSA_NAMEs which are used, but never defined.
> > 
> > Consider this testcase compiled with -msse2 -ftree-vectorize:
> > 
> > typedef char achar __attribute__ ((__aligned__(16)));
[ and we then use arrays of achar ]

On Fri, Apr 08, 2005 at 06:58:54PM +0200, Jakub Jelinek wrote:
> See middle-end/20794, there is discussion about declaring this
> invalid.  When a type with size that is not an integral multiple
> of alignment (e.g. smaller size than alignment) is used in an
> array, we have the choice either to violate the alignment
> request for second and some subsequent array elements,
> or make the elements bigger, but then pointer arithmetics
> won't work very well.

The problem, then, is that there's no way for the user to specify
that we have an array whose beginning has, say, 16-byte alignment,
but that after that, the elements have their ordinary sizes (meaning
that subsequent elements are not aligned).

Or, at least, if there is a way I don't know what it is.

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