Jakub Jelinek <ja...@redhat.com> writes: > Hi! > > See Trevor's comments on ChangeLog. > > diff --git a/gcc/reload.h b/gcc/reload.h > index c777e54..ae86150 100644 > --- a/gcc/reload.h > +++ b/gcc/reload.h > @@ -168,7 +168,7 @@ struct target_reload { > value indicates the level of indirect addressing supported, e.g., two > means that (MEM (MEM (REG n))) is also valid if (REG n) does not get > a hard register. */ > - bool x_spill_indirect_levels; > + int x_spill_indirect_levels; > > /* True if caller-save has been reinitialized. */ > bool x_caller_save_initialized_p; > > I believe this got broken with the switchable target support changes, > previously it was using char spill_indirect_levels global.
Doh, sorry. I think I must have failed to take the last part of the comment into account and got the impression this was one of those old-style pre-C++ "char that's really boolean" variables. The name should have given me another clue though... > I think no target supports 128 levels of memory indirections, most targets > support zero or 1, so I'd vote for just using char instead of int here. > Otherwise the structure wouldn't pack too well. Fine with me FWIW, but let's at least make it signed char or unsigned char rather than leaving the signedness to chance. Thanks, Richard