mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-31 22:25:30 +00:00
ee8186f60a
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
34 lines
1.1 KiB
Diff
34 lines
1.1 KiB
Diff
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
|
|
|
|
diff --git a/media/libspeex_resampler/src/resample_neon.c b/media/libspeex_resampler/src/resample_neon.c
|
|
--- a/media/libspeex_resampler/src/resample_neon.c
|
|
+++ b/media/libspeex_resampler/src/resample_neon.c
|
|
@@ -41,18 +41,17 @@
|
|
#include <arm_neon.h>
|
|
|
|
#ifdef FIXED_POINT
|
|
#ifdef __thumb2__
|
|
static inline int32_t saturate_32bit_to_16bit(int32_t a) {
|
|
int32_t ret;
|
|
asm ("ssat %[ret], #16, %[a]"
|
|
: [ret] "=&r" (ret)
|
|
- : [a] "r" (a)
|
|
- : );
|
|
+ : [a] "r" (a));
|
|
return ret;
|
|
}
|
|
#else
|
|
static inline int32_t saturate_32bit_to_16bit(int32_t a) {
|
|
int32_t ret;
|
|
asm ("vmov.s32 d0[0], %[a]\n"
|
|
"vqmovn.s32 d0, q0\n"
|
|
"vmov.s16 %[ret], d0[0]\n"
|