This is the mail archive of the binutils@sourceware.org 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] global Thumb to ARM branches broken



The reason for having this logic in the assembler is for the case where
you have function calls / branches to transform from one state to the
other and push the rest out to the linker to handle by veneering. For
arch versions that didn't have the equivalent {x} variant we would want
to push out the relocations.

I don't understand why your patch to md_pcrel_from_section does not involve S_IS_EXTERNAL, while your patch to md_apply_fix does. Could you explain it to me?


Finally, I am not sure about the new behaviour of
arm_force_relocation(): it now returns 1 in several new occurrences, but
the corresponding relocations do not appear in the object file (see
blx-local test)

I'll have to take another look at this and get back to you.


Actually, it seems that I misunderstood the purpose of arm_force_relocation. It just triggers a flag for gas internal use, which is set appropriately in md_apply_fix.

Christophe.


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