Patrice Mandin a écrit :
It's obvious that you could end with an odd pointer if either section has an odd length, not counting the fact that aligning the stack on 4 byte boundaries will help performance.
Very true.In the latest binutils patches, I have double checked that gas always produce sections multiple of 4 bytes. This allows the assembler to honor the alignment requests on 2 or 4 bytes. Since all the sections of the input files should be multiple of 4 bytes, there is no additional check in the linker, it simply merges all the sections into the segments. Then the end of the bss of the text segment is aligned on 4 bytes, as well as the stack.
I saw in one of the logs that Helmut use the old binutils 2.13, I don't remember how these ones behave.
-- Vincent Rivière