Commit Graph

38162 Commits

Author SHA1 Message Date
Brian Salomon
588cec7f91 Reenable GrOp chaining.
GrRenderTargetOpList maintains an array of op chains. When it receives a
new op it tries to add it to an existing chain, working backwards from
the end of the current array. If the op can be added to a chain it
additionally tries to merge the new op with ops already in the chain
before adding it to the tail of the chain.

In forward combining it tries to concatenate chains. If chains can
concatenate it also attempts to merge ops between the two chains.

Now op chaining results reported by Op subclasses must be transitive.
Moreover, if op A is able to merge with B then it must be the case that
any op that can chain with A will either merge or chain with any op that
can chain to B.

Bug: skia:8491

Change-Id: Ib6a2a669acd4257134a37d271289b8b3f247cd3f
Reviewed-on: https://skia-review.googlesource.com/c/170351
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-11-14 19:20:59 +00:00
Mike Klein
7c353112b5 Revert "remove Clamp_S32_opaque_D32_nofilter_DX_shaderproc"
This reverts commit bf1a82aa22.

Reason for revert: UBSAN.

Original change's description:
> remove Clamp_S32_opaque_D32_nofilter_DX_shaderproc
> 
> This is a warmup to removing all _opaque_ shader procs.
> 
> Oddly this shows up as mostly performance-positive:
> 
> just-that-one (compared to master) is likely
>    24.11% slower in bitmap_RGBA_8888_scale
>     5.23% faster in shadermaskfilter_picture_ff
>     5.73% faster in shadermaskfilter_picture_80
>    10.02% faster in maskshader
>    40.24% faster in bitmap_RGBA_8888_A_source_stripes_three
>    40.88% faster in bitmap_RGBA_8888_A_source_stripes_two
>    54.40% faster in bitmap_RGBA_8888_A
>    60.87% faster in top25desk_weather_com.skp_1
>    62.39% faster in bitmap_RGBA_8888_A_source_opaque
>    62.95% faster in bitmap_RGBA_8888_update
>    63.15% faster in bitmap_RGBA_8888_update_volatile
>    63.34% faster in bitmap_RGBA_8888
>    71.40% faster in bitmap_RGBA_8888_A_source_transparent
>    86.13% faster in bitmaprect_FF_nofilter_trans
>   412.43% faster in constXTile_CC
> 
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: Ifef92a1efcb6c35b8519da7599d31ea3bb41c3a4
> Reviewed-on: https://skia-review.googlesource.com/c/171041
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
> Auto-Submit: Mike Klein <mtklein@google.com>

TBR=mtklein@google.com,herb@google.com

Change-Id: Ibb08f590d18054e7886600e79cc23f951dc0cbb8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://skia-review.googlesource.com/c/171043
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-14 19:11:49 +00:00
Mike Reed
93439b73a6 don't use nested form of FontMetrics
Bug: skia:
Change-Id: I80294c33671552ff0b484acd8d7e144d2f13eb51
Reviewed-on: https://skia-review.googlesource.com/c/171082
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-14 19:07:26 +00:00
Mike Klein
bf1a82aa22 remove Clamp_S32_opaque_D32_nofilter_DX_shaderproc
This is a warmup to removing all _opaque_ shader procs.

Oddly this shows up as mostly performance-positive:

just-that-one (compared to master) is likely
   24.11% slower in bitmap_RGBA_8888_scale
    5.23% faster in shadermaskfilter_picture_ff
    5.73% faster in shadermaskfilter_picture_80
   10.02% faster in maskshader
   40.24% faster in bitmap_RGBA_8888_A_source_stripes_three
   40.88% faster in bitmap_RGBA_8888_A_source_stripes_two
   54.40% faster in bitmap_RGBA_8888_A
   60.87% faster in top25desk_weather_com.skp_1
   62.39% faster in bitmap_RGBA_8888_A_source_opaque
   62.95% faster in bitmap_RGBA_8888_update
   63.15% faster in bitmap_RGBA_8888_update_volatile
   63.34% faster in bitmap_RGBA_8888
   71.40% faster in bitmap_RGBA_8888_A_source_transparent
   86.13% faster in bitmaprect_FF_nofilter_trans
  412.43% faster in constXTile_CC

Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ifef92a1efcb6c35b8519da7599d31ea3bb41c3a4
Reviewed-on: https://skia-review.googlesource.com/c/171041
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2018-11-14 18:52:44 +00:00
skia-autoroll
6297054aa7 Roll third_party/externals/angle2 d1a55e393e65..fca8fd620190 (2 commits)
d1a55e393e..fca8fd6201


git log d1a55e393e65..fca8fd620190 --date=short --no-merges --format='%ad %ae %s'
2018-11-14 syoussefi@chromium.org Vulkan: Refix cleanup race condition on Context destroy
2018-11-14 syoussefi@chromium.org Vulkan: prepare for ES3


Created with:
  gclient setdep -r third_party/externals/angle2@fca8fd620190

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=rmistry@google.com

Change-Id: I3bbdd98fd8faceb7c918be34fbe777e6578b614c
Reviewed-on: https://skia-review.googlesource.com/c/171060
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-14 18:30:04 +00:00
Ben Wagner
bb9844ef69 Add client code search to docs.
Also, history seems to be available for internal code search.

No-Try: true
Docs-Preview: https://skia.org/?cl=171003
Change-Id: I13707664b88e3d84760f11f43d2bd7c35c2a8969
Reviewed-on: https://skia-review.googlesource.com/c/171003
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2018-11-14 17:37:44 +00:00
Mike Reed
07f93f2999 impl SkFont::getPath
Replacement for SkPaint::getTextPath and getPosTextPath
- only works with glyphIDs
- doesn't try to do positioning
- doesn't force caller to consolidate all the glyphs into one giant path

Much of the time is spent transforming the path from the cache's size to the callers.
Might consider passing the raw path + matrix rather than scaling it for them???

Bug: skia:
Change-Id: Ie13015c61ebe410eaec084282d600338cfccb51a
Reviewed-on: https://skia-review.googlesource.com/c/170881
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-14 17:28:10 +00:00
skia-autoroll
f152130ef9 Roll third_party/externals/swiftshader 02ce5830e7db..d5f1489286b8 (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/02ce5830e7db..d5f1489286b8


git log 02ce5830e7db..d5f1489286b8 --date=short --no-merges --format='%ad %ae %s'
2018-11-14 capn@google.com Refactor physical device feature query.
2018-11-14 capn@google.com Fix feature query infinite loop.
2018-11-14 capn@google.com Remove unsupported functionality.
2018-11-14 capn@google.com Define generic memory type.
2018-11-14 capn@google.com Base the driver version on Version.h.
2018-11-14 capn@google.com Export Vulkan API entry functions.
2018-11-14 capn@google.com Fix debugger wait dialog.


Created with:
  gclient setdep -r third_party/externals/swiftshader@d5f1489286b8

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=rmistry@google.com

Change-Id: I6a82f8d96d1afef39188351804f3e1e9869e2cfe
Reviewed-on: https://skia-review.googlesource.com/c/171020
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-14 16:21:40 +00:00
Hal Canary
f6462c4321 SkPDF: store indirect references in object
Change-Id: Ia127247fd2d680dc6d06a04161bdf1da6701762e
Reviewed-on: https://skia-review.googlesource.com/c/170728
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-11-14 16:21:30 +00:00
Greg Daniel
d7157b2ccf Revert "Reland "Have a GrBackendFormat be stored on gpu proxies.""
This reverts commit 2f9a5ea639.

Reason for revert: breaking fuchsia

Original change's description:
> Reland "Have a GrBackendFormat be stored on gpu proxies."
> 
> This reverts commit 919c9e77c3.
> 
> Reason for revert: Flutter change has landed and fixed memory issue.
> 
> Original change's description:
> > Revert "Have a GrBackendFormat be stored on gpu proxies."
> >
> > This reverts commit 51b1c12bbc.
> >
> > Reason for revert: reverting till flutter gets to 1.1 to fix build issues.
> >
> > Original change's description:
> > > Have a GrBackendFormat be stored on gpu proxies.
> > >
> > > Bug: skia:
> > > Change-Id: Iaf1fb24ab29a61d44e5fa59a5e0867ed02dcda90
> > > Reviewed-on: https://skia-review.googlesource.com/c/168021
> > > Reviewed-by: Brian Osman <brianosman@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> >
> > TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com
> >
> > Change-Id: I574fdc084ef5994596c51fb0d60423b5dc01b885
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: chromium:903701 chromium:903756
> > Reviewed-on: https://skia-review.googlesource.com/c/169835
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com
> 
> Change-Id: Ifd9b6b8e194af9fb9258fa626644e76e6ecf090d
> Bug: chromium:903701 chromium:903756
> Reviewed-on: https://skia-review.googlesource.com/c/170104
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com

Change-Id: Ia0556355e5775b2100901b7bfa37f97bb6ccd90f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:903701 chromium:903756
Reviewed-on: https://skia-review.googlesource.com/c/171002
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-11-14 15:28:15 +00:00
Mike Klein
9341952756 skip alpha scale if 256
It's free performance!

Seriously, though, it's a perfectly predictable branch.
On opaque content I'm seeing a small speedup and two
extra instructions in the hot path:

      + cmpl $256, %regs
      + je <to write-it-out>
        pmullw %xmm, %xmm
        psrlw $8, %xmm
        pmullw %xmm, %xmm
        psrlw $8, %xmm
  write-it-out:

Change-Id: I1c19a9efac62df2bb901ca9eb2679c967729d863
Reviewed-on: https://skia-review.googlesource.com/c/170901
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2018-11-14 15:08:36 +00:00
Greg Daniel
2f9a5ea639 Reland "Have a GrBackendFormat be stored on gpu proxies."
This reverts commit 919c9e77c3.

Reason for revert: Flutter change has landed and fixed memory issue.

Original change's description:
> Revert "Have a GrBackendFormat be stored on gpu proxies."
>
> This reverts commit 51b1c12bbc.
>
> Reason for revert: reverting till flutter gets to 1.1 to fix build issues.
>
> Original change's description:
> > Have a GrBackendFormat be stored on gpu proxies.
> >
> > Bug: skia:
> > Change-Id: Iaf1fb24ab29a61d44e5fa59a5e0867ed02dcda90
> > Reviewed-on: https://skia-review.googlesource.com/c/168021
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com
>
> Change-Id: I574fdc084ef5994596c51fb0d60423b5dc01b885
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:903701 chromium:903756
> Reviewed-on: https://skia-review.googlesource.com/c/169835
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com

Change-Id: Ifd9b6b8e194af9fb9258fa626644e76e6ecf090d
Bug: chromium:903701 chromium:903756
Reviewed-on: https://skia-review.googlesource.com/c/170104
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-11-14 14:52:44 +00:00
Cary Clark
7f2b6fa665 fix pathops fuzzes
Turn asserts into early exits.

R=kjlubick@google.com

Bug: skia:
Change-Id: I5da57e510774038f04381571aa2cebfbd26f03a1
Reviewed-on: https://skia-review.googlesource.com/c/171000
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-14 14:00:05 +00:00
skia-bookmaker
b45b53f01c Update markdown files
Automatic commit by the Housekeeper-Nightly-Bookmaker bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I53cfa8794ddfc5fd1045be62b4ea58afeeec5814
Reviewed-on: https://skia-review.googlesource.com/c/170943
Commit-Queue: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-14 05:58:57 +00:00
skia-recreate-skps
e347abd4f5 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I2be54775127584a9f0985da135173357095d546b
Reviewed-on: https://skia-review.googlesource.com/c/170942
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-14 05:54:35 +00:00
skia-autoroll
ccc31e9e32 Roll third_party/externals/angle2 2778029563f2..d1a55e393e65 (2 commits)
2778029563..d1a55e393e


git log 2778029563f2..d1a55e393e65 --date=short --no-merges --format='%ad %ae %s'
2018-11-14 jmadill@chromium.org Expand dEQP-GLES3 suppressions.
2018-11-13 geofflang@chromium.org Only use CompositorNativeWindow11 when the window is non-null.


Created with:
  gclient setdep -r third_party/externals/angle2@d1a55e393e65

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=rmistry@google.com

Change-Id: I9738b0eb7158c5bf0bc6fa0e446df942642bbc76
Reviewed-on: https://skia-review.googlesource.com/c/170920
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-14 03:15:03 +00:00
Cary Clark
1e00aebd9a fix pathops fuzz
this fixes the SkOpSegment.cpp fuzz break.

R=kjlubick@google.com

Bug: skia:
Change-Id: Ia22a7b3066592969257f10ff7b593f3caecbf988
Reviewed-on: https://skia-review.googlesource.com/c/170840
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-11-14 00:08:16 +00:00
Mike Reed
53f091f224 cubicmap should pin its input -- I guess
Bug: skia:
Change-Id: I9abf6deb26f702186c6468cb20d0ec79d9bcab8a
Reviewed-on: https://skia-review.googlesource.com/c/170882
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-13 22:55:37 +00:00
Mike Reed
d723ee1a1a change SkTextEncoding to enum class
Bug: skia:
Change-Id: I3ea2792a49ca93fdd4bba686c63047727372f88b
Reviewed-on: https://skia-review.googlesource.com/c/170880
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2018-11-13 22:51:38 +00:00
skia-autoroll
e942629356 Roll third_party/externals/swiftshader b3c4d88a647a..02ce5830e7db (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b3c4d88a647a..02ce5830e7db


git log b3c4d88a647a..02ce5830e7db --date=short --no-merges --format='%ad %ae %s'
2018-11-13 sugoi@google.com Fixed lineWidth and pointSize limits


Created with:
  gclient setdep -r third_party/externals/swiftshader@02ce5830e7db

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=rmistry@google.com

Change-Id: I862b52a864c8cc46ce5e05d5d8a6e69148311c83
Reviewed-on: https://skia-review.googlesource.com/c/170860
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-13 22:34:36 +00:00
Brian Osman
f9aabff61a Move new WriteVertexData utility to a GrVertexWriter helper struct
Encapsulates the pointer storage and advancement, shortens usage.

Bug: skia:
Change-Id: Id06cd273ed638395d1fd53b3b66f87d4d33a4f3b
Reviewed-on: https://skia-review.googlesource.com/c/170727
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-11-13 21:40:41 +00:00
Mike Klein
14b9f537c5 refactor SkBitmapProcState_opts_SSSE3
Change-Id: Ied07a15b891e5b94fad14056ddfdffc52facf242
Reviewed-on: https://skia-review.googlesource.com/c/170764
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2018-11-13 21:08:00 +00:00
Chris Dalton
09212197d7 sksl: Support fwidth()
Adds fwidth() to SkSL, and adds a gm that draws an AA squircle to test
it.

Bug: skia:
Change-Id: Ida306cc535a1d4b4568d0ad5cc9a5f235098f4e8
Reviewed-on: https://skia-review.googlesource.com/c/170726
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-11-13 20:52:47 +00:00
Brian Osman
6c24245912 Remove SK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS from Skia's Chromium GN
This was moved to Chrome so we can rebaseline and remove it entirely.
https://chromium-review.googlesource.com/c/chromium/src/+/1334091

See also: https://codereview.chromium.org/1130883003

Bug: skia:
Change-Id: Iaf5f6e0cf2c978bff60cffc562a97784e22b24c8
Reviewed-on: https://skia-review.googlesource.com/c/170723
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-13 20:44:01 +00:00
Leon Scroggins III
97f455a39a Remove unused SkPath::unique()
It was only supported for ANDROID_FRAMEWORK, which no longer uses it.
(It looks like the last use was removed with
ag/I18bfe51896672272ce7d471eaead69b651399368.)

Change-Id: Ia0811a8625d6a20ae7411a7578a5358ff1cc1a37
Reviewed-on: https://skia-review.googlesource.com/c/170480
Auto-Submit: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-11-13 20:22:11 +00:00
skia-autoroll
14fd89962a Roll third_party/externals/swiftshader 6ed398b46847..b3c4d88a647a (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/6ed398b46847..b3c4d88a647a


git log 6ed398b46847..b3c4d88a647a --date=short --no-merges --format='%ad %ae %s'
2018-11-13 sugoi@google.com Disabling the debugger wait dialog by default with Vulkan


Created with:
  gclient setdep -r third_party/externals/swiftshader@b3c4d88a647a

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=rmistry@google.com

Change-Id: I1a0a4e5173145a023659e1d43b8737cb9ef516f8
Reviewed-on: https://skia-review.googlesource.com/c/170803
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-13 20:17:11 +00:00
Leon Scroggins III
be85c19a74 Build custom empty SkFontMgr for Android Framework
Bug: b/118742766

The Android Framework does not need SkFontMgr_android*. Switch it to
using SkFontMgr_custom*. This will also be the SkFontMgr to use when
we're building Skia as a host-side library.

BUILD.gn:
- Rename fontmgr_fuchsia to fontmgr_custom_empty so it can be selected
  specifically by the Android Framework build. Default condition is
  unchanged, so fuchsia will still build it.
- Similarly, create a new argument for fontmgr_android and
  fontmgr_custom, so they can be omitted by the Android Framework build.
  Again, default condition is unchanged, so no other builds should be
  affected.

gn_to_bp.py:
- Set the new arguments to build the files we want.

Change-Id: Ic85db8acd64f625b00fe2c9bc451ae8814d97a59
Reviewed-on: https://skia-review.googlesource.com/c/170725
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2018-11-13 20:17:10 +00:00
Jim Van Verth
275cffbd60 Avoid overflow in bufferOffset calculations
Bug: skia:8530
Change-Id: I64a7fd9087c237894dd6370ae586de79eabf9759
Reviewed-on: https://skia-review.googlesource.com/c/170724
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-11-13 19:01:42 +00:00
Brian Osman
9d958b54af Update several more oval ops to use WriteVertexData
Use shared octagon vertex data, remove some vertex structs
entirely.

Bug: skia:
Change-Id: Ia717bac85de7084a982f0d10d932ea91f04f36f4
Reviewed-on: https://skia-review.googlesource.com/c/169820
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-13 18:45:29 +00:00
skia-autoroll
5a0dddc3d4 Roll third_party/externals/angle2 cd47a379f960..2778029563f2 (2 commits)
cd47a379f9..2778029563


git log cd47a379f960..2778029563f2 --date=short --no-merges --format='%ad %ae %s'
2018-11-13 ynovikov@chromium.org Vulkan: refactor WrappedObject descendants
2018-11-13 syoussefi@chromium.org Vulkan: Enable end2end tests for ES2_VULKAN everywhere


Created with:
  gclient setdep -r third_party/externals/angle2@2778029563f2

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=rmistry@google.com

Change-Id: I57363b7605e6e6c8ca1babc54fe23fdd389eb097
Reviewed-on: https://skia-review.googlesource.com/c/170802
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-13 18:23:37 +00:00
Mike Klein
abde1adc5f remove opaque/alpha distinction in SSSE3 code
Just always use the alpha path.  Some microbenchmarks
get a little slower, but no .skps do, even ones that are
using S32_opaque_D32_filter_DX_SSSE3 heavily.

Change-Id: I4aa5f52165e504b4fcd00fff28b0a649ad4f0716
Reviewed-on: https://skia-review.googlesource.com/c/170763
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-13 17:59:18 +00:00
Herb Derby
dcdabf3b37 Move strike cache backpointer to glyph cache
Change-Id: Ibe53217753d164a13e5666d6444f75a51b7f9c39
Reviewed-on: https://skia-review.googlesource.com/c/170762
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-11-13 17:54:03 +00:00
skia-autoroll
7db8068165 Roll third_party/externals/swiftshader 1147fc2a5dac..6ed398b46847 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/1147fc2a5dac..6ed398b46847


git log 1147fc2a5dac..6ed398b46847 --date=short --no-merges --format='%ad %ae %s'
2018-11-13 gordana.cmiljanovic@mips.com Compile host specific files when cross-compiling


Created with:
  gclient setdep -r third_party/externals/swiftshader@6ed398b46847

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=rmistry@google.com

Change-Id: Ic309930f7415711720a6b33732aa43c741e03807
Reviewed-on: https://skia-review.googlesource.com/c/170801
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-13 17:44:36 +00:00
Mike Klein
bf472beeef drop sub_y == 0 optimization
In my local testing this doesn't seem to make a difference.

Change-Id: Ifcedd94acddb1e20fc3ec0296bb0398ad5341f41
Reviewed-on: https://skia-review.googlesource.com/c/170761
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2018-11-13 17:11:54 +00:00
Mike Klein
f47abb4875 remove unused DXDY SSSE3 bitmap opts
Just a buncha dead code.  These are only hooked up via
opts_check_x86.cpp, which only ever looks at the _DX_ procs.

Change-Id: Ifb366b0fbf17e97d46ebb53c69ac3efa9101df9d
Reviewed-on: https://skia-review.googlesource.com/c/170760
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-13 16:05:05 +00:00
Brian Osman
66af080a16 Remove obsolete SK_IGNORE_ defines
In chronological order:

SK_IGNORE_THIN_STROKED_RECT_FIX   : https://codereview.chromium.org/18317003/
SK_IGNORE_64BIT_OPENGL_CHANGES    : https://codereview.chromium.org/118533003/
SK_IGNORE_FAST_RRECT_BLUR         : https://codereview.chromium.org/189663012/
SK_IGNORE_MATRIX_IMAGE_FILTER_FIX : https://skia-review.googlesource.com/c/skia/+/127125/

Bug: skia:
Change-Id: I082ee9b0636f8523476b0271677f46b274f1ce97
Reviewed-on: https://skia-review.googlesource.com/c/170721
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-13 15:38:03 +00:00
Brian Osman
60b6bc3c29 Use WriteVertexData in GrTessellator, remove all DefaultGeoProc structs
The structs were previously used to compute vertex strides, and in a
couple places to do vertex writing (like this). We're moving to get
stride from the GP, and using WriteVertexData to serialize into buffers,
so these aren't needed.

Bug: skia:
Change-Id: If7eb89564e43231633290c8d19b68181e0efa89a
Reviewed-on: https://skia-review.googlesource.com/c/170720
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-13 14:45:44 +00:00
skia-autoroll
9e3109c99e Roll third_party/externals/angle2 298436280db3..cd47a379f960 (1 commits)
298436280d..cd47a379f9


git log 298436280db3..cd47a379f960 --date=short --no-merges --format='%ad %ae %s'
2018-11-13 jie.a.chen@intel.com Add SH_INIT_SHARED_VARIABLES flag


Created with:
  gclient setdep -r third_party/externals/angle2@cd47a379f960

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=rmistry@google.com

Change-Id: Ie9b1cd19dca08e26ff713a2adf8ed88e45759a8e
Reviewed-on: https://skia-review.googlesource.com/c/170661
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-13 09:35:05 +00:00
skia-bookmaker
1e1ba0e017 Update markdown files
Automatic commit by the Housekeeper-Nightly-Bookmaker bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I59bbbbecafca34863cfaf269cbcc38d0d98b609d
Reviewed-on: https://skia-review.googlesource.com/c/170681
Reviewed-by: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-13 06:00:58 +00:00
skia-recreate-skps
13b099f898 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Ie4211cb0c6ce2afb2e00ae8e25de7cb7e053d0fd
Reviewed-on: https://skia-review.googlesource.com/c/170680
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-11-13 05:52:35 +00:00
Brian Osman
f04fb3cacb Change how GPs configure attributes
Adds setVertexAttributes and setInstanceAttributes. These take a pointer
to the first attribute, and a count. The count is the total number of
possible attributes, though some may not be initialized. The base class
computes the number of initialized attributes, pre-computes the strides,
and only allows subsequent access to the initialized attributes.

The attributes need to be allocated contiguously. Some GPs place them in
an array, though most just place them as consecutive members, and pass
a pointer to the first one.

Indexed access would be possible, but now it makes more sense to iterate
over all attributes, so enable that, and use range-based for everywhere.

Completely remove the per-attribute offset helper (again - possible, but
not real helpful), and make the stride always available. In many ops,
just use the GP's computed stride, rather than re-computing it.

Bug: skia:
Change-Id: Ie4cccb7969a98ee5a10b373e714fbd702e875b3e
Reviewed-on: https://skia-review.googlesource.com/c/169241
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-11-13 00:57:17 +00:00
skia-autoroll
e18d2772cd Roll third_party/externals/angle2 48f63f90f6f3..298436280db3 (6 commits)
48f63f90f6..298436280d


git log 48f63f90f6f3..298436280db3 --date=short --no-merges --format='%ad %ae %s'
2018-11-12 timvp@google.com Fix failing dEQP EGL tests.
2018-11-12 jmadill@chromium.org Whitespace change to cq.cfg.
2018-11-12 jmadill@chromium.org Add missing refs.cfg.
2018-11-12 jmadill@chromium.org Whitespace change to cq.cfg.
2018-11-12 jmadill@chromium.org Copy configs from infra/config branch.
2018-11-12 jmadill@chromium.org Vulkan: Use global buffer barriers.


Created with:
  gclient setdep -r third_party/externals/angle2@298436280db3

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=rmistry@google.com

Change-Id: I1ac68a8ce86131561bc12cc78672f68702b33bfb
Reviewed-on: https://skia-review.googlesource.com/c/170660
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-13 00:48:10 +00:00
recipe-roller
82cd7e80a9 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/332c9ff5a98e233a000981a96f0a09d69a4b5245 [led] Roll led to pick up new kitchen CLI args. (iannucci@chromium.org)
recipe_engine:
  https://crrev.com/3ec591502d7760fb3d2d64b63d51e6993b5beca6 [doc/user_guide] Add a bit more about recipes.py (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1a376dde3f56d4e90f3243620b4dcace872c1162
Reviewed-on: https://skia-review.googlesource.com/c/170600
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-11-12 23:16:34 +00:00
Herb Derby
6dff60ea00 Clean up in, about, and around GrTextBlob::SubRun
- Simplify ctors
- Remove using for VertexRegenerator - helps navigation in IDE
- Move SubRun and Run appendGlyph into paint to co-locate them

etc.

Change-Id: I6ef75a18e41cff577b8d4e9bb41ab8e312da532a
Reviewed-on: https://skia-review.googlesource.com/c/170540
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-11-12 23:00:31 +00:00
Leon Scroggins III
fd1fd279a3 Remove unused exposedInAndroidJavaAPI
This method was introduced in crrev.com/974913002 (DIFFERENT ISSUE) for
ViaAndroidSDK in DM. ViaAndroidSDK has been removed, and no one
currently calls this method.

Change-Id: Ie613e41f9bf7e2c4213f0122ff418b974d3ff2f3
Reviewed-on: https://skia-review.googlesource.com/c/170481
Auto-Submit: Leon Scroggins <scroggo@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2018-11-12 21:27:02 +00:00
skia-autoroll
246e62c8cb Roll third_party/externals/swiftshader 635c9b33fe7c..1147fc2a5dac (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/635c9b33fe7c..1147fc2a5dac


git log 635c9b33fe7c..1147fc2a5dac --date=short --no-merges --format='%ad %ae %s'
2018-11-12 sugoi@google.com Prevent repeatedly trying to load a non-existent library


Created with:
  gclient setdep -r third_party/externals/swiftshader@1147fc2a5dac

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=rmistry@google.com

Change-Id: I73601d84ebea7f4e9ffb3b81d7b893c7a92a2aae
Reviewed-on: https://skia-review.googlesource.com/c/170460
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-11-12 20:17:02 +00:00
Ravi Mistry
6b90dfed67 Remove usage of EnsureCQIncludeTrybotsAreAdded
We will use path_regexes in the future in cq.cfg if required.

NoTry: true
Bug: skia:8542
Change-Id: Icdba5d3beee6e8b58a9b070b4db8c66cc8f71ac0
Reviewed-on: https://skia-review.googlesource.com/c/170355
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-11-12 19:35:42 +00:00
Herb Derby
96a1709964 Move adding a glyph to a subRun from Run to SubRun
Change-Id: I61e7c42f27480b6d5923073a5f7eb5a27726a4b2
Reviewed-on: https://skia-review.googlesource.com/c/170424
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-11-12 19:33:21 +00:00
Mike Reed
5f50f5776d New plan -- aa and lcd DO belong on SkFont
edging settings are needed for metrics calls, as well as drawing, hence
we really have to include them in almost every SkFont call/usage, so I
guess we can just accept them as real.

This seems to imply that we have to document what happens in drawTextBlob,
since it has a bunch of SkFonts (runs) AND a paint. This is the situation
today of course, and I had hoped to simplify it, but I think I've failed.

Proposal dox for drawTextBlob.

drawTextBlob respects the paint when drawing the blog, but it IGNORES the
paint's antialias (and lcdrender) flags, as these are already specified in
the blob's runs.

Bug: skia:2664, skia:8494
Change-Id: I8f69186c9c337d98d058919f53b7901ff830a16e
Reviewed-on: https://skia-review.googlesource.com/c/170352
Auto-Submit: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-11-12 19:30:16 +00:00
Herb Derby
69ff89579a Make SubRunInfo a subclass of GrTextBlob and rename to SubRun
Change-Id: I6125437bc5976766c13464eea60379eede23b53c
Reviewed-on: https://skia-review.googlesource.com/c/170423
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2018-11-12 17:09:17 +00:00