This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
examples of such functions are 1. a function compiled with -mcallee-super-interworking 2. __<arm_func>_from_thumb
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.
-- -0-1-2-3-4-5-6-7-8-9-0-1-2-3-4-5-6-7 Soubhik Bhattacharya Member Technical Staff Mentor Graphics Hyderabad, India. -0-1-2-3-4-5-6-7-8-9-0-1-2-3-4-5-6-7
------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |