Question for ARM experts

Kris Warkentin kewarken@qnx.com
Wed Jun 30 20:40:00 GMT 2004


In arm-tdep.c I see that if we get GDB_OSABI_UNKNOWN we assume 
GDB_OSABI_ARM_APCS.  What would the consequences of not doing that be 
for other arm targets?

The problem is, there isn't anything particularily distinct about QNX 
Neutrino binaries so I've got a generic Neutrino sniffer that basically 
says, "Am I connected to a Neutrino target?  Okay, then let's use the 
Neutrino ABI stuff."  Arm is the only one that falls apart for this 
because when I return GDB_OSABI_QNXNTO and arm_elf_osabi_sniffer() in 
arm-tdep.c returns APCS, gdbarch_lookup_osabi() goes, "Argh!! Two 
OSABIs...*choke*"

So here's the thing: if I allow arm_elf_osabi_sniffer to return 
GDB_OSABI_UNKNOWN in the case of ELFOSABI_ARM, my sniffer works fine. 
The question is, if we allow the APCS fallback in the case of 
ELFOSABI_UNKNOWN but not in ELFOSABI_ARM, is that going to break the world?

If so, does anyone have any suggestions for how to deal with this?

cheers,

Kris



More information about the Gdb mailing list