------- Comment #3 from pault at gcc dot gnu dot org 2007-04-12 19:37 ------- What is really odd is that the same code (see below) is produced, with or without the ONLY... It looks fine in either case and identical to that produced by 4.2. *sigh*
Is this a problem with the backend? Paul dummy_atom_list_init_copy (this, other) { int8 D.1373; int8 D.1372; struct dummy_atom[0:] * D.1371; int8 D.1370; int8 D.1369; struct dummy_atom[0:] * D.1368; D.1368 = (struct dummy_atom[0:] *) other->table.data; D.1369 = other->table.offset; D.1370 = (int8) other->nused; D.1371 = (struct dummy_atom[0:] *) this->table.data; D.1372 = this->table.offset; D.1373 = (int8) this->nused; { int8 D.1376; int8 D.1375; int8 S.0; D.1375 = other->table.dim[0].stride; D.1376 = this->table.dim[0].stride; S.0 = 1; while (1) { if (S.0 > (int8) other->nused) goto L.1; (*D.1371)[S.0 * D.1376 + D.1372] = (*D.1368)[S.0 * D.1375 + D.1369]; S.0 = S.0 + 1; } L.1:; } } -- pault at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |pinskia at gcc dot gnu dot | |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31550