This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [PATCH] ld: add switch to disable use of BLX instructions
> If this is moving to a single '[no-]use' option, then why do we need
> ...
>
> > @@ -625,6 +628,10 @@ PARSE_AND_LIST_ARGS_CASES='
> > use_blx = 1;
> > break;
> >
> > + case OPTION_NO_USE_BLX:
> > + no_use_blx = 1;
> > + break;
> > +
>
> ... 'use_blx' and 'no_use_blx'. Seems like we just need one of
> them.
>
Because "use_blx" means "force armv5 style interworking" and "no_use_blx" means "force armv4t style interworking". If you just set "use_blx" to 0 the linker picks for you. On a linker configured as "--with-arch=armv7-a --with-cpu=cortex-a9 --with-tune=cortex-a9" it *always* picks armv5 style interworking, even if all object files were compiled as "-mcpu=arm7tdmi -march=armv4t -mthumb-interwork"
-Allen
nvpublic