Hi Maciej, 在 2023/8/12 01:43, Maciej W. Rozycki 写道: > Hi Florian, > > Cc-ing binutils now, to get a record of this discussion there. > >>> The EF_* definitions were added on top of preexisting E_* macros back in >>> 1998 by Ulrich Drepper with commit c3966b88eeb ("Update.") and only this: >>> >>> * elf/elf.h: Add lots of new symbols from Irix and Solaris. >> My concern was adding EF_* constants to glibc that duplicate E_* >> constants that are used in binutils. I think we should either change >> binutils to use the EF_* constants, too, or for these legacy constants, >> use the E_* prefix in glibc as well. > It's not a problem: as long as we reach consensus I can update binutils > accordingly, and we can discard E_* constants from there at any time if > needed as they are for BFD use only and we don't offer any stable BFD API.   Thanks for your detailed investigation.  If we use EF_MIPS_* in glibc and update binutils, the places where all E_MIPS_* used would also be changed to EF_MIPS_*? Thanks, Ying >> Not sure if this a reasonable position, though. > So I did a little more research on this topic and came across this thread > of mine from decades ago, and specifically this message coming from the > lost world: . > Clearly IRIX used to use EF_* macros, just as I thought and just as has > used the Linux kernel (and MTI never came to finishing their promised > psABI spec, where it only says "To be supplied" in the relevant part[1]). > > So while we may have to keep the few already existing in , just > because we were unfortunate enough to make them a part of our API back in > 1996: > > * elf/elf.h: Add some new constants from recent Cygnus ELF > header files. > > having likely taken them as a Cygnus invention without due consideration, > I think we ought to refrain from adding new E_* macros and stick to EF_* > instead. > > NB the whole thread referred above might be worth reviewing for anyone > interested in these matters. Here's a reference for the earlier part: > > as the discussion started on the old MIPS/Linux mailing lists first and > then was carried over to binutils as well. > > References: > > [1] "MIPS ABIs Described", MIPS Technologies, Inc., Document Number: > MD00305, Revision 1.3, 2002/12/02, Chapter 7. "ELF object code", p. 24 > > > Maciej