ELF file header e_machine number registration question

Hi folks,

At some stage I'd like to submit to upstream lldb some changes to ArchSpec.h/.cpp and ELF.h which contain entries for some of CSR's Kalimba processors.

One concern of ours is the fact that the e_machine number our toolchain puts in our ELF files was not registered with the System V ABI. For historic reasons we chose a pseudo-random number 0x72ec (decimal 29420).

Is it permissible for me to continue to use this number, and submit into llvm/include/llvm/Support/ELF.h the following:

+ EM_KALIMBA = 29420 // Kalimba

Or is it the llvm/lldb practice that the machine architectures listed in the above file must be officially with the ABI people?

At CSR we have briefly discussed the idea and although we could retrospectively register our processors, we would then stop putting 0x72ec in our ELFs, and that would break a lot of previously written tools.

Could somebody please clarify this point for me?

Matthew Gardiner

Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom
More information can be found at www.csr.com. Keep up to date with CSR on our technical blog, www.csr.com/blog, CSR people blog, www.csr.com/people, YouTube, www.youtube.com/user/CSRplc, Facebook, www.facebook.com/pages/CSR/191038434253534, or follow us on Twitter at www.twitter.com/CSR_plc.
New for 2014, you can now access the wide range of products powered by aptX at www.aptx.com.