10a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger#include "SkXfermode.h"
20a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger#include "SkXfermode_proccoeff.h"
30a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger#include "SkUtilsArm.h"
40a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger
50a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenbergerextern SkProcCoeffXfermode* SkPlatformXfermodeFactory_impl_neon(const ProcCoeff& rec,
60a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger                                                                SkXfermode::Mode mode);
70a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger
8910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenbergerextern SkXfermodeProc SkPlatformXfermodeProcFactory_impl_neon(SkXfermode::Mode mode);
9910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger
100a657bbc2c6fc9daf699942e023050536d5ec95fDerek SollenbergerSkProcCoeffXfermode* SkPlatformXfermodeFactory_impl(const ProcCoeff& rec,
110a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger                                                    SkXfermode::Mode mode) {
120a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger    return NULL;
130a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger}
140a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger
15910f694aefb0b671dd8522a9afe9b6be645701c1Derek SollenbergerSkXfermodeProc SkPlatformXfermodeProcFactory_impl(SkXfermode::Mode mode) {
16910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger    return NULL;
17910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger}
18910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger
190a657bbc2c6fc9daf699942e023050536d5ec95fDerek SollenbergerSkProcCoeffXfermode* SkPlatformXfermodeFactory(const ProcCoeff& rec,
200a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger                                               SkXfermode::Mode mode) {
210a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger    return SK_ARM_NEON_WRAP(SkPlatformXfermodeFactory_impl)(rec, mode);
220a657bbc2c6fc9daf699942e023050536d5ec95fDerek Sollenberger}
23910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger
24910f694aefb0b671dd8522a9afe9b6be645701c1Derek SollenbergerSkXfermodeProc SkPlatformXfermodeProcFactory(SkXfermode::Mode mode) {
25910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger    return SK_ARM_NEON_WRAP(SkPlatformXfermodeProcFactory_impl)(mode);
26910f694aefb0b671dd8522a9afe9b6be645701c1Derek Sollenberger}
27