Fix debug compilation problems for gcc and 32 bit x86.

In some methods with 7 arguments gcc fails to find enough registers
to compile the assembler code when compiling debug. Simplest solution
is to skip the assembler version in debug of those particular functions

(I422Alpha -> ARBG/ABGR)

R=harryjin@google.com,bratell@opera.com
BUG=libyuv:517

Review URL: https://codereview.chromium.org/1423283002 .
This commit is contained in:
Frank Barchard 2015-10-28 14:27:29 -07:00
parent 811a5ec446
commit cdbdf5b723
2 changed files with 12 additions and 2 deletions

View File

@ -107,7 +107,11 @@ extern "C" {
#define HAS_H422TOARGBROW_SSSE3
#define HAS_I400TOARGBROW_SSE2
#define HAS_I411TOARGBROW_SSSE3
#define HAS_I422ALPHATOARGBROW_SSSE3
// TODO(fbarchard): fix build error on android_full_debug=1
// https://code.google.com/p/libyuv/issues/detail?id=517
// #define HAS_I422ALPHATOARGBROW_SSSE3
#define HAS_I422TOABGRROW_SSSE3
#define HAS_I422TOARGB1555ROW_SSSE3
#define HAS_I422TOARGB4444ROW_SSSE3
@ -198,7 +202,11 @@ extern "C" {
#define HAS_H422TOABGRROW_AVX2
#define HAS_H422TOARGBROW_AVX2
#define HAS_I400TOARGBROW_AVX2
#define HAS_I422ALPHATOARGBROW_AVX2
// TODO(fbarchard): fix build error on android_full_debug=1
// https://code.google.com/p/libyuv/issues/detail?id=517
// #define HAS_I422ALPHATOARGBROW_AVX2
#define HAS_I422TOABGRROW_AVX2
#define HAS_I422TOARGBROW_AVX2
#define HAS_I422TOBGRAROW_AVX2

View File

@ -1734,6 +1734,7 @@ void OMITFP I422ToARGBRow_SSSE3(const uint8* y_buf,
);
}
#ifdef HAS_I422ALPHATOARGBROW_SSSE3
void OMITFP I422AlphaToARGBRow_SSSE3(const uint8* y_buf,
const uint8* u_buf,
const uint8* v_buf,
@ -1765,6 +1766,7 @@ void OMITFP I422AlphaToARGBRow_SSSE3(const uint8* y_buf,
"xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
);
}
#endif // HAS_I422ALPHATOARGBROW_SSSE3
void OMITFP I411ToARGBRow_SSSE3(const uint8* y_buf,
const uint8* u_buf,