On Thu, 2009-07-23 at 11:52 +0100, Dave Korn wrote: > Danny Backx wrote: > > On Thu, 2009-07-23 at 10:07 +0100, Dave Korn wrote: > > > Kai Ruottu wrote : > >> Comparing the output from some earlier working GCC with the gcc-4.4.0 > >> output would reveal if something was wrong in preparing inputs for > >> the soft-float routines... Or maybe something was changed in the > >> soft-float routines... What if you try a 'libgcc.a' taken from some > >> earlier working GCC ? > > > > Did that, see below. I think this means that the stuff in libgcc.a cause > > the issue. > > Could this be related to old-vs-new EABI?
What's old vs new EABI ? An earlier search on eabi on the mailing list archive indicated that this was ELF related. Did I draw the wrong conclusion ? > Is the stack aligned to the same > multiple on entry to main in both old and new executables? The assembler code > looked basically the same, except the stack frame size has changed and a lot > of things that were aligned to an (odd/even) multiple of 8 may now be aligned > to an (even/odd) multiple instead. Hmm, not sure why you say that. Again my ARM assembler knowledge is really too limited for this, but the difference between float.S and ofloat.S (see the link in my earlier message) appears to match the amount of registers pushed on the stack at the entry of main : ## ofloat.S (gcc 4.1) : main: @ args = 0, pretend = 0, frame = 36 @ frame_needed = 1, uses_anonymous_args = 0 mov ip, sp stmfd sp!, {r4, fp, ip, lr, pc} sub fp, ip, #4 sub sp, sp, #40 str r0, [fp, #-48] str r1, [fp, #-52] bl __gccmain ## float.S (gcc 4.4) : main: @ args = 0, pretend = 0, frame = 36 @ frame_needed = 1, uses_anonymous_args = 0 stmfd sp!, {r4, fp, lr} add fp, sp, #8 sub sp, sp, #40 str r0, [fp, #-40] str r1, [fp, #-44] bl __gccmain Also a change in offsets I see (e.g. just above the bl statement) from -48 to -40 should not change alignment from multiple of 8 to something that's not a multiple of 8. (It might in a general case but it wouldn't explain the failure of this program.) Danny -- Danny Backx ; danny.backx - at - scarlet.be ; http://danny.backx.info