Commit 407c4ee7 authored by fbarchard@google.com's avatar fbarchard@google.com

Register juggling to get gcc 32 bit to build

BUG=267
TEST=Luma* builds under gcc 32 and runs similar performance to other builds
R=ryanpetrie@google.com

Review URL: https://webrtc-codereview.appspot.com/3059005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@830 16f28f9a-4ce2-e073-06de-1de4eb20be90
parent 4c736098
Name: libyuv Name: libyuv
URL: http://code.google.com/p/libyuv/ URL: http://code.google.com/p/libyuv/
Version: 829 Version: 830
License: BSD License: BSD
License File: LICENSE License File: LICENSE
......
...@@ -11,6 +11,6 @@ ...@@ -11,6 +11,6 @@
#ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT #ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT
#define INCLUDE_LIBYUV_VERSION_H_ #define INCLUDE_LIBYUV_VERSION_H_
#define LIBYUV_VERSION 829 #define LIBYUV_VERSION 830
#endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT #endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT
...@@ -6361,6 +6361,7 @@ void RGBColorTableRow_X86(uint8* dst_argb, const uint8* table_argb, int width) { ...@@ -6361,6 +6361,7 @@ void RGBColorTableRow_X86(uint8* dst_argb, const uint8* table_argb, int width) {
} }
#endif // HAS_RGBCOLORTABLEROW_X86 #endif // HAS_RGBCOLORTABLEROW_X86
// TODO(fbarchard): Ensure this works with minimal number of registers/gcc32.
#ifdef HAS_ARGBLUMACOLORTABLEROW_SSSE3 #ifdef HAS_ARGBLUMACOLORTABLEROW_SSSE3
// Tranform RGB pixels with luma table. // Tranform RGB pixels with luma table.
void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb, void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb,
...@@ -6449,13 +6450,17 @@ void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb, ...@@ -6449,13 +6450,17 @@ void ARGBLumaColorTableRow_SSSE3(const uint8* src_argb,
"lea 0x10(%3),%3 \n" "lea 0x10(%3),%3 \n"
"jg 1b \n" "jg 1b \n"
: "+d"(pixel_temp), // %0 : "+d"(pixel_temp), // %0
"+b"(table_temp), // %1 "+a"(table_temp), // %1
"+r"(src_argb), // %2 "+r"(src_argb), // %2
"+r"(dst_argb), // %3 "+r"(dst_argb), // %3
"+rm"(width) // %4 "+rm"(width) // %4
: "rm"(luma), // %5 : "r"(luma), // %5
"m"(kARGBToYJ) // %6 "m"(kARGBToYJ) // %6
: "memory", "cc"); : "memory", "cc"
#if defined(__SSE2__)
, "xmm0", "xmm3", "xmm4", "xmm5"
#endif
);
} }
#endif // HAS_ARGBLUMACOLORTABLEROW_SSSE3 #endif // HAS_ARGBLUMACOLORTABLEROW_SSSE3
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment