Some further progress notes (going is slow for the moment, holidays + other commitments):
All official GCC releases back to 4.8.0 exhibit the problem with base stack frames (broken C++ exceptions, debugging isn't reliable)
I've verified that the GIT version before IRIX support was removed is OK
I've verified that the GIT version after IRIX support was removed (and re-patched with our approach) is OK
Interestingly, patching support back in doesn't require forcing DWARF to version 2 and strictness in iris6.h - and in fact doing that that breaks base stack frames.
One other thing of interest - I've seen internal compiler errors when attempting to build some of these old GCC versions using our "semi-working GCC8" - so for the moment I'm bootstrapping these test versions using 4.7.4.
I'm currently building some tooling to automate as much of the "patch back irix support" - so now the job is to start bisecting between the version after IRIX support removal - and 4.8.0.
Same pre-reqs and cycle of builds as per the other gcc versions.
I'll start a clean build of everything in "didbs" and make a tarball available over the next week with prebuilt versions for mips4/n32 so that people can kick the tyres without having to go through the pain of re-producing the build.