Commit Graph

41517 Commits

Author SHA1 Message Date
Ben Wagner
a0dbedf089 [recipes] Fix Windows pathsep; add Windows tests
Change-Id: Ie74bc321dcd1a9150b55b36278e94acf1df34139
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210220
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-04-24 19:53:28 +00:00
Mike Klein
e11e5c162f AFAICT, only gm/etc1 uses third_party/etc1
The need for -Ithird_party/gif has already been
rewritten away, and we can do the same for etc1.

Change-Id: I97408652682b5ec406647108056e7a1ea6a56c29
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210131
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-24 18:57:58 +00:00
Robert Phillips
7ecb8d13ca Change flushing policy in GrContextPriv::writeSurfacePixels
Together with the following Chrome-side CL, this patch fixes Skia's flushing behavior for platforms that prefer flushes over VRAM use (i.e., ANGLE) and for platforms that don't (e.g., Android).

https://chromium-review.googlesource.com/c/chromium/src/+/1582181 (Remove additional FlushSkia in CanvasResourceProvider::WritePixels)

Here are the perf numbers on Android and Windows for the putImageData performance test:

                              Android (Nexus 5x)   Windows (i.e., ANGLE)
Current Chrome                        112.9             512.1
Chrome w/ 1582181                     131.9             334.8
Chrome w/ 1582181 and this CL         133.6             589.4

So, after both CLs have landed, Android will be faster while Windows will, roughly, remain the same.

Note, on ChromiumPerf the swing for the Nexus 5x is from 126.8 to 153.6 (so, a larger delta than I'm seeing here).

Bug: 942538, 953720
Change-Id: Iead6388e7a378240f87363e9a342d36a63f4c7f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210062
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-24 18:53:38 +00:00
Mike Reed
33db04c851 add gm/bench for runtime colorfilter
Change-Id: I236f729d6cf5812eff9ca75b055b827b3d782f9b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210061
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2019-04-24 18:07:07 +00:00
Mike Klein
fb80e52c73 update GL interface codegen
Tested by:
    cd tools/gpu/gl/interface/
    go run *.go --in_table "./interface.json5" -out_dir "../../../../src/gpu/gl/"

Cq-Include-Trybots: skia.primary:Housekeeper-PerCommit-CheckGeneratedFiles
Change-Id: I1fee1263e321580c0e8c4e41d345fc856ef2a4e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210128
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-04-24 18:01:07 +00:00
Ethan Nicholas
9585947933 minor interpreter cleanups
Bug: skia:
Change-Id: Ic87ce714f7936499c47fa2f1f5217333a568519f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210068
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-24 17:50:31 +00:00
Mike Klein
792597b1c5 I think we've made it past this intern demo.
I'd keep this around but it really is kind of annoying to build Skia
twice.  It's an extra ~300 build steps for an output we're not using.

Change-Id: Ib531485ad433b615979df82cf0cda20e92aa38f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210114
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-24 16:53:06 +00:00
Mike Klein
c0bd9f9fe5 rewrite includes to not need so much -Ifoo
Current strategy: everything from the top

Things to look at first are the manual changes:

   - added tools/rewrite_includes.py
   - removed -Idirectives from BUILD.gn
   - various compile.sh simplifications
   - tweak tools/embed_resources.py
   - update gn/find_headers.py to write paths from the top
   - update gn/gn_to_bp.py SkUserConfig.h layout
     so that #include "include/config/SkUserConfig.h" always
     gets the header we want.

No-Presubmit: true
Change-Id: I73a4b181654e0e38d229bc456c0d0854bae3363e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209706
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-04-24 16:27:11 +00:00
Hal Canary
0c22997075 SkTInternalLList: remove SkPtrWrapper, SkNoncopyable
Change-Id: I24fb1c38eb4cd9ec27b81a4e0010b1268442a29f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210063
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-24 14:34:00 +00:00
Robert Phillips
c73666ff43 Implement alternate method for determining recycle-ability of allocated GrSurfaces (take 2)
With the upcoming removal of pendingIO refs the GrResourceAllocator needs a new means of determining when a backing GrSurface can be recycled and when it needs to be left assigned to a GrSurfaceProxy.

Change-Id: I2327b0f15ceb639b400a55a9c53359a4b43288c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210041
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-24 14:25:00 +00:00
Mike Klein
333fb450b3 move SK_ENABLE_DISCRETE_GPU to cover only tools
Change-Id: I390bd2cfae16651cf109c91b1047caf235cd6df4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210033
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-24 14:20:00 +00:00
Brian Salomon
5d8f1cc77f Use tasks for GrVkGpuTextureCommandBuffer.
We will also need transfers there.

Bug: skia:8962
Change-Id: I80d16e1f65d825c7cea99664215cc511efdbdaff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/210060
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-24 13:49:20 +00:00
Mike Reed
c092f9e3a3 rm older api from colormatrix, change to normalized translate
Bug: skia:4872
Change-Id: I0846a019dd1fd495a20d522d2d82179ad8d61aea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209813
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-24 12:58:01 +00:00
skia-recreate-skps
82de21cb71 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I496cee2a91a130fb490976a27d07097aed72b7d4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209963
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-24 05:46:50 +00:00
skia-autoroll
8efff89c28 Roll third_party/externals/angle2 cff6f150eae1..62e274e86c7e (2 commits)
cff6f150ea..62e274e86c


git log cff6f150eae1..62e274e86c7e --date=short --no-merges --format='%ad %ae %s'
2019-04-23 dworsham@google.com [scenic] Remove dangling viewsv1 reference
2019-04-23 cnorthrop@google.com Android: Add ANGLE version to logcat


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

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=mtklein@google.com

Change-Id: Ieedbb43e1a736a07e755fe1d475eb4d31fa2fd04
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209952
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-24 05:14:50 +00:00
skia-autoroll
169a090d32 Roll third_party/externals/swiftshader 707ed9974cb3..a161493942fa (9 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/707ed9974cb3..a161493942fa


git log 707ed9974cb3..a161493942fa --date=short --no-merges --format='%ad %ae %s'
2019-04-24 chrisforbes@google.com Set up input attachment descriptors the same as storage images
2019-04-23 chrisforbes@google.com Synchronize before performing mid-subpass attachment clears
2019-04-23 chrisforbes@google.com Only do centroid sampling if multisampling
2019-04-23 chrisforbes@google.com Remove more stale renderer plumbing
2019-04-23 chrisforbes@google.com Wire up alphaToCoverage support
2019-04-23 chrisforbes@google.com Unify template-based and classic descriptor writes
2019-04-23 chrisforbes@google.com Add support for indexing into arrays of image descriptors
2019-04-23 chrisforbes@google.com Clean up storage image descriptor access
2019-04-23 swiftshader.regress@gmail.com Regres: Update test lists @ 707ed997


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

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=mtklein@google.com

Change-Id: I3453039bb0a3077acff5388c80c974caffce0f8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209955
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-24 04:56:20 +00:00
skia-autoroll
0f619a2793 Roll ../src 29e17ed23dea..7d439e099c7a (412 commits)
29e17ed23d..7d439e099c


Created with:
  gclient setdep -r ../src@7d439e099c

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-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:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=mtklein@google.com

Change-Id: Ie7e961e2f46e05021c850bc72c3d5e0e6cbd16a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209951
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-24 04:55:50 +00:00
recipe-roller
29ec5ecffa 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.
recipe_engine:
  https://crrev.com/02f24140144c435c1c5cca1d1259257d3e6ba66c Update post_process_test.py to call magic_check_fn.post_process. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic9debda9d87a8125d895a3ccee33640dbf60aac6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209915
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-23 23:13:13 +00:00
Mike Reed
f07b61f05a (start to) explicitly use float for color values
Bug: skia:9012
Change-Id: I13ef8dea81a9d138b557be53b7adf19285fc9fce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209810
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-23 21:06:16 +00:00
Brian Salomon
24d377eedf Store tasks to execute before VK secondary command buffers generically.
Repurpose GrTRecorder for storing these tasks. It's currently unused.
Reimplement on top of SkArenaAlloc and using emplace methods now that we
have C++14.

Currently it stores copy and upload tasks. In the future it will store
transfer-out commands.

Removes the optimization that reset copy-ins on clear/discard. However,
none of our existing tests exercised it.

Change-Id: I0474f77cc2d368461d542de50a7a0c5609312001
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209643
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-23 20:43:04 +00:00
Mike Klein
ba201aea74 make -Werror or /WX optional, off by default
Most external users complain about -Werror,
and I've heard anecdotally that devs find it annoying too.

This turns it off by default, but keeps it on the bots.

Change-Id: I6e87c92215261ebf6e961f816177386d5d58f28e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209787
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-23 20:39:34 +00:00
Mike Klein
127e519cc4 fix sk_colorspace include guard
Change-Id: Id6db4fd8147ac96d8fecab3b73d50c5098a070f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209897
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-23 20:35:04 +00:00
Mike Reed
ef86fa3043 remove dead function MakeSingleChannelOutput
Change-Id: Ie058e85aca40440719ba90139d60ac1c1181c683
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209812
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-23 20:28:24 +00:00
recipe-roller
d251c801d7 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/6d9913ab18938caf69a995c2653d92005393c4f1 [lucicfg] Bump lucicfg version v1.7.0 -> v1.7.1. (vadimsh@chromium.org)
recipe_engine:
  https://crrev.com/2d211d498773f07ce6a37bb88a2464864eb3c841 Trigger multiple builds from a single run. (robertocn@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I286d4bb4a09424f1cb81862ad8ea75c5a8f13ff3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209892
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-23 19:56:24 +00:00
Mike Klein
1f4c2bdfa2 sort, dedup skia_public_includes
Change-Id: Ic3ce410daf9e5923396019d65f922c8b67d589b0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209873
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-23 19:07:31 +00:00
Mike Klein
dbbefa86bf inject SkUserConfig.h with -DSK_USER_CONFIG_HEADER
This lets clients explicitly declare which SkUserConfig.h
to use, rather than implictly via include directory priority.

See include/gpu/gl/GrGLConfig.h for a similar setup.

Looks like keeping an #else case around is going to be the
easiest way to keep Android building, unless I can find a
way to push -DSK_USER_CONFIG_HEADER up to Skia's reverse
dependencies.

Change-Id: I9c297324cbafbd5f0d1a3dc1c90f0ceae0339e88
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209866
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-23 18:59:51 +00:00
Mike Klein
a7008f5ff6 another stray <include> -> ""
Change-Id: Ibc51adc679d19ab78298b317836983f2b8e217bb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209882
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-23 18:47:36 +00:00
Ethan Nicholas
746035afeb added support for interpreting generic SkSL functions
Bug: skia:
Change-Id: I575b91c654393cc6cfedea617852598e8595d5ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209809
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-23 18:46:36 +00:00
Mike Klein
aca8830244 are these include paths no longer needed?
Looks like things are building fine for me without.

Change-Id: I47b01eeca8fe76220b43bf32c5ebb060be3a170e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209876
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-04-23 18:22:36 +00:00
Herb Derby
1c550f7b00 Only call findImage when needed
Reverse the performance regression caused by genereating
the mask earlier in the calling sequence. This caused the
cache to be purged too frequently in the emoji fling test.

Fixes android bug 131096308

Change-Id: I727481085f85626ae119cab316b788c65701b8f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209804
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-23 17:55:58 +00:00
Mike Klein
4941a2239e switch some idiosyncratic <includes> to ""
Change-Id: I099f8a635df7dd0ddd3902459615250ea2c120c5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209874
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-23 17:54:48 +00:00
Robert Phillips
29c1c8029a Revert "Implement alternate method for determining recycle-ability of allocated GrSurfaces"
This reverts commit 7eec3cd688.

Reason for revert: Chrome assert

Original change's description:
> Implement alternate method for determining recycle-ability of allocated GrSurfaces
> 
> With the upcoming removal of pendingIO refs the GrResourceAllocator needs a new means of determining when a backing GrSurface can be recycled and when it needs to be left assigned to a GrSurfaceProxy.
> 
> Change-Id: I6f62a793e8aba70019dc8d0e7d585366d1097d70
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208227
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: Ia7098e1fcbf5623a7846b52b3b26f724e183d5ff
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209807
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-23 16:54:58 +00:00
Mike Reed
361a640cc9 change colormatrixfilter to be 0...1 for translate
... once I've updated callers of SkColorMatrix, that can be changed to
0...1 as well.

Replacement for https://skia-review.googlesource.com/c/skia/+/209408

Bug: skia: 4872
Change-Id: Ieb0173e7af4c34f6a2c0b90787afb5387c216d68
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209806
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-23 16:51:56 +00:00
Jim Van Verth
75c3ae4c2e Add GrMtlCommandBuffer
Used to encapsulate encoder creation. Bundles blitencoder
commands into a single encoder.

Bug: skia:8243
Change-Id: I53a4303678bb4f4e6667a3655cfe414b2e50615d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209435
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-23 16:20:26 +00:00
Hal Canary
bd5e9505d8 Make default SkUserConfig a noop
Change-Id: Ica7d62c758558c0e2c7bea9da8a08f25d1cfaeed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209805
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-23 16:07:56 +00:00
Mike Reed
9adc82c73d Fixes for saveBehind/drawBehind
- fixes bug in device restore (was passing the wrong matrix)
- use drawbehind for the clear, to avoid rounding differences between canvas and gpu

Change-Id: I9c130e38437d8d34242620750f11a6ae7e62ff97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209801
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2019-04-23 15:05:06 +00:00
Robert Phillips
7eec3cd688 Implement alternate method for determining recycle-ability of allocated GrSurfaces
With the upcoming removal of pendingIO refs the GrResourceAllocator needs a new means of determining when a backing GrSurface can be recycled and when it needs to be left assigned to a GrSurfaceProxy.

Change-Id: I6f62a793e8aba70019dc8d0e7d585366d1097d70
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208227
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-23 14:39:11 +00:00
Mike Klein
1ce03a613e rename gamma stage gamma_
In some setups we see StockStage::gamma somehow
shadowing `double gamma(double)` from math.h.

No big deal.  We do the same for plus_ and xor_.

Change-Id: Ib5d45edf33dcfbc1d0eef1806674fa908e752200
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209788
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-23 13:38:36 +00:00
Robert Phillips
12c4629624 Remove the option of disabling explicit resource allocation
We're burning our boats behind us. Succeed or die trying!

Change-Id: I6a9f71b758a6ae7b090c5221ab12a5ab4d166b47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209647
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-23 12:24:26 +00:00
Mike Klein
7ecad8791f add third_party/skcms to includes
This should allow us to #include "skcms.h".

Change-Id: Ie91f3af6145d78ffe0e433383a220fcb40452888
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209780
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-23 11:18:36 +00:00
skia-recreate-skps
f153e22114 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I1807c64cd281ec8ca956d94b6e97f607f448ef4e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209763
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-23 05:46:07 +00:00
skia-autoroll
f31ae87fe0 Roll third_party/externals/angle2 c467f7b54188..cff6f150eae1 (1 commits)
c467f7b541..cff6f150ea


git log c467f7b54188..cff6f150eae1 --date=short --no-merges --format='%ad %ae %s'
2019-04-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 0e5d1bb66ad3..86c72c9486a9 (3 commits)


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

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=mtklein@google.com

Change-Id: If018a85218f2b65bfb4b25e253e9ad1f15d012cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209733
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-23 05:10:06 +00:00
skia-autoroll
0438f02d79 Roll ../src 3ed0f75776bb..29e17ed23dea (265 commits)
3ed0f75776..29e17ed23d


Created with:
  gclient setdep -r ../src@29e17ed23d

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-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:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=mtklein@google.com

Change-Id: I4d2cac2d1c7e02a553d998df9cd1a0b57a70a50e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209732
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-23 04:39:05 +00:00
skia-autoroll
977b16d9c9 Roll third_party/externals/swiftshader bcc71a322953..707ed9974cb3 (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/bcc71a322953..707ed9974cb3


git log bcc71a322953..707ed9974cb3 --date=short --no-merges --format='%ad %ae %s'
2019-04-23 chrisforbes@google.com Add support for OpAtomicISub, OpAtomicIIncrement, OpAtomicIDecrement
2019-04-23 chrisforbes@google.com Add support for OpExtension
2019-04-22 swiftshader.regress@gmail.com Regres: Update test lists @ bcc71a32


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

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=mtklein@google.com

Change-Id: I8d99fca7f6a472ad16f251e028e472618f5ff77c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209734
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-23 04:35:35 +00:00
Brian Osman
c3186302bd Add skcms directory to public includes
skcms is part of Skia's public API now. This attempts to recognize that,
and pave the way for moving the header to another location more easily
in a follow up CL, or - at a minimum - for clients that redistribute
Skia as a library + includes to relocate the skcms.h header as part of
that.

Change-Id: I15da63b0d4ab8916a71fb7e6ab3656db87252707
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209640
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-22 20:32:23 +00:00
Greg Daniel
06be079791 Add wait function on GrContext to wait on semaphores.
This behaves like the SkSurface::wait call but is not tied to a specific
surface.

Change-Id: Ic572296e0f581204bf69a7178645d99e365c0692
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209648
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-22 20:28:23 +00:00
Jim Van Verth
dd15d69e1f More buffer changes for Metal.
* Use setVertexBytes and setFragmentBytes to set uniforms
* Use shared dynamic buffer for small texture uploads


Bug: skia:8243
Change-Id: I8436ca483e996a43d42e3862d0f1281bf864ab80
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209645
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-22 20:26:03 +00:00
Mike Reed
50d79af7b7 hide internals of SkColorMatrix (so we can migrate to col-major)
Change-Id: If0eb6fb2efb6816b92ad7ca7d8caaace71397b7f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209409
Commit-Queue: Ravi Mistry <rmistry@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-22 19:10:04 +00:00
Mike Klein
731ba99a85 deshard NP and N7 CPU test bots
Cq-Include-Trybots: skia.primary:Test-Android-Clang-Nexus7-CPU-Tegra3-arm-Debug-All-Android,Test-Android-Clang-Nexus7-CPU-Tegra3-arm-Release-All-Android,Test-Android-Clang-NexusPlayer-CPU-Moorefield-x86-Debug-All-Android,Test-Android-Clang-NexusPlayer-CPU-Moorefield-x86-Release-All-Android
Change-Id: If0dc05534fb1a6d35641708e038ad3088aa2a2aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209612
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-22 18:13:33 +00:00
Mike Klein
86e61993a9 Revert "simplify and centralize SK_API"
This reverts commit 7f960d2083.

Reason for revert: Chrome roll again

Original change's description:
> simplify and centralize SK_API
> 
> Attempt two, this time not setting visibility("default")
> unless SKIA_IMPLEMENTATION is defined.
> 
> Bug: skia:8975
> Change-Id: I8d4e2071f1a8ee8a5702ac62ffc4000379d4fc43
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207854
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@google.com,brianosman@google.com,chinmaygarde@google.com

Change-Id: I0f9e6e5da2c17f789a4599042b9ae3a1ba412987
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8975
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209680
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-22 18:09:45 +00:00