Index: media/base/simd/linear_scale_yuv_to_rgb_mmx.inc |
diff --git a/media/base/simd/linear_scale_yuv_to_rgb_mmx.inc b/media/base/simd/linear_scale_yuv_to_rgb_mmx.inc |
index dce591d78044e26bd5c6122f65c13e30493d4af1..48f62acf25ad57893e598a0c1cb10f632b462413 100644 |
--- a/media/base/simd/linear_scale_yuv_to_rgb_mmx.inc |
+++ b/media/base/simd/linear_scale_yuv_to_rgb_mmx.inc |
@@ -10,8 +10,6 @@ |
mangle(SYMBOL): |
%assign stack_offset 0 |
- extern mangle(kCoefficientsRgbY) |
- |
; Parameters are in the following order: |
; 1. Y plane |
; 2. U plane |
@@ -19,8 +17,9 @@ mangle(SYMBOL): |
; 4. ARGB frame |
; 5. Width |
; 6. Source dx |
+; 7. Conversion lookup table |
-PROLOGUE 6, 7, 3, Y, R0, R1, ARGB, R2, R3, TEMP |
+PROLOGUE 7, 7, 3, Y, R0, R1, ARGB, R2, TEMP, R3 |
%if gprsize == 8 |
%define WORD_SIZE QWORD |
@@ -34,7 +33,7 @@ PROLOGUE 6, 7, 3, Y, R0, R1, ARGB, R2, R3, TEMP |
%define COMPLd R2d ; Component A value |
%define U_ARG_REGq R0q ; U plane address argument |
%define V_ARG_REGq R1q ; V plane address argument |
-%define SOURCE_DX_ARG_REGq R3q ; Source dx argument |
+%define SOURCE_DX_ARG_REGq TEMPq ; Source dx argument |
%define WIDTH_ARG_REGq R2q ; Width argument |
%define COMPRq R0q ; Component B value |
@@ -56,11 +55,6 @@ PROLOGUE 6, 7, 3, Y, R0, R1, ARGB, R2, R3, TEMP |
imul WIDTH_ARG_REGq, SOURCE_DX_ARG_REGq ; source_width = width * source_dx |
PUSH WIDTH_ARG_REGq |
-; Load the address of kCoefficientsRgbY into TABLE |
- mov TEMPq, SOURCE_DX_ARG_REGq ; Need to save source_dx first |
- LOAD_SYM TABLE, mangle(kCoefficientsRgbY) |
-%define SOURCE_DX_ARG_REGq TEMPq ; Overwrite SOURCE_DX_ARG_REGq to TEMPq |
- |
%macro EPILOGUE 0 |
ADD rsp, 4 * gprsize |
%endmacro |