Go to file
henrik.smiding 3bb195ef0d Add SSE4 optimization of S32A_Opaque_Blitrow
Adds optimization of Skia S32A_Opaque_Blitrow blitter using SSE4.2 SIMD
instruction set. Special case for when alpha is zero or opaque.

Performance increase of 10%-400% compared to the existing SSE2
optimization (measured on Silvermont architecture).
Noticeable in ~25 different skia bench subtests, especially in
bitmap_8888_*, repeatTile_*, and morph_*.

bitmap_8888_A - 100% faster
bitmap_8888_A_source_transparent - 250% faster
bitmap_8888_A_source_opaque - 25% faster
bitmap_8888_A_scale_bicubic - 75% faster

Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>

Committed: https://skia.googlesource.com/skia/+/e2527b147679b0c43019fae7d59cc3777d2d097e

Committed: https://skia.googlesource.com/skia/+/b5c281e1e06af3be804309877de1dac6145686b9

R=reed@google.com, mtklein@google.com, tomhudson@google.com, djsollen@google.com, joakim.landberg@intel.com

Author: henrik.smiding@intel.com

Review URL: https://codereview.chromium.org/289473009
2014-06-27 08:03:17 -07:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench remove unnecessary bitmapdevice references 2014-06-27 05:49:54 -07:00
debugger Enable basic drawing with SkRecord-based pictures. 2014-06-23 15:13:26 -04:00
dm Support serialization in SkRecord-backed SkPictures. 2014-06-24 12:28:34 -07:00
docs warn that docs/quickstart.md is out of sync with official docs 2014-04-21 19:18:46 +00:00
expectations Update SKP version to 34 2014-06-27 01:02:30 -07:00
experimental Remove SkBicubicImageFilter, and all related tests. 2014-06-25 14:39:06 -07:00
forth Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm Remove SkBicubicImageFilter, and all related tests. 2014-06-25 14:39:06 -07:00
gyp Add SSE4 optimization of S32A_Opaque_Blitrow 2014-06-27 08:03:17 -07:00
include add SkSurface::NewRasterDirectReleaseProc 2014-06-27 06:48:14 -07:00
platform_tools Move BenchTimer to tools as Timer 2014-06-20 11:29:21 -07:00
resources Adding resource files 2014-06-02 15:18:27 -04:00
samplecode remove unnecessary bitmapdevice references 2014-06-27 05:49:54 -07:00
src Add SSE4 optimization of S32A_Opaque_Blitrow 2014-06-27 08:03:17 -07:00
tests Add SSE4 optimization of S32A_Opaque_Blitrow 2014-06-27 08:03:17 -07:00
third_party hide SkBitmap::Config entirely (behind a flag) 2014-06-17 08:38:31 -07:00
tools Make SKP bench JSON ouput better 2014-06-26 11:26:41 -07:00
trybots_to_run/chrome Deleting the hardcoded list of compile bots in trybots_to_run. 2013-04-09 11:59:42 +00:00
.gitignore Add common/ to .gitignore 2014-06-20 07:47:36 -07:00
AUTHORS MIPS: modified gypi files to support build 2014-06-06 14:09:12 -07:00
codereview.settings Add Project to skia 2014-06-20 09:39:15 -07:00
CONTRIBUTING Add CONTRIBUTING file 2014-01-13 15:06:26 +00:00
CQ_COMMITTERS Add sugoi@ to CQ_COMMITTERS. 2014-06-16 08:54:57 -07:00
DEPS Use new common tools in Python scripts 2014-06-25 11:13:27 -04:00
Doxyfile delete no-longer-used update-doxygen.sh 2014-05-15 14:41:00 +00:00
gyp_skia Fix Windows bots 2014-06-16 13:41:25 -07:00
gyp_skia.py Roll gyp deps from 1765 to 1796. 2013-11-21 18:11:14 +00:00
LICENSE Manually update copyright notices in files that defied the automated process 2011-07-28 14:24:55 +00:00
make.bat Enable compiling with automatically-downloaded VS toolchain on Windows bots 2014-06-16 10:02:42 -04:00
make.py Enable compiling with automatically-downloaded VS toolchain on Windows bots 2014-06-16 10:02:42 -04:00
Makefile simplify tools/xsan_build now that make runs ninja 2014-04-24 18:16:13 +00:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py Use new common tools in Python scripts 2014-06-25 11:13:27 -04:00
README Point to skiadocs in our README. 2014-05-09 04:30:09 +00:00
README.chromium add root files from chrome 2013-08-13 19:11:15 +00:00
skia.gyp Remove the comments settings for vim tab width and expansion variables. 2013-12-02 22:23:03 +00:00
SKP_VERSION Update SKP version to 34 2014-06-27 01:02:30 -07:00
whitespace.txt Testing trybot triggering 2014-06-13 11:59:44 -07:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://sites.google.com/site/skiadocs/home