Commit Graph

48398 Commits

Author SHA1 Message Date
Greg Daniel
5e6d789ce4 Revert "Remove deprecated flush calls."
This reverts commit d8fd0bf574.

Reason for revert: chrome roll

Original change's description:
> Remove deprecated flush calls.
> 
> Bug: skia:10118
> Change-Id: I13758b5416784c296b8b5be9f3228230ac1be05f
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290540
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

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

Change-Id: I49d35cdb258e632f645974c5ec62075d3392efe0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10118
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290834
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-19 20:58:40 +00:00
Greg Daniel
0f16c57cb0 Revert "Fix flush change breaks."
This reverts commit 61d0084461.

Reason for revert: reverting base change for chrome roll

Original change's description:
> Fix flush change breaks.
> 
> Change-Id: I5b61e2939f08b42d1fef457f73631b7bf5a4f933
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290824
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Auto-Submit: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=egdaniel@google.com,bungeman@google.com

Change-Id: I4ae13414226f2532fcfd81236c2b857000fa4c6b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290833
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-05-19 20:56:39 +00:00
Greg Daniel
9ee15d7b57 Revert "Implement submit API to GrContext."
This reverts commit 40f288c72e.

Reason for revert: canvaskit breaking for some reason???

Original change's description:
> Implement submit API to GrContext.
> 
> Change-Id: Ib813d42abb5f63e2ecdbf245d416658143853288
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289033
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,penghuang@chromium.org,vasilyt@chromium.org

Change-Id: Iee6c8342cccc601edf64ea011f1303e5d72559a9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290917
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-19 20:55:27 +00:00
Greg Daniel
781c2de9b2 Revert "Another missed flush call fix."
This reverts commit 2d3d45a625.

Reason for revert: reverting base CL for chrome roll

Original change's description:
> Another missed flush call fix.
> 
> TBR:bsalomon@google.com
> Change-Id: Ia9891916d41c2550b82e2e7222ec24bde7a939b6
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290896
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: Iac0c9b82f0a7e7748db3ef6d8724786e15b94db5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290832
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-19 20:53:38 +00:00
Ben Wagner
ac007669ee Avoid GDI measuring modes with CBDT fonts.
This fixes the scaledemoji_rendering GM CBDT font test for native fonts
with DirectWrite.

Change-Id: I60aaf4fe015e08192b4ac16ddd4436499d4a74ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290820
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-19 20:44:07 +00:00
Ben Wagner
3298baf6a5 Note typeface usage in layers.
Typeface usage in layers was not propagated back up to the top level,
so it is easy to lose track of typefaces when layers are used.

Change-Id: I464325c0d9bce7c41592e78855ee0e21e2e6e5be
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290816
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-19 20:43:45 +00:00
John Stiles
a21d54ea30 Allow --disableDriverCorrectnessWorkarounds to enable MSAA on Intel GPUs
Historically we have seen stability issues with MSAA on older Intel
GPUs, and some performance problems as well. However, this can still be
valuable for debugging the MSAA rendering path on machines that lack a
discrete GPU, e.g. a laptop or small form-factor PC.

Bug: chromium:527565, chromium:983926
Change-Id: Ic18a878e3b57a4a136a1c008371593da8aa186e8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290830
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-05-19 20:34:25 +00:00
Greg Daniel
2d3d45a625 Another missed flush call fix.
TBR:bsalomon@google.com
Change-Id: Ia9891916d41c2550b82e2e7222ec24bde7a939b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290896
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-19 20:29:40 +00:00
Greg Daniel
40f288c72e Implement submit API to GrContext.
Change-Id: Ib813d42abb5f63e2ecdbf245d416658143853288
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289033
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-05-19 20:08:38 +00:00
Ben Wagner
dde503476e Correct TestTypeface::onCharsToGlyphs signature.
This is a trivial change which makes no practical difference except for
removing the green squiggle from Visual Studio and allow it to
understand that this is actually a real implementation of the
declaration.

Change-Id: I7b8542e801ee1cfd8a1698d5bf4adc092640dae1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290828
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-19 19:55:25 +00:00
Greg Daniel
61d0084461 Fix flush change breaks.
Change-Id: I5b61e2939f08b42d1fef457f73631b7bf5a4f933
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290824
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-05-19 19:26:05 +00:00
Mike Klein
9f6468fa7f remove support for mips64el/loongson3a
We don't have any way to test these, and we do have to
go a little out of our way to maintain these builds.

Change-Id: Ie191ee26753b719f6ee22264d63fbe4252e69bd5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290840
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-05-19 19:22:49 +00:00
Mike Klein
04984313ec port GrDataUtils to use generic transfer functions
As far as I can tell this affects only sRGB encoded buffers
as if via our as-yet-unsupported color type, so probably no
need to guard this change?

Change-Id: I2fb592b43c3f3dce3406501c318a47f3a6859f73
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290811
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-05-19 19:16:05 +00:00
Elliot
03f12b9ec2 try adding some code to example.html
Change-Id: Icdf8503d9efb426a5bb4c8888f528d3d142f7289
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290841
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-05-19 18:55:15 +00:00
skia-autoroll
4262f6b7c0 Roll skcms from 97bfcc9529c9 to da218e6af725 (1 revision)
https://skia.googlesource.com/skcms.git/+log/97bfcc9529c9..da218e6af725

2020-05-19 brianosman@google.com Guard exp2f_ to never return a negative value

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC lovisolo@google.com,mtklein@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Change-Id: I6d5c9a36f05ed33a3a8496858794cd79f5d5c3bc
Tbr: lovisolo@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290836
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-19 18:48:24 +00:00
Chris Dalton
e5a141d0f6 Reland GrRectanizerPow2
This brings back the pow2 rectanizer for use with various ongoing
atlas experiments. If we can further optimize the skyline rectanizer,
then pow2 will be good to have around as a baseline comparison. And
if skyline gets fast enough, then we can delete pow2 again.

Change-Id: I79088c53fba7ba0d120534af99bee7840c135e42
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290810
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-19 18:35:13 +00:00
Greg Daniel
d8fd0bf574 Remove deprecated flush calls.
Bug: skia:10118
Change-Id: I13758b5416784c296b8b5be9f3228230ac1be05f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290540
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-05-19 18:01:24 +00:00
skia-autoroll
7c8ea19025 Roll skcms from 60d5d65325e6 to 97bfcc9529c9 (1 revision)
https://skia.googlesource.com/skcms.git/+log/60d5d65325e6..97bfcc9529c9

2020-05-19 mtklein@google.com rm mips64el build configs

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC lovisolo@google.com,mtklein@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Change-Id: I332d917974dd89d2c850f2fd45da0b8a9c516378
Tbr: lovisolo@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290771
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-19 17:45:22 +00:00
Ben Wagner
4651b99f32 Reland "Cache hb_face."
Creating an hb_face can be quite expensive, cache them.

This implementation is similar to the super simple caching strategy used
by libtxt. It uses a simple global LRU cache from SkFontID to hb_hbface
of size 100.

Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289442
Change-Id: I971620f7aaaf2d7b6902da8681e29d6d458429ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290761
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-19 17:42:14 +00:00
Jim Van Verth
be259dcce0 Add GrD3DPipelineStateDataManager.
* Creates a common class between GrVkPipelineStateDataManager and
GrD3DPipelineStateDataManager so they can share code (will do
for Metal as well in separate CL)
* Adds means for tracking and setting uniform data.

Change-Id: Ie0dc3a3d26f533201e316d255965a646bcecb842
Bug: skia:9935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290636
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-05-19 17:33:32 +00:00
Mike Reed
d240d76b34 extract original paths at big size to improve precision
As part of this, start introducing more consistent factories (matching classes like SkM44)

Change-Id: I453f1856c0427b008faaed9dbba5263e53a48ce4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290766
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-19 17:27:22 +00:00
Robert Phillips
1b63b4ac69 Revert "SkSL function inlining"
This reverts commit b65024b5f2.

Reason for revert: Shader compilation failures

Original change's description:
> SkSL function inlining
> 
> This first pass adds "one size fits all" function inlining, without any
> allowances for simple functions that don't need all of this machinery
> in place. Followup CLs will simplify common cases by e.g. not storing
> arguments in variables if they're already variables and not wrapping
> the function body in a loop when it isn't necessary.
> 
> Change-Id: I4fd8c1655ff48b9e4708bcca03a506df34ceadd9
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290127
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

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

Change-Id: Ia6e643e0dcb66a4f0c2a377b89117047bbc5d058
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290801
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-05-19 16:10:51 +00:00
Brian Salomon
2a7eff96a8 Avoid MIP mapping in strict_constraint_no_red_allowed
Change-Id: Ia5fa3b7c61fb26abb9bcd2f21e1b9f01e77eb08e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290762
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-05-19 15:08:42 +00:00
Brian Osman
86fedbb9dd Remove legacy matrix concat code
Chrome has been rebaselined to use the 4x4 concat

Change-Id: I36830a61ac2f2f44e0125798e8a7f12d79d9cbcb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290442
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-05-19 14:24:10 +00:00
Ethan Nicholas
b65024b5f2 SkSL function inlining
This first pass adds "one size fits all" function inlining, without any
allowances for simple functions that don't need all of this machinery
in place. Followup CLs will simplify common cases by e.g. not storing
arguments in variables if they're already variables and not wrapping
the function body in a loop when it isn't necessary.

Change-Id: I4fd8c1655ff48b9e4708bcca03a506df34ceadd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290127
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2020-05-19 14:22:10 +00:00
Ben Wagner
55b3dc0c14 Make SkParagraph Run moveable.
Because a destructor was declared the move constructor and assignment
were not implicitly declared or defined. Default everything to make it
obvious that Run may be copied or moved.

Change-Id: I862b392b12a15b9d44c58da4f73ddace7d5a1308
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290538
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-19 13:50:54 +00:00
Ben Wagner
0b13ceceaa Make TextLine::fEllipsis unique_ptr.
Clarify and simplify ownership of the ellipsis.

Change-Id: I3f4567d2a16b51ecc6406d872019c4665c49fe50
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290536
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-19 13:46:02 +00:00
Ben Wagner
e73e2fc356 Don't shadow the name textRange.
In TextLine::iterateThroughSingleRunByStyles there is a parameter named
textRange and a local variable also named textRange. This shadowing is a
bit confusing both when reading the code and when debugging, so rename
the local to runStyleTextRange to better describe what it is for.

Change-Id: Iea2f668b6e854140d749efa5c595de6d851118db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290496
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-19 13:45:52 +00:00
Brian Salomon
9afff47f82 Fix clear rects in SkGpuBlurUtils
Change-Id: Iab1d7934248d8e0acc13311a8b5476471d4e9ebc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290758
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-05-19 13:29:19 +00:00
Mike Reed
1963009cd0 stroke-and-fill is deprecated, introduce simpler api
baby step for https://skia-review.googlesource.com/c/skia/+/158020/

Bug: skia:8428
Change-Id: I0411c52a4fb97755e1b06b2aba8cb969776309bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290717
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-19 13:03:29 +00:00
Brian Salomon
ca76920e78 Split bleed GM into two: one tests kStrict and tests kFast.
This should make triaging easier since it should be more obvious whether
red pixels or just (filtered) black/white checkerboard is acceptable.
And make that plainly obvious in the GM name.

Change-Id: Ie56dd518f43f01bf6d671eddffcf41c06a039f02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290639
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-05-19 12:53:49 +00:00
skia-recreate-skps
d077e6a3d0 Update Go Deps
Change-Id: I45b0fcfd4b797ccf26cf6449e724e3467f89a3bf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290712
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-19 05:42:49 +00:00
skia-autoroll
419524cc61 Roll third_party/externals/dawn 275a95c1dc64..949f1e45f1dc (4 commits)
https://dawn.googlesource.com/dawn.git/+log/275a95c1dc64..949f1e45f1dc

git log 275a95c1dc64..949f1e45f1dc --date=short --first-parent --format='%ad %ae %s'
2020-05-19 natlee@microsoft.com Refactor MapRequestTracker to be its own class file.
2020-05-19 jiawei.shao@intel.com Disallow the copies within the same buffer
2020-05-18 hugo.amiard@laposte.net D3D12: Implement UseDxc toggle to use DXC for HLSL compilation
2020-05-18 bryan.bernhart@intel.com D3D12: De-duplicate sampler heap allocations.

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 4fa68edd6819..4fa68edd6819
  https://chromium.googlesource.com/external/github.com/google/shaderc 00ac5d82178c..00ac5d82178c

Created with:
  gclient setdep -r third_party/externals/dawn@949f1e45f1dc

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Bug: None
Tbr: cwallez@google.com
Change-Id: I91695d198525221fa0ef681cad960e7cb3280f6f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290707
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-19 05:07:19 +00:00
skia-autoroll
9d87654f5c Roll ../src 32d57fc38fab..2d0aebd8a890 (378 commits)
32d57fc38f..2d0aebd8a8


Created with:
  gclient setdep -r ../src@2d0aebd8a8

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC lovisolo@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: lovisolo@google.com
Change-Id: Ibe0cff288482d46ba3863ccdffc1f27a11196ae9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290706
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-19 05:05:19 +00:00
skia-autoroll
de89a4a8e1 Roll third_party/externals/angle2 d34ab323f368..fabf74bda604 (4 commits)
d34ab323f3..fabf74bda6

git log d34ab323f368..fabf74bda604 --date=short --first-parent --format='%ad %ae %s'
2020-05-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 08a05bc2b9d1..0ab78114a9e1 (5 commits)
2020-05-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader c9625f1660da..b6e8c3f0f483 (7 commits)
2020-05-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-loader/src aaba2f0ac575..3e390a159761 (1 commits)
2020-05-18 cclao@google.com Revert "Vulkan: Try to merge barriers if possible"

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC lovisolo@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: lovisolo@google.com
Change-Id: Iff59335bc5f3913c7961591892849099918bd735
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290708
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-19 04:56:09 +00:00
Mike Reed
7a4ea2baf5 Revert "Cache hb_face."
This reverts commit d19bb17782.

Reason for revert: windows build failure?
lld-link: error: undefined symbol: private: void __cdecl SkSemaphore::osSignal(int)


Original change's description:
> Cache hb_face.
> 
> Creating an hb_face can be quite expensive, cache them.
> 
> This implementation is similar to the super simple caching strategy used
> by libtxt. It uses a simple global LRU cache from SkFontID to hb_hbface
> of size 100.
> 
> Change-Id: I364a4548699cece50073e829a065c0a303245873
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289442
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>

TBR=bungeman@google.com,reed@google.com

Change-Id: I31967a638fb497f28ca3d3f26ef3692dddff004d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290718
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-19 01:35:41 +00:00
Mike Reed
98bc22c689 add fontmetrics to custom typeface
Change-Id: Ib6f468f6fd35b73e590d22a33d1322d3de48edb2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290645
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-19 00:38:29 +00:00
John Stiles
dbcf680f8f Fix rendering of very-thin dashed lines when MSAA is enabled.
The previous code would increase the rendered stroke width to 1px (in
screen-space) to ensure proper subpixel coverage when the dashed line to
render was very thin. However, the MSAA path relies on hardware MSAA for
subpixel coverage. The stroke width is now left as-is when MSAA is on.

Additionally, this CL includes some minor polish to coverage-related
code that I made while hunting for the root cause of the bug.

Bug: skia:10240

Change-Id: I28df59a4e1da3661778acc7766cc8f75b15bc915
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290643
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-05-18 21:26:49 +00:00
John Stiles
293e1d8f8b Clarify doc comments to document the meaning of 'hairline'.
The concept of "hairline" width is well understood by team members,
but was not actually documented anywhere in the code. Added a bit of
explanatory text to the doc comments.

Change-Id: I51c39e2e644b8353afbdb8bdda32263796d7e951
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290676
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-18 20:53:18 +00:00
Ben Wagner
d19bb17782 Cache hb_face.
Creating an hb_face can be quite expensive, cache them.

This implementation is similar to the super simple caching strategy used
by libtxt. It uses a simple global LRU cache from SkFontID to hb_hbface
of size 100.

Change-Id: I364a4548699cece50073e829a065c0a303245873
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289442
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-05-18 20:18:07 +00:00
Brian Salomon
75cebbe5d3 Inset subset rect in texture op when nearest sampling
Fixes incorrect bleeding in bleed GM

Change-Id: I11337c068f531c59856ae5b5f6d9da765e2e5b0e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290196
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-18 19:16:12 +00:00
Mike Klein
622240688f clean up some SK_LEGACY... defines
Change-Id: I86c9f983672e6edd616afe003ea9823da7890511
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290585
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-05-18 18:50:07 +00:00
Mike Reed
2ddf7f39de extend custom typeface gm
Change-Id: I472e009ed78e4652a56a3987af0c488a238908b0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290638
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-18 18:45:38 +00:00
Herb Derby
d5cbc1e9fb Isolate fGlyphs in SubRun
Add glyphCount to return the number of glyphs and
grGlyph to return a grGlyph from fGlyphs.

Bug: skia:10251

Change-Id: I15f77a032b9eb9aa736ccd810900f2425fc4c059
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290296
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-05-18 18:07:57 +00:00
Ben Wagner
329091623b Add SkLRUCache.h to core.gni.
It wasn't listed in gn so didn't show up in editors as a known file in
projects.

Change-Id: Ie01773489dd72f055f04785ca7f21b6bdef6a3f7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290541
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-05-18 16:49:47 +00:00
Herb Derby
e7825ff7e3 Reland "direct mask biased to (0,0)"
This is a reland of 56cde4923f

Original change's description:
> direct mask biased to (0,0)
>
> Create mask rectangles in device space.
> But, instead of offsetting to the drawing text blob origin
> offset to 0,0 to simplify mapping from source space to
> device space.
>
> Bug: skia:10251
>
> Change-Id: Ic637eb78879bcfae7e7944053d67d9eaef8490cc
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290133
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

Bug: skia:10251
Change-Id: I622ed5c3c16379b06989bf737e74a7752984c158
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290441
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-05-18 15:58:37 +00:00
Ben Wagner
39decdbe35 Fix TODO in SkTArray move constructor.
If moving from an SkTArray which owns its own memory, just steal it
instead of always making a copy.

Change-Id: Ic969437a39d23d878d752bbdee38aa5dd2472e21
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290125
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-18 15:17:17 +00:00
Adlai Holler
e5c379d3a1 Reland "Update skpbench to let the gpu thread run alongside the recording threads"
This reverts commit 2403a1001b.

Reason for revert: Fixed bot failure

Original change's description:
> Revert "Update skpbench to let the gpu thread run alongside the recording threads"
>
> This reverts commit ca06ce48f1.
>
> Reason for revert: It is dying on a bot with the error:
> skpbench.py: error: unrecognized arguments: --ddlNumRecordingThreads c:\b\s\w\ir\skp
>
> Original change's description:
> > Update skpbench to let the gpu thread run alongside the recording threads
> >
> > Bug: skia:10176
> > Change-Id: Ibadd52b86abfd2802b9b3f31c86ab573554601db
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289883
> > Commit-Queue: Adlai Holler <adlai@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
>
> TBR=robertphillips@google.com,adlai@google.com
>
> Change-Id: Iec316410563f0fe1d06f44bcfa58f6790c547f98
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:10176
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290117
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=robertphillips@google.com,adlai@google.com


Bug: skia:10176
Change-Id: I1b57c91ed60b093440191274d1acb72d9e0c3b37
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290443
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Adlai Holler <adlai@google.com>
2020-05-18 15:12:47 +00:00
Brian Osman
8219e91468 For vertices/patches with a shader and no texCoords, use positions
This was another surprising (to me) inconsistency. Just because these
geometric primitives allow for explicit local coords, doesn't mean we
should require them (vs. all others that implicitly sample using local
position).

Change-Id: If3e7f6077bd15891b06cd2ffc969f1a649305d42
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290130
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-05-18 14:34:07 +00:00
Robert Phillips
1040e38363 Revert "direct mask biased to (0,0)"
This reverts commit 56cde4923f.

Reason for revert: may be blocking Chrome roll

Original change's description:
> direct mask biased to (0,0)
> 
> Create mask rectangles in device space.
> But, instead of offsetting to the drawing text blob origin
> offset to 0,0 to simplify mapping from source space to
> device space.
> 
> Bug: skia:10251
> 
> Change-Id: Ic637eb78879bcfae7e7944053d67d9eaef8490cc
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290133
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:10251
Change-Id: I54b078d3eb88f209ce2a857e5fcf763c4d577ac3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/290439
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-18 13:15:47 +00:00