aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Split srgb out of accum stages.Gravatar Mike Klein2016-11-28
| | | | | | | | | | | | | | | | | | By stashing the scales in the context (i.e. on the stack), we can free up enough registers to really simplify how the bitmap sample stages interact. Nearest neighbor is straightforward now: just call the appropriate gather_ function, and you're done. The source pixels end up in the source registers. If they're sRGB encoded, follow up with from_srgb_s To bilerp, we bracket those 1 or 2 gather+from_srgb_s stages with a stage setting up each corner (x += dx, y += dy, save off scale) and a stage that accumulates into the d-registers (load saved scale, dr += scale * r, etc.). When all the samples are accumulated, copy the d-registers into the s-registers. from_srgb_d and to_srgb are lightly sketched here and will be used in the next CL, where I apply this same factoring to non-bitmap loads and stores. This is a little tricky, because we don't actually have a float->float to_srgb yet. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I272a1f278f0ea1b29a2f07ac225f753faa8dae81 Reviewed-on: https://skia-review.googlesource.com/5271 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fuzzer fix for overflow in some Lut8 profiles.Gravatar raftias2016-11-28
| | | | | | | | | | | | | Bug(?) in the tetrahedral interpolation causes output values to go out of range a bit (1.035/1.0) in the upper range. We will just clamp for now as a temporary fix. BUG=668784 Change-Id: I78dd90da7174133e647b1c6c6e914dbde5de123c Reviewed-on: https://skia-review.googlesource.com/5228 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Robert Aftias <raftias@google.com>
* Fix unpremul stage.Gravatar Mike Klein2016-11-28
| | | | | | | | | | | | | | | | | | The existing invert() logic explodes when a == 0. Less terribly, invert() also does not turn 1.0f into 1.0f, so we now use a float divide. This will cause a small diff in the matrix color filter GM due to increased unpremul precision. There's an alternative to try if this stage turns out to be speed critical: auto scale = (a == 0.0f).thenElse(0.0f, a.invert() * (1.0f / SkNf(1.0f).invert())); The (1.0f / SkNf(1.0f).invert()) bit there is a constant, scaling a bit to make 1.0f produce 1.0f. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I9db72eda108d3d28583a4357f90a0dcd7e4d8a6f Reviewed-on: https://skia-review.googlesource.com/5227 Reviewed-by: Mike Reed <reed@google.com>
* Add the missing shift to the dyGravatar Yuqian Li2016-11-28
| | | | | | | | | | | BUG=chromium:668907 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5266 Change-Id: I6d3e56ffc149fbeac6f7a2df740542abbf84dac8 Reviewed-on: https://skia-review.googlesource.com/5266 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* GrTextureProducer cleanup, phase two: Producer, Adjuster, MakerGravatar Brian Osman2016-11-28
| | | | | | | | | | | | | | | | Previously: GrTextureProducer, GrTextureAdjuster, and GrTextureMaker were all in GrTextureParamsAdjuster.h. Now they're each in their own header. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5202 Change-Id: I17fa9057b11511aa4d3e15569ea1c378cfec4c80 Reviewed-on: https://skia-review.googlesource.com/5202 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Guard against buggy ucrt\math.h.Gravatar Mike Klein2016-11-28
| | | | | | | | | | | | | | BUG=666707 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5089 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: I3bebfdf635d541d92fb84236f0f6fae2da39d691 Reviewed-on: https://skia-review.googlesource.com/5089 Reviewed-by: Bruce Dawson <brucedawson@google.com> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* baked in a few more precision modifiersGravatar Ethan Nicholas2016-11-28
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5146 Change-Id: If824ddd3551fd50b66e98edc39f10fa60a0560dc Reviewed-on: https://skia-review.googlesource.com/5146 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* Some simple pipeline refactoring.Gravatar Mike Klein2016-11-28
| | | | | | | | | | | | | | | | | | This is a batch of little tweaks that all preserve the existing logical behavior: - rename dst to move_dst_src to parallel move_src_dst - remove unused swap_src_dst - move swap_rb up with the other utility stages - factor out from_8888() to parallel from_565() and from_4444() - factor out gather() from the accum_* stages This changes the order of the math in accum_8888[_srgb] ever so slightly, from (scale * C) * (1/255.0f) to scale * (1/255.0f * C). It causes a few pixel diffs, but nothing noticeable. This makes the 8888 bilerp logic consistent with the other formats, which all convert to [0,1] float first before being scaled. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: Id37857b91be3086565169dcc9b1a537574e532aa Reviewed-on: https://skia-review.googlesource.com/5226 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* GrTextureProducer cleanup, phase one: Bitmap and Image makersGravatar Brian Osman2016-11-28
| | | | | | | | | | | | | | | Split these into their own files, and actually name the files after the classes they contain. The top three classes in the hierarchy still need attention, but those are going to be trickier. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5195 Change-Id: I295f4d50e35748eac38a31f302e14b5b62653c55 Reviewed-on: https://skia-review.googlesource.com/5195 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* don't rely on canvas being reference countedGravatar Mike Reed2016-11-28
| | | | | | | | | | BUG=skia: Change-Id: Ibb9feeabd305fa53dcba69c7a383ed8efa7df3bc Reviewed-on: https://skia-review.googlesource.com/5264 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Update PIEXGravatar Yujie Qin2016-11-28
| | | | | | | | | | | | BUG=32591644 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5240 Change-Id: I0ff3e24ed154a2338808d29ed91536eb6bf98641 Reviewed-on: https://skia-review.googlesource.com/5240 Reviewed-by: Anton Daubert <adaubert@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Leon Scroggins <scroggo@google.com>
* [nobuildbot] Mac botsGravatar Eric Boren2016-11-28
| | | | | | | | BUG=skia: Change-Id: I089a21941b65d4bb53e803c4d5081b26bda30f14 Reviewed-on: https://skia-review.googlesource.com/5210 Reviewed-by: Ben Wagner <benjaminwagner@google.com>
* Update SKP versionGravatar UpdateSKPs2016-11-27
| | | | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR=update-skps@skia.org NO_MERGE_BUILDS Change-Id: Ib3ea1f88ec5aaf0e11e23c127191653701a0793b Reviewed-on: https://skia-review.googlesource.com/5219 Reviewed-by: update-skps <update-skps@skia.org> Commit-Queue: update-skps <update-skps@skia.org>
* Fix gpu blurring on platforms that "useDrawInsteadOfClear"Gravatar Robert Phillips2016-11-25
| | | | | | | | | | | | | | | | Platforms that "useDrawInsteadOfClear" take a different path in GrRenderTargetContext::internalClear. The different path involves a lot of comparisons of the drawn rect with the bounds of the RenderTarget. Since the RenderTargets are now deferred (and the instantiated version might be larger than the proxied size) case must be taken in prematurely optimizing away clears and draws. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5148 TBR=bsalomon@google.com Change-Id: If63b6393fb66328175bc92de211e7242e903f25e Reviewed-on: https://skia-review.googlesource.com/5148 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* External image generator API: return an SkPixmap instead of SkImageGravatar Florin Malita2016-11-25
| | | | | | | | | | | | R=reed@google.com BUG=skia:5806 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5134 Change-Id: Ib0215f63b67f4d5b619ebe1f1b70c7d95e604871 Reviewed-on: https://skia-review.googlesource.com/5134 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* hide accessBitmap from g3Gravatar Mike Reed2016-11-24
| | | | | | | | | BUG=skia: Change-Id: I00e8121751e640ee3b449d27b6ccfcc1491964a7 Reviewed-on: https://skia-review.googlesource.com/5224 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "make it illegal to include SkXfermode.h""Gravatar Mike Reed2016-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e9d1b299ccbf8017ba57040986ded638f954684a. Reason for revert: <INSERT REASONING HERE> Original change's description: > Revert "make it illegal to include SkXfermode.h" > > This reverts commit 07764cefbb18041a77897df3453903b0a2016583. > > Reason for revert: breaking google3 > > Original change's description: > > make it illegal to include SkXfermode.h > > > > BUG=skia: > > > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5133 > > > > Change-Id: I6e8596dcb17cd7e8efa67859bb682bf9bfcac4db > > Reviewed-on: https://skia-review.googlesource.com/5133 > > Reviewed-by: Mike Reed <reed@google.com> > > Commit-Queue: Mike Reed <reed@google.com> > > > > TBR=reed@google.com,reviews@skia.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Change-Id: I136f9e533eb60633c49dffa19b5747d50b6d98a8 > Reviewed-on: https://skia-review.googlesource.com/5196 > Commit-Queue: Greg Daniel <egdaniel@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> > TBR=egdaniel@google.com,reviews@skia.org,reed@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I0b767ce778a4ade83c2f07d5ece486bb46d7712c Reviewed-on: https://skia-review.googlesource.com/5223 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* remove xfermode flag (again) for g3Gravatar Mike Reed2016-11-23
| | | | | | | | | | BUG=skia: Change-Id: Ib6842553ff5e8b3003769ac352287dc0e0f7e691 NOTRY=True Reviewed-on: https://skia-review.googlesource.com/5222 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Reed <reed@google.com>
* Update SKP versionGravatar UpdateSKPs2016-11-23
| | | | | | | | | | | | Automatic commit by the RecreateSKPs bot. TBR=update-skps@skia.org NO_MERGE_BUILDS Change-Id: Ie281be52f150f3380090d91a83ed8f51afe58e4a Reviewed-on: https://skia-review.googlesource.com/5215 Reviewed-by: update-skps <update-skps@skia.org> Commit-Queue: update-skps <update-skps@skia.org>
* [GN] Create a non-null default native GL interface on iOS.Gravatar Chinmay Garde2016-11-23
| | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5212 Change-Id: Ie59cd79687af9eb2530fab8089477c1702e4badc Reviewed-on: https://skia-review.googlesource.com/5212 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* A few bug fixes for SkOverdrawCanvasGravatar Matt Sarett2016-11-23
| | | | | | | | | | | | | | | | (1) Use SkNWayCanvas to pass through non-draw canvas calls. (2) Do not count overdraw on the initial canvas clear. (3) Avoid counting overdraw for transparent lattice regions. (4) Respect some properties of input paint. BUG:32370375 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5150 Change-Id: I8fe6b9df7247d637c710628aefdfee82a61048c2 Reviewed-on: https://skia-review.googlesource.com/5150 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
* [nobuildbot] Remaining (non-CT) Linux botsGravatar Eric Boren2016-11-23
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5187 Change-Id: Ibce633b602623510f3c43cca2862a97b41d45b52 Reviewed-on: https://skia-review.googlesource.com/5187 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Eric Boren <borenet@google.com>
* Fix is_trybot for no-buildbot botsGravatar Eric Boren2016-11-23
| | | | | | | | | | | | | | | | This was breaking gold/perf trybot results for no-buildbot bots. Note that: - Upload destination was correct, due to upload_nano_results using the correct property names. - Patches were properly applied, since bot_update uses the properties independently of our logic. BUG=skia: Change-Id: I16f2e2d24d4602dc73233784d098f00b745e061a Reviewed-on: https://skia-review.googlesource.com/5201 Reviewed-by: Ravi Mistry <rmistry@google.com> Commit-Queue: Eric Boren <borenet@google.com>
* Do not use post upload hooks for 'GOLD_TRYBOT_URL'Gravatar Ravi Mistry2016-11-23
| | | | | | | | | | | | | That information will be provided via a plugin soon. # This code is not exercised by trybots. NOTRY=true BUG=skia:6000 Change-Id: I6ea60783c0581e32317a781e4349e95b38b71da0 Reviewed-on: https://skia-review.googlesource.com/5207 Commit-Queue: Ravi Mistry <rmistry@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* Revert "make it illegal to include SkXfermode.h"Gravatar Greg Daniel2016-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 07764cefbb18041a77897df3453903b0a2016583. Reason for revert: breaking google3 Original change's description: > make it illegal to include SkXfermode.h > > BUG=skia: > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5133 > > Change-Id: I6e8596dcb17cd7e8efa67859bb682bf9bfcac4db > Reviewed-on: https://skia-review.googlesource.com/5133 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> > TBR=reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I136f9e533eb60633c49dffa19b5747d50b6d98a8 Reviewed-on: https://skia-review.googlesource.com/5196 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* SkImageEncoder: simplify APIGravatar Hal Canary2016-11-23
| | | | | | | | | | | | | | | | | | | | | | | | (re-land 248ff02 & 2cb6cb7, with changes) - Hide SkImageEncoder class in private header. - SkImageEncoder::Type becomes SkEncodedImageFormat - SkEncodedFormat becomes SkEncodedImageFormat - SkImageEncoder static functions replaced with single function EncodeImage() - utility wrappers for EncodeImage() are in sk_tool_utils.h TODO: remove link-time registration mechanism. TODO: clean up clients use of API and flip the flag. TODO: implement EncodeImage() in chromeium/skia/ext Change-Id: I47d451e50be4d5c6c130869c7fa7c2857243d9f0 Reviewed-on: https://skia-review.googlesource.com/4909 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Reviewed-on: https://skia-review.googlesource.com/5186 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Hal Canary <halcanary@google.com>
* Added GrSurfaceContext and GrTextureContextGravatar Brian Osman2016-11-23
| | | | | | | | | | | | | | | | | This lets copy-to-texture to be treated like copy-to-rt. To match current behavior, though, copies to texture are still executed immediately (forcing a flush). Once MDB is enabled, copies to texture will be deferred. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5093 Change-Id: Icc0ce5435507a5f0a237c22eedef879824952367 Reviewed-on: https://skia-review.googlesource.com/5093 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* make it illegal to include SkXfermode.hGravatar Mike Reed2016-11-23
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5133 Change-Id: I6e8596dcb17cd7e8efa67859bb682bf9bfcac4db Reviewed-on: https://skia-review.googlesource.com/5133 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "hide xfermode for g3"Gravatar Greg Daniel2016-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a5b2376365681f3c341bc4ff74bf0caedbfe9359. Reason for revert: breaking google3 Original change's description: > hide xfermode for g3 > > BUG=skia: > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5132 > > Change-Id: I374abc04856e27df718145f9ae57cc83a447ba3e > Reviewed-on: https://skia-review.googlesource.com/5132 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> > TBR=reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I115bc7814d6c96d897b8ae86a917ce2365c6b0b4 Reviewed-on: https://skia-review.googlesource.com/5185 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* [nobuildbot] Migrate all Linux GCE botsGravatar Eric Boren2016-11-23
| | | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4994 Change-Id: Ib63f36b3803117d5357c8e70c572653afd151abe Reviewed-on: https://skia-review.googlesource.com/4994 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Reviewed-by: Ravi Mistry <rmistry@google.com> Commit-Queue: Eric Boren <borenet@google.com>
* hide xfermode for g3Gravatar Mike Reed2016-11-23
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5132 Change-Id: I374abc04856e27df718145f9ae57cc83a447ba3e Reviewed-on: https://skia-review.googlesource.com/5132 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add Gerrit support to RecreateSKPsGravatar Ravi Mistry2016-11-23
| | | | | | | | | | | | | | Tested by modifying Canary builder to upload a CL: https://task-scheduler.skia.org/job/20161122T163246.824881948Z_00000000000039de The above uploaded Gerrit CL: https://skia-review.googlesource.com/c/5140/ BUG=skia:5979 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4889 Change-Id: I5527c9d4219b879d5220136949704ea0fc556f85 Reviewed-on: https://skia-review.googlesource.com/4889 Commit-Queue: Ravi Mistry <rmistry@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* Revert "Initial OpenGL Image support."Gravatar Brian Salomon2016-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit be34882042048db096baca32ddf4a8b472529804. Reason for revert: Test failures and shader compilation issues on Android. Original change's description: > Initial OpenGL Image support. > > This change along with recently landed changes is enough to make the new unit test work and not much else. imageLoad is support but not stores or any other image functions (atomics). Barriers in the shading language or the GL API are not yet hooked up. > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4182 > > Change-Id: I5958b7c89e40ae5ee05f7bbaca3b3738162fe5ce > Reviewed-on: https://skia-review.googlesource.com/4182 > Reviewed-by: Greg Daniel <egdaniel@google.com> > Reviewed-by: Chris Dalton <csmartdalton@google.com> > Commit-Queue: Brian Salomon <bsalomon@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I29a2502c296ae39ed9a999957800414ae46e6f0f Reviewed-on: https://skia-review.googlesource.com/5129 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "Disable error reporting for ImageStorageLoad until it can be debugged"Gravatar Brian Salomon2016-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7befa711d4606aa2a1bcadc3878fcc2be6783fab. Reason for revert: Needed to revert earlier CL Original change's description: > Disable error reporting for ImageStorageLoad until it can be debugged > > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5154 > > Change-Id: Ie8c685441c20c85bdff22d2df5c9c4d9718203f3 > Reviewed-on: https://skia-review.googlesource.com/5154 > Commit-Queue: Brian Salomon <bsalomon@google.com> > Reviewed-by: Greg Daniel <egdaniel@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,csmartdalton@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I19815fcec20dc193e9155f446a3bb0be713dac63 Reviewed-on: https://skia-review.googlesource.com/5128 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Disable error reporting for ImageStorageLoad until it can be debuggedGravatar Brian Salomon2016-11-22
| | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5154 Change-Id: Ie8c685441c20c85bdff22d2df5c9c4d9718203f3 Reviewed-on: https://skia-review.googlesource.com/5154 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Initial OpenGL Image support.Gravatar Brian Salomon2016-11-22
| | | | | | | | | | | | This change along with recently landed changes is enough to make the new unit test work and not much else. imageLoad is support but not stores or any other image functions (atomics). Barriers in the shading language or the GL API are not yet hooked up. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4182 Change-Id: I5958b7c89e40ae5ee05f7bbaca3b3738162fe5ce Reviewed-on: https://skia-review.googlesource.com/4182 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add SkOverdrawColorFilterGravatar Matt Sarett2016-11-22
| | | | | | | | | | | | | | | | | | | Uses the value in the src alpha channel to choose how to set the dst pixel. This is a part of a multi-part change to detect and display gpu overdraw on Android. CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Debug-NoGPU-Trybot BUG:32370375 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5113 Change-Id: I07040929d8a46bbadd499dccec75eebef0e11d11 Reviewed-on: https://skia-review.googlesource.com/5113 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert 248ff023 & 2cb6cb72Gravatar Hal Canary2016-11-22
| | | | | | | | | | | | | | Revert "SkImageEncoder: simplify API" This reverts commit 248ff02331d7f73ee4b6c5a7eabeae1080c16cd4. Revert "Fix bug: can't convert nullptr -> bool" This reverts commit 2cb6cb7218171b357bb5c934f032ba69c7b78401. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5151 NOTRY=true Change-Id: I5f6414392d6545f74db0b5bb50608d04f053a8ec Reviewed-on: https://skia-review.googlesource.com/5151 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Hal Canary <halcanary@google.com>
* 4444 and gray 8Gravatar Mike Klein2016-11-22
| | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5147 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: Id08804803b2bbeab4fa88538491e99e53d5c2efe Reviewed-on: https://skia-review.googlesource.com/5147 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Move GrShaderVar to an appending model for layout qualifiersGravatar Brian Salomon2016-11-22
| | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5144 Change-Id: I05e88961e50bd679cfe5863f413f3ec65bc9fd95 Reviewed-on: https://skia-review.googlesource.com/5144 Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Support sRGB 565.Gravatar Mike Klein2016-11-22
| | | | | | | | | | | | | | | It looks like I'm not going to be able to avoid supporting sRGB G8, I8, 565, 4444, 8888. (A8 and F16 will always be linear.) This fixes 565, and lays out the rest of the accum_*. I did a little reorganization to keep things in ascending bit depth, just for sanity. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5145 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: Ib0508e5a4ee1bab2044a76bcabc367841d634cd2 Reviewed-on: https://skia-review.googlesource.com/5145 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix bug: can't convert nullptr -> boolGravatar Hal Canary2016-11-22
| | | | | | | Change-Id: Ib37c46d00b6a3e768e6d8399f2a6afb332d36bff Reviewed-on: https://skia-review.googlesource.com/5141 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Handle nullptr from asTextureRefGravatar brianosman2016-11-22
| | | | | | | | | | This can fail, if the special image dimensions are larger than the maximum allowable render target dimensions. BUG=chromium:666519 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2520043003 Review-Url: https://codereview.chromium.org/2520043003
* remove SkPixelRef::refEncodedData()Gravatar Hal Canary2016-11-22
| | | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5001 Change-Id: I15dba4f44c762ab69a23eb8a77adff5f63763e30 Reviewed-on: https://skia-review.googlesource.com/5001 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Reed <reed@google.com>
* FuzzDrawFunctions from twsmithGravatar Kevin Lubick2016-11-22
| | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4979 Change-Id: Ib5cc6ea036538b611d6959c679a276050e145f57 Reviewed-on: https://skia-review.googlesource.com/4979 Reviewed-by: Mike Klein <mtklein@chromium.org>
* accum_565 and accum_f16Gravatar Mike Klein2016-11-22
| | | | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5125 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Change-Id: I2e338ae14db0068d9a09e16a0678dd2ee9f97efd Reviewed-on: https://skia-review.googlesource.com/5125 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com>
* Fixed fuzzer issue with lut16Type A2B ICC profilesGravatar raftias2016-11-22
| | | | | | | | | | | | | | There was no check for if a profile had gamma table with 0 elements. Now it verifies that the table has 2-4096 entries as the ICC specs say. BUG=667695 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5124 Change-Id: I36de202e398654ce8dd88e765455b4c4577724d2 Reviewed-on: https://skia-review.googlesource.com/5124 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Robert Aftias <raftias@google.com>
* Fix NoGPU botGravatar Matt Sarett2016-11-22
| | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5126 Change-Id: I34299845b6d20f219722da6a3135070369010555 Reviewed-on: https://skia-review.googlesource.com/5126 Reviewed-by: Matt Sarett <msarett@google.com>
* Add SkOverdrawCanvas to detect overdrawGravatar Matt Sarett2016-11-22
| | | | | | | | | | | | | | | This is the first part of a multi-part change to detect and display gpu overdraw on Android. BUG:32370375 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4907 Change-Id: Ibba9d7343f2fd57397fa1168a5a5b1ef6ef91287 Reviewed-on: https://skia-review.googlesource.com/4907 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Matt Sarett <msarett@google.com>
* SkImageEncoder: simplify APIGravatar Hal Canary2016-11-22
| | | | | | | | | | | | | | | | | | | | | | - Hide SkImageEncoder class in private header. - SkImageEncoder::Type becomes SkEncodedImageFormat - SkEncodedFormat becomes SkEncodedImageFormat - SkImageEncoder static functions replaced with single function EncodeImage() - utility wrappers for EncodeImage() are in sk_tool_utils.h TODO: remove link-time registration mechanism. TODO: clean up clients use of API and flip the flag. TODO: implement EncodeImage() in chromeium/skia/ext GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4909 Change-Id: Ib48b31fdc05cf23cda7f56ebfd67c841c149ce70 Reviewed-on: https://skia-review.googlesource.com/4909 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Hal Canary <halcanary@google.com>