I recompiled newlib and double checked what binutils version was used during linking stage. Unfortunately still have no success. What I found is that almost __from_arm stubs all broken - there are zeros in there instead of proper code. Only one stub __from_arm is OK (the call comes from assembly file) and all __from_thumb calls looks OK in dissassembly. There is another weird thing I found when I've converted from .elf to binary using "arm-elf-objcopy -O binary" command. The resulting binary values generated for these stubs code are 4 byte shifted towards front of the file. For example stub code starting on 0x5EA8 address in dissassembly file starts on 0x5EA4 address in resulting binary. The rest binary code (I mean non stub) is in the right places. Have you got any suggestions? Thanks Adam Miguel Angel Ajo Pelayo wrote: > > I think I didn't need to recompile the newlib, but try it, and check > that your new ld/gcc is being effectively used at link time. > > Miguel Ángel > -- View this message in context: http://www.nabble.com/gcc-4.4.0-arm-thumb-interwork-_from_arm-bad-stub-generation-tp24016313p24256254.html Sent from the gcc - Help mailing list archive at Nabble.com.