On Sat, 2013-06-22 at 14:32 +0200, BERTRAND Joël wrote: > Hello, > > I have bissected the code and found the faulty .o. I have attached > assembly output. idt.gcc46.s is the good one. If L4 is linked with > idt.gcc.47.s, it only reboots. The code of 4.6 and 4.7 seems to be pretty much the same, except for differences in the register allocations. (I removed all .cfi lines before doing a diff) However, maybe the following difference ... 4.6: .section .ctors.10003,"aw",@progbits .align 8 .quad _GLOBAL__sub_I.55532_idt ... 4.7: .section .init_array.55532,"aw" .align 8 .quad _GLOBAL__sub_I.55532_idt (different sections being used) ... triggers another problem somewhere else? Maybe .init_array is not handled by the startup code or something like that? I'm just guessing... Cheers, Oleg