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]

[PATCH ARM] Request to revert fix for bug 15302


Hello,

The committed fix for Bug 15302 is too aggressive and will apply
ST_BRANCH_TO_THUMB to symbol that represents function name with weak
attribute or array name of function pointer. Subsequently this causes LD set
the last bit of their address to 1. For code like below:

void foo() __attribute__((weak));
void (*fp)() = foo; // the fp is not zero even when no none defines the foo.
if (fp != NULL)
   fp();

or

extern void (*bar[]) (void) __attribute__((weak));

The last of bit of bar is set to 1. So the bar[1] will be a fault access.

Thus I request to revert this fix for the time being and I shall provide a
better patch. Sorry for any inconvenience.

BR,
Terry



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