[vlc-devel] [PATCH] configure: Fix illegal instructions on PPC when --enable-altivec used

Rémi Denis-Courmont remi at remlab.net
Tue Nov 8 21:59:10 CET 2016


Le tiistaina 8. marraskuuta 2016, 15.48.12 EET Lennart Sorensen a écrit :
> From: Len Sorensen <lsorense at csclub.uwaterloo.ca>
> 
> When --enable-altivec is used on powerpc, -maltivec is passed to gcc
> along with -O4.  When -O3 or higher is used along with -maltivec, gcc
> enabled -ftree-vectorize, which generates vector instructions from C
> code.

Hmm well, as far as I can tell, there are no warranties that disabling tree 
vectorization will disable emission of Altivec opcodes. It is just the most 
obvious use case.

It would not be unheard of for the compiler to employ SIMD instructions for 
single (useful) data operations. It is definitely supported on some 
architectures.

So it seems to me that this is just moving the problem (again). Instead, -
matltivec should not be passed at all. Depending on the case, that might 
involve:
- building Altivec functions in a separate static library,
- passing -maltivec only to the assembler,
- using the target function attribute (like VLC_SSE and VLC_MMX).

-- 
Rémi Denis-Courmont
http://www.remlab.net/



More information about the vlc-devel mailing list