ref: 7914f7a02885dc2d60d45e39e956bcb86a3962d3
parent: 7ac505c726c4cec704a4abf7e8b43b7e8490f34e
parent: 2abfd8f92a22bba12bed78fb4525209ae9e90b4d
author: James Zern <[email protected]>
date: Thu Aug 6 18:23:39 EDT 2015
Merge "endian_inl.h: fix mips32 android build"
--- a/vpx_util/endian_inl.h
+++ b/vpx_util/endian_inl.h
@@ -63,6 +63,11 @@
#define HAVE_BUILTIN_BSWAP16
#endif
+#if HAVE_MIPS32 && defined(__mips__) && !defined(__mips64) && \
+ defined(__mips_isa_rev) && (__mips_isa_rev >= 2) && (__mips_isa_rev < 6)
+#define VPX_USE_MIPS32_R2
+#endif
+
static INLINE uint16_t BSwap16(uint16_t x) {
#if defined(HAVE_BUILTIN_BSWAP16)
return __builtin_bswap16(x);
@@ -75,7 +80,7 @@
}
static INLINE uint32_t BSwap32(uint32_t x) {
-#if HAVE_MIPS32
+#if defined(VPX_USE_MIPS32_R2)
uint32_t ret;
__asm__ volatile (
"wsbh %[ret], %[x] \n\t"