------- Additional Comments From wilson at gcc dot gnu dot org 2004-11-11 05:19 ------- This looks like the same problem as 18294 which is an ia64-hpux bootstrap failure. In that PR, I suggested that simplify_gen_subreg should just create the subreg for a hard register when simplify_subreg does not, but I haven't looked at this very closely. This problem occurs early, during virtual register instantiation.
The patch in comment #11 is flawed. It has + && GET_MODE_SIZE (innermode) != GET_MODE_SIZE (innermode))) which will always be false. Probably one of these was meant to be outermode. If we are trying to prevent reload from creating subregs, then maybe the reload_completed check could instead be !reload_in_progress. This is just a random guess though. I haven't tried looking at Ulrich Weigand's patch yet. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18420