[PATCH] powerpc: Add missing insn in swapcontext [BZ #20004]
Paul E. Murphy
murphyp@linux.vnet.ibm.com
Thu Apr 28 16:39:00 GMT 2016
On 04/28/2016 10:37 AM, Carlos O'Donell wrote:
> On 04/28/2016 10:36 AM, Paul E. Murphy wrote:
>> A missing instruction was discovered in the compat version of
>> swapcontext while running the GCC test suite.
>>
>> 2016-04-28 Paul E. Murphy <murphyp@linux.vnet.ibm.com>
>> Segher Boessenkool <segher@gcc.gnu.org>
>>
>> [BZ #20004]
>> * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S:
>> (__novec_swapcontext): Add missing load.
>> ---
>> sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
>> index a166dcc..a05a9cc 100644
>> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
>> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
>> @@ -163,6 +163,7 @@ ENTRY(__novec_swapcontext)
>> cmpdi r0,0
>> bne L(nv_do_sigret)
>>
>> + ld r8,.LC__dl_hwcap@toc(r2)
>> # ifdef SHARED
>> /* Load _rtld-global._dl_hwcap. */
>> ld r8,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET(r8)
>>
>
> How did you test this?
A slightly hacked up, debate-ably correct, example provided by the
makecontext man page, which is modified to explicitly call the old
version. I directly linked the generated object files.
Without this patch it segfaults. With it, seemingly expected output.
More information about the Libc-alpha
mailing list