This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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: [PATCH] powerpc: fix ifunc-sel.h with GCC 6


On 2016-07-21 14:48, Tulio Magno Quites Machado Filho wrote:
> Aurelien Jarno <aurelien@aurel32.net> writes:
> 
> > On 32-bit PowerPC GCC 6 always saves the PIC register on the stack in
> > the prologue and adjust the stack in the epilogue. It is therefore not
> > possible anymore to just exit the function in the inline asm code,
> > otherwise it corrupts the stack pointer. This causes the following tests
> > to fail when using GCC 6:
> >
> > FAIL: elf/ifuncmain1
> > FAIL: elf/ifuncmain1pic
> > FAIL: elf/ifuncmain1picstatic
> > FAIL: elf/ifuncmain1pie
> > FAIL: elf/ifuncmain1staticpic
> > FAIL: elf/ifuncmain1staticpie
> > FAIL: elf/ifuncmain1vis
> > FAIL: elf/ifuncmain1vispic
> > FAIL: elf/ifuncmain1vispie
> > FAIL: elf/ifuncmain2pic
> > FAIL: elf/ifuncmain2picstatic
> > FAIL: elf/ifuncmain3
> > FAIL: elf/ifuncmain4picstatic
> > FAIL: elf/ifuncmain5
> > FAIL: elf/ifuncmain5picstatic
> > FAIL: elf/ifuncmain5staticpic
> >
> > The solution is to replace the beqlr instructions by a beq to the end
> > of the inline asm code. This fixes all the above failures.
> >
> > ChangeLog:
> > 	* sysdeps/powerpc/ifunc-sel.h (ifunc_sel): Replace beqlr instructions
> > 	by beq instructions jumping to the end of the function.
> 
> I'd prefer to remove this file.
> 
> Alan, do we still need this file?

Now that 2.25 is open for development, what should we do? I think we can
get the patch in, and try to remove this file in a second step.

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net


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