Take: #define vector __attribute__((vector_size(16) )) vector unsigned int f(int a) { vector unsigned int mask = a ? (vector unsigned int){ 0x80000000, 0x80000000, 0x80000000, 0x80000000 } : (vector unsigned int){0}; return mask; } --- CUT --- This ICEs in 4.3.3 but not 4.4.0, it does not ICE in 4.2.0 though.
-- Summary: [4.3 Regression] ICE with vector code Product: gcc Version: 4.3.3 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38565