Commit Graph

28602 Commits

Author SHA1 Message Date
Mike Klein
9beafc41af have start_pipeline() return limit again
This is spooky.
I don't quite yet understand why, but this makes things much faster.

Performance regressed across the board when we no longer needed the
value and changed it to return void:

    https://perf.skia.org/e/?begin=1496176469&keys=6994&xbaroffset=28513

You can see similar regressions following this Chromium bug link.
BUG=chromium:729237

Change-Id: I68371b0456014f909acf819aca52aa4f4f187460
Reviewed-on: https://skia-review.googlesource.com/18580
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-05 13:46:40 +00:00
Mike Klein
34d10d734c implement SkRasterPipelineBlitter::blitAntiH2()
The default blitAntiH2() calls blitAntiH() with two length-1 runs, but
for this blitter creating a small mask is better.  We can stamp both
pixels out with a single pipeline invocation.

Change-Id: If356975e85310a4545e54f2231a142d6e537944d
Reviewed-on: https://skia-review.googlesource.com/18581
Reviewed-by: Mike Reed <reed@google.com>
2017-06-05 13:31:31 +00:00
Robert Phillips
e18474e864 Re-enable single channel renderability for ANGLE ES2
Since the ANGLE-side fix has landed & been rolled into Skia we no longer need this workaround.

Change-Id: I9e6296976d53fc1c87232f918a5c0257201744bf
Reviewed-on: https://skia-review.googlesource.com/18583
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-06-05 13:16:13 +00:00
Robert Phillips
c8167f167d Roll ANGLE DEPS
This will pick up the ANGLE fix: https://chromium-review.googlesource.com/523023 (Fix format info for unsized RG texture formats)

Change-Id: I9cb8a6777689071a248509fb38cedeceefa35e21
Reviewed-on: https://skia-review.googlesource.com/18582
Reviewed-by: Brian Osman <brianosman@google.com>
2017-06-05 12:52:31 +00:00
Vaclav Brozek
d0e0a8ff41 Don't move raw pointers in SkCanvas
Moving raw pointers does the same job as copying, but is more verbose and also
more confusing: e.g., is the supposed pointer meant to be a smart one?

This instance was flagged by the tool from
https://codereview.chromium.org/2919243002/.

BUG=chromium:729393

Change-Id: I4c89e9d80fab9f6d14ab7db53e8b9b6e7cf966dc
Reviewed-on: https://skia-review.googlesource.com/18540
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-05 01:17:51 +00:00
Mike Klein
cb218b30aa don't try lowp in msan builds
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Ubuntu-Clang-x86_64-Debug-MSAN

Change-Id: I50bcb3a3d8138ce94e3741cac8ceacc9e7e28a20
Reviewed-on: https://skia-review.googlesource.com/18532
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-04 23:23:15 +00:00
Mike Klein
bba02c2031 start on SkJumper lowp mode
Just 3 stages implemented so far:

  load_8888
  swap_rb
  store_8888

That's enough to make the shortest non-trivial pipeline
that you see in the new unit test.

Change-Id: Iabf90866ab452f7183d8c8dec1405ece2db695dc
Reviewed-on: https://skia-review.googlesource.com/18458
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2017-06-04 22:50:14 +00:00
UpdateSKPs
f4e4986017 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: I95441583200a3ffc7a2dfe1b6671b5416278f902
Reviewed-on: https://skia-review.googlesource.com/18517
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>
2017-06-04 07:56:13 +00:00
Mike Reed
3f511889e8 experiment: force composeshade to always be rasterpipeline
Bug: skia:
Change-Id: I7dd3f652f3ce05c48cc41b0bbbb54b96d17d721a
Reviewed-on: https://skia-review.googlesource.com/18529
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-04 00:22:35 +00:00
Mike Reed
b5d9e85c02 remove unused blitters
Bug: skia:
Change-Id: Iaa2ead32a4025071c3592f83d47f174ffeb63a49
Reviewed-on: https://skia-review.googlesource.com/18530
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-03 11:56:55 +00:00
recipe-roller
4833950b75 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/2a622f20ee62c279073e59cf0b283de2aa5534ce [win_toolchain] Allow toolchain dir override. (dnj@chromium.org)
  https://crrev.com/84f6f76c72a9d253faabc147c778d8edce974193 [vpython] Bump to newer version. (dnj@chromium.org)
  https://crrev.com/6f79679ab8e9869552adfd9ef1f29f6574743976 gclient validate: allow "recursion" setting (phajdan.jr@chromium.org)
  https://crrev.com/c485d5a5d990416796c1d0099ebe12a92ca7f40d gclient: use new exec logic when validation is enabled (phajdan.jr@chromium.org)
  https://crrev.com/6d0d04458d9c345bc7d77681996d89d6e5fc742c git-cl-upload: Fix reviewers notification with --no-squash. (wiktorg@google.com)
  https://crrev.com/2fa1203a22622a151df86f34704068b93ba84ee3 Fix regression of gclient-new-workdir.py (wychen@chromium.org)
recipe_engine:
  https://crrev.com/a64a4d4ad8e4844cb81868a2b24df4d836d5caca [file] No error in remove if file does not exist (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7c45c7278cc50d4e653a31911f3de9ec108b257e
Reviewed-on: https://skia-review.googlesource.com/18525
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2017-06-02 21:47:37 +00:00
Brian Salomon
e23bffd65b Remove support in GPU backend for distance vector field.
Also, remvoes SkNormalBevelSource as this was the last use case for the distance vector field.

Change-Id: Ib0176c78e500e6b5130310934253a75860245812
Reviewed-on: https://skia-review.googlesource.com/18482
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-06-02 19:44:18 +00:00
Cary Clark
219b4e81db add nonsquare scale to pathops sorter tool
Change-Id: I1b45992cc6eb18d0f79edcbd97d00d73c66c349a
Reviewed-on: https://skia-review.googlesource.com/18035
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2017-06-02 19:30:07 +00:00
Mike Reed
65efe9c0eb remove unused auto class
Bug: skia:
Change-Id: I7178876c0d95dc83d64d39a2cb6d90a47bc4b00e
Reviewed-on: https://skia-review.googlesource.com/18520
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-02 19:25:47 +00:00
Robert Phillips
e4d45bf5ba Remove accessRenderTarget call from Clear tests
In the split-opList world the full screen clear optimization no longer relies on the rendertarget ID.

Change-Id: Ifc7bf10753355a18507998e30f9de7e8c1eb57c1
Reviewed-on: https://skia-review.googlesource.com/18497
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-06-02 19:21:37 +00:00
Mike Reed
0271c5b7db simplify verts in certain modes
Bug: skia:
Change-Id: I7cc54c940b61332f06b8d21eeba1def8bd9cb3dc
Reviewed-on: https://skia-review.googlesource.com/18495
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-02 19:17:07 +00:00
Robert Phillips
56f6e8355a Roll ANGLE
Change-Id: I7383e63a619772a0274a0e687eafd19a8f068bc7
Reviewed-on: https://skia-review.googlesource.com/18487
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-06-02 18:36:15 +00:00
Mike Reed
6867eee44d default impl of appendStages now calls shaderContext
this is approximately a revert of https://skia-review.googlesource.com/c/17768/

I propose if/when we want to experiment with a fast-path for coherent shaders
(e.g. 2-color linear gradients, up-scaling images) that we just create a new
mechanism for shaders to opt into that, knowing that it will be driven by
the rasterpipeline (and never by the old context convention).

This CL now makes it legal/clear that a new shader subclass can *just* implement
stages for raster, and never needs to make a context.

Bug: skia:
Change-Id: I525a8b1cece100f0993f75e28128e0927a4ea35c
Reviewed-on: https://skia-review.googlesource.com/18481
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-02 17:51:24 +00:00
Robert Phillips
3ea1798829 Remove ImmediateFlush mode
Change-Id: I7db113e66d81516b2beb5eefeddf488d9bfed2e5
Reviewed-on: https://skia-review.googlesource.com/18488
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-06-02 17:35:18 +00:00
Robert Phillips
bc712740bd Disable single channel renderability for ANGLE ES2
Bug: 720325

Change-Id: Ib55c7a0c59a23b8dc012e04b626010de7da2921b
Reviewed-on: https://skia-review.googlesource.com/18485
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-06-02 16:51:49 +00:00
Florin Malita
67af673d7a Remove deprecated SkRWBuffer snapshot methods
Change-Id: I98fc6059fe74458fb359eaf00ccfcae50996a9e1
Reviewed-on: https://skia-review.googlesource.com/18480
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-06-02 15:44:57 +00:00
Mike Klein
0d93010c98 move load_and_inc() and LazyCtx into SkJumper_misc.h
This is a no-op refator that'll help keep the interesting diff more
focused in the lowp CL.  The lowp stages will use these unaltered, so
SkJumper_misc.h is a good place for them.

Change-Id: I7fb6327ade29ac884194517d94ac4303ed1079e0
Reviewed-on: https://skia-review.googlesource.com/18484
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-02 15:40:16 +00:00
Ethan Nicholas
b4dc419f0b Re-land "Fixed an issue with sksl variable declarations"
This reverts commit affa6a3da8.

Bug: skia:
Change-Id: I5864830e31acbf786f3ea7ae91f42f10aae6d855
Reviewed-on: https://skia-review.googlesource.com/18459
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-06-02 15:11:19 +00:00
Stan Iliev
7e910df7f1 Implement an SkImage backed by a Android hardware buffer
Create a new SkImage public API to make an image from an Android
hardware buffer. Implementation is using a SkImageGenerator
derived class GrAndroidBufferImageGenerator.
A new EGLImage texture is created, which is then wrapped with
GrTextureProxy.

Bug: skia:
Change-Id: I610a4c5a58198686ce7c03e9a0adad3f9d2342e0
Reviewed-on: https://skia-review.googlesource.com/17789
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stan Iliev <stani@google.com>
2017-06-02 14:51:24 +00:00
Ethan Nicholas
affa6a3da8 Revert "Fixed an issue with sksl variable declarations"
This reverts commit 88bd8edcff.

Reason for revert: unhappy bots

Original change's description:
> Fixed an issue with sksl variable declarations
> 
> There was an issue where multiple variables defined in the same
> declaration were not being sequenced appropriately during analysis, so
> 'int x = 0, y = x + 1' would report that x was undefined.
> 
> Bug: skia:
> Change-Id: I882f7e216467306f6a6013a0a34aac30a4c60744
> Reviewed-on: https://skia-review.googlesource.com/18313
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> 

TBR=csmartdalton@google.com,ethannicholas@google.com
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Change-Id: Ibc68674289dce70b6173a347a0e78bb0f1e6db1b
Reviewed-on: https://skia-review.googlesource.com/18457
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2017-06-02 13:57:39 +00:00
Mike Klein
370c2b304a minor refactor to SkRasterPipeline::BuildPipeline
I don't see any reason to have it be static...

Change-Id: I0fdc9c0629e2194c469f7c9c696d1bb55ffbc98a
Reviewed-on: https://skia-review.googlesource.com/18455
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-02 13:47:44 +00:00
Ethan Nicholas
88bd8edcff Fixed an issue with sksl variable declarations
There was an issue where multiple variables defined in the same
declaration were not being sequenced appropriately during analysis, so
'int x = 0, y = x + 1' would report that x was undefined.

Bug: skia:
Change-Id: I882f7e216467306f6a6013a0a34aac30a4c60744
Reviewed-on: https://skia-review.googlesource.com/18313
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-06-02 13:23:36 +00:00
Leon Scroggins III
ec4400bfe3 Avoid new for small arrays in SkBmpCodec
Use a buffer on the stack to avoid the cost of new/delete.

Change-Id: I5c9208ec283e8345c34553343925097926274978
Reviewed-on: https://skia-review.googlesource.com/18402
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-06-02 13:14:57 +00:00
Brian Osman
48c9919335 Expand texturability testing to cover mip-mapped textures, and fix iOS
Don't allow creation of mip-mapped textures when caps says we don't
support mip-mapping.

Skip testing of mip-mapped resources in the resource size test,
when creation will fail.

For iOS devices with ES2, the APPLE BGRA8888 extension is more
trouble than it's worth. Even though it lets the internal and
external formats not match, it appears that the driver remembers
the first external format, so subsequent attempts to upload with
the other swizzle will fail. Up until now, creation of these
textures was failing anyway, so now just make it more explicit
that we don't support BGRA in this situation.

Now that we're testing our TexStorage path, fix a few other problems
that showed  up:
- Command Buffer doesn't like extension formats.
- X86 PowerVR and Adreno devices don't like BGRA.

Re-land of   : https://skia-review.googlesource.com/18382
Re-re-land of: https://skia-review.googlesource.com/18261

BUG=skia:

Change-Id: Ie12793549a6807300d6ece68cd6b92495e85c3fe
Reviewed-on: https://skia-review.googlesource.com/18403
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-06-02 13:12:17 +00:00
recipe-roller
fcc8adc5e4 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/96fa295ab453feee177e3b6cf0992d576cf87af5 Revert "[.bat] Remove "depot_tools" override." (dnj@chromium.org)
  https://crrev.com/74809c1b318e7ae7cd472990728e76c8b5816f4c [.bat] Remove "depot_tools" override. (#2) (dnj@chromium.org)
  https://crrev.com/bbda9719b05612b3de5394ca7a2c9813749d3236 [gclient] Let --revision take repository URLs in addition to local paths. (dtu@chromium.org)
  https://crrev.com/74d7e13315bf0e31c065b9940d330f6f583f5f6b [auto_update] Add control script, allow disable. (dnj@chromium.org)
recipe_engine:
  https://crrev.com/09efd6f1bfd7040872c894fa6f70294a9575036a Remove all mentions of example.py (iannucci@chromium.org)
  https://crrev.com/e7ce42597641397a594380f0d5edd6fd7ade1037 [test] only clean up expectations if training was otherwise successful. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1c0ef548cc14c114cccbaa7eebfe22b8bdcd3ef8
Reviewed-on: https://skia-review.googlesource.com/18450
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2017-06-02 12:04:45 +00:00
Kevin Lubick
c78a2d70fc Rename Chromecast CPU tests to GPU tests
Also fix command flags to use skps instead of svgs

Bug: skia:6706
Change-Id: Ie099abac738e6eb8808db9aef513a51940c5ccb1
Reviewed-on: https://skia-review.googlesource.com/18441
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-06-02 12:00:05 +00:00
Robert Phillips
18166eeaf2 Omnibus: Push instantiation of GrTextures later (post TextureSampler)
Split into:
   https://skia-review.googlesource.com/c/10485/ (More GrSurfaceProxy-clean up)
   https://skia-review.googlesource.com/c/15819/ (Expand GrTextureProxy to handle highestFilterMode)
   https://skia-review.googlesource.com/c/16714/ (Switch ImageStorageAccess over to GrTextureProxies)
   https://skia-review.googlesource.com/c/16908/ (Convert DstTexture to DstProxy)

Change-Id: I6cf3ba0f3bf0e1908d36749bc83571c066ddd568
Reviewed-on: https://skia-review.googlesource.com/10484
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-06-02 11:46:40 +00:00
Robert Iannucci
dec4c0b298 Rename example.py -> examples/full.py for all modules
`example.py` is going away; examples folder can now hold multiple
example recipes.

R=borenet@google.com

Bug: skia:
Change-Id: Ib28910987342217bc52040d4d966444174ce27a3
Reviewed-on: https://skia-review.googlesource.com/18432
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-06-02 11:40:36 +00:00
Mike Reed
d5bee5d50c add API to change max pointsize for font cache
Bug: skia:6585
Change-Id: I6df8c439dca0a154e8fbfce6d66c536665dff1d7
Reviewed-on: https://skia-review.googlesource.com/18314
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-06-01 20:55:16 +00:00
recipe-roller
c3cbd734f0 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/2f5f0b7a99c9df653b090e3ef00d13a2cab00a8d [.bat] Remove "depot_tools" override. (dnj@chromium.org)
  https://crrev.com/f1631cd003fa148c44a84f92b3d0696b2aeae6a7 [bot_update] Remove extraneous slash in revision parsing. (dtu@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia6f0091e4d0ac129b7fefd081ac66ab2430b5a3d
Reviewed-on: https://skia-review.googlesource.com/18445
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2017-06-01 20:54:18 +00:00
Robert Phillips
1bfece8556 Rm int flavor of GrNextPow2 in favor of uint32_t flavor
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=18384

Change-Id: I8f62c5ea6146626916389429ac4f2f80c57a7d72
Reviewed-on: https://skia-review.googlesource.com/18384
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-06-01 20:30:54 +00:00
Kevin Lubick
8692b4a5ac Use ssh to trigger chromecast test
Using adb seemed to ignore errors in some cases, primarily
if nanobench crashed/hung.

Bug: skia:6706
Change-Id: I5def49d5b4d20bed6c486b7e85040190be856ac8
Reviewed-on: https://skia-review.googlesource.com/18404
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-06-01 20:11:47 +00:00
recipe-roller
06775d4510 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/0209d792775b1efa537a6c30cfeee699a33a82da Fix toolchain packaging script for latest SDKs (brucedawson@chromium.org)
  https://crrev.com/7cf96a4b4bd80396252bac5e054666e3942262aa gclient_eval: use ordered dict (phajdan.jr@chromium.org)
  https://crrev.com/bcec9e741581857ff279c6a04a3c39da161b14f4 Pass user name and email to git-number's initial commit. (jbudorick@chromium.org)
  https://crrev.com/6cfe8d430161cc03089ca3b1fe2a4c418681b09d Add disable_syntax_validation gclient config to easily whitelist builders (phajdan.jr@chromium.org)
  https://crrev.com/56038f517d54e0fe69a81db23c26ff9eb873d73b rename example.py -> examples/full.py for all modules (iannucci@chromium.org)
recipe_engine:
  https://crrev.com/8ff178b2ec0c099d49ecb1df1c411f487c6bc657 [context] simplify step context implementation (iannucci@chromium.org)
  https://crrev.com/d878bba594c81c7ba4cc16b8bf078097b00a102d [recipe_modules/file] add real file module to engine. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I79343c4eb4f53e7192ba1429c7551d5735f40ab6
Reviewed-on: https://skia-review.googlesource.com/18440
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2017-06-01 19:44:06 +00:00
Lee Salzman
a836267029 fix premultiplied color generation in linear gradients when using fApplyAlphaAfterInterp
BUG=skia:

Change-Id: I771797498f60313022cd3a9e53037e98b3b3590b
Reviewed-on: https://skia-review.googlesource.com/17818
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-06-01 19:39:45 +00:00
Mike Klein
5df94d508e have shaders that need seed_shader call it themselves
This ought to make compose shader and our sprite blitter a bit more
efficient.  Compose shader can simply re-seed instead of saving the
xy values off to a buffer.  The sprite blitter doesn't need xy at all.

Change-Id: Ib4b3509288810f74a4c8e2978ce2ca14d8644980
Reviewed-on: https://skia-review.googlesource.com/18405
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-01 19:23:10 +00:00
recipe-roller
e0f7e164ee Roll recipe dependencies (nontrivial).
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).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/fc1c6f4c1fac4de7647da83425f4398dde6e77ca Correct Git show's path format on Windows (manzagop@chromium.org)
recipe_engine:
  https://crrev.com/458ce956c9d91d184e0107c5fa6b34a8267b8e9b [step_runner] run _merge_envs in simulation too. (iannucci@chromium.org)


R=martiniss@chromium.org, tansell@chromium.org

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic938b59f304189fdfb78a466e6a4a0e47f0548a6
Reviewed-on: https://skia-review.googlesource.com/18300
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Robbie Iannucci <iannucci@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-06-01 19:21:14 +00:00
Mike Klein
9b10f8ff0d plumb y through to SkJumper
There'll still be a little more refactoring after this, but this is the
main thing we want to do.

This makes y available in a general-purpose register in pipeline stages,
just like x.  Stages that need y (seed_shader and dither) can just use
it rather than pulling it off a context pointer.  seed_shader loses its
context pointer, and dither's gets simpler.

Change-Id: Ic2d1e13b03fb45b73e308b38aafbb3a14c29cf7f
Reviewed-on: https://skia-review.googlesource.com/18383
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-01 18:08:25 +00:00
Joe Gregorio
97b10ac484 [fiddle] Report GL driver info.
Bug: skia:
Change-Id: I5338d6abef062f7da420e8cddafa082bedcfff25
Reviewed-on: https://skia-review.googlesource.com/18310
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2017-06-01 18:03:45 +00:00
Brian Osman
842a560470 Revert "Expand texturability testing to cover mip-mapped textures, and fix iOS"
This reverts commit c2b5175e99.

Reason for revert: Nexus 5

Original change's description:
> Expand texturability testing to cover mip-mapped textures, and fix iOS
> 
> Don't allow creation of mip-mapped textures when caps says we don't
> support mip-mapping.
> 
> Skip testing of mip-mapped resources in the resource size test,
> when creation will fail.
> 
> For iOS devices with ES2, the APPLE BGRA8888 extension is more
> trouble than it's worth. Even though it lets the internal and
> external formats not match, it appears that the driver remembers
> the first external format, so subsequent attempts to upload with
> the other swizzle will fail. Up until now, creation of these
> textures was failing anyway, so now just make it more explicit
> that we don't support BGRA in this situation.
> 
> Re-land of: https://skia-review.googlesource.com/18261
> 
> BUG=skia:
> 
> Change-Id: I910ffab0aa735647dce910d9054696c385f94933
> Reviewed-on: https://skia-review.googlesource.com/18382
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
BUG=skia:

Change-Id: I8f0fd87678cc584ad37b2a93a859bd4ef38c8092
Reviewed-on: https://skia-review.googlesource.com/18401
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-06-01 18:00:41 +00:00
Brian Osman
c2b5175e99 Expand texturability testing to cover mip-mapped textures, and fix iOS
Don't allow creation of mip-mapped textures when caps says we don't
support mip-mapping.

Skip testing of mip-mapped resources in the resource size test,
when creation will fail.

For iOS devices with ES2, the APPLE BGRA8888 extension is more
trouble than it's worth. Even though it lets the internal and
external formats not match, it appears that the driver remembers
the first external format, so subsequent attempts to upload with
the other swizzle will fail. Up until now, creation of these
textures was failing anyway, so now just make it more explicit
that we don't support BGRA in this situation.

Re-land of: https://skia-review.googlesource.com/18261

BUG=skia:

Change-Id: I910ffab0aa735647dce910d9054696c385f94933
Reviewed-on: https://skia-review.googlesource.com/18382
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-06-01 17:11:42 +00:00
Mike Klein
761d27c4d7 update SkRasterPipeline::run() to also take y
y isn't used yet.  This is just a warmup that updates the callers.

Change-Id: I78f4f44e2b82f72b3a39fa8a8bdadef1d1b8a99e
Reviewed-on: https://skia-review.googlesource.com/18381
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-06-01 17:05:13 +00:00
Matt Sarett
d16084ffdc Better image for copyTo4444 test
This one produces noticeable differences if we fail to dither.

Bug:720105
Change-Id: I208d0c8147f4cca1b484f2f55edc09ce1bef2dcb
Reviewed-on: https://skia-review.googlesource.com/18036
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-06-01 17:01:53 +00:00
Brian Osman
c674e26950 Revert "Expand texturability testing to cover mip-mapped textures, and fix iOS"
This reverts commit 9f6f41b01b.

Reason for revert: Command Buffer and ANGLE failures.

Original change's description:
> Expand texturability testing to cover mip-mapped textures, and fix iOS
> 
> Don't allow creation of mip-mapped textures when caps says we don't
> support mip-mapping.
> 
> Skip testing of mip-mapped resources in the resource size test,
> when creation will fail.
> 
> For iOS devices with ES2, the APPLE BGRA8888 extension is more
> trouble than it's worth. Even though it lets the internal and
> external formats not match, it appears that the driver remembers
> the first external format, so subsequent attempts to upload with
> the other swizzle will fail. Up until now, creation of these
> textures was failing anyway, so now just make it more explicit
> that we don't support BGRA in this situation.
> 
> BUG=skia:
> 
> Change-Id: Ic2e3ba1673398d542edd46a555ef47b5d0979c01
> Reviewed-on: https://skia-review.googlesource.com/18261
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
BUG=skia:

Change-Id: I68f6bb3be9fbafa7366ef5611a12e372274aa648
Reviewed-on: https://skia-review.googlesource.com/18380
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-06-01 16:22:44 +00:00
Florin Malita
69270fbb2b Add smartptr SkRWBuffer snapshot methods
Change-Id: Id816a38213a86bf090230ebaaef00d98a9487965
Reviewed-on: https://skia-review.googlesource.com/18266
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-06-01 16:00:45 +00:00
Robert Phillips
a16f6cb40a Update copyOp to split-opList world
Change-Id: Ib18fc0a589185b11b21241e50acb7b506c44bfac
Reviewed-on: https://skia-review.googlesource.com/17325
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-06-01 15:33:12 +00:00