[vlc-devel] [PATCH] deinterlace/yadif: Disable x86 asm on Android
Marvin Scholz
epirat07 at gmail.com
Wed Oct 16 00:32:41 CEST 2019
On 16 Oct 2019, at 0:06, Alexandre Janniaux wrote:
> Hi,
>
> Thank you for the details,
>
> If this is a dolt issue, will it be fixed with the meson buildsystem ?
>
Meson does not rely on libtool so yeah, this will be fixed with meson.
>
> Regards,
>
> \--
>
> Alexandre Janniaux
>
> Videolabs
>
>
>
>
> Le 15 oct. 2019 22:46, Marvin Scholz <epirat07 at gmail.com> a écrit :
>
>
>> On 15 Oct 2019, at 17:16, Rémi Denis-Courmont wrote:
>>
>> > Hi,
>> >
>> > Text relocations don't work on Linux and ELF platforms in general,
>> > AFAIK. So this needs proper fixing if it's *really* text
>> relocations.
>>
>> I’ve investigate this issue more.
>> I turns out it is only an issue when configuring libvlc with
>> \--enable-static --disable-shared
>> which causes libtool to not default to PIC, as expected. But even
>> when
>> using --with-pic
>> it does not use PIC which in fact isn’t libtools fault but DOLT,
>> which
>> does not handle
>> this correctly.
>>
>> I’ve submitted another patch that reverts this one and adds a
>> workaround for that.
>> It’s not a perfect fix, just a workaround because dolt.m4 is quite
>> hard to read and follow,
>> so I really can’t figure out how to patch that to do the right
>> thing.
>>
>> Just opting out of DOLT in case of --with-pic being given does not
>> work
>> either, because
>> the --tag=ASM flag used for NASM compilation with libtool is only
>> supported by the DOLT
>> wrapper script, not by the real libtool…
>>
>> >
>> > Le 15 octobre 2019 15:55:31 GMT+03:00, Marvin Scholz
>> > <epirat07 at gmail.com> a écrit :
>> >> It contains text relocations which are not allowed on Android.
>> >> \---
>> >> modules/video_filter/Makefile.am | 3
>> +++
>> >> modules/video_filter/deinterlace/algo_yadif.c | 2 +-
>> >> 2 files changed, 4 insertions(+), 1 deletion(-)
>> >>
>> >> diff --git a/modules/video_filter/Makefile.am
>> >> b/modules/video_filter/Makefile.am
>> >> index 51ee92aff1..6f1714c683 100644
>> >> \--- a/modules/video_filter/Makefile.am
>> >> +++ b/modules/video_filter/Makefile.am
>> >> @@ -136,9 +136,12 @@ libdeinterlace_plugin_la_SOURCES = \
>> >> video_filter/deinterlace/algo_ivtc.c
>> >> video_filter/deinterlace/algo_ivtc.h
>> >> # inline ASM doesn't build with -O0
>> >> libdeinterlace_plugin_la_CFLAGS = $(AM_CFLAGS) -O2
>> >> +# Disabled on Android due to text reloc issues
>> >> +if !HAVE_ANDROID
>> >> if HAVE_X86ASM
>> >> libdeinterlace_plugin_la_SOURCES +=
>> >> video_filter/deinterlace/yadif_x86.asm
>> >> endif
>> >> +endif
>> >> if HAVE_NEON
>> >> libdeinterlace_plugin_la_SOURCES +=
>> >> video_filter/deinterlace/merge_arm.S
>> >> libdeinterlace_plugin_la_CFLAGS += -DCAN_COMPILE_ARM
>> >> diff --git a/modules/video_filter/deinterlace/algo_yadif.c
>> >> b/modules/video_filter/deinterlace/algo_yadif.c
>> >> index 6fdecf53a5..98dbbe9b04 100644
>> >> \--- a/modules/video_filter/deinterlace/algo_yadif.c
>> >> +++ b/modules/video_filter/deinterlace/algo_yadif.c
>> >> @@ -112,7 +112,7 @@ int RenderYadif( filter_t *p_filter,
>> picture_t
>> >> *p_dst, picture_t *p_src,
>> >> void (*filter)(uint8_t *dst, uint8_t *prev, uint8_t *cur, uint8_t
>> >> *next,
>> >> int w, int prefs, int
>> mrefs, int parity, int
>> >> mode);
>> >>
>> >> -#if defined(HAVE_X86ASM)
>> >> +#if defined(HAVE_X86ASM) && !defined (__ANDROID__)
>> >> if( vlc_CPU_SSSE3() )
>> >> filter = vlcpriv_yadif_filter_line_ssse3;
>> >> else
>> >> \--
>> >> 2.20.1 (Apple Git-117)
>> >>
>> >> _______________________________________________
>> >> vlc-devel mailing list
>> >> To unsubscribe or modify your subscription options:
>> >> https://mailman.videolan.org/listinfo/vlc-devel
>> >
>> > \--
>> > Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez
>> > excuser ma
>> brièveté._______________________________________________
>> > vlc-devel mailing list
>> > To unsubscribe or modify your subscription options:
>> > https://mailman.videolan.org/listinfo/vlc-devel
>> _______________________________________________
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
>
>
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
More information about the vlc-devel
mailing list