Hi Maciej, On Mon, Dec 10, 2018 at 11:32:46PM +0000, Maciej W. Rozycki wrote: > On Mon, 10 Dec 2018, Paul Burton wrote: > > > And I realise that undoing that but keeping n64 in our own filenames & > > macros is another type of inconsistency, but something imperfect is > > unavoidable at this point given that the engineers way back when decided > > to use "ABI64" for n64. > > My feeling has been n32 was invented at SGI as an afterthought, hence the > choice of having ABI32 or ABI64 defined for the 32-bit (now o32) and the > 64-bit (now n64) ABI respectively was reasonable. I'd agree if _MIPS_SIM were defined as _ABI32 for o32, but: $ mips-linux-gcc -mabi=32 -dM -E - </dev/null | grep ABIO32 #define _ABIO32 1 #define _MIPS_SIM _ABIO32 ...so _MIPS_SIM is: _ABIO32 for o32 _ABIN32 for n32 _ABI64 for n64 That doesn't seem very consistent to me, and means that there inevitably has to be some ugliness once there are multiple 64-bit ABIs. To me it feels like the result of someone thinking "one 64-bit MIPS ABI ought to be enough for anybody". I'm undecided whether that person was shortsighted or a genius whose vision was simply incomprehensible to those of us that followed. Thanks, Paul