Go to file
senorblanco@chromium.org c3856384e4 SSE2 optimizations for 32bit Color operation.
[Patch from weiwei.li@intel.com]

SSE2 optimization has been added by Stephen White before, this improves the skia
performance on SSE2-supporting platform. (please refer to below issues)

Issue 171055: More SSE2ification
Issue 157141: More SSE2ification
Issue 150060: minor tweaks to SSE2 code for -fPIC
Issue 144072: SSE2 optimizations for 32bit blending blitters

This CL implements SSE2 optimizations for the 32bit Color operation. Like above
issues, it uses CPUID to detect for SSE2 and changes the platform procs at
runtime as well. The 32bit Color operation is heavily used on Chrome HTML5
canvas operations. Take Microsoft IE test drives Pulsating Bubbles as example
(http://ie.microsoft.com/testdrive/Performance/PulsatingBubbles/Default.xhtml),
if running this cases on Chrome, the overhead of 32bit Color operation is about
40~50%. So this CL will make skia performance more better, and also make Chrome
HTML5 canvas performance more better.

Additional, this CL has passed the skia bench & tests validation, the result is
pretty good. We also apply this CL to the latest chromium, and re-run Microsoft
IE test drives Pulsating Bubbles, the performance is improved by almost 9~10%.


git-svn-id: http://skia.googlecode.com/svn/trunk@633 2bbb7eff-a529-9590-31e7-b0007b416f81
2010-12-13 15:27:20 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Revert "Revert "Use hairline when line width <= 1.0, instead of < 1.0."" 2010-04-27 15:47:34 +00:00
experimental convert matrix <--> matrix44 2010-03-01 14:54:05 +00:00
forth more unittests (already found/fixed some bugs) 2009-09-02 02:07:32 +00:00
gm use genericRGB space to ensure that we decode exactly the pixels we encode 2009-07-08 02:54:47 +00:00
include SSE2 optimizations for 32bit Color operation. 2010-12-13 15:27:20 +00:00
samplecode fix matrix use in coretext fonthost 2010-07-22 18:27:53 +00:00
src SSE2 optimizations for 32bit Color operation. 2010-12-13 15:27:20 +00:00
tests Upstream mulDiv255Ceil() from WebKit to the skia repository. 2010-12-07 21:07:56 +00:00
third_party/harfbuzz add 2010-04-08 18:48:12 +00:00
tools add png to makefile for linux 2010-04-15 14:28:24 +00:00
vs add new file 2009-12-21 18:34:13 +00:00
xcode Refactor SkCanvas so that backends don't need to override it. 2010-10-13 22:13:05 +00:00
configure.ac Initial automake and autoconf files to build core into libskia.a. 2009-01-06 17:03:16 +00:00
Makefile Initial PDF backend commit: directories, build rules, primitives 2010-09-24 22:25:30 +00:00
Makefile.am Initial automake and autoconf files to build core into libskia.a. 2009-01-06 17:03:16 +00:00
README Add a basic README file. 2009-01-13 22:01:54 +00:00

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

- 3x3 matrices w/ perspective
- antialiasing, transparency, filters
- shaders, xfermodes, maskfilters, patheffects