libwebp/src/dsp
Ingvar Stepanyan 52273943c6 Couple of fixes to allow SIMD on Emscripten
- Add `-msimd128` to flags to actually enable WebAssembly SIMD
   when performing SIMD detection. It's currently required in
   addition to `-msse*` / `-mfpu=neon` flags which only perform
   translation of corresponding intrinsics to Wasm SIMD ones.
   See a discussion at emscripten-core/emscripten#12714 for
   automating this and making easier in the future.
 - Remove compilation branch that prevented definitions of
   `WEBP_USE_SSE` and `WEBP_USE_NEON` on Emscripten even when
   SIMD support was detected at compile-time.
 - Add an implementation of `VP8GetCPUInfo` for Emscripten which
   uses static `WEBP_USE_*` flags to determine if a corresponding
   SIMD instruction is supported. This is because Wasm doesn't
   have proper feature detection (yet) and requires making separate
   build for SIMD version anyway.

Change-Id: I77592081b91fd0e4cbc9242f5600ce905184f506
2020-11-18 21:51:41 +00:00
..
alpha_processing_mips_dsp_r2.c Import,RGBA: fix for BigEndian import 2018-02-17 13:07:58 -08:00
alpha_processing_neon.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
alpha_processing_sse2.c Add WebPReplaceTransparentPixels() in dsp 2020-09-09 08:15:22 +02:00
alpha_processing_sse41.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
alpha_processing.c Add WebPReplaceTransparentPixels() in dsp 2020-09-09 08:15:22 +02:00
common_sse2.h Implement the upsampling/yuv functions in SSE41 2017-12-04 22:29:43 +01:00
common_sse41.h Implement the upsampling/yuv functions in SSE41 2017-12-04 22:29:43 +01:00
cost_mips32.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
cost_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
cost_neon.c neon: GetResidualCost 2018-11-14 11:46:58 -08:00
cost_sse2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
cost.c neon: SetResidualCoeffs 2018-11-14 11:46:40 -08:00
cpu.c Couple of fixes to allow SIMD on Emscripten 2020-11-18 21:51:41 +00:00
dec_clip_tables.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
dec_mips32.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
dec_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
dec_msa.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
dec_neon.c DC{4,8,16}_NEON: replace vmovl w/vaddl 2020-03-05 09:41:14 -08:00
dec_sse2.c dec_sse2: quiet signed conv warnings 2019-06-14 01:00:20 -07:00
dec_sse41.c dec_sse41: harmonize function suffixes 2017-11-21 12:47:06 -08:00
dec.c add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 2018-04-17 18:01:34 -07:00
dsp.h Couple of fixes to allow SIMD on Emscripten 2020-11-18 21:51:41 +00:00
enc_mips32.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
enc_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
enc_msa.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
enc_neon.c {dec,enc}_neon: harmonize function suffixes x2 2017-10-20 19:00:53 -07:00
enc_sse2.c (alpha_processing,enc}_sse2: quiet signed conv warnings 2019-06-10 14:23:58 -07:00
enc_sse41.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
enc.c Remove AVX2 files. 2018-10-16 14:12:03 +02:00
filters_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
filters_msa.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
filters_neon.c filters_neon,cosmetics: fix indent 2017-10-20 19:00:29 -07:00
filters_sse2.c filters_sse2,cosmetics: shorten some long lines 2019-07-01 12:17:43 -07:00
filters.c filters.c: quiet integer sanitizer warnings 2019-06-28 23:16:28 -07:00
lossless_common.h Remove ubsan errors. 2019-11-06 14:08:14 +01:00
lossless_enc_mips32.c Split HistogramAdd to only have the high level logic in C. 2018-10-19 14:03:28 +02:00
lossless_enc_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
lossless_enc_msa.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
lossless_enc_neon.c lossless_enc_neon: harmonize function suffixes 2017-10-20 19:00:53 -07:00
lossless_enc_sse2.c webp: WEBP_OFFSET_PTR() 2020-03-20 11:39:06 +01:00
lossless_enc_sse41.c lossless_enc_sse{2,41}: quiet signed conv warnings 2019-06-15 00:22:03 -07:00
lossless_enc.c remove conversion U32 -> S8 warnings 2019-06-24 16:42:42 -07:00
lossless_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
lossless_msa.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
lossless_neon.c lossless_neon: harmonize function suffixes 2017-10-20 19:00:53 -07:00
lossless_sse2.c lossless_(enc_|)sse2: avoid offsetting a NULL pointer 2019-12-13 18:33:10 +00:00
lossless.c dsp/lossless: Fix non gcc ARM builds 2019-11-27 15:05:08 +01:00
lossless.h Split HistogramAdd to only have the high level logic in C. 2018-10-19 14:03:28 +02:00
Makefile.am neon IsFlat 2018-12-03 22:59:12 +00:00
mips_macro.h dsp/mips: cosmetics: add whitespace around XSTR macro 2015-09-03 23:09:13 -07:00
msa_macro.h cosmetics: normalize include guard comment 2018-08-22 14:46:53 -07:00
neon.h {dec,enc}_neon: harmonize function suffixes x2 2017-10-20 19:00:53 -07:00
quant.h Fix the oscillating prediction problem at low quality 2019-07-03 08:40:41 -07:00
rescaler_mips32.c fix rescaling rounding inaccuracy 2018-07-10 22:45:50 -07:00
rescaler_mips_dsp_r2.c Rescaler: fix rounding error 2019-03-30 06:43:55 +00:00
rescaler_msa.c Rescaler: fix rounding error 2019-03-30 06:43:55 +00:00
rescaler_neon.c Rescaler: fix rounding error 2019-03-30 06:43:55 +00:00
rescaler_sse2.c Rescaler: fix rounding error 2019-03-30 06:43:55 +00:00
rescaler.c Rescaler: fix rounding error 2019-03-30 06:43:55 +00:00
ssim_sse2.c add WEBP_REDUCE_SIZE 2017-11-22 17:35:39 -08:00
ssim.c add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 2018-04-17 11:45:34 +00:00
upsampling_mips_dsp_r2.c WEBP_REDUCE_CSP: restrict colorspace support 2017-11-26 08:44:08 +00:00
upsampling_msa.c cosmetics: normalize '*' association 2019-07-26 01:04:09 -07:00
upsampling_neon.c cosmetics: normalize '*' association 2019-07-26 01:04:09 -07:00
upsampling_sse2.c Upsampling SSE2/SSE4 speedup. 2017-12-05 23:37:06 +01:00
upsampling_sse41.c Upsampling SSE2/SSE4 speedup. 2017-12-05 23:37:06 +01:00
upsampling.c add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 2018-04-17 11:45:34 +00:00
yuv_mips32.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
yuv_mips_dsp_r2.c WIP: list includes as descendants of the project dir 2017-10-10 23:04:05 -07:00
yuv_neon.c yuv_neon: harmonize function suffixes 2017-10-20 19:00:53 -07:00
yuv_sse2.c Implement the upsampling/yuv functions in SSE41 2017-12-04 22:29:43 +01:00
yuv_sse41.c Implement the upsampling/yuv functions in SSE41 2017-12-04 22:29:43 +01:00
yuv.c add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 2018-04-17 11:45:34 +00:00
yuv.h cosmetics: normalize include guard comment 2018-08-22 14:46:53 -07:00