diff options
author | 2015-07-31 11:50:27 -0700 | |
---|---|---|
committer | 2015-07-31 11:50:27 -0700 | |
commit | 490b61569d27c9b7ba164fbc4394994d2e7cb022 (patch) | |
tree | 71c27278de2489f36925fc1fe1484339b4b04def /include/private | |
parent | 685f277dbaca5616325defb956fdf223c491ea61 (diff) |
Port SkXfermode opts to SkOpts.h
Renames Sk4pxXfermode.h to SkXfermode_opts.h,
and refactors it a tiny bit internally.
This moves xfermode optimization from being "compile-time everywhere but NEON"
to simply "runtime everywhere". I don't anticipate any effect on perf or
correctness.
BUG=skia:4117
Review URL: https://codereview.chromium.org/1264543006
Diffstat (limited to 'include/private')
-rw-r--r-- | include/private/SkOpts.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/private/SkOpts.h b/include/private/SkOpts.h index 0594588e29..9239f8efec 100644 --- a/include/private/SkOpts.h +++ b/include/private/SkOpts.h @@ -9,6 +9,9 @@ #define SkOpts_DEFINED #include "SkTypes.h" +#include "SkXfermode.h" + +struct ProcCoeff; namespace SkOpts { // Call to replace pointers to portable functions with pointers to CPU-specific functions. @@ -24,6 +27,9 @@ namespace SkOpts { // See SkUtils.h extern void (*memset16)(uint16_t[], uint16_t, int); extern void (*memset32)(uint32_t[], uint32_t, int); + + // May return nullptr if we haven't specialized the given Mode. + extern SkXfermode* (*create_xfermode)(const ProcCoeff&, SkXfermode::Mode); } #endif//SkOpts_DEFINED |