Go to file
fmalita 3c196def91 Souped-up SkTextBlob.
Refactored text blob backend for improved performance: instead of using
separate buffers for runs/positions/glyphs, everything is now packed in
a consolidated slab (including the SkTextBlob object itself!).

Benefits:

 * number of allocations per blob construction reduced from ~4 to 1
   (also minimizes internal fragmentation)
 * run record size reduced by 8 bytes

This takes the blob construction overhead down to negligible levels
(for the current Blink uncached textblob implementation).

Unfortunately, the code is much more finicky (run merging in
particular) -- hence the assert spree.

Multi-run blobs are vulnerable to realloc storms but this is not a
problem at the moment because Blink is using one-run blobs 99% of the
time. Will be addressed in the future.

R=mtklein@google.com, reed@google.com, robertphillips@google.com

Committed: https://skia.googlesource.com/skia/+/13645ea0ea87038ebd71be3bd6d53b313069a9e4

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/581173003
2014-09-20 05:40:22 -07:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench nanobench: print max RSS in debug mode too. 2014-09-18 07:39:42 -07:00
debugger "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
dm Add a "mode" tag to key in DM json output. 2014-09-19 10:35:07 -07:00
docs warn that docs/quickstart.md is out of sync with official docs 2014-04-21 19:18:46 +00:00
expectations Add ignored expectation for https://codereview.chromium.org/563283004. 2014-09-19 06:46:09 -07:00
experimental fixes to linux build for webtry 2014-09-18 10:58:33 -07:00
forth Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
gm SkTextBlob shader space workaround. 2014-09-19 11:40:51 -07:00
gyp Get rid of SkImage_Codec 2014-09-19 13:30:06 -07:00
include Souped-up SkTextBlob. 2014-09-20 05:40:22 -07:00
platform_tools Make -d x86 have the default GPU cache size. 2014-09-09 12:07:05 -07:00
resources Add resources/mandrill_512_q075.jpg 2014-08-27 13:44:34 -04:00
samplecode enable conservative clips for gpudevice 2014-09-19 13:04:17 -07:00
src Souped-up SkTextBlob. 2014-09-20 05:40:22 -07:00
tests Souped-up SkTextBlob. 2014-09-20 05:40:22 -07:00
third_party "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
tools fail early if coincidence can't be resolved 2014-09-19 06:33:31 -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 Refactored frontend for the rebaseline server. 2014-09-05 13:51:24 -07:00
AUTHORS Always disable the scissor test before BlitFrameBuffer 2014-09-16 06:24:58 -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 Adding myself to comitters 2014-09-16 11:03:39 -07:00
DEPS rebaseline_server: allow users to generate SKP diff patches on a shared instance 2014-08-20 08:00:28 -07: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 Update LSAN suppressions. 2014-08-29 07:55:35 -07:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py PRESUBMIT should only check owners for the top level include directory 2014-08-26 14:00:55 -07: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 106 2014-09-19 21:12:51 -07:00
whitespace.txt whitespace change 2014-09-02 08:04:43 -04: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