Skip to content

postproc: update SIMD variant selection

Lyndon Brown requested to merge jnqnfe/vlc:simd_postproc into master

the cpu SIMD selection code removed here dates from a time when vlc had options for disabling use of select SIMD variants, from before postproc added cpu auto-detection (1), and from before postproc seems to have added SSE2 (2 and 3).

we are purging MMX/MMXEXT from vlc v4.0-dev, and thus have an interest in removing the corresponding MMX/MMXEXT bits here. rather than just removing those lines, alongside adding an entry for SSE2 though, i have instead chosen to convert the code to use auto-detection, which avoids having to keep the block of code explicitly enabling implementations in sync with the set of implementations available.

note, the version of postproc in contribs is very old, pre-dating the SSE2 and CPU feature auto-detection enhancements. accordingly i have had to ensure that we define PP_CPU_CAPS_AUTO ourselves when not found, as had been done for PP_CPU_CAPS_ALTIVEC. effectively, for users like myself on linux with a new enough version, the auto-detection will work correctly and now make use of SSE2, which we were ignoring before; while where the contrib package is used, its use will fall back to the C implementation until such time that the contrib gets updated.

Merge request reports