| Index: source/row_mips.cc
|
| diff --git a/source/row_mips.cc b/source/row_mips.cc
|
| index 182979f629e2664b5e2958cfc4caf3d56ef5e641..d12cf6ab790b0da6d3aa46142e7c9f40d9e0b57e 100644
|
| --- a/source/row_mips.cc
|
| +++ b/source/row_mips.cc
|
| @@ -715,70 +715,6 @@ void I422ToARGBRow_MIPS_DSPR2(const uint8* y_buf,
|
| );
|
| }
|
|
|
| -void I422ToBGRARow_MIPS_DSPR2(const uint8* y_buf,
|
| - const uint8* u_buf,
|
| - const uint8* v_buf,
|
| - uint8* rgb_buf,
|
| - const struct YuvConstants* yuvconstants,
|
| - int width) {
|
| - __asm__ __volatile__ (
|
| - ".set push \n"
|
| - ".set noreorder \n"
|
| - "beqz %[width], 2f \n"
|
| - " repl.ph $s0, 74 \n" // |YG|YG| = |74 |74 |
|
| - "repl.ph $s1, -25 \n" // |UG|UG| = |-25|-25|
|
| - "repl.ph $s2, -52 \n" // |VG|VG| = |-52|-52|
|
| - "repl.ph $s3, 102 \n" // |VR|VR| = |102|102|
|
| - "repl.ph $s4, 16 \n" // |0|16|0|16|
|
| - "repl.ph $s5, 128 \n" // |128|128|
|
| - "lui $s6, 0xff \n"
|
| - "ori $s6, 0xff \n" // |00|ff|00|ff|
|
| -
|
| - "1: \n"
|
| - YUVTORGB
|
| - // Arranging into bgra format
|
| - "precr.qb.ph $t4, $t4, $t8 \n" // |B1|b1|G1|g1|
|
| - "precr.qb.ph $t5, $t5, $t9 \n" // |B0|b0|G0|g0|
|
| - "precrq.qb.ph $t8, $t4, $t5 \n" // |B1|G1|B0|G0|
|
| - "precr.qb.ph $t9, $t4, $t5 \n" // |b1|g1|b0|g0|
|
| -
|
| - "precr.qb.ph $t2, $t1, $t2 \n" // |R1|r1|R0|r0|
|
| - "addiu %[width], -4 \n"
|
| - "addiu %[y_buf], 4 \n"
|
| - "preceu.ph.qbla $t1, $t2 \n" // |0 |R1|0 |R0|
|
| - "preceu.ph.qbra $t2, $t2 \n" // |0 |r1|0 |r0|
|
| - "sll $t1, $t1, 8 \n" // |R1|0 |R0|0 |
|
| - "sll $t2, $t2, 8 \n" // |r1|0 |r0|0 |
|
| - "or $t1, $t1, $s6 \n" // |R1|ff|R0|ff|
|
| - "or $t2, $t2, $s6 \n" // |r1|ff|r0|ff|
|
| - "precrq.ph.w $t0, $t9, $t2 \n" // |b1|g1|r1|ff|
|
| - "precrq.ph.w $t3, $t8, $t1 \n" // |B1|G1|R1|ff|
|
| - "sll $t1, $t1, 16 \n"
|
| - "sll $t2, $t2, 16 \n"
|
| - "packrl.ph $t2, $t9, $t2 \n" // |b0|g0|r0|ff|
|
| - "packrl.ph $t1, $t8, $t1 \n" // |B0|G0|R0|ff|
|
| -// Store results.
|
| - "sw $t2, 0(%[rgb_buf]) \n"
|
| - "sw $t0, 4(%[rgb_buf]) \n"
|
| - "sw $t1, 8(%[rgb_buf]) \n"
|
| - "sw $t3, 12(%[rgb_buf]) \n"
|
| - "bnez %[width], 1b \n"
|
| - " addiu %[rgb_buf], 16 \n"
|
| - "2: \n"
|
| - ".set pop \n"
|
| - :[y_buf] "+r" (y_buf),
|
| - [u_buf] "+r" (u_buf),
|
| - [v_buf] "+r" (v_buf),
|
| - [width] "+r" (width),
|
| - [rgb_buf] "+r" (rgb_buf)
|
| - :
|
| - : "t0", "t1", "t2", "t3", "t4", "t5",
|
| - "t6", "t7", "t8", "t9",
|
| - "s0", "s1", "s2", "s3",
|
| - "s4", "s5", "s6"
|
| - );
|
| -}
|
| -
|
| // Bilinear filter 8x2 -> 8x1
|
| void InterpolateRow_MIPS_DSPR2(uint8* dst_ptr, const uint8* src_ptr,
|
| ptrdiff_t src_stride, int dst_width,
|
|
|