1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

avutil/mips/generic_macros_msa: Fix prob that 'ulw' and 'uld' unsupported by clang.

GCC support these two synthesized instruction, but clang does not yet.
Use machine instruction instead to adapt clang compiler.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Shiyou Yin 2020-07-29 18:10:59 +08:00 committed by Michael Niedermayer
parent 44699db6db
commit 0e0a9ca048

View File

@ -111,10 +111,11 @@
uint32_t val_lw_m; \
\
__asm__ volatile ( \
"ulw %[val_lw_m], %[psrc_lw_m] \n\t" \
"lwr %[val_lw_m], 0(%[psrc_lw_m]) \n\t" \
"lwl %[val_lw_m], 3(%[psrc_lw_m]) \n\t" \
\
: [val_lw_m] "=r" (val_lw_m) \
: [psrc_lw_m] "m" (*psrc_lw_m) \
: [val_lw_m] "=&r"(val_lw_m) \
: [psrc_lw_m] "r"(psrc_lw_m) \
); \
\
val_lw_m; \
@ -127,10 +128,11 @@
uint64_t val_ld_m = 0; \
\
__asm__ volatile ( \
"uld %[val_ld_m], %[psrc_ld_m] \n\t" \
"ldr %[val_ld_m], 0(%[psrc_ld_m]) \n\t" \
"ldl %[val_ld_m], 7(%[psrc_ld_m]) \n\t" \
\
: [val_ld_m] "=r" (val_ld_m) \
: [psrc_ld_m] "m" (*psrc_ld_m) \
: [val_ld_m] "=&r" (val_ld_m) \
: [psrc_ld_m] "r" (psrc_ld_m) \
); \
\
val_ld_m; \