This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils 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/Thumb Interwork


> hi all,
> 
> i'm working on a tool that reads and analyzes arm/thumb elf files 
> produced by gcc. to do this i need to be able to distinguish between arm 
> and thumb code fragments.
> 
> arm eabi 2.0 extends generic elf standard to specify how to distinguish 
> between arm and thumb code fragments. however, it seems that the cross 
> gcc that i have does not follow arm eabi 2.0. so what is the convention 
> that gcc follows and how to learn about it?
> 
> with the help of 'objdump', i cud see that calls to arm functions from 
> thumb code and vice versa is supported thru special wrapper functions 
> (__<func>_from_thumb and __<func>_from_arm). this technique will not 
> work for a function having a mix of arm and thumb code. are such 
> functions supported? what happens if a relocatable object is generated 
> with -mcallee-super-interworking?
> 

GNU tools currently mark Thumb function symbols with type STT_THUMB_FUNC.  
I'm hoping that we will be able to migrate the GNU tools over to the new 
ARM ABI specs, but it's going to be a fair amount of work.

R.


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