No, sbitmaps are not used in invalid_mode_change_p which is culprit
function. The problem is, that with -mcpu=G4 the subregs_of_mode
bitmap
(_not_ sbitmap) is sparsely filled up to bit 981728 in 197 list
elements.
For G5 it is filled up to bit 1621359 scattered over 9011 elements.
I.e.
not as sparse. The function in question iterates over a subset of
bits in
that bitmap, starting with a predefined one. It is searching for the
element containing this start bit which is so much slower with G5.
I suspect the same reason as David mentioned why this bitmap is filled
with more bits. There simply are more references to subregs.