------- 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