This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ARM interworking with different linker sections


Hi Eric,

> Function main (arm function) calls LedLoop_rom_thumb (thumb function) which
> calls SetLeds (arm function)
> Calling LedLoop_rom_thumb works well, the interworking stub
> LedLoop_rom_thumb_from_arm is called at 0xee4 which calls LedLoop_rom_thumb at
> 0x1315 (0x1314 with thumb mode bit). However the call to SetLeds is translated
> in a call to 0x2128. At this location there is no code or data present.
> arm-objdump -S a.out reveils that the stub SetLeds_from_thumb is located at
> 0xedc.
> 
> When I move LedLoop_rom to segment .text all works well.
> When I move LedLoop_rom and SetLeds to segment .text all works well too.
> 
> Who can help?

Please can you supply som emore details of the problem:

  * What version of the compiler, assembler and linker are you using ?

  * Do you have a *small* reproducible test case that demonstrates the
    problem ?

Cheers
        Nick


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]