|
Message-ID: <CAJ86T=UMe46n1F1fLuu=D4twpr+S3kexmSoo9LLvtWmK0dEJWg@mail.gmail.com> Date: Wed, 18 Sep 2019 10:52:13 -0700 From: Andre McCurdy <armccurdy@...il.com> To: Khem Raj <raj.khem@...il.com> Cc: musl@...ts.openwall.com Subject: Re: [PATCH] arm: avoid conditional branch to PLT in sigsetjmp.s On Wed, Sep 18, 2019 at 7:29 AM Khem Raj <raj.khem@...il.com> wrote: > On Tue, Sep 17, 2019 at 11:04 PM Andre McCurdy <armccurdy@...il.com> wrote: > > > > The R_ARM_THM_JUMP19 relocation type generated for the original code > > when targeting Thumb 2 is not supported by the gold linker: > > > > | .../arm-oe-linux-musleabi/9.2.0/ld: error: conditional branch to PLT in THUMB-2 not supported yet. > > | src/signal/arm/sigsetjmp.s:9: error: unexpected opcode while processing relocation R_ARM_THM_JUMP19 > > if it is thumb2 specific another option could be to use `it eq` before > beq which should turn branch into an unconditional branch, which then > uses R_ARM_THM_JUMP24 relocation that has a range of 16MB. That would work too. Thumb 2 specific code would need to be guarded by #ifdef __thumb2__ though (which I think implies also renaming the file from .s to .S ?) and I'm not sure if the extra complexity justifies saving one instruction in the ARM case.
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.