| Index: src/opts/SkBitmapProcState_opts_mips_dsp.cpp | 
| diff --git a/src/opts/SkBitmapProcState_opts_mips_dsp.cpp b/src/opts/SkBitmapProcState_opts_mips_dsp.cpp | 
| index dac4e20381fb059164e8f88f9435fdc47ed99b70..a80e955aeb2cac00549bec8307e6d3ba764c1685 100644 | 
| --- a/src/opts/SkBitmapProcState_opts_mips_dsp.cpp | 
| +++ b/src/opts/SkBitmapProcState_opts_mips_dsp.cpp | 
| @@ -12,138 +12,6 @@ | 
| #include "SkPaint.h" | 
| #include "SkUtils.h" | 
|  | 
| -static void SI8_D16_nofilter_DX_mips_dsp(const SkBitmapProcState& s, | 
| -                                         const uint32_t* SK_RESTRICT xy, | 
| -                                         int count, uint16_t* SK_RESTRICT colors) { | 
| -    SkASSERT(count > 0 && colors != nullptr); | 
| -    SkASSERT(s.fInvType <= (SkMatrix::kTranslate_Mask | SkMatrix::kScale_Mask)); | 
| -    SkASSERT(kNone_SkFilterQuality == s.fFilterLevel); | 
| -    const uint16_t* SK_RESTRICT table = s.fPixmap.ctable()->read16BitCache(); | 
| -    const uint8_t* SK_RESTRICT srcAddr = (const uint8_t*)s.fPixmap.addr(); | 
| -    SkASSERT((unsigned)xy[0] < (unsigned)s.fPixmap.height()); | 
| -    srcAddr = (const uint8_t*)((const char*)srcAddr + xy[0] * s.fPixmap.rowBytes()); | 
| -    uint8_t src; | 
| - | 
| -    if (1 == s.fPixmap.width()) { | 
| -        src = srcAddr[0]; | 
| -        uint16_t dstValue = table[src]; | 
| -        sk_memset16(colors, dstValue, count); | 
| -    } else { | 
| -        int count8; | 
| -        const uint16_t* SK_RESTRICT xx = (const uint16_t*)(xy + 1); | 
| - | 
| -        __asm__ volatile ( | 
| -            ".set    push                                \n\t" | 
| -            ".set    noreorder                           \n\t" | 
| -            ".set    noat                                \n\t" | 
| -            "sra     %[count8], %[count],      3         \n\t" | 
| -            "beqz    %[count8], 3f                       \n\t" | 
| -            " addiu  %[count8], %[count8],     -1        \n\t" | 
| -        "1:                                              \n\t" | 
| -            "beqz    %[count8], 2f                       \n\t" | 
| -            " addiu  %[count8], %[count8],     -1        \n\t" | 
| -            "pref    0,         16(%[xx])                \n\t" | 
| -            "lhu     $t0,       0(%[xx])                 \n\t" | 
| -            "lhu     $t1,       2(%[xx])                 \n\t" | 
| -            "lhu     $t2,       4(%[xx])                 \n\t" | 
| -            "lhu     $t3,       6(%[xx])                 \n\t" | 
| -            "lhu     $t4,       8(%[xx])                 \n\t" | 
| -            "lhu     $t5,       10(%[xx])                \n\t" | 
| -            "lhu     $t6,       12(%[xx])                \n\t" | 
| -            "lhu     $t7,       14(%[xx])                \n\t" | 
| -            "pref    0,         8(%[srcAddr])            \n\t" | 
| -            "lbux    $t0,       $t0(%[srcAddr])          \n\t" | 
| -            "lbux    $t1,       $t1(%[srcAddr])          \n\t" | 
| -            "lbux    $t2,       $t2(%[srcAddr])          \n\t" | 
| -            "lbux    $t3,       $t3(%[srcAddr])          \n\t" | 
| -            "lbux    $t4,       $t4(%[srcAddr])          \n\t" | 
| -            "lbux    $t5,       $t5(%[srcAddr])          \n\t" | 
| -            "lbux    $t6,       $t6(%[srcAddr])          \n\t" | 
| -            "lbux    $t7,       $t7(%[srcAddr])          \n\t" | 
| -            "addu    $t0,       $t0,           $t0       \n\t" | 
| -            "addu    $t1,       $t1,           $t1       \n\t" | 
| -            "addu    $t2,       $t2,           $t2       \n\t" | 
| -            "addu    $t3,       $t3,           $t3       \n\t" | 
| -            "addu    $t4,       $t4,           $t4       \n\t" | 
| -            "addu    $t5,       $t5,           $t5       \n\t" | 
| -            "addu    $t6,       $t6,           $t6       \n\t" | 
| -            "addu    $t7,       $t7,           $t7       \n\t" | 
| -            "pref    0,         16(%[table])             \n\t" | 
| -            "lhx     $t0,       $t0(%[table])            \n\t" | 
| -            "lhx     $t1,       $t1(%[table])            \n\t" | 
| -            "lhx     $t2,       $t2(%[table])            \n\t" | 
| -            "lhx     $t3,       $t3(%[table])            \n\t" | 
| -            "lhx     $t4,       $t4(%[table])            \n\t" | 
| -            "lhx     $t5,       $t5(%[table])            \n\t" | 
| -            "lhx     $t6,       $t6(%[table])            \n\t" | 
| -            "lhx     $t7,       $t7(%[table])            \n\t" | 
| -            "sh      $t0,       0(%[colors])             \n\t" | 
| -            "sh      $t1,       2(%[colors])             \n\t" | 
| -            "sh      $t2,       4(%[colors])             \n\t" | 
| -            "sh      $t3,       6(%[colors])             \n\t" | 
| -            "sh      $t4,       8(%[colors])             \n\t" | 
| -            "sh      $t5,       10(%[colors])            \n\t" | 
| -            "sh      $t6,       12(%[colors])            \n\t" | 
| -            "sh      $t7,       14(%[colors])            \n\t" | 
| -            "addiu   %[xx],     %[xx],         16        \n\t" | 
| -            "bgtz    %[count8], 1b                       \n\t" | 
| -            " addiu  %[colors], %[colors],     16        \n\t" | 
| -        "2:                                              \n\t" | 
| -            "lhu     $t0,       0(%[xx])                 \n\t" | 
| -            "lhu     $t1,       2(%[xx])                 \n\t" | 
| -            "lhu     $t2,       4(%[xx])                 \n\t" | 
| -            "lhu     $t3,       6(%[xx])                 \n\t" | 
| -            "lhu     $t4,       8(%[xx])                 \n\t" | 
| -            "lhu     $t5,       10(%[xx])                \n\t" | 
| -            "lhu     $t6,       12(%[xx])                \n\t" | 
| -            "lhu     $t7,       14(%[xx])                \n\t" | 
| -            "lbux    $t0,       $t0(%[srcAddr])          \n\t" | 
| -            "lbux    $t1,       $t1(%[srcAddr])          \n\t" | 
| -            "lbux    $t2,       $t2(%[srcAddr])          \n\t" | 
| -            "lbux    $t3,       $t3(%[srcAddr])          \n\t" | 
| -            "lbux    $t4,       $t4(%[srcAddr])          \n\t" | 
| -            "lbux    $t5,       $t5(%[srcAddr])          \n\t" | 
| -            "lbux    $t6,       $t6(%[srcAddr])          \n\t" | 
| -            "lbux    $t7,       $t7(%[srcAddr])          \n\t" | 
| -            "addu    $t0,       $t0,           $t0       \n\t" | 
| -            "addu    $t1,       $t1,           $t1       \n\t" | 
| -            "addu    $t2,       $t2,           $t2       \n\t" | 
| -            "addu    $t3,       $t3,           $t3       \n\t" | 
| -            "addu    $t4,       $t4,           $t4       \n\t" | 
| -            "addu    $t5,       $t5,           $t5       \n\t" | 
| -            "addu    $t6,       $t6,           $t6       \n\t" | 
| -            "addu    $t7,       $t7,           $t7       \n\t" | 
| -            "lhx     $t0,       $t0(%[table])            \n\t" | 
| -            "lhx     $t1,       $t1(%[table])            \n\t" | 
| -            "lhx     $t2,       $t2(%[table])            \n\t" | 
| -            "lhx     $t3,       $t3(%[table])            \n\t" | 
| -            "lhx     $t4,       $t4(%[table])            \n\t" | 
| -            "lhx     $t5,       $t5(%[table])            \n\t" | 
| -            "lhx     $t6,       $t6(%[table])            \n\t" | 
| -            "lhx     $t7,       $t7(%[table])            \n\t" | 
| -            "sh      $t0,       0(%[colors])             \n\t" | 
| -            "sh      $t1,       2(%[colors])             \n\t" | 
| -            "sh      $t2,       4(%[colors])             \n\t" | 
| -            "sh      $t3,       6(%[colors])             \n\t" | 
| -            "sh      $t4,       8(%[colors])             \n\t" | 
| -            "sh      $t5,       10(%[colors])            \n\t" | 
| -            "sh      $t6,       12(%[colors])            \n\t" | 
| -            "sh      $t7,       14(%[colors])            \n\t" | 
| -            "addiu   %[xx],     %[xx],         16        \n\t" | 
| -            "addiu   %[colors], %[colors],     16        \n\t" | 
| -        "3:                                              \n\t" | 
| -            ".set    pop                                 \n\t" | 
| -            : [xx]"+r"(xx), [count8]"=&r"(count8), [colors]"+r"(colors) | 
| -            : [table]"r"(table), [srcAddr]"r"(srcAddr), [count]"r"(count) | 
| -            : "memory","t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7" | 
| -        ); | 
| - | 
| -        for (int i = (count & 7); i > 0; --i) { | 
| -            src = srcAddr[*xx++]; *colors++ = table[src]; | 
| -        } | 
| -    } | 
| -} | 
| - | 
| static void SI8_opaque_D32_nofilter_DX_mips_dsp(const SkBitmapProcState& s, | 
| const uint32_t* SK_RESTRICT xy, | 
| int count, SkPMColor* SK_RESTRICT colors) { | 
| @@ -379,8 +247,6 @@ void SkBitmapProcState::platformProcs() { | 
| switch (fPixmap.colorType()) { | 
| case kIndex_8_SkColorType: | 
| if (justDx && kNone_SkFilterQuality == fFilterLevel) { | 
| -                fSampleProc16 = SI8_D16_nofilter_DX_mips_dsp; | 
| -                fShaderProc16 = nullptr; | 
| if (isOpaque) { | 
| fSampleProc32 = SI8_opaque_D32_nofilter_DX_mips_dsp; | 
| fShaderProc32 = nullptr; | 
|  |