On Mon, Dec 19, 2016 at 11:28:44PM +0100, Andreas Cadhalpun wrote: > On 16.12.2016 04:08, Michael Niedermayer wrote: > > On Fri, Dec 16, 2016 at 02:36:53AM +0100, Andreas Cadhalpun wrote: > >> Otherwise the build fails when configuring with --toolchain=hardened > >> --disable-pic on i386 using gcc 4.8: > >> error: PIC register clobbered by '%ebx' in 'asm' > >> > >> Signed-off-by: Andreas Cadhalpun <andreas.cadhal...@googlemail.com> > >> --- > >> libswscale/x86/hscale_fast_bilinear_simd.c | 20 ++++++++++---------- > >> 1 file changed, 10 insertions(+), 10 deletions(-) > >> > >> diff --git a/libswscale/x86/hscale_fast_bilinear_simd.c > >> b/libswscale/x86/hscale_fast_bilinear_simd.c > >> index 2cba5f0..3f0f5f5 100644 > >> --- a/libswscale/x86/hscale_fast_bilinear_simd.c > >> +++ b/libswscale/x86/hscale_fast_bilinear_simd.c > >> @@ -199,7 +199,7 @@ void ff_hyscale_fast_mmxext(SwsContext *c, int16_t > >> *dst, > >> #if ARCH_X86_64 > >> uint64_t retsave; > >> #else > >> -#if defined(PIC) > >> +#if defined(PIC) || defined(__PIE__) > > > > please correct me if iam wrong > > our configure adds -DPIC to define PIC when its enabled, > > it does not add that in this case but gcc is still generating PIC code > > that doesnt seem good > > gcc does not generate PIC, only PIE, which is subtly different.
does all the code under PIC work with PIE that does not have PIC set ? the identifier seems used a bit in .asm files > > What's wrong here is that this code in swscale tries to determine, whether > or not the ebx register can be used for asm, but doesn't check that correctly. > However, configure has a working check for that, the result of which can > be used here. Patch doing that is attached. i see your argument for this and it seems sound. I hope this doesnt break anything as this logic was that way for a really long time and worked fine and gcc inline asm can be annoying that said, no objections to the patch [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Old school: Use the lowest level language in which you can solve the problem conveniently. New school: Use the highest level language in which the latest supercomputer can solve the problem without the user falling asleep waiting.
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel