On Thu, 10 Sep 2026, Richard Sandiford wrote: > Building mmix with config-list.mk failed due to: > > .../gcc/except.cc: In function ?void > expand_dw2_landing_pad_for_region(eh_region)?: > .../gcc/except.cc:975:36: error: comparison of integer expressions of > different signedness: ?int? and ?unsigned int? [-Werror=sign-compare] > 975 | if (EH_RETURN_DATA_REGNO (0) != INVALID_REGNUM) > .../gcc/except.cc:985:36: error: comparison of integer expressions of > different signedness: ?int? and ?unsigned int? [-Werror=sign-compare] > 985 | if (EH_RETURN_DATA_REGNO (1) != INVALID_REGNUM) > > That is, target-independent code expects EH_RETURN_DATA_REGNO > to be unsigned.
Whoops. Caused by a recent change? > Changing mmix_eh_return_data_regno required various regno variables > in mmix.cc to become unsigned, but other code is still written for > signed regnos. Hm, not sure why. Manybe because yet other code requires signedness. Anyway... > Rather than go down the rabbit hole of making > everything consistent, it seemed easiest to limit the scope of > each variable. > > Tested with config-list.mk. OK to install? Ok, thanks! > Richard > > > gcc/ > * config/mmix/mmix-protos.h (mmix_eh_return_data_regno): Return > unsigned int rather than int. > * config/mmix/mmix.cc (mmix_eh_return_data_regno): Likewise. > (mmix_initial_elimination_offset): Limit regno variables to > their for loops and use unsigned regnos for EH data queries. > (mmix_use_simple_return): Likewise. > (mmix_expand_prologue): Likewise. > (mmix_expand_epilogue): Likewise. brgds, H-P
