dse.c has struct store_info { ... /* An bitmask as wide as the number of bytes in the word that contains a 1 if the byte may be needed. The store is unused if all of the bits are 0. */ long positions_needed; };
... record_store () { ... gcc_assert ((unsigned) width < sizeof (store_info->positions_needed) * CHAR_BIT); ... } AVX register is 32byte wide. On ia32, since width is 32 and long is 4 byte, assert fails. This scheme doesn't work. How should it be fixed? -- Summary: DSE doesn't support targets with wide registers Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: hjl dot tools at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35897