Commit Graph

8151 Commits

Author SHA1 Message Date
reed
1962f521a2 Revert of implement device::clear until we can remove callers in chrome skia/ext (patchset #1 id:1 of https://codereview.chromium.org/773903002/)
Reason for revert:
failing win unittests

Original issue's description:
> implement device::clear until we can remove callers in chrome skia/ext
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/252fccfb546efe83fb1d2c7a0b3c18a96ff46ea4

TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/774063002
2014-12-02 19:11:30 -08:00
qiankun.miao
45a0578086 Add SSSE3 acceleration for S32_D16_filter_DXDY
With this CL, related nanobench can be improved for 565 config.
                bitmap_BGRA_8888_scale_rotate_bilerp     115us -> 70.5us       0.61x
bitmap_BGRA_8888_update_volatile_scale_rotate_bilerp     115us -> 70.5us       0.61x
         bitmap_BGRA_8888_update_scale_rotate_bilerp     112us ->   68us       0.6x

BUG=skia:

Review URL: https://codereview.chromium.org/773753002
2014-12-02 18:26:09 -08:00
abarth
9503ac7a3c Add matrix operations to C canvas API
R=reed@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/769123002
2014-12-02 15:47:34 -08:00
derekf
e638d1c29b check matrix does not have rotation or perspective transformation
When checking whether we need apply AA to a rect for non-msaa target,
simply checking that the mapped rect is integer is not enough.
We need to check whether the transformation matrix has transformations
other than simple translation.

Original-Author: Henry Song <henrysong@samsung.com>

Review URL: https://codereview.chromium.org/772953002
2014-12-02 13:51:30 -08:00
mtklein
701dd4fbd7 Flail a little against LLVM crash.
Cannot reproduce this in my local Chromium checkout (using their Clang, just like the bots).

BUG=skia:

TBR=reed@google.com

Review URL: https://codereview.chromium.org/764433003
2014-12-02 13:17:06 -08:00
reed
252fccfb54 implement device::clear until we can remove callers in chrome skia/ext
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/773903002
2014-12-02 12:53:05 -08:00
Justin Novosad
5234075b1c Adding a PictureResolution option to SkPictureImageFilter
This change adds an option to SkPictureImageFilter to make it
rasterize SkPicture in a resolution that matches the local coordinate
space (equivalent to the record-time device space).

BUG=skia:3176
R=reed@google.com, senorblanco@chromium.org

Review URL: https://codereview.chromium.org/753073010
2014-12-02 14:50:56 -05:00
derekf
367e1867b2 use drawRect when drawing a bitmap with anti-aliasing on a non-msaa target
If the dest isn't pixel aligned, or if a non 90 degree rotation is
present, we need to use drawRect() for drawing anti-aliased bitmaps on
non-msaa targets or the edges won't be anti-aliased as intended.

Note: If the bitmap size is bigger than max texture size we fall back to drawBitmapCommon.

Original-Author: Henry Song <henrysong@samsung.com>

Review URL: https://codereview.chromium.org/649313003
2014-12-02 11:02:06 -08:00
reed
3729469d6a Change clear() to respect the clip
patch from issue 769703002 at patchset 1 (http://crrev.com/769703002#ps1)

BUG=skia:

Review URL: https://codereview.chromium.org/772533004
2014-12-02 10:08:11 -08:00
mtklein
cc969c4dd9 Make SkColorTable explicitly thread-safe.
Mostly this means using SkLazyPtr for the 16-bit cache.
We can remove the copy constructor now and just ref it instead.

BUG=skia:

Review URL: https://codereview.chromium.org/769323002
2014-12-02 10:02:47 -08:00
bsalomon
eff2c721b9 move some copy surface stuff to GrFlushToGpuDrawTarget
Review URL: https://codereview.chromium.org/770813002
2014-12-02 09:40:12 -08:00
mtklein
775b8199a2 SkColorTable locking serves no purpose anymore.
The only thing the unlock methods were doing was assert their balance.
This removes the unlock methods and renames the lock methods "read".

BUG=skia:

Review URL: https://codereview.chromium.org/719213008
2014-12-02 09:11:25 -08:00
robertphillips
ba1bf8af8d Remove comment
Review URL: https://codereview.chromium.org/770323002
2014-12-02 09:00:59 -08:00
hendrikw
a0d5ad7208 skia: Prevent GL_RED from being used with MESA
MESA unfortunately doesn't support GL_RED or GL_RG when used with frame buffers.
Don't allow fTextureRedSupport to be set when using MESA.

BUG=skia:3181

Review URL: https://codereview.chromium.org/769073003
2014-12-02 07:30:30 -08:00
halcanary
d476a176b7 Remove PDF JPEG shortcut, since it fails on grayscale JPEGs.
BUG=436079

Review URL: https://codereview.chromium.org/767343002
2014-12-02 06:37:21 -08:00
bungeman
c6b8b02882 Remove support for OSX 10.5.
No user supports OSX 10.5 at this point, so remove the
last support for building there.

Review URL: https://codereview.chromium.org/768133005
2014-12-01 15:04:54 -08:00
bungeman
ce547f4cee Remove SkASSERT_CONTINUE.
This macro is no longer used.

Review URL: https://codereview.chromium.org/770923002
2014-12-01 15:03:54 -08:00
abarth
2fc6ea62ce Add scale and skew to C canvas API
R=reed@chromium.org
BUG=skia:

Review URL: https://codereview.chromium.org/762493005
2014-12-01 14:04:03 -08:00
bungeman
9dc24686e7 Clean up FreeType library ref counting.
The existing reference counting and code for LCD is difficult to
understand. This cleans it up a bit in preperation for the typefaces
holding the references and faces themselves which will clean this up
quite a bit more.

Review URL: https://codereview.chromium.org/742483004
2014-12-01 14:01:32 -08:00
mtklein
435eba7e1e Pre-cache local matrix type in shader constructor.
TSAN points out we race when choosing our blitter without this.

BUG=437511

Review URL: https://codereview.chromium.org/773563002
2014-12-01 12:06:24 -08:00
mtklein
3f3b3d0035 Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
This was needed for pictures before v33, and we're now requiring v35+.

Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88

Review URL: https://codereview.chromium.org/769953002
2014-12-01 11:47:08 -08:00
robertphillips
bc0c4bd9df Add additional clean up code in MPD path
This addresses an edge case where a picture only has one layer which is atlasable but doesn't make it into the atlas. In this case asserts can fire since there is no atlased layer to clean up the tracking picture object.

Review URL: https://codereview.chromium.org/764393002
2014-12-01 11:39:59 -08:00
mtklein
af57903f33 Force SkMatrix type while recording too.
This switches to a new way of doing this, enforcing the caching with the type
recorded rather than having to do it in SkRecorder.  Should be more foolproof.

Updated SkPath and SkBitmap's equivalents too.  ImmutableBitmap was close,
but using inheritance now makes the rest of the code less weird.

BUG=437511

I'm not sure whether or not this will _fix_ the SkMatrix aspect of that bug.
There may be other SkMatrices that we're racing on.  It does cover the obvious
ones, though, and removing the SkTRacy<> wrapper will allow TSAN to show
us any other races.

It turned out to be easier to turn missing optional matrices into I early rather
than late.  I figure this should be harmless.  Recording and playback perf both
look neutral.

Review URL: https://codereview.chromium.org/773433003
2014-12-01 11:03:37 -08:00
mtklein
6e78293ee8 Revert of Remove SK_SUPPORT_LEGACY_DEEPFLATTENING. (patchset #1 id:1 of https://codereview.chromium.org/769953002/)
Reason for revert:
Breaks canary builds.  Will reland after the Chromium change lands.

Original issue's description:
> Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
>
> This was needed for pictures before v33, and we're now requiring v35+.
>
> Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88

TBR=reed@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/768183002
2014-12-01 10:56:05 -08:00
mtklein
52c293547b Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
This was needed for pictures before v33, and we're now requiring v35+.

Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc

BUG=skia:

Review URL: https://codereview.chromium.org/769953002
2014-12-01 10:23:11 -08:00
robertphillips
01d6e5f462 Use variable length key (rather than accumulated matrix) as save layer hoisting key
Adding the rendering canvas' CTM to the layer hoisting key (i.e., Add support for hoisting layers in pictures drawn with a matrix - https://codereview.chromium.org/748853002/) has increased the cache miss rate due to accumulated floating point error. This CL fixes part of the issue by using the chain of operation indices leading to each saveLayer as the key. The canvas' CTM must still form part of the key but should be less subject to accumulated error.

BUG=skia:2315

Review URL: https://codereview.chromium.org/753253002
2014-12-01 09:09:27 -08:00
cdalton
e05162d157 Ignore SkGlyphCache gamma for nvpr text
BUG=skia:

Review URL: https://codereview.chromium.org/740343006
2014-12-01 08:57:33 -08:00
cdalton
20b373cf31 Add color emoji fallback for nvpr text
BUG=skia:

Review URL: https://codereview.chromium.org/759613005
2014-12-01 08:38:55 -08:00
bsalomon
371bcbcb9f Add a base class for GrIODB that handles geometry data
Review URL: https://codereview.chromium.org/773433002
2014-12-01 08:19:34 -08:00
mtklein
5c9c9be1f5 Force path bounds in recording.
The use of SKTRacy isn't safe in SkPathRef.
There are logical dependencies between the racy fields.

Doesn't seem to affect recording performance:

$ c --match skp --config nonrendering
               tabl_techmeme.skp	81.1us ->   86us	1.06x
                 desk_mapsvg.skp	1.23ms -> 1.26ms	1.02x
           desk_yahooanswers.skp	 114us ->  117us	1.02x
                tabl_sahadan.skp	70.9us ->   72us	1.02x
               desk_fontwipe.skp	31.6us ->   32us	1.01x
           tabl_cuteoverload.skp	 414us ->  419us	1.01x
             desk_mobilenews.skp	 503us ->  508us	1.01x
               desk_tigersvg.skp	 150us ->  152us	1.01x
               desk_samoasvg.skp	 608us ->  610us	1x
                   tabl_digg.skp	 636us ->  638us	1x
                 tabl_pravda.skp	 155us ->  156us	1x
     desk_jsfiddlehumperclip.skp	33.9us -> 33.9us	1x
      tabl_culturalsolutions.skp	 295us ->  295us	1x
                desk_youtube.skp	 447us ->  448us	1x
                    desk_gws.skp	 144us ->  144us	1x
               tabl_frantzen.skp	  42us ->   42us	1x
                  tabl_gspro.skp	50.1us ->   50us	1x
         tabl_googlecalendar.skp	 165us ->  165us	1x
                desk_twitter.skp	 359us ->  358us	1x
              desk_wordpress.skp	 588us ->  583us	0.99x
         desk_jsfiddlebigcar.skp	32.8us -> 32.5us	0.99x
                desk_booking.skp	 838us ->  827us	0.99x
          tabl_androidpolice.skp	1.42ms ->  1.4ms	0.99x
                desk_blogger.skp	 378us ->  372us	0.98x
                desk_wowwiki.skp	1.11ms -> 1.09ms	0.98x
                   tabl_cnet.skp	 115us ->  112us	0.97x
            desk_silkfinance.skp	57.7us -> 55.9us	0.97x
                    tabl_cnn.skp	 136us ->  131us	0.97x
                 desk_sfgate.skp	 396us ->  377us	0.95x
             tabl_deviantart.skp	 107us ->  102us	0.95x
                tabl_mozilla.skp	 1.4ms -> 1.32ms	0.94x
BUG=437511

Review URL: https://codereview.chromium.org/762313002
2014-12-01 06:59:55 -08:00
mtklein
88fd0fbccc Bump min picture version.
Chrome Stable is M39, which produces picture format v35:
    https://chromium.googlesource.com/skia/+/chrome/m39/include/core/SkPicture.h

We don't need any code to deal with pictures older than v35.

(When M40 goes stable, we can step up to v37, the current latest version.)

BUG=skia:

Review URL: https://codereview.chromium.org/770703002
2014-12-01 06:56:38 -08:00
joakim.landberg
bb25e44593 Add extra safety check to the EGL context setup.
Adds a check to make sure eglChooseConfig actually
found a valid config. Besides checking for EGL errors,
we also have to handle the case when no matching configs
are found, i.e when num_config is 0.

BUG=skia:

Review URL: https://codereview.chromium.org/762113003
2014-12-01 06:46:01 -08:00
robertphillips
8a2198a56b Fix Windows SkTime version
Windows' GetSystemTime returns months in 1-12 range (http://msdn.microsoft.com/en-us/library/aa908737.aspx) while Linux' time returns months in 0-11 range.

Review URL: https://codereview.chromium.org/765383002
2014-12-01 05:55:54 -08:00
jvanverth
936799204b Add float-to-half (binary16) conversion functions.
Based on code by Fabian Giesen at
https://fgiesen.wordpress.com/2012/03/28/half-to-float-done-quic/.

These will be needed for creating binary16 textures from floating point data.

BUG=skia:3103

Review URL: https://codereview.chromium.org/760753003
2014-11-26 13:15:59 -08:00
danakj
9881d63c57 Make skia trace category disabled by default.
BUG=skia:3088

Review URL: https://codereview.chromium.org/761773003
2014-11-26 12:41:06 -08:00
bsalomon
f90a02b42a some cleanup around GrGpu/GrDrawTarget copySurface
Committed: https://skia.googlesource.com/skia/+/e9aa5dc4d5906788eaf691d7c69f1494928f401d

Review URL: https://codereview.chromium.org/749903003
2014-11-26 12:28:00 -08:00
bsalomon
8ee4e601f9 Revert of some cleanup around GrGpu/GrDrawTarget copySurface (patchset #3 id:40001 of https://codereview.chromium.org/749903003/)
Reason for revert:
likely causing es rendering errors.

Original issue's description:
> some cleanup around GrGpu/GrDrawTarget copySurface
>
> Committed: https://skia.googlesource.com/skia/+/e9aa5dc4d5906788eaf691d7c69f1494928f401d

TBR=joshualitt@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/763593002
2014-11-26 10:20:45 -08:00
reed
f0090cb80a add basic tests for save/restore counting
BUG=skia:

Review URL: https://codereview.chromium.org/763503003
2014-11-26 08:55:51 -08:00
egdaniel
c67870cfc1 Update effect key for descriptor to not record offsets.
BUG=skia:

Review URL: https://codereview.chromium.org/760593005
2014-11-26 08:50:50 -08:00
reed
986ca61cf7 rename SkDrawable to SkADrawable
BUG=skia:

Review URL: https://codereview.chromium.org/764463002
2014-11-26 08:50:45 -08:00
bsalomon
e9aa5dc4d5 some cleanup around GrGpu/GrDrawTarget copySurface
Review URL: https://codereview.chromium.org/749903003
2014-11-26 08:45:30 -08:00
bsalomon
1dbd816ea6 Fix early out in GrResourceCache2::purgeAsNeeded
BUG=chromium:436846
TBR=robertphillips@google.com

Review URL: https://codereview.chromium.org/755193003
2014-11-26 06:06:02 -08:00
joshualitt
267ce482b5 remove proc key
BUG=skia:

Review URL: https://codereview.chromium.org/755363002
2014-11-25 14:52:21 -08:00
joshualitt
60030bc2e1 remove one place we read from gpu key in effects
BUG=skia:

Review URL: https://codereview.chromium.org/761643002
2014-11-25 14:21:55 -08:00
scroggo
f3ca41c723 Add an Android-framework-only stable ID to SkPixelRef.
BUG:b/18245805

Review URL: https://codereview.chromium.org/752203002
2014-11-25 13:42:12 -08:00
cdalton
55b24afc17 Add IndexType parameter to GrDrawTarget::drawPaths
Allows the caller to decide whether they sent 8, 16, or 32 bit path
indices.

BUG=skia:

Review URL: https://codereview.chromium.org/746253003
2014-11-25 11:00:56 -08:00
mtklein
b116619028 Sk4x_sse.h
CQ_EXTRA_TRYBOTS=client.skia:Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Release-Trybot,Test-Mac10.7-MacMini4.1-GeForce320M-x86_64-Release-Trybot,Test-Win7-ShuttleA-HD2000-x86-Debug-GDI-Trybot

BUG=skia:

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

Review URL: https://codereview.chromium.org/698873003
2014-11-25 11:00:38 -08:00
egdaniel
f8449babdc Update invariant output computation for various texture effects.
Update various effects that read in textures to check whether or not the texture is alpha only.
This allows us to use a more specific mulByUnKnownAlpha instead of the more general mulByUnknownColor

BUG=skia:

Review URL: https://codereview.chromium.org/759653004
2014-11-25 10:24:56 -08:00
egdaniel
74d80eba37 Remove unnessary check to skip drawing.
This is now checked during the OptDrawStates creation and thus is no longer needed here.
I have varified that this code path is never hit.

BUG=skia:

Review URL: https://codereview.chromium.org/758973002
2014-11-25 10:08:33 -08:00
mtklein
785982ed80 Eliminate static initializers in SkColor_SSE2.h.
Chrome hates static initializers.

Two global masks can become a single local mask instead.  Perf looks like a no-op:

$ c --match bitmaprect_80 bitmap_RGBA --config 8888
                              bitmap_RGBA_8888_scale	13.7us -> 14.1us	1.03x
                    bitmap_RGBA_8888_update_volatile	4.53us ->  4.6us	1.02x
                                    bitmap_RGBA_8888	4.55us -> 4.61us	1.01x
                             bitmap_RGBA_8888_update	4.64us -> 4.67us	1.01x
             bitmap_RGBA_8888_A_source_stripes_three	9.66us -> 9.71us	1.01x
                       bitmaprect_80_filter_identity	10.6us -> 10.5us	0.99x
                     bitmaprect_80_nofilter_identity	10.5us -> 10.4us	0.99x

TBR=reed@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/762453002
2014-11-25 10:05:43 -08:00
bungeman
be2284de55 Use text size on Mac.
The current code assumes that text on Mac is freely scalable,
or at least that the text size is just a part of the transform.
However, it appears that application of the 'trak' table,
as well as other optical adjustments, may rely on the text size
directly.

This change passes the text size requested directly to CoreText.

BUG=chromium:427528

Review URL: https://codereview.chromium.org/752183002
2014-11-25 08:08:09 -08:00
bsalomon
a2c2323005 Remove GrSurface::isSameAs
Review URL: https://codereview.chromium.org/753783003
2014-11-25 07:41:12 -08:00
qiankun.miao
6ff4acedb5 Optimize highQualityFilter
portable version:
before:
  10M   1       806µs   807µs   810µs   821µs   1%      █▂▁▁▃▁▁▁█▁ 8888    bitmap_BGRA_8888_A_scale_rotate_bicubic
after:
  10M   1       566µs   568µs   569µs   579µs   1%      ▄▂▂█▂▁▁▁▃▁ 8888    bitmap_BGRA_8888_A_scale_rotate_bicubic

SSE version:
before:
  10M   1       485µs   486µs   487µs   494µs   1%      ▇▂▁▁▁▁█▂▁▁ 8888    bitmap_BGRA_8888_A_scale_rotate_bicubic
after:
  10M   1       419µs   420µs   421µs   430µs   1%      ▅▃▂▁▁█▂▁▁▁ 8888    bitmap_BGRA_8888_A_scale_rotate_bicubic

BUG=skia:

Review URL: https://codereview.chromium.org/759603002
2014-11-25 07:12:27 -08:00
qiankun.miao
2253aa9393 Add SkBlendARGB32_SSE2() to clean up code
Related nanobench results:
before:
maxrss  loops   min     median  mean    max     stddev  samples         config  bench
  10M   2       31.9µs  32.4µs  33.3µs  38.7µs  6%      █▄▂▂▂▁▂▁▁▁      8888    bitmap_BGRA_8888_A_scale_bicubic
  10M   13      43.8µs  51.8µs  49.6µs  57.9µs  11%     ▁▁▁▁▂▆▇▆▅█      8888    bitmap_BGRA_8888_A_scale_bilerp
  10M   13      23.7µs  24.3µs  26µs    32.7µs  13%     ▅█▆▁▁▁▁▂▁▁      8888    bitmap_Index_8_A
  10M   4       1.68µs  1.7µs   4.09µs  25.4µs  183%    █▁▁▁▁▁▁▁▁▁      8888    text_16_AA_88
  10M   144     1.76µs  1.77µs  1.78µs  1.81µs  1%      █▂▇▂▅▁▁▁▁▁      8888    text_16_AA_FF
  10M   10      4.7µs   5.34µs  5.61µs  8.63µs  21%     █▂▂▃▂▁▁▁▁▄      8888    rotated_rects_aa_alternating_transparent_and_opaque_src
  10M   50      4.44µs  4.47µs  4.5µs   4.71µs  2%      █▅▃▂▂▂▁▁▁▁      8888    rotated_rects_aa_changing_opaque_src
  10M   51      4.39µs  4.78µs  5.21µs  6.62µs  17%     ▁▆▆▇▁▁█▁▂▂      8888    rotated_rects_aa_same_opaque_src
  10M   50      4.47µs  5.79µs  5.43µs  6.14µs  11%     ▄▂▁▃▇▇▆▇▇█      8888    rotated_rects_aa_alternating_transparent_and_opaque_srcover
  10M   30      4.35µs  6.06µs  5.84µs  7.63µs  16%     ▅▅▅▄▅▅▄█▁▁      8888    rotated_rects_aa_changing_transparent_srcover
  10M   44      4.31µs  4.51µs  4.76µs  6.25µs  13%     ▄▂▂▁█▃▁▃▁▁      8888    rotated_rects_aa_changing_opaque_srcover
  10M   46      4.36µs  4.42µs  4.75µs  6.19µs  14%     ▆█▃▁▁▁▁▁▁▁      8888    rotated_rects_aa_same_transparent_srcover
  10M   47      4.29µs  4.35µs  4.44µs  5.15µs  6%      ▃▂▂▁▁█▁▁▁▁      8888    rotated_rects_aa_same_opaque_srcover
  10M   3       39.1µs  39.2µs  50.7µs  153µs   71%     █▁▁▁▁▁▁▁▁▁      8888    rectori
  10M   1       2.3ms   2.31ms  2.35ms  2.74ms  6%      ▁▁▁▁▁▁▁▁█▂      8888    maskcolor
  10M   1       2.33ms  2.34ms  2.53ms  3.14ms  11%     ▁▁▁▁▁▁▅█▄▄      8888    maskopaque
  10M   11      15µs    15.3µs  15.7µs  18.3µs  7%      ▅▃▂▂▁▁▁▁█▁      8888    rrects_3_stroke_4
  10M   46      3.99µs  4.07µs  4.14µs  4.54µs  4%      █▅▅▃▂▂▁▁▁▁      8888    rrects_3
  10M   16      15.6µs  15.9µs  16.1µs  17.5µs  4%      █▄▃▂▂▂▁▂▁▁      8888    ovals_3_stroke_4
  10M   40      5.09µs  5.18µs  5.23µs  5.67µs  3%      █▅▃▂▂▁▃▁▁▁      8888    ovals_3
  10M   231     1.92µs  1.93µs  1.94µs  2µs     1%      █▃▂▁▃▁▁▁▁▁      8888    zeroradroundrect
  10M   924     3.88µs  3.93µs  4.11µs  4.95µs  9%      ▁█▆▃▁▁▁▁▁▁      8888    arbroundrect
  10M   8       8.11µs  8.47µs  8.48µs  8.85µs  3%      █▅▇▄▄▂▁▄▄▆      8888    merge_large
  10M   14      6.71µs  6.92µs  6.96µs  7.46µs  3%      ▃▆▁█▃▃▃▂▂▁      8888    merge_small
  11M   2       225µs   227µs   229µs   233µs   1%      ███▃▇▂▃▁▃▂      8888    displacement_full_large
  16M   1       381µs   401µs   401µs   421µs   3%      ▅▅▅█▆▄▄▃▃▁      8888    displacement_alpha_large
  19M   1       507µs   508µs   509µs   512µs   0%      █▃▂▆▂▂▃▂▃▁      8888    displacement_zero_large
  19M   19      9µs     9.11µs  9.15µs  9.67µs  2%      ▄▂▂▂█▂▁▁▁▂      8888    displacement_full_small
  19M   5       54.2µs  54.5µs  54.9µs  58µs    2%      █▃▂▂▁▁▃▁▁▁      8888    blurroundrect_WH[100x100]_cr[90]
  20M   1       229µs   230µs   231µs   240µs   2%      █▄▃▂▂▁▁▁▁▂      8888    GM_varied_text_clipped_no_lcd
  20M   1       267µs   269µs   270µs   279µs   1%      █▄▃▂▂▂▂▂▁▁      8888    GM_varied_text_ignorable_clip_no_lcd
  22M   1       1.95ms  1.97ms  2.03ms  2.46ms  8%      ▁▁▁▁▁▁▁▂█▃      8888    GM_convex_poly_clip

after:
maxrss	loops	min	median	mean	max	stddev	samples   	config	bench
  10M	2	31.5µs	32.3µs	32.8µs	37.2µs	5%	█▄▃▂▂▂▁▁▁▁	8888	bitmap_BGRA_8888_A_scale_bicubic
  10M	13	43.9µs	44µs	44.1µs	44.9µs	1%	█▂▁▁▁▆▁▁▁▂	8888	bitmap_BGRA_8888_A_scale_bilerp
  10M	19	22.7µs	23.3µs	25.6µs	32.4µs	14%	▁▁▁▁▁▅▆▁▅█	8888	bitmap_Index_8_A
  10M	5	1.79µs	1.97µs	3.85µs	21.1µs	158%	█▁▁▁▁▁▁▁▁▁	8888	text_16_AA_88
  10M	141	1.83µs	1.83µs	1.85µs	1.93µs	2%	▅▁▁█▁▁▁▁▁▁	8888	text_16_AA_FF
  10M	10	4.65µs	4.92µs	5.06µs	6.56µs	11%	█▃▃▂▂▂▁▁▁▁	8888	rotated_rects_aa_alternating_transparent_and_opaque_src
  10M	51	4.35µs	4.48µs	4.83µs	6.68µs	17%	▂▁▁▁▁▁▁▂▆█	8888	rotated_rects_aa_changing_opaque_src
  10M	51	4.38µs	4.79µs	4.85µs	5.84µs	11%	▁█▁▃▃▁▄▁▄▇	8888	rotated_rects_aa_same_opaque_src
  10M	32	5.58µs	6.24µs	6.1µs	6.39µs	5%	█▂█▆▁▇▄▅▇▇	8888	rotated_rects_aa_alternating_transparent_and_opaque_srcover
  10M	42	4.28µs	5.59µs	5.11µs	6.01µs	15%	▂▂█▇█▂▁▆▁▇	8888	rotated_rects_aa_changing_transparent_srcover
  10M	48	4.24µs	4.33µs	4.58µs	6.46µs	15%	▁▁▁▁▁█▃▂▁▁	8888	rotated_rects_aa_changing_opaque_srcover
  10M	48	4.28µs	4.3µs	4.4µs	5.12µs	6%	▂▂▁▁▁▁▁▁▁█	8888	rotated_rects_aa_same_transparent_srcover
  10M	46	4.24µs	4.29µs	4.66µs	7.11µs	20%	▁▁▁▁▁▁▁▁▃█	8888	rotated_rects_aa_same_opaque_srcover
  10M	3	39.3µs	39.4µs	51.4µs	154µs	70%	█▁▁▁▁▁▁▁▁▁	8888	rectori
  10M	1	2.32ms	2.43ms	2.53ms	3.14ms	11%	▁▁▁▁▂▄█▃▅▁	8888	maskcolor
  10M	1	2.33ms	2.37ms	2.54ms	3.21ms	12%	▁▁▁▁▁▂█▅▆▁	8888	maskopaque
  10M	10	15.3µs	15.6µs	15.8µs	17.2µs	4%	█▅▃▂▂▂▁▁▁▁	8888	rrects_3_stroke_4
  10M	46	4.03µs	4.09µs	4.15µs	4.47µs	4%	█▄▆▂▂▂▁▁▁▁	8888	rrects_3
  10M	15	15.9µs	16.2µs	16.3µs	17.8µs	4%	█▄▃▂▂▂▁▁▁▁	8888	ovals_3_stroke_4
  10M	40	5.14µs	5.26µs	5.29µs	5.72µs	3%	█▅▃▂▂▁▂▂▁▁	8888	ovals_3
  10M	222	1.91µs	1.99µs	2.21µs	2.91µs	19%	▂▁▁▁▁▁▂▇▇█	8888	zeroradroundrect
  10M	462	3.9µs	3.96µs	4.23µs	5.22µs	12%	▆▄█▁▂▁▁▁▁▁	8888	arbroundrect
  10M	8	8.2µs	8.59µs	8.62µs	8.97µs	3%	▆▄█▄▅▃▁▆▄█	8888	merge_large
  10M	14	6.73µs	6.88µs	6.86µs	7.08µs	2%	▄█▁▂▄▂▅▄▂▅	8888	merge_small
  11M	2	221µs	234µs	237µs	263µs	5%	▄▃▃▃▄▃▂▁▇█	8888	displacement_full_large
  16M	1	387µs	416µs	427µs	471µs	7%	▇█▁▃▃▁▃▃▇▆	8888	displacement_alpha_large
  19M	1	512µs	521µs	528µs	594µs	5%	█▂▂▂▁▁▂▃▁▁	8888	displacement_zero_large
  19M	18	9.06µs	9.12µs	9.13µs	9.23µs	1%	█▃▃▃▄▃▆▁▅▅	8888	displacement_full_small
  19M	5	55.6µs	55.9µs	56.5µs	59.5µs	2%	█▃▂▁▁▁▁▁▅▁	8888	blurroundrect_WH[100x100]_cr[90]
  20M	1	229µs	233µs	235µs	254µs	3%	█▄▃▂▂▁▁▂▁▁	8888	GM_varied_text_clipped_no_lcd
  20M	1	270µs	271µs	272µs	278µs	1%	█▄▃▂▂▂▁▂▁▇	8888	GM_varied_text_ignorable_clip_no_lcd
  22M	1	1.96ms	2ms	2.06ms	2.45ms	7%	▂▂▁▁▁▁▁▃█▄	8888	GM_convex_poly_clip

BUG=skia:

Review URL: https://codereview.chromium.org/754733002
2014-11-25 06:35:02 -08:00
qiankun.miao
533a32782f Cleanup with SkAlphaMulQ_SSE2()
Related nanobench results:
before:
  10M   18      7.03µs  7.31µs  7.38µs  8.46µs  6%      ▂▁▂▂▂▃▄▁█▁      8888    bitmaprect_80_filter_identity
  10M   43      6.96µs  6.97µs  6.99µs  7.19µs  1%      ▁▂▁▁▁▁▁█▁▁      8888    bitmaprect_80_nofilter_identity
  10M   14      35.7µs  35.8µs  35.9µs  36.3µs  1%      ▃▂▁▂▁█▂▁▁▁      8888    bitmap_BGRA_8888_update_scale_bilerp
  10M   16      35.5µs  35.6µs  35.7µs  36.3µs  1%      █▅▂▁▁▁▃▂▁▁      8888    bitmap_BGRA_8888_update_volatile_scale_bilerp
  10M   16      35.4µs  35.4µs  35.5µs  36.8µs  1%      ▂▁█▁▁▁▁▂▁▁      8888    bitmap_BGRA_8888_scale_bilerp
  10M   25      16.4µs  16.6µs  16.7µs  17.4µs  2%      ▂▁▁▂▁▁▁▅▅█      8888    bitmap_Index_8
  10M   15      37.9µs  38µs    38µs    38.4µs  0%      ▄▆▂▁▁▁█▂▁▁      8888    bitmap_RGB_565
  10M   33      11.1µs  11.1µs  11.1µs  11.2µs  0%      ▆▂█▂▂▂▁▁▂▁      8888    bitmap_BGRA_8888_scale
after:
  10M   9       7.04µs  7.06µs  7.1µs   7.32µs  1%      █▅▂▁▁▂▁▁▁▁      8888    bitmaprect_80_filter_identity
  10M   18      7.01µs  7.02µs  7.05µs  7.25µs  1%      █▂▁▁▁▁▁▁▁▁      8888    bitmaprect_80_nofilter_identity
  10M   5       33.9µs  34µs    34.1µs  34.5µs  1%      █▃▂▂▁▁▁▅▃▂      8888    bitmap_BGRA_8888_update_scale_bilerp
  10M   7       35.5µs  35.5µs  35.6µs  36.3µs  1%      ▃▂▂▁▂▁▂▁█▂      8888    bitmap_BGRA_8888_update_volatile_scale_bilerp
  10M   7       35.5µs  35.5µs  35.7µs  36.8µs  1%      ▂▁▁▁▁▁▁▁▁█      8888    bitmap_BGRA_8888_scale_bilerp
  10M   11      16.4µs  16.4µs  16.4µs  16.6µs  0%      █▂▁▁▂▁▁▁▂▁      8888    bitmap_Index_8
  10M   7       37.3µs  37.4µs  38.4µs  47.8µs  9%      ▁▁▁▁▁▁▁▁▁█      8888    bitmap_RGB_565
  10M   33      11µs    11µs    11.1µs  11.2µs  1%      ▄█▅▃▂▁▁▁▁▁      8888    bitmap_BGRA_8888_scale

BUG=skia:

Review URL: https://codereview.chromium.org/755573002
2014-11-25 05:59:38 -08:00
bsalomon
10e23caea3 Use scratch keys for stencil buffers.
BUG=skia:2889

Committed: https://skia.googlesource.com/skia/+/91175f19664a62851da4ca4e0984a7c7c45b258f

Review URL: https://codereview.chromium.org/747043004
2014-11-25 05:52:06 -08:00
reed
26a6bf6a26 free up picturerecorder refs after returning picture or drawable
this just accelerates what would happen on the next beginRecording() call or the destructor. chrome has unittests that break (shaders on the stack) if we hold on to the internals past endRecording().

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/758813002
2014-11-24 19:59:23 -08:00
reed
afa278e250 more c
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/736133006
2014-11-24 19:11:48 -08:00
mtklein
f98862c39b SkRecord: outline methods that are not called O(N) times.
Looks like a noop-to-minor-win:
                tabl_sahadan.skp	94.9us -> 98.6us	1x
         desk_jsfiddlebigcar.skp	38.9us -> 39.7us	1x
            desk_silkfinance.skp	  78us -> 78.9us	1x
     desk_jsfiddlehumperclip.skp	43.8us -> 44.3us	1x
                 desk_sfgate.skp	 547us ->  548us	1x
                  tabl_gmail.skp	19.9us -> 19.8us	1x
           tabl_worldjournal.skp	 230us ->  229us	1x
          desk_css3gradients.skp	 248us ->  247us	1x
                    tabl_cnn.skp	 205us ->  203us	0.99x
               desk_linkedin.skp	 342us ->  340us	0.99x
                desk_wowwiki.skp	1.63ms -> 1.62ms	0.99x
                   tabl_cnet.skp	 142us ->  141us	0.99x
            desk_pokemonwiki.skp	9.76ms -> 9.67ms	0.99x
                   desk_espn.skp	 267us ->  264us	0.99x
                desk_youtube.skp	 576us ->  570us	0.99x
                 tabl_pravda.skp	 238us ->  235us	0.99x
                  tabl_ukwsj.skp	 566us ->  560us	0.99x
               tabl_engadget.skp	 630us ->  622us	0.99x
desk_googlespreadsheetdashed.skp	1.66ms -> 1.64ms	0.99x
             desk_mobilenews.skp	 486us ->  480us	0.99x
         tabl_googlecalendar.skp	 211us ->  208us	0.99x
               desk_samoasvg.skp	 740us ->  730us	0.99x
                    desk_gws.skp	 187us ->  184us	0.99x
                   desk_ebay.skp	 234us ->  230us	0.99x
                 desk_mapsvg.skp	 1.6ms -> 1.58ms	0.98x
                tabl_nytimes.skp	 130us ->  128us	0.98x
             tabl_googleblog.skp	 305us ->  300us	0.98x
               desk_fontwipe.skp	40.3us -> 39.6us	0.98x
               desk_tigersvg.skp	 189us ->  186us	0.98x
          tabl_androidpolice.skp	 662us ->  650us	0.98x
              desk_wordpress.skp	 824us ->  809us	0.98x
                    tabl_mlb.skp	 338us ->  331us	0.98x
      tabl_culturalsolutions.skp	 390us ->  382us	0.98x
                  desk_baidu.skp	 213us ->  208us	0.98x
                  tabl_gspro.skp	72.9us -> 71.1us	0.97x
                 tabl_nofolo.skp	  74us -> 71.9us	0.97x
           desk_yahooanswers.skp	 173us ->  168us	0.97x
               tabl_frantzen.skp	57.3us -> 55.6us	0.97x
             desk_chalkboard.skp	 891us ->  865us	0.97x
              desk_pinterest.skp	 154us ->  149us	0.97x
                desk_blogger.skp	 537us ->  519us	0.97x
                   tabl_hsfi.skp	10.1us -> 9.69us	0.96x
            desk_gmailthread.skp	 333us ->  318us	0.96x
                   tabl_digg.skp	 926us ->  883us	0.95x
      desk_googlespreadsheet.skp	 586us ->  558us	0.95x
             desk_forecastio.skp	 101us -> 95.7us	0.95x
                desk_booking.skp	 1.1ms -> 1.04ms	0.95x
             tabl_deviantart.skp	 144us ->  136us	0.95x
               desk_facebook.skp	 584us ->  553us	0.95x
                desk_weather.skp	 289us ->  272us	0.94x
             desk_googlehome.skp	61.1us -> 57.5us	0.94x
             desk_googleplus.skp	 914us ->  849us	0.93x
                desk_twitter.skp	 499us ->  463us	0.93x

BUG=skia:

Review URL: https://codereview.chromium.org/756783002
2014-11-24 14:45:47 -08:00
reed
1bdfd3f4f0 option to return drawable from recording
patch from issue 747033005 at patchset 80001 (http://crrev.com/747033005#ps80001)

BUG=skia:

Review URL: https://codereview.chromium.org/732653004
2014-11-24 14:41:51 -08:00
bsalomon
19cd0f1813 Revert "Use scratch keys for stencil buffers."
This reverts commit 91175f1966.

Revert "Cleanup res cache bench and split out into a unit test."

This reverts commit 4e4303f002.

Revert "rebaselines"

This reverts commit 65ba7b5775.

TBR=tomhudson@google.com

Review URL: https://codereview.chromium.org/752233002
2014-11-24 12:19:06 -08:00
tomhudson
612e92680b Revert of Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset #1 id:1 of https://codereview.chromium.org/750973003/)
Reason for revert:
Original patchset seems to have been exonerated. Crash was mac-specific, but appears to be triggered by a non-mac-specific change (https://codereview.chromium.org/747043004/); suspecting driver bug?

Original issue's description:
> Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset #2 id:20001 of https://codereview.chromium.org/754653002/)
>
> Reason for revert:
> Suspected in DM crashes, e.g.
>
> 2033 tasks left	 344M peak	  843ms	tabl-cuteoverload_skp
> Signal 11:
> _sigtramp (+0x1a)
> create_surface(CanvasConfig const&, GrContext*) (+0x1b2)
> test_WritePixels(skiatest::Reporter*, GrContextFactory*) (+0x8d4)
> skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (+0x21)
> skiatest::Test::run() (+0x7c)
> DM::GpuTestTask::draw(GrContextFactory*) (+0x8c)
> DM::GpuTask::run(GrContextFactory*) (+0xa6)
> DM::TaskRunner::wait() (+0x7f)
> dm_main() (+0x33f)
> main (+0x27)
>
>
> On all MacMini platforms (the following URL with -Mac{10.6,10.7,10.8}- and -{Debug,Release}):
>
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Debug
>
>
> Original issue's description:
> > Add gpu support for Apple specific 'Vertex Arrays' functions
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/af000f469e1b0153ce445c96ca3d20e6d12224cc
>
> TBR=bsalomon@google.com,paraboul@gmail.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/55fe3d7748b873e362edc4e6a43bd77914ed25fb

TBR=bsalomon@google.com,paraboul@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/734633005
2014-11-24 11:22:37 -08:00
tomhudson
55fe3d7748 Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset #2 id:20001 of https://codereview.chromium.org/754653002/)
Reason for revert:
Suspected in DM crashes, e.g.

2033 tasks left	 344M peak	  843ms	tabl-cuteoverload_skp
Signal 11:
_sigtramp (+0x1a)
create_surface(CanvasConfig const&, GrContext*) (+0x1b2)
test_WritePixels(skiatest::Reporter*, GrContextFactory*) (+0x8d4)
skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (+0x21)
skiatest::Test::run() (+0x7c)
DM::GpuTestTask::draw(GrContextFactory*) (+0x8c)
DM::GpuTask::run(GrContextFactory*) (+0xa6)
DM::TaskRunner::wait() (+0x7f)
dm_main() (+0x33f)
main (+0x27)

On all MacMini platforms (the following URL with -Mac{10.6,10.7,10.8}- and -{Debug,Release}):

http://build.chromium.org/p/client.skia/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Debug

Original issue's description:
> Add gpu support for Apple specific 'Vertex Arrays' functions
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/af000f469e1b0153ce445c96ca3d20e6d12224cc

TBR=bsalomon@google.com,paraboul@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/750973003
2014-11-24 09:59:41 -08:00
robertphillips
30d7841f90 Add support for hoisting layers in pictures drawn with a matrix
Although Chromium doesn't use the drawPicture matrix parameter for their tiling, our local code does. Without such drawPicture calls break layer hoisting.

BUG=skia:2315

Review URL: https://codereview.chromium.org/748853002
2014-11-24 09:49:17 -08:00
mtklein
7ef849d45a Add Sk prefix to CreateBitmapShader.
It's neither static nor namespaced, so we should probably prefix it.

BUG=skia:

Review URL: https://codereview.chromium.org/754083002
2014-11-24 09:11:45 -08:00
mtklein
04c9695055 Remove Picture deletion listeners.
Looks like we can just have ~SkPicture put the message on the bus directly.

BUG=skia:3144

Review URL: https://codereview.chromium.org/751663002
2014-11-24 08:20:58 -08:00
paraboul
af000f469e Add gpu support for Apple specific 'Vertex Arrays' functions
BUG=skia:

Review URL: https://codereview.chromium.org/754653002
2014-11-24 07:05:28 -08:00
bsalomon
91175f1966 Use scratch keys for stencil buffers.
BUG=skia:2889

Review URL: https://codereview.chromium.org/747043004
2014-11-24 07:05:15 -08:00
qiankun.miao
52e74c6d84 Cleanup of S32_D565_Opaque_SSE2()
BUG=skia:

Review URL: https://codereview.chromium.org/725693003
2014-11-24 06:59:44 -08:00
bsalomon
932f866987 Create GrOptDrawState directly in the cmd buffer in GrIODB.
Review URL: https://codereview.chromium.org/746243002
2014-11-24 06:47:48 -08:00
bsalomon
77d77f446d Add pop_back to GrTRecorder.h
Review URL: https://codereview.chromium.org/750613002
2014-11-21 14:38:06 -08:00
bungeman
5ec443c506 Clean up FreeType code for 2.3.8.
We already require FreeType 2.3.8 in order to compile and run.
Make this requirement explicit and take advantage of it.

Review URL: https://codereview.chromium.org/748063003
2014-11-21 13:18:34 -08:00
mtklein
19ac76753e SkPicture::SnapshotArray doesn't really stand to benefit from refcounting.
BUG=skia:

Review URL: https://codereview.chromium.org/748803005
2014-11-21 12:20:35 -08:00
mtklein
1794651509 Switch SkBitmapProcState's SkFractionalInt to 32.32.
16 bits are not enough to hold the integral part of fx in
Clamp_S32_opaque_D32_nofilter_DX_shaderproc.

Weirdly, no GM diffs on my desktop.

BUG=skia:3096

Review URL: https://codereview.chromium.org/733163003
2014-11-21 12:10:33 -08:00
mtklein
09a22e9597 Watch out for SkFixed overflow in SkMipMap.cpp.
Tested with -fsanitize=signed-integer-overflow.
This new assert used to trigger in MipMap unit test.

Don't appear to be any GM diffs.

BUG=skia:

Review URL: https://codereview.chromium.org/729373004
2014-11-21 11:38:53 -08:00
mtklein
b7ee349f10 SkData -> SkPicture::SnapshotArray
Restores type safety with all the same features.

(Also note, less code: 29 insertions, 50 deletions.)

BUG=skia:

Review URL: https://codereview.chromium.org/746553002
2014-11-21 11:06:04 -08:00
reed
3f10b9dd2c clarify samplecount field in imagegpu
BUG=skia:
TBR=bsalomon

Review URL: https://codereview.chromium.org/750023002
2014-11-21 10:27:53 -08:00
robertphillips
ec8bb946c3 Fix error in Ganesh' tiled bitmap drawing
When the paint filter level is high ShouldUseBicubic doesn't always return true. In this case the paint's filter level will differ from the filtering Ganesh will use. This was leading to a mismatch between the tiling computed in SkGpuDevice::drawBitmapCommon and the one in SkGpuDevice::drawTiledBitmap.

The end result of this was that the max texture restriction could be violated which is currently being seen on the Xoom & N7 bots. Both of them have a max texture size of 2048 which is invoking the tiled drawbitmap case.

Review URL: https://codereview.chromium.org/752623002
2014-11-21 10:16:25 -08:00
joshualitt
947556f658 remove GrAllocPool
BUG=skia:

Review URL: https://codereview.chromium.org/742253002
2014-11-21 09:03:45 -08:00
mtklein
42ddcd4906 All the small packing tweaks mentioned in the bug.
BUG=skia:3144

Review URL: https://codereview.chromium.org/748063002
2014-11-21 08:48:35 -08:00
reed
4af267b119 add SkImage::newSurface
BUG=skia:

Review URL: https://codereview.chromium.org/741763002
2014-11-21 08:46:38 -08:00
reed
41d2c2e434 simplify uniqueID code in picture
patch from issue 750003002 at patchset 1 (http://crrev.com/750003002#ps1)

BUG=skia:

Review URL: https://codereview.chromium.org/752573002
2014-11-21 08:07:41 -08:00
robertphillips
5b69377507 Add MultiPictureDraw to nanobench
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.

TBR=bsalomon@google.com

Committed: https://skia.googlesource.com/skia/+/0ddad31012dabfc1267effc8071d37f7d606efbe

Review URL: https://codereview.chromium.org/731973005
2014-11-21 06:19:36 -08:00
robertphillips
e77dadd91a Revert of Add MultiPictureDraw to nanobench (patchset #7 id:120001 of https://codereview.chromium.org/731973005/)
Reason for revert:
Needs more work

Original issue's description:
> Add MultiPictureDraw to nanobench
>
> I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
>
> TBR=bsalomon@google.com
>
> Committed: https://skia.googlesource.com/skia/+/0ddad31012dabfc1267effc8071d37f7d606efbe

TBR=mtklein@google.com,bsalomon@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/750583002
2014-11-21 05:50:21 -08:00
robertphillips
0ddad31012 Add MultiPictureDraw to nanobench
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.

TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/731973005
2014-11-21 05:35:54 -08:00
fmalita
8ebaa71712 Revert of SkCanvas::clear() should call down to devices even when the clip is empty. (patchset #1 id:1 of https://codereview.chromium.org/735233003/)
Reason for revert:
Chrome unit_tests failures on Mac & Win, blocking the roll: http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/5613

Original issue's description:
> SkCanvas::clear() should call down to devices even when the clip is empty.
>
> SkDrawIter had a lovely, completely unused, option for this.  Oversight?
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/378e70d8e561b72a904286ea231946f5c8345b9a

TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/748733002
2014-11-20 20:44:04 -08:00
joshualitt
c07379d6b1 Adding GeometryData object
BUG=skia:

Review URL: https://codereview.chromium.org/745663002
2014-11-20 14:50:39 -08:00
fmalita
2d97bc139a Disable LCD text explicitly in SkPictureImageFilter::onFilterImage()
As an intermediate fix for
https://code.google.com/p/skia/issues/detail?id=3142, we can use a
non-public SkCanvas constructor and force-disable LCD text.

BUG=skia:3142
R=reed@google.com,senorblanco@google.com

Review URL: https://codereview.chromium.org/725243004
2014-11-20 10:44:58 -08:00
bsalomon
b03c4a35bd Don't use NULL GrOptDrawState to indicate that draw should be skipped.
Review URL: https://codereview.chromium.org/742853002
2014-11-20 09:56:11 -08:00
mtklein
08d1fccf6e Add SkNVRefCnt, prune down SkPicture's size
SkNVRefCnt is a variant of SkRefCnt that's Not Virtual, so weighs 4 bytes
instead of 8 or 16.  There's only benefit to doing this if the deriving class
does not otherwise need a vtable, e.g. SkPicture.

I've stripped out some cruft from SkPicture, rearranged fields to pack tightly,
and added compile asserts for the sizes of SkPicture, SkRecord, and
SkVarAlloc.

BUG=skia:3144

Review URL: https://codereview.chromium.org/741793002
2014-11-20 09:18:32 -08:00
mtklein
cdeeb095a6 SkRecord: Pack SkRegion::Op and AA bit together.
Saves 4 bytes per clip op.

BUG=skia:

Review URL: https://codereview.chromium.org/741093002
2014-11-20 09:14:28 -08:00
mtklein
378e70d8e5 SkCanvas::clear() should call down to devices even when the clip is empty.
SkDrawIter had a lovely, completely unused, option for this.  Oversight?

BUG=skia:

Review URL: https://codereview.chromium.org/735233003
2014-11-20 08:58:02 -08:00
bsalomon
072803144a Stop overloading internal_dispose in SkTextBlob and SkData
Review URL: https://codereview.chromium.org/737093002
2014-11-20 08:02:46 -08:00
mtklein
7cc1a34fbf Make sure pictures draw Clears even when the clip is empty.
We fix this by rewriting empty queries to very tiny queries, which will certainly
hit ops that span the entire picture (like Clear) and hopefully not much more.

(This doesn't quite work in the full cull rect world if [0,0,ε,ε] doesn't
overlap the picture.  Let's cross that bridge when we get there.)

BUG=432991

Review URL: https://codereview.chromium.org/732723004
2014-11-20 08:01:09 -08:00
joshualitt
9176e2c159 dstCopy on optdrawstate
BUG=skia:

Review URL: https://codereview.chromium.org/735363003
2014-11-20 07:28:52 -08:00
rosca
ace7f42769 Preventing division by 0 in non-separable blend mode shaders.
In the software path, the same issue has been fixed some time ago:
https://codereview.chromium.org/114173002

BUG=skia:

Review URL: https://codereview.chromium.org/666043003
2014-11-20 07:24:32 -08:00
kkinnunen
e097be50bd Implement conics for NVPR
Implement conics for NVPR. Verified with currently disabled conicpaths
gm, produces mostly same shapes with nvprmsaa4 and msaa4.

BUG=skia:2033

Review URL: https://codereview.chromium.org/694503003
2014-11-19 22:49:03 -08:00
bsalomon
04ddf89627 Small cleanups after GrDrawState/GrOptDrawState base class elimination.
Review URL: https://codereview.chromium.org/739133004
2014-11-19 12:36:22 -08:00
tomhudson
158fcaa031 Implement SkPicture::bytesUsed() for SkRecord backend
BUG=chromium:230419
R=mtklein@google.com,reed@google.com

Review URL: https://codereview.chromium.org/490253003
2014-11-19 10:41:14 -08:00
mtklein
72f92acd47 No need to short circuit the query rect here anymore.
Whatever assertion was triggering in SkRTree.cpp seems to be gone now.

BUG=432991

Review URL: https://codereview.chromium.org/725373003
2014-11-19 10:37:20 -08:00
joshualitt
54e0c12a5a scissor state on optstate
waiting

BUG=skia:

Review URL: https://codereview.chromium.org/742763002
2014-11-19 09:38:51 -08:00
humper
ad5e9a5327 add runtime config option to retain stream for custom typefaces
BUG=skia:

Review URL: https://codereview.chromium.org/729973004
2014-11-19 08:32:19 -08:00
joshualitt
02bcd9db00 move GrGeometryProcessor to src
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/739943003
2014-11-19 08:24:09 -08:00
bsalomon
ae59b77612 Create GrOptDrawState before recording draw in GrInOrderDrawBuffer
Review URL: https://codereview.chromium.org/739673002
2014-11-19 08:23:49 -08:00
reed
78e2768897 Allow pictures to have a full bounds
This reverts commit 7c4cdd2c5b.

BUG=skia:

Review URL: https://codereview.chromium.org/738083002
2014-11-19 08:04:34 -08:00
reed
7c4cdd2c5b Revert of allow pictures to have a full bounds (patchset #3 id:40001 of https://codereview.chromium.org/736583004/)
Reason for revert:
needed to update legacy width() helpers

Original issue's description:
> allow pictures to have a full bounds
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7e76bff26e7c74902841ca4f607eb0b24a833a4a

TBR=fmalita@google.com,mtklein@google.com,robertphillips@google.com,fmalita@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/722043005
2014-11-19 07:17:17 -08:00
reed
7e76bff26e allow pictures to have a full bounds
BUG=skia:

Review URL: https://codereview.chromium.org/736583004
2014-11-19 06:59:41 -08:00
egdaniel
ec03a46080 Add processor name to comment when printing out shaders.
BUG=skia:

Review URL: https://codereview.chromium.org/735153002
2014-11-19 06:22:39 -08:00
reed
b07a94f1cb add roundOut that returns its result
BUG=skia:

Review URL: https://codereview.chromium.org/742663002
2014-11-19 05:03:18 -08:00
reed
d02cf2664d change roundOut() to take a dst, so we can use that signature to return IRect
BUG=skia:
TBR=robertphilips

Review URL: https://codereview.chromium.org/731373003
2014-11-18 18:06:45 -08:00
joshualitt
7eb8c7b00a drawinfo carries bufferinfo
BUG=skia:

Review URL: https://codereview.chromium.org/737723003
2014-11-18 14:24:27 -08:00
reed
6be2aa9a25 wip for drawables
Idea:

1. in its mutable recording state, keep a table of drawables on the side, and store an index in the record list.

2. In "immediate-mode" draw, just call the clients drawable directly (need access to our private list to turn the stored index into a proc)

3. when we "snap", we replace the list of drawables with a list of (sub) pictures, and then during playback of the snapped picture, we invoke a private drawable which just calls "drawPicture" on the index'd subpicture.

Review URL: https://codereview.chromium.org/727363003
2014-11-18 11:08:05 -08:00
joshualitt
780b11e4ec fix for use of uninit variable
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/740463002
2014-11-18 09:40:40 -08:00
mtklein
0bd57b2e1e SkVarAlloc::approxBytesAllocated()
This is what I was getting at on the other CL.

BUG=skia:

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

CQ_EXTRA_TRYBOTS=client.skia.android:Test-Android-Nexus5-Adreno330-Arm7-Release-Trybot

Review URL: https://codereview.chromium.org/730193003
2014-11-18 09:32:36 -08:00
mtklein
a06a953121 Prune SkRTree
- Propagate a bunch of constant parameters through.
  - Delete code that's not used when bulk loading.
  - Allocate all Nodes together.
  - Stay in SkRect.

Doing a single malloc for the nodes can't not have improved memory usage.

Looks like this might improve record performance ~5%, probably mostly from
staying in SkRects.  This finally dethrones building the BBH as the hot spot.
(Now it's mapping user bounds back to device bounds and adjusting for paints.)

Recording time changes from my MBP:
    desk_rectangletransition.skp	11.5us -> 11.7us	1x
             desk_forecastio.skp	 115us ->  114us	0.98x
                desk_booking.skp	 550us ->  541us	0.98x
            tabl_mercurynews.skp	 176us ->  173us	0.98x
                   tabl_hsfi.skp	 294us ->  287us	0.98x
              desk_wordpress.skp	 351us ->  343us	0.98x
           tabl_worldjournal.skp	 439us ->  426us	0.97x
                  tabl_gmail.skp	20.3us -> 19.7us	0.97x
         desk_youtubetvvideo.skp	10.8us -> 10.4us	0.97x
             desk_googleplus.skp	 1.1ms -> 1.07ms	0.97x
               tabl_slashdot.skp	 106us ->  103us	0.97x
         desk_jsfiddlebigcar.skp	26.7us -> 25.7us	0.96x
               tabl_techmeme.skp	95.4us -> 91.7us	0.96x
             tabl_deviantart.skp	 133us ->  127us	0.96x
              desk_pinterest.skp	40.6us -> 38.9us	0.96x
                 desk_carsvg.skp	 195us ->  187us	0.96x
               tabl_engadget.skp	 376us ->  359us	0.96x
                tabl_sahadan.skp	60.5us -> 57.5us	0.95x
      tabl_culturalsolutions.skp	 255us ->  242us	0.95x
                  tabl_gspro.skp	58.3us -> 55.5us	0.95x
               desk_linkedin.skp	 146us ->  138us	0.94x
                   desk_ebay.skp	 192us ->  181us	0.94x
                    tabl_cnn.skp	 467us ->  440us	0.94x
     desk_jsfiddlehumperclip.skp	29.9us -> 28.1us	0.94x
               desk_tigersvg.skp	43.2us -> 40.5us	0.94x
           desk_yahooanswers.skp	 131us ->  123us	0.94x
desk_googlespreadsheetdashed.skp	1.18ms -> 1.11ms	0.94x
                desk_blogger.skp	 193us ->  181us	0.94x
                tabl_mozilla.skp	1.82ms ->  1.7ms	0.94x
                    tabl_mlb.skp	 145us ->  136us	0.93x
              mobi_wikipedia.skp	 577us ->  539us	0.93x
               tabl_frantzen.skp	54.1us -> 50.4us	0.93x
                  desk_baidu.skp	87.9us -> 81.9us	0.93x
             desk_techcrunch.skp	 224us ->  209us	0.93x
                 desk_sfgate.skp	 206us ->  192us	0.93x
                  tabl_ukwsj.skp	 269us ->  250us	0.93x
               desk_facebook.skp	 316us ->  293us	0.93x
            desk_gmailthread.skp	 205us ->  190us	0.93x
         tabl_googlecalendar.skp	 158us ->  147us	0.93x
                   tabl_digg.skp	 382us ->  354us	0.93x
                 desk_amazon.skp	 106us -> 98.5us	0.93x
          tabl_androidpolice.skp	 693us ->  642us	0.93x
                tabl_nytimes.skp	 206us ->  191us	0.92x
                    desk_gws.skp	 124us ->  114us	0.92x
                desk_youtube.skp	 255us ->  235us	0.92x
           tabl_cuteoverload.skp	 583us ->  537us	0.92x
            desk_oldinboxapp.skp	  18us -> 16.6us	0.92x
             desk_mobilenews.skp	 297us ->  273us	0.92x
                 tabl_pravda.skp	 168us ->  154us	0.92x
              tabl_vnexpress.skp	 236us ->  217us	0.92x
          desk_css3gradients.skp	 202us ->  185us	0.92x
            tabl_gamedeksiam.skp	 508us ->  464us	0.91x
                desk_wowwiki.skp	1.02ms ->  929us	0.91x
                   desk_espn.skp	 209us ->  191us	0.91x
             desk_chalkboard.skp	 315us ->  284us	0.9x
                 desk_mapsvg.skp	 607us ->  543us	0.89x
            desk_pokemonwiki.skp	5.18ms -> 4.62ms	0.89x
               desk_samoasvg.skp	 335us ->  298us	0.89x
        desk_youtubetvbrowse.skp	10.1us -> 8.59us	0.85x
BUG=skia:3085, skia:2834

Review URL: https://codereview.chromium.org/734723002
2014-11-18 09:27:49 -08:00
mtklein
52b7822fa6 Revert of SkVarAlloc::approxBytesAllocated (patchset #5 id:80001 of https://codereview.chromium.org/730193003/)
Reason for revert:
Android needs dlmalloc_usable_size().

Original issue's description:
> SkVarAlloc::approxBytesAllocated()
>
> This is what I was getting at on the other CL.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/f27f1bcce50c8f95aea8469684a70b70c9baee09
>
> CQ_EXTRA_TRYBOTS=Test-Android-Nexus5-Adreno330-Arm7-Release-Trybot

TBR=reed@google.com,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/741443002
2014-11-18 08:15:23 -08:00
bsalomon
6d467ecb81 minor cleanup in GrGpu.h
Review URL: https://codereview.chromium.org/731073003
2014-11-18 07:36:19 -08:00
mtklein
f27f1bcce5 SkVarAlloc::approxBytesAllocated()
This is what I was getting at on the other CL.

BUG=skia:

Review URL: https://codereview.chromium.org/730193003
2014-11-18 07:24:14 -08:00
reed
9b1dd15d6d don't normalize after perspective concat
BUG=skia:

Review URL: https://codereview.chromium.org/734513004
2014-11-18 06:04:37 -08:00
kkinnunen
542ecbb2bd Remove unused NVPR related GL tokens
Remove unused NVPR related GL tokens.

Also replace GR_GL_PATH_INITIAL_END_CAP and GR_GL_PATH_TERMINAL_END_CAP
with a single call setting GR_GL_PATH_END_CAPS. Skia does not and
probably will not have different initial and terminal caps. This came up
in the review of command buffer implementation of the extension.

If more NVPR features will be used, the respective tokens can be added
back per implemented feature.

Review URL: https://codereview.chromium.org/723453002
2014-11-18 05:13:48 -08:00
joshualitt
9853ccef19 Drawstate on stack
BUG=skia:

Review URL: https://codereview.chromium.org/732693002
2014-11-17 14:22:49 -08:00
bsalomon
b436ed6754 Reduce the amount of validation in GrResourceCache2
BUG=chromium:433711

Review URL: https://codereview.chromium.org/737533002
2014-11-17 12:15:57 -08:00
robertphillips
f52a063dfd Fix yet another convexicator issue
This CL fixes the case where a bad initial vector (i.e., nearly zero) managed to short circuit all of the convexicator's logic. The initial bad vector would become the last vector and then never get displaced.

The history of this is:

https://codereview.chromium.org/298973004/
Switched the convexicator to not advance the last vector when the cross product wasn't significant

https://codereview.chromium.org/573763002/
Fixed a bug (crbug.com/412640) wherein a zero area path was being incorrectly categorized as convex b.c. opposite but equal vectors were not signaling concavity.

BUG=433683

Review URL: https://codereview.chromium.org/727283003
2014-11-17 12:11:42 -08:00
bsalomon
84c8e62fad Allow GPU resources to not be counted against the cache budget.
BUG=skia:2889

Review URL: https://codereview.chromium.org/721353002
2014-11-17 09:33:27 -08:00
robertphillips
8910879098 Make BBH parameter to SkRecordComputeLayers and SkRecordFillBounds optional
Chromium creates a picture to contain their picture pile in order to use MultiPictureDraw. They currently do not create a bounding box for that picture but I still need layer information for it. This change allows Chromium to continue without a BBH but still have layer information.

In the future, the brute force BBH might be suitable for their use case.

Please see gpu_raster_worker_pool.cc in (Add flag to beginRecording to request saveLayer information - https://codereview.chromium.org/721883002/) for where this is happening in Chromium.

Review URL: https://codereview.chromium.org/733963004
2014-11-17 08:16:15 -08:00
egdaniel
912b3d24a0 Use DrawStates ProcOptInfo when creating the Optimized Draw State.
BUG=skia:

Review URL: https://codereview.chromium.org/726693002
2014-11-17 07:45:53 -08:00
bsalomon
dace19ec17 Correct accounting for wrapped resources
BUG=skia:2889

Review URL: https://codereview.chromium.org/720033004
2014-11-17 07:34:06 -08:00
mtklein
c6ad9eefa0 More SkPicture cleanup
- move field declarations together and pack them a little tighter
 - get rid of fData
 - remove dead code in debugger, including unused SkPicturePlayback subclass

There are now no more long-lived SkPictureData!  (Really, there never were,
but now we don't pretend to support them.)

BUG=skia:

No API changes.
TBR=reed@google.com

Review URL: https://codereview.chromium.org/725143002
2014-11-17 06:45:18 -08:00
Greg Humphreys
21c771b3fc Revert "move SkPDFD*.h from include to src"
This reverts commit 693024300f.

was breaking canary build

BUG=skia:

Review URL: https://codereview.chromium.org/731173002
2014-11-17 09:42:09 -05:00
halcanary
693024300f move SkPDFD*.h from include to src
BUG=278148

Review URL: https://codereview.chromium.org/727343002
2014-11-17 06:26:21 -08:00
reed
73c2501120 separate c headers
BUG=skia:

Review URL: https://codereview.chromium.org/728323002
2014-11-17 06:15:42 -08:00
sugoi
1379b87ae4 Added missing validation
BUG=433359

Review URL: https://codereview.chromium.org/729583002
2014-11-17 05:45:55 -08:00
joshualitt
5478d427c6 Push creation of default GP to the caller
TBR=
BUG=skia:

Review URL: https://codereview.chromium.org/715903002
2014-11-14 16:00:38 -08:00
bsalomon
82b1d62013 Guard high water cache stats vars by GR_CACHE_STATS
TBR=halcanary@google.com
NOTRY=true

Review URL: https://codereview.chromium.org/729753003
2014-11-14 13:59:57 -08:00
bsalomon
12299ab7a1 Make GrResourceCache2 responsible for calling release, abandon, and ~.
BUG=skia:2889

TBR=robertphillips@google.com

NOTRY=true

Review URL: https://codereview.chromium.org/729683002
2014-11-14 13:33:09 -08:00
bsalomon
71cb0c241e Replace GrResourceCache with GrResourceCache2.
BUG=skia:2889

Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6

Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89

Review URL: https://codereview.chromium.org/716143004
2014-11-14 12:10:15 -08:00
bsalomon
191bcc008e Fix ref-cnting bug in GrContext::readRenderTargetPixels
TBR=egdaniel@google.com
NOTRY=true

Review URL: https://codereview.chromium.org/732713002
2014-11-14 11:31:13 -08:00
djsollen
33068c19f1 Enforce pure virtual behavior for onMatchFamilyStyleCharacter
All impls that previously did not define the functions have been
updated to return NULL.

NOTRY=true

Review URL: https://codereview.chromium.org/728873002
2014-11-14 10:52:53 -08:00
mtklein
d4897591fd Don't pass null to memcmp.
This will allow us to add nonnull-attribute to the UBSAN bot.

We are in fact hitting a case where one of the arguments is null and the other
not, which seems dicey.  I think the scenario is comparing the empty pathref
with another path ref that's just been COWed, without any verbs or points yet.

BUG=skia:

Review URL: https://codereview.chromium.org/732643002
2014-11-14 09:22:40 -08:00
qiankun.miao
f04713d9c8 Optimize SkAlphaMulQ_SSE2
These two mask clear are useless, because _mm_srli_epi16 fills high byte
of each word with 0.

BUG=skia:

Review URL: https://codereview.chromium.org/724333003
2014-11-14 08:23:53 -08:00
djsollen
082a4620fd Move WGL header from include to src
NOTRY=true

Review URL: https://codereview.chromium.org/728823002
2014-11-14 07:21:29 -08:00
bsalomon
ac49acda52 Revert of Replace GrResourceCache with GrResourceCache2. (patchset #7 id:120001 of https://codereview.chromium.org/716143004/)
Reason for revert:
broken again

Original issue's description:
> Replace GrResourceCache with GrResourceCache2.
>
> BUG=skia:2889
>
> Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6
>
> Committed: https://skia.googlesource.com/skia/+/407aa584d183c1bf314f5defd1cf0202e8a96c89

TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2889

Review URL: https://codereview.chromium.org/726913002
2014-11-14 06:47:39 -08:00
bsalomon
407aa584d1 Replace GrResourceCache with GrResourceCache2.
BUG=skia:2889

Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6

Review URL: https://codereview.chromium.org/716143004
2014-11-14 06:29:40 -08:00
djsollen
5ae776504f Cleanup the XML directory in public includes.
Review URL: https://codereview.chromium.org/722343002
2014-11-14 05:52:50 -08:00
reed
d54d3fc824 remove unused kLCD_MaskFormat
BUG=skia:

Review URL: https://codereview.chromium.org/728673002
2014-11-13 14:39:58 -08:00
fmalita
112e7e2777 Observe surface LCD settings in SkBaseDevice::drawTextBlob()
We're currently overwriting the paint LCD text flag based on the the run
font data => this cancels any LCD filtering we might have performed
higher up the stack.

BUG=423362
R=reed@google.com

Review URL: https://codereview.chromium.org/718913003
2014-11-13 14:05:58 -08:00
mtklein
975ae5e4b8 Cap SkVarAlloc's desired block at 64K.
This means we can store fLgMinSize in 4 bits (TBD).

Local perf comparison calls this harmless-to-slightly-helpful.  Nothing to get
excited about, but seems to certainly not harm perf.

BUG=skia:

Review URL: https://codereview.chromium.org/722293003
2014-11-13 13:55:22 -08:00
bsalomon
f21dab9540 Revert of Replace GrResourceCache with GrResourceCache2. (patchset #6 id:100001 of https://codereview.chromium.org/716143004/)
Reason for revert:
Breaking stuff

Original issue's description:
> Replace GrResourceCache with GrResourceCache2.
>
> BUG=skia:2889
>
> Committed: https://skia.googlesource.com/skia/+/66a450f21a3da174b7eed89a1d5fc8591e8b6ee6

TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2889

Review URL: https://codereview.chromium.org/715333003
2014-11-13 13:33:28 -08:00
bsalomon
66a450f21a Replace GrResourceCache with GrResourceCache2.
BUG=skia:2889

Review URL: https://codereview.chromium.org/716143004
2014-11-13 13:19:10 -08:00
bungeman
bc97c9378b Remove SK_IGNORE_SUBPIXEL_AXIS_ALIGN_FIX.
This define was added with "Always round text position correctly."
9447103029 . The affected clients
have been rebaselined and this is no longer defined anywhere.

Review URL: https://codereview.chromium.org/722333002
2014-11-13 13:06:28 -08:00