https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100269
--- Comment #1 from Iain Sandoe <iains at gcc dot gnu.org> --- Created attachment 50705 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50705&action=edit patch under test It doesn't seem that the rationale for the changes in r12-35/36 is captured anywhere I could find - and the commit messages don't contain anything helpful. This is my current guess at a more complete fix .. I tried it on i686-darwin9 (with an m64 multilib) and x86_64-darwin17 (with an m32 multilib) - but I haven't tried it on a system with no multilib (e.g. x86_64-darwin20).