------- Comment #58 from mikulas at artax dot karlin dot mff dot cuni dot cz
2009-10-15 20:24 -------
(In reply to comment #53)
> Created an attachment (id=18656)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18656&action=view) [edit]
> An updated patch for gcc 4.4
Seamonkey is correct with that patch. But it fails with structures containing
sse vector, i.e. this. My patch (in comment #46) handles this case correctly
(it reallign the stack if any structure on it has alignment at least 16), so
should we submit that patch instead?
I think it's wrong to add alignment test to the autovectorizer because vector
data types can be created explicitly without autovectorizer.
Mikulas
typedef int v4si __attribute__ ((vector_size (16)));
struct x {
v4si v;
v4si w;
};
void y(void *);
v4si x(void)
{
struct x x;
y(&x);
}
--- the function "x" should realign the stack but doesn't.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40838