b=1042508 include resample_neon.h from speexdsp 305e54ea r=padenot

--HG--
extra : rebase_source : effe9aa434298b0b49099b6809d506b92075ad1c
b=1042508 tie resampler sample type choice to MOZ_SAMPLE_TYPE_S16 r=padenot

When built with FIXED_POINT speex_resampler_process_float() assumes the
samples are in the range ±0x7fff and so Gecko instead uses ConvertAudioSamples
and speex_resampler_process_int().  This decision is based on
MOZ_SAMPLE_TYPE_S16.

--HG--
extra : rebase_source : 1e67861478026dfa65b61a31e3272970a7094094
b=1042508 move resampler simd optimizations to separate translation units r=padenot

This ensures that code in resample.c will run on Intel x86 cpus even when SSE
support has been compiled, and will provide similarly for neon support when
enabled.

--HG--
rename : media/libspeex_resampler/sse-detect-runtime.patch => media/libspeex_resampler/simd-detect-runtime.patch
rename : media/libspeex_resampler/src/resample_neon.h => media/libspeex_resampler/src/resample_neon.c
rename : media/libspeex_resampler/src/resample_sse.h => media/libspeex_resampler/src/resample_sse.c
rename : media/libspeex_resampler/src/sse_detect.cpp => media/libspeex_resampler/src/simd_detect.cpp
rename : media/libspeex_resampler/src/sse_detect.h => media/libspeex_resampler/src/simd_detect.h
extra : rebase_source : bdf1ef791129dedeadce7369354a5992729a99b7
b=1042508 remove : of empty Clobber asm argument r=padenot

https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html#Extended-Asm says

  asm [volatile] ( AssemblerTemplate : [OutputOperands] [ : [InputOperands] [ : [Clobbers] ] ] )

which implies that Clobbers is optional even after the third colon, but
the gcc used for b2g_try_emulator_dep builds says

resample_neon.c: In function 'saturate_32bit_to_16bit':
resample_neon.c:50: error: expected string literal before ')' token

--HG--
extra : rebase_source : 6ca7768d5b30f67ff6827acc9a4fdc51a672bc1e
b=1042508 enable neon resampler optimizations r=padenot

--HG--
extra : rebase_source : fd984143b78ecf25a5158715dd8bed8df7398945
b=1045482 make XErrorTrap installation and removal thread-safe r=jesup

Error handling is now applied to the Display using async_handlers, instead of
replacing and trying to reinstate the XSetErrorHandler() global handler for
all Xlib Displays.

Inspired by use of the same Xlibint.h structures at
https://git.gnome.org/browse/gtk+/tree/gdk/x11/gdkasync.c?id=0e1a4248#n252
https://git.gnome.org/browse/gtk+/tree/gdk/x11/gdkasync.c?id=0e1a4248#n150
Compare use of _XAsyncErrorHandler in libX11.

--HG--
extra : rebase_source : 8bb16f09912b15e435441657e7275c9213b1a475