Messages in this thread |  | | From | "H. Peter Anvin" <> | Subject | Re: Where is it written? | Date | 10 Nov 2000 17:10:00 -0800 |
| |
Followup to: <20001110192751.A2766@munchkin.spectacle-pond.org> By author: Michael Meissner <meissner@spectacle-pond.org> In newsgroup: linux.dev.kernel > > Generally with ABIs you don't want to mess with it (otherwise you can't be > guaranteed that a library built by somebody else will be compatible with your > code, without all sorts of bits in the e_flags field). It allows multiple > compilers to be provided that all interoperate (as long as they follow the same > spec). > > Don't get me wrong -- in my 25 years of compiler hacking, I've never seen an > ABI that I was completely happy with, including ABI's that I designed myself. > ABIs by their nature are a compromise. That particular ABI was short sighted > in that it wants only 32-bit alignment for doubles, instead of 64-bit alignment > for instance, and also doesn't align the stack to higher alignment boundaries. >
We can mess with the ABI, but it requires a wholescale rev of the entire system. We have had such revs before -- each major rev of libc is one -- but they are incredibly painful. However, if we find ourselves in a situation where there are enough reasons to introduce libc.so.7 then perhaps looking at some revs to the ABI might be in order -- passing arguments in registers and aligning the stack to 64 bits probably would be the main items.
-hpa -- <hpa@transmeta.com> at work, <hpa@zytor.com> in private! "Unix gives you enough rope to shoot yourself in the foot." http://www.zytor.com/~hpa/puzzle.txt - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |