Mike Klein [Mon, 17 Apr 2017 13:52:38 +0000 (09:52 -0400)]
use SkArenaAlloc in SkColorSpaceXform_A2B
I am learning / refactoring this code. To start, I mostly just want to
get all these one-off storage members out of my face.
Testing: out/dm --src colorImage --colorImages images/colorspace/ --config srgb
Change-Id: I40eb0b565eb2ab1ef8975f7a7ba35961cff75a07
Reviewed-on: https://skia-review.googlesource.com/13586
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Reed [Mon, 17 Apr 2017 15:02:51 +0000 (11:02 -0400)]
hide lockpixels api behind flag
guarded by SK_SUPPORT_OBSOLETE_LOCKPIXELS
needs https://codereview.chromium.org/
2820873002/# to land first
Bug: skia:6481
Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09
Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09
Reviewed-on: https://skia-review.googlesource.com/13580
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Reed [Mon, 17 Apr 2017 14:53:29 +0000 (10:53 -0400)]
deprecate odd variants of SkCanvas::readPixels
Bug: skia:6513
Change-Id: I51179a85f0912d3f899c368c30a943d346dd1d05
Reviewed-on: https://skia-review.googlesource.com/13589
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Eric Boren [Mon, 17 Apr 2017 14:29:04 +0000 (10:29 -0400)]
RecreateSKPs: Use api.run instead of api.step
This gets us the default env, which includes the missing depot_tools.
NOTRY=true
Bug: skia:
Change-Id: Idc6f9c426eb88c36d8c5d9c9bf9568a9414d61a6
Reviewed-on: https://skia-review.googlesource.com/13587
Reviewed-by: Ravi Mistry <rmistry@google.com>
Mike Klein [Fri, 7 Apr 2017 20:55:09 +0000 (16:55 -0400)]
add a callback stage to SkRasterPipeline
This lets us temporarily escape to piece of code outside
SkRasterPipeline. We should be able to use this to replace
- parametric_{r,g,b,a}
- table_{r,g,b,a}
- color_lookup_table
- shader_adapter*
* We want to obsolete shader_adapter for other reasons anyway,
but we _could_ replace it with this if we want to.
Change-Id: I42b657b3c19c679796ed1876856cae0c8471307e
Reviewed-on: https://skia-review.googlesource.com/12102
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Robert Phillips [Mon, 17 Apr 2017 11:53:07 +0000 (07:53 -0400)]
Remove lastOpList capability from GrSurface
This is split out of: https://skia-review.googlesource.com/c/11581/ (Split up opLists)
TBR=bsalomon@google.com
Change-Id: I80d589b42918ddd77538484c808b069576691da4
Reviewed-on: https://skia-review.googlesource.com/11793
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Robert Phillips [Mon, 17 Apr 2017 11:43:27 +0000 (07:43 -0400)]
Reduce read/write-SurfacePixels call sites (take 2)
Reland of: https://skia-review.googlesource.com/c/13068/ (Reduce read/write-SurfacePixels call sites)
TBR=brianosman@google.com
Change-Id: I035b9fc2feab5fa443570ca54fbb0df8c9382cb3
Reviewed-on: https://skia-review.googlesource.com/13582
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Eric Boren [Mon, 17 Apr 2017 11:50:20 +0000 (07:50 -0400)]
Make RecreateSKPs use the Go CIPD asset
NOTRY=true
Bug: skia:
Change-Id: I21212b62cd068bd722598fe8daadf184c87785df
Reviewed-on: https://skia-review.googlesource.com/13583
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Mike Reed [Sun, 16 Apr 2017 02:08:14 +0000 (22:08 -0400)]
remove unused mutex from pixelref
Bug: skia:6481
Change-Id: I4f2696b947c735157a38bc0810f3cebbb18c9d77
Reviewed-on: https://skia-review.googlesource.com/13581
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Matt Sarett [Wed, 12 Apr 2017 20:26:21 +0000 (16:26 -0400)]
SkPictureImageFilter::onMakeColorSpace()
Improves gm/recordopts.
Does not break gm/pictureimagefilter or gm/fastfilterbounds.
Bug: skia:
Change-Id: I67c8f02a9548bf751350dfa3c7029dd59b8a2d1d
Reviewed-on: https://skia-review.googlesource.com/13276
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Michael Jurka [Sat, 15 Apr 2017 00:44:09 +0000 (17:44 -0700)]
Set build vars for Vulkan backend on Fuchsia.
BUG=skia:
Change-Id: I355209a170ad8930a59cf91d584f40de82f51b92
Reviewed-on: https://skia-review.googlesource.com/13563
Reviewed-by: Forrest Reiling <freiling@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Reed [Fri, 14 Apr 2017 21:16:36 +0000 (17:16 -0400)]
remove lock tracking in bitmaps -- they are always locked
Bug: skia:6481
Change-Id: I551c9fd5cdf1ea99fc62042d24d638a1021c348d
Reviewed-on: https://skia-review.googlesource.com/13473
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Matt Sarett [Fri, 14 Apr 2017 16:41:55 +0000 (12:41 -0400)]
getDeferredTextureImageData(): use legacy scaling in legacy mode
Bug:709341
Change-Id: I0dc1dcc3874f9741e0303e376a0ad4a68cd8b03e
Reviewed-on: https://skia-review.googlesource.com/13500
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Herb Derby [Fri, 14 Apr 2017 18:51:27 +0000 (14:51 -0400)]
Remove dangerous constructor from SkArenaAlloc
Make the constructors for SkArenaAlloc unambiguous.
TBR=mtklein@google.com
Change-Id: Iaa6419574e78e17bf746f5f9bcdf99c9d6c9d727
Reviewed-on: https://skia-review.googlesource.com/13540
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Cary Clark [Fri, 14 Apr 2017 18:29:33 +0000 (14:29 -0400)]
fix scan converter arena alloc
Removing the 16K alloc sped up pathops_unittest -x -V
Release on Windows 7; time went from 14 minutes to 4.
R=herb@google.com
BUG=skia:6509
Change-Id: If43c9ad6745961e0079a7f4f6560c6fa2a7847ef
Reviewed-on: https://skia-review.googlesource.com/13507
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Mike Klein [Fri, 14 Apr 2017 16:53:06 +0000 (12:53 -0400)]
skirt std::chrono on MSAN builds
I don't know why, but only std::chrono's calls to clock_gettime() seem
to be affected by this MSAN bug. Other calls into libc++ that call
libc, like std::to_string(int) calling snprintf, work fine.
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN
BUG=skia:6504
Change-Id: I73fbe8793d2b5b5cca46ed68fb078a77d8748127
Reviewed-on: https://skia-review.googlesource.com/13502
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Ben Wagner [Thu, 13 Apr 2017 15:02:50 +0000 (11:02 -0400)]
Symmetric rendering when >20px with DirectWrite.
If the font has a gasp table use it to determine symmetric. Otherwise,
use symmetric if the the font isn't hinted or is >20px. The remaining
cases use non-symmetric.
BUG=chromium:706792,skia:6432
Change-Id: I91b66a9615aae27c195e1545298a9d36bc58a705
Reviewed-on: https://skia-review.googlesource.com/11400
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Ben Wagner [Fri, 14 Apr 2017 15:39:34 +0000 (11:39 -0400)]
Fix advances for aliased text with DirectWrite.
The existing code assumes that GetGdiCompatibleGlyphMetrics transform
parameter acts the same as the GetGlyphOutlineW lpmat2 parameter.
However, it appears this is very much not true.
BUG=skia:6499
Change-Id: I88c762b27acd09cc746da4d6e2b901540876908a
Reviewed-on: https://skia-review.googlesource.com/13479
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Robert Phillips [Fri, 14 Apr 2017 17:56:08 +0000 (17:56 +0000)]
Revert "Reduce read/write-SurfacePixels call sites"
This reverts commit
74d5a1470378dc7dae9eec38d46f9f802fc5c249.
Reason for revert: erg
Original change's description:
> Reduce read/write-SurfacePixels call sites
>
> Change-Id: I657c489c56b93765567be69076fb4c3d526e55a5
> Reviewed-on: https://skia-review.googlesource.com/13068
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>
TBR=robertphillips@google.com,brianosman@google.com,egdaniel@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: If80f36ddae9d695ee2e5413f3eb49a1f5c32f8a4
Reviewed-on: https://skia-review.googlesource.com/13506
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Robert Phillips [Fri, 14 Apr 2017 16:51:55 +0000 (12:51 -0400)]
Reduce read/write-SurfacePixels call sites
Change-Id: I657c489c56b93765567be69076fb4c3d526e55a5
Reviewed-on: https://skia-review.googlesource.com/13068
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Kevin Lubick [Fri, 14 Apr 2017 15:13:21 +0000 (11:13 -0400)]
Add jobs for Samsung Chromebook XE303C12
Bug: skia:6507
NOTRY=true
Change-Id: I957a72d496ff521972fbc505fcb85cb30c019a93
Reviewed-on: https://skia-review.googlesource.com/13477
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Robert Phillips [Thu, 13 Apr 2017 16:23:54 +0000 (12:23 -0400)]
sk_sp-ify opList creation & storage
Change-Id: Idd4d81cd248ad2b2169028ac2e269a66c9cad26b
Reviewed-on: https://skia-review.googlesource.com/13400
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Hal Canary [Wed, 5 Apr 2017 19:12:45 +0000 (15:12 -0400)]
tools/check-headers-self-sufficient: optionally test one file at a time
Change-Id: Ie7703e9b6abb7229cd8c2dbcdf305fa4240f416c
Reviewed-on: https://skia-review.googlesource.com/11385
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Matt Sarett [Fri, 14 Apr 2017 15:06:09 +0000 (11:06 -0400)]
Add documentation for color correct skia to website
BUG=skia:
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=10043
Change-Id: I025bf296518470dd2d5f62d7024a0f5d0fcc91c4
Reviewed-on: https://skia-review.googlesource.com/10043
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Chris Dalton [Thu, 13 Apr 2017 20:26:00 +0000 (14:26 -0600)]
Improve accuracy of cubic classification
- Updates the logic to reflect the Loop-Blinn paper instead of the GPU
gems website.
- Removes the threshold for detecting local cusps. The serpentine
codepath works for these cusps anyway, so what we really want to know
is whether the discriminant is negative.
- Makes sure to not scale the inflection function by 1/0.
- Shifts the inflection function coefficients in d[] so they match the
paper.
- Stores the cubic discriminant in d[0].
Bug: skia:
Change-Id: I909a522a0fd27c9c8dfbc27d968bc43eeb7a416f
Reviewed-on: https://skia-review.googlesource.com/13304
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Ravi Mistry [Fri, 14 Apr 2017 14:27:00 +0000 (10:27 -0400)]
Add documentation for android-o-roll.skia.org
BUG=skia:6438
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=13475
Change-Id: I7d76d66b9b665fafc5c89bd4620517ebb9d2b076
Change-Id: I7d76d66b9b665fafc5c89bd4620517ebb9d2b076
Reviewed-on: https://skia-review.googlesource.com/13475
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Cary Clark [Fri, 14 Apr 2017 11:46:07 +0000 (07:46 -0400)]
fix pathops_unittest test strings
Using std::string is tons faster than SkString;
multiple callers to std::string don't run into
thread contention but SkString does.
R=csmartdalton@google.com
Change-Id: I0357c6a9c73856bfffbb76e65c275acdfe7d8159
Reviewed-on: https://skia-review.googlesource.com/13471
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
Matt Sarett [Fri, 14 Apr 2017 13:23:45 +0000 (09:23 -0400)]
Let region decoders query the type and color space
b/
36905374, b/
32984164
Test: CtsGraphicsTestCases
Written by: romainguy@
Change-Id: Ief4bba6ec3cd3446224199d05f06ffcffaaa72b5
Reviewed-on: https://skia-review.googlesource.com/13472
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Brian Osman [Thu, 13 Apr 2017 17:40:29 +0000 (13:40 -0400)]
Do non-deterministic FP opt testing on all bots
Bug: skia:6395
Change-Id: Ic5065bfc91cac83495836cd6d2a7cc059423c96e
Reviewed-on: https://skia-review.googlesource.com/13412
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Mike Klein [Thu, 13 Apr 2017 21:37:38 +0000 (17:37 -0400)]
refine .type ...,%function
.type is an ELF thing, not understood by Mach.
So do the same sort of #define trick we do for HIDDEN.
This expands the use of .type ...,%function to everywhere
that supports it, rather than just where we needed it.
Feels cozier this way.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-arm-Debug-iOS,Build-Mac-Clang-arm-Release-iOS,Test-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Release,Test-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Debug
Change-Id: Iaff01b0f3f70ceedf743d7a553915792cdd7e569
Reviewed-on: https://skia-review.googlesource.com/13469
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Heather Miller [Thu, 13 Apr 2017 20:47:16 +0000 (16:47 -0400)]
Update Skia milestone to 60
BUG=skia:
Change-Id: I1354ff96f5ff62c02af1d9cf39f0a971da077b17
Reviewed-on: https://skia-review.googlesource.com/13465
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
Mike Klein [Thu, 13 Apr 2017 20:12:24 +0000 (16:12 -0400)]
jumper, explicitly tag functions as functions
This helps the linker decide to rewrite bl -> blx when linking
Thumb2 SkJumper.o code with ARM SkJumper_generated.o.
The reason Android wasn't failing is because it somehow figured
out to do this without these .type directives. We use a different
toolchain for ChromeOS builds that I guess needs more handholding.
BUG=skia:6471
CQ_INCLUDE_TRYBOTS=skia.primary:Test-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Release,Test-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Debug
Change-Id: I4a5c50b6ab7683512776c70aec6e9a75a0999787
Reviewed-on: https://skia-review.googlesource.com/13464
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Reed [Thu, 13 Apr 2017 20:02:22 +0000 (16:02 -0400)]
remove code directly involved in lock/unlock in SkPixelRef
Bug: skia:6481
Change-Id: I3c301ad42b082e04e233aa32d77862036fe998fa
Reviewed-on: https://skia-review.googlesource.com/13463
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Reed [Thu, 13 Apr 2017 19:13:36 +0000 (15:13 -0400)]
make picture-imagegenerator more robust on requested infos
This new unittest would assert before this fix.
Bug: skia:6501
Change-Id: I351ad03f29bccc054f72bfcb838174830dbd008c
Reviewed-on: https://skia-review.googlesource.com/13413
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Brian Osman [Thu, 13 Apr 2017 18:03:57 +0000 (14:03 -0400)]
Further unify logic in readSurfacePixels and writeSurfacePixels
Hoist simple failure checks to the beginning, apply logic in the same
sequence in both functions. Factor out some common logic. Remove redundant
checking inside other helper functions (that are only used from here).
I'm inching towards better sRGB and color-conversion support in these
functions, but I don't want that intertwined with the legacy premul
software fallback. Next step is probably to diverge at the top-level,
and keep the current code as "legacy" versions, with new versions that
don't have the fallback logic, only used for configs and color space
scenarios where it doesn't matter.
Bug: skia:5853
Change-Id: I327be5f0186a16ceda9440670fb0646acaef7766
Reviewed-on: https://skia-review.googlesource.com/13337
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Herb Derby [Mon, 10 Apr 2017 15:25:30 +0000 (11:25 -0400)]
Move GrAtlasGlyphCache over to SkArenaAlloc from SkVarAlloc.
Change-Id: Ibeee7235d30c68be9fd4f68ecf30a65c7ecb78f5
Reviewed-on: https://skia-review.googlesource.com/13020
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Mike Klein [Thu, 13 Apr 2017 16:35:29 +0000 (12:35 -0400)]
c100p bots: put a bandaid on broken Thumb
BUG=skia:6471
CQ_INCLUDE_TRYBOTS=skia.primary:Test-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Release,Test-ChromeOS-Clang-Chromebook_C100p-GPU-MaliT764-arm-Debug
Change-Id: I3faa28c69510fbb33d40abbfb59bf3a7ba5ddb77
Reviewed-on: https://skia-review.googlesource.com/13407
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Reed [Thu, 13 Apr 2017 18:02:31 +0000 (14:02 -0400)]
remove old-pixelref-api flag from android
call sites have been updated in master
Bug: skia:6481
Change-Id: I7f341cb511126a71fe3077bed3eaa55dc7ff76c3
Reviewed-on: https://skia-review.googlesource.com/13440
Reviewed-by: Mike Reed <reed@google.com>
Mike Klein [Thu, 13 Apr 2017 16:24:53 +0000 (12:24 -0400)]
disable this test on NoGPU bots
It fails at line 336:
REPORTER_ASSERT(reporter, configs[i]->getBackend().equals(expectedConfigs[i].backend));
Change-Id: Iab71162b9d7b5454d200cb373026992eac92adf8
Reviewed-on: https://skia-review.googlesource.com/13406
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Eric Boren [Thu, 13 Apr 2017 14:22:11 +0000 (10:22 -0400)]
Add infra/bots/Makefile to simplify test/train
eg.
$ make test
or
$ make train
Update docs accordingly.
Bug: skia:
Change-Id: I069fa686833f0a78f398bd85eb8bb44025cae0d5
Reviewed-on: https://skia-review.googlesource.com/13327
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Mike Klein [Thu, 13 Apr 2017 16:20:21 +0000 (12:20 -0400)]
make ShadowUtils unit test pass on no-GPU builds
It thinks it should fail, but it doesn't.
Change-Id: Ie97f57dd7a9040a817b59186b2f8fa704bdda3e9
Reviewed-on: https://skia-review.googlesource.com/13404
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Herb Derby [Thu, 13 Apr 2017 16:15:50 +0000 (12:15 -0400)]
Use a simpler method for calculating atan
Change-Id: I675851350c02c85f3f212c214766b3e8a6761dc9
Reviewed-on: https://skia-review.googlesource.com/13402
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
Mike Klein [Thu, 13 Apr 2017 15:55:50 +0000 (11:55 -0400)]
re-disable lld on MSAN bots
When using lld, calls to clock_gettime() end up in the real libc
clock_gettime(). When using ld, calls to clock_gettime() end up in
__interceptor_clock_gettime().
Don't know why yet.
Change-Id: I41f54218eb961e07ed2ef2c37b864e9aeeb49662
Reviewed-on: https://skia-review.googlesource.com/13403
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Eric Boren [Thu, 13 Apr 2017 14:00:43 +0000 (10:00 -0400)]
Change infra recipe module to use the Go asset
Bug: skia:
Change-Id: Ib2fa0b971f201ea2f16afd0467d7882b66b4047c
Reviewed-on: https://skia-review.googlesource.com/13331
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Robert Phillips [Thu, 13 Apr 2017 14:13:16 +0000 (10:13 -0400)]
Remove GrRenderTargetOpList::discard & move functionality to GrRenderTargetContext
Change-Id: If84ffb7b01543a44179837d683c0a4c004e52f63
Reviewed-on: https://skia-review.googlesource.com/13335
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Mike Reed [Thu, 13 Apr 2017 15:06:30 +0000 (11:06 -0400)]
remove dead code around replayClips
Bug: skia:
Change-Id: I208bf41846265524d86f65de660311199fefc158
Reviewed-on: https://skia-review.googlesource.com/13338
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Klein [Thu, 13 Apr 2017 15:15:46 +0000 (11:15 -0400)]
Set skia_enable_gpu=false on MSAN builds.
This should get us past the crash at startup.
The next problem I'd expect to see, if any, should involve HumanizeMS()
and chrono::steady_clock::now().
Change-Id: I14dbe6bedd6939c1a355db8dba74ab0853db7706
Reviewed-on: https://skia-review.googlesource.com/13401
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Greg Daniel [Thu, 13 Apr 2017 13:54:12 +0000 (09:54 -0400)]
Store the GrBackend we are using on GrContext
As we start adding more functionality to external clients and passing
data around, we will need to know what backend we are working with at
a layer higher that GrGpu.
TBR=bsalomon@google.com
Bug: skia:
Change-Id: Ifee527ea0c1046469401a39e0500f84a46bb3081
Reviewed-on: https://skia-review.googlesource.com/13275
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Robert Phillips [Thu, 13 Apr 2017 13:15:47 +0000 (09:15 -0400)]
Make all GrRenderTargetOpList ops store a GrRenderTarget pointer
Change-Id: I39652b4b8b2ba96b5206304dfc51395283c3fe16
Reviewed-on: https://skia-review.googlesource.com/13332
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Mike Klein [Thu, 13 Apr 2017 13:49:02 +0000 (09:49 -0400)]
try -B
Change-Id: I4e03d668197d76feb71113f47bae24fdd2fc6b6f
Reviewed-on: https://skia-review.googlesource.com/13334
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Brian Osman [Wed, 12 Apr 2017 21:07:22 +0000 (17:07 -0400)]
Do sRGB premul/unpremul on the GPU
Previously, the early check would decide that sRGB pixel configs were okay
(because they're 8888-unorm). Then we'd go to make the effect and decide
that we didn't want them to work. This led to the software fallback.
The software fallback was obviously slower, but also doing non-linear
premul/unpremul operations. Eventually, whether or not the premul is
linear should be dictated by the destination color space, but for now,
this is an improvement (and only affects the one GM that tests this
feature).
Bug: skia:
Change-Id: I0cf1ad5a7f552135ac1da728c6db2977652a433b
Reviewed-on: https://skia-review.googlesource.com/13321
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Chris Dalton [Wed, 12 Apr 2017 21:32:53 +0000 (15:32 -0600)]
Access EGL_KHR_fence_sync via eglGetProcAddress
Bug: skia:6497
Change-Id: Icf04de6b1facc94e8c45085575cb45189c6c649c
Reviewed-on: https://skia-review.googlesource.com/13306
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Kevin Lubick [Thu, 13 Apr 2017 12:00:16 +0000 (08:00 -0400)]
Update clang_linux to version 4
Bug: skia:
Change-Id: Iab4fcd7b8f17fa7bf478e879a325759e0c622b1a
Reviewed-on: https://skia-review.googlesource.com/13120
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Mike Reed [Thu, 13 Apr 2017 02:29:00 +0000 (22:29 -0400)]
remove unused fURI from pixelref
Bug: skia:
Change-Id: Ib25569862063b765b823b68ffdc22349a606f940
Reviewed-on: https://skia-review.googlesource.com/13324
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Reed [Wed, 12 Apr 2017 19:11:02 +0000 (15:11 -0400)]
locking methods should only be virtual in legacy mode
However, they should not be pure-virtual, otherwise the client can't migrate to the new
api independent of undef-ing the flag.
Bug: skia:6481
Change-Id: I3c9107b145c4c53297891224946b080ce729f9b0
Reviewed-on: https://skia-review.googlesource.com/13272
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
csmartdalton [Mon, 10 Apr 2017 17:58:17 +0000 (11:58 -0600)]
Fix cubic KLM solving
Fixes calc_inverse_transpose_power_basis_matrix() to look for the
determinant with the largest ABSOLUTE VALUE.
BUG=skia:
Change-Id: I70e26cc7ab9955d2e094fb7581f0ec9f5e0ae2d9
Reviewed-on: https://skia-review.googlesource.com/13081
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Kevin Lubick [Wed, 12 Apr 2017 18:35:53 +0000 (14:35 -0400)]
Add job for Acer chromebook (TegraK1)
Known issue: Nanobench fails with
/home/chronos/user/bin/nanobench: symbol lookup error:
/home/chronos/user/bin/nanobench: undefined symbol: eglCreateSyncKHR
Bug: skia:6468
NOTRY=true
Change-Id: Idb1291c2da835d093826022f4cab4069e28c5964
Reviewed-on: https://skia-review.googlesource.com/13188
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Ben Wagner [Wed, 12 Apr 2017 16:40:45 +0000 (12:40 -0400)]
Add Win IntelHD4400 bot.
Bug: skia:6488
NOTRY=true
Change-Id: Icab4bf478925fb48f7facd6c9883a2753d04aaac
Reviewed-on: https://skia-review.googlesource.com/13191
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Mike Klein [Wed, 12 Apr 2017 16:52:48 +0000 (12:52 -0400)]
jumper, bilinear and bicubic sampling stages
This splits SkImageShaderContext into three parts:
- SkJumper_GatherCtx: always, already done
- SkJumper_SamplerCtx: when bilinear or bicubic
- MiscCtx: other little bits (the matrix, paint color, tiling limits)
Thanks for the snazzy allocator that allows this Herb!
Both SkJumper and SkRasterPipeline_opts.h should be speaking all the
same types now.
I've copied the comments about bilinear/bicubic to SkJumper with little
typo fixes and clarifications.
Change-Id: I4ba7b7c02feba3f65f5292169a22c060e34933c6
Reviewed-on: https://skia-review.googlesource.com/13269
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Greg Daniel [Wed, 12 Apr 2017 17:29:50 +0000 (13:29 -0400)]
Allow including of vulkan.h as a required public api when using vulkan.
Bug: skia:
Change-Id: I3ac382edc12144dcda9ef168f752b14878e0e5ac
Reviewed-on: https://skia-review.googlesource.com/13262
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Mike Reed [Wed, 12 Apr 2017 16:57:07 +0000 (12:57 -0400)]
android-only api to reset the fields of a pixelref
BUG=skia:6494
Change-Id: I97c8a93849a13f0c5fd57c8a150ecc2ce363d8f3
Reviewed-on: https://skia-review.googlesource.com/13250
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Ravi Mistry [Wed, 12 Apr 2017 16:51:05 +0000 (12:51 -0400)]
Update Android autoroller documentation
BUG=skia:5538
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=13266
Change-Id: I76fa8db5ea9916fab2ef0f8058157dac96d52517
Change-Id: I76fa8db5ea9916fab2ef0f8058157dac96d52517
Reviewed-on: https://skia-review.googlesource.com/13266
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Kevin Lubick [Wed, 12 Apr 2017 14:50:18 +0000 (10:50 -0400)]
Add jobs for Samsung Chromebook Plus
Also refactor the cipd package used to compile these, as it can be reused.
Bug: skia:
NOTRY=true
Change-Id: I53cf5b7fdfcb8cafd50791a0beaaf557fafa65c3
Reviewed-on: https://skia-review.googlesource.com/13252
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Cary Clark [Wed, 12 Apr 2017 16:03:15 +0000 (12:03 -0400)]
fix drawDRRect for fuzzer
make assert abort instead
Bug: skia:6450
Change-Id: I23ff51124fa8f069f2c7e5260f800017d7475d46
Reviewed-on: https://skia-review.googlesource.com/13197
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
Mike Klein [Wed, 12 Apr 2017 15:51:11 +0000 (11:51 -0400)]
make all gather_*() use SkJumper_GatherCtx
SkJumper_GatherCtx is a prefix of SkImageShaderContext, so
this is a no-op. It helps to keep things straight, and I
do want to split apart the GatherCtx from a new SamplingCtx.
Change-Id: I9c5f436b096624c2809e1f810e9bcd6c6b00b883
Reviewed-on: https://skia-review.googlesource.com/13264
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Eric Boren [Wed, 12 Apr 2017 14:17:36 +0000 (10:17 -0400)]
Add/edit README files for infra/recipes
Bug: skia:6473
Change-Id: I050df47a5a3f633263f0ca6258e83e96b78d7957
Reviewed-on: https://skia-review.googlesource.com/13123
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Matt Sarett [Wed, 12 Apr 2017 15:52:47 +0000 (11:52 -0400)]
Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local matrix
Fixes cts tests.
b/
37161109
b/
37237678
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN
Bug: skia:
Change-Id: I438b8b17f4c7c5bfcb50dfa22af1ddb97b905088
Reviewed-on: https://skia-review.googlesource.com/13261
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
Matt Sarett [Wed, 12 Apr 2017 15:50:08 +0000 (15:50 +0000)]
Revert "Revert "SkColorSpaceXformer: Preserve local matrix on shaders""
This reverts commit
a50a11c17ed9037d3e60d8319727583dba803cec.
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> Revert "SkColorSpaceXformer: Preserve local matrix on shaders"
>
> This reverts commit
5d884b562828ceb13ccacb71bc4581d2020e62bb.
>
> Reason for revert: Wrong thing to revert
>
> Original change's description:
> > SkColorSpaceXformer: Preserve local matrix on shaders
> >
> > Also, do not drop unknown shaders.
> >
> > Fixes cts tests.
> >
> > b/
37161109
> > b/
37237678
> >
> > Bug: skia:
> > Change-Id: I0fd817a4d6461ede0ccdcb8f3cccb255b646b864
> > Reviewed-on: https://skia-review.googlesource.com/13246
> > Commit-Queue: Matt Sarett <msarett@google.com>
> > Commit-Queue: Mike Klein <mtklein@chromium.org>
> > Reviewed-by: Mike Klein <mtklein@chromium.org>
> >
>
> TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I34e02785ac43a04f8452c458680ea1d6518818a6
> Reviewed-on: https://skia-review.googlesource.com/13258
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>
TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: I2dfac7d41caf0e32d3bb5f3f330fff4970c0545e
Reviewed-on: https://skia-review.googlesource.com/13260
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Matt Sarett [Wed, 12 Apr 2017 15:49:44 +0000 (15:49 +0000)]
Revert "Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local matrix"
This reverts commit
e5efa51b2acc86d1993132348d5b465855a653cc.
Reason for revert: MSAN
Original change's description:
> Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local matrix
>
> Fixes cts tests.
>
> b/
37161109
> b/
37237678
>
> Bug: skia:
> Change-Id: Ida9ac5e4261e8a6b22e8cdc0e585e0e7929dbbfd
> Reviewed-on: https://skia-review.googlesource.com/13249
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
>
TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: I2b78c7b32997344136c784dc77675dafca37565e
Reviewed-on: https://skia-review.googlesource.com/13259
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Matt Sarett [Wed, 12 Apr 2017 15:48:35 +0000 (15:48 +0000)]
Revert "SkColorSpaceXformer: Preserve local matrix on shaders"
This reverts commit
5d884b562828ceb13ccacb71bc4581d2020e62bb.
Reason for revert: <INSERT REASONING HERE>
Original change's description:
> SkColorSpaceXformer: Preserve local matrix on shaders
>
> Also, do not drop unknown shaders.
>
> Fixes cts tests.
>
> b/
37161109
> b/
37237678
>
> Bug: skia:
> Change-Id: I0fd817a4d6461ede0ccdcb8f3cccb255b646b864
> Reviewed-on: https://skia-review.googlesource.com/13246
> Commit-Queue: Matt Sarett <msarett@google.com>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
>
TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: I34e02785ac43a04f8452c458680ea1d6518818a6
Reviewed-on: https://skia-review.googlesource.com/13258
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Mike Klein [Wed, 12 Apr 2017 15:02:44 +0000 (11:02 -0400)]
tidy up ok help
-m, -s, and -w are now vias.
No real need to advertise -h given that if you just run ok with no
arguments it prints the help, but to be friendly accept -h and --help.
Change-Id: Id23936106cfea7d670cf0eb9773a5851055576f1
Reviewed-on: https://skia-review.googlesource.com/13254
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Klein [Wed, 12 Apr 2017 12:35:41 +0000 (08:35 -0400)]
jumper, rgb<->hsl
I've rearranged while porting, I hope making the logic clearer.
Exactly one gm is affected, highcontrastfilter.
The most interesting line is this, from hsl_to_rgb:
F t2 = if_then_else(t < 0.0_f, t + 1.0_f,
I had to write 0.0_f (instead of the usual 0) to force Clang to compare
against a zero register instead of a 16-byte zero constant in memory.
Register pressure is high in hsl_to_rgb, so something must have kicked
in to prefer memory over zeroing a register.
No big deal. It makes the code read more symmetrically anyway.
Change-Id: I1a5ced72216234587760c6f803fb69315d18fae0
Reviewed-on: https://skia-review.googlesource.com/13242
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Leon Scroggins III [Wed, 12 Apr 2017 14:49:52 +0000 (10:49 -0400)]
Add SkCodec methods for individual frames
Add a version of getFrameInfo that returns information about a single
frame, allowing a client to skip creating the entire vector.
Add getFrameCount, for determining the number of frames in the image.
Reimplement std::vector<FrameInfo> getFrameInfo with the new methods.
Updates to the test:
- getFrameInfo(size_t, FrameInfo*) fails before parsing
- Test both versions of getFrameInfo
- Recreate the codec between tests, to test parsing
Change-Id: I77c19087f2f8dcf2c536d80167b18ad1ca96ae94
Reviewed-on: https://skia-review.googlesource.com/13190
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Chris Blume <cblume@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Matt Sarett [Wed, 12 Apr 2017 14:21:30 +0000 (10:21 -0400)]
Fix SkLocalMatrixShader::isAImage() to respect local matrix and image local matrix
Fixes cts tests.
b/
37161109
b/
37237678
Bug: skia:
Change-Id: Ida9ac5e4261e8a6b22e8cdc0e585e0e7929dbbfd
Reviewed-on: https://skia-review.googlesource.com/13249
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Matt Sarett [Wed, 12 Apr 2017 13:19:15 +0000 (09:19 -0400)]
SkColorSpaceXformer: Preserve local matrix on shaders
Also, do not drop unknown shaders.
Fixes cts tests.
b/
37161109
b/
37237678
Bug: skia:
Change-Id: I0fd817a4d6461ede0ccdcb8f3cccb255b646b864
Reviewed-on: https://skia-review.googlesource.com/13246
Commit-Queue: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Matt Sarett [Wed, 12 Apr 2017 13:13:39 +0000 (09:13 -0400)]
Override setDrawFilter() in SkColorSpaceXformCanvas
Fixes cts tests.
b/
37161109
b/
37237678
Bug: skia:
Change-Id: I12d78b631b4056a78cbbb2962144e8cc62eb931a
Reviewed-on: https://skia-review.googlesource.com/13244
Commit-Queue: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Kevin Lubick [Wed, 12 Apr 2017 12:31:48 +0000 (08:31 -0400)]
Re-align tests in recipes with the names of reality
For example, renaming GN_Android to Android
Bug: skia:
Change-Id: Ib71001b3cbecc3d5a0f3bb1bf0cf1f48dc23cfe4
Reviewed-on: https://skia-review.googlesource.com/13182
Reviewed-by: Eric Boren <borenet@google.com>
Kevin Lubick [Mon, 10 Apr 2017 19:08:59 +0000 (15:08 -0400)]
Add docs for downloading prebuilt binaries from CIPD
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=13101
Bug: skia:
Change-Id: Iefa8070c65881ff8c05a3b88aa8385fcc1a427ff
Change-Id: Iefa8070c65881ff8c05a3b88aa8385fcc1a427ff
Reviewed-on: https://skia-review.googlesource.com/13101
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Mike Reed [Wed, 12 Apr 2017 11:40:04 +0000 (07:40 -0400)]
remove pixelref flag from google3
Bug: skia:
Change-Id: I0a67b563fcd29d0d0ee3219754ab4fbc256b75aa
Reviewed-on: https://skia-review.googlesource.com/13227
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Robert Phillips [Tue, 11 Apr 2017 13:09:24 +0000 (09:09 -0400)]
Disable deferred proxies for Chrome branch
Chrome is branching again and Proxy instantiation is still occurring at a bad spot in Skia.
Change-Id: I2f6bed7f1833737aa9bb7fd819ff108cffaeaf1d
Reviewed-on: https://skia-review.googlesource.com/13133
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Mike Reed [Wed, 12 Apr 2017 11:07:35 +0000 (11:07 +0000)]
Revert "Revert "remove unused SkBitmap::copyPixelsTo""
This reverts commit
7bfdfda809e7273d7c962cc62ef9390b5007fb5a.
Reason for revert: google3 has been updated
Original change's description:
> Revert "remove unused SkBitmap::copyPixelsTo"
>
> This reverts commit
0f3fdfacf32261f943dcac5cdfd14475011f40db.
>
> Reason for revert: Blink-headless in Google3 needs an update too.
>
> Original change's description:
> > remove unused SkBitmap::copyPixelsTo
> >
> > Needs https://codereview.chromium.org/
2812853002/ to land first
> >
> > Bug: skia:6465
> > Change-Id: I531e33b2848cd995f20844786ed1a8d34d63fb64
> > Reviewed-on: https://skia-review.googlesource.com/13171
> > 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: I5e7c4b0d05772e4948cb1dffdcc40e095fbdba41
> Reviewed-on: https://skia-review.googlesource.com/13185
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
>
TBR=mtklein@google.com,reviews@skia.org,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Change-Id: Id441cec351fe580cbb00739ca9544aa5276cf16a
Reviewed-on: https://skia-review.googlesource.com/13224
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Reed [Tue, 11 Apr 2017 19:50:02 +0000 (15:50 -0400)]
switch over to no lockPixels in pixelref
Bug: skia:6481
Change-Id: I7c32d2e6dcd4c9cd8aa761ac5c4794c916eb650a
Reviewed-on: https://skia-review.googlesource.com/13193
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Reed [Tue, 11 Apr 2017 19:56:23 +0000 (15:56 -0400)]
clean ups in SkPixelRef
- isLazyGenerated no longer needed
- requestLock does not need a virtual
Bug: skia:4328
Change-Id: I56ab5ee1e10f2a20332eb58464a2a48b487101e6
Reviewed-on: https://skia-review.googlesource.com/13195
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Jim Van Verth [Tue, 11 Apr 2017 19:29:14 +0000 (15:29 -0400)]
Add perspective shadows
Bug: skia:
Change-Id: I1972f85f593828c982ea08143e1ed7eb70345eaa
Reviewed-on: https://skia-review.googlesource.com/10296
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Robert Phillips [Tue, 11 Apr 2017 16:54:57 +0000 (12:54 -0400)]
Remove discard from GrRenderTarget & force it to always go through a RenderTargetContext
This is a bit sloppy in that it ignores some instances where discards were being issued before.
The creation of the temp RTContext in the RenderTarget's discard method was causing an extra split in the opLists.
This is split out of: https://skia-review.googlesource.com/c/10284/ (Omnibus: Remove GrSurface-derived classes from ops)
Change-Id: Ic366d303280635763b0fae238c4df37c04fb8503
Reviewed-on: https://skia-review.googlesource.com/11125
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Hal Canary [Tue, 11 Apr 2017 16:12:02 +0000 (12:12 -0400)]
SkSize can be aggregate-initialized
Previosly, SkSize had a base class, which prevented it.
Also removes unused SkISize::clampNegToZero() and
SkSize::clampNegToZero().
Change-Id: I7b93b42f6f6381c66e294bbedee99ad53c6c3436
Reviewed-on: https://skia-review.googlesource.com/13187
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Matt Sarett [Tue, 11 Apr 2017 15:53:24 +0000 (11:53 -0400)]
Reland: Finish up mip opts: 2x3 and 3x2
Original CL:
https://skia-review.googlesource.com/c/10028
mipmap_build_2048x2047 (2x3):
sRGB Float Impl (old): 82.9ms (reference)
8888 : 12.3ms (reference)
sRGB Before : 61.9ms
sRGB After : 53.1ms
mipmap_build_2047x2048 (3x2):
sRGB Float Impl (old): 65.9ms (reference)
8888 Before : 10.3ms
8888 After : 8.81ms
sRGB Before : 47.8ms
sRGB After : 43.5ms
BUG=skia:
Change-Id: Icf58a857a66102e843ae2585fda8d70c31a2b34d
Reviewed-on: https://skia-review.googlesource.com/13186
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
Mike Klein [Tue, 11 Apr 2017 14:36:48 +0000 (10:36 -0400)]
remove inline allocation in SkRecord
This is part one of many to making SkPicture simpler.
SkMiniPicture covers the really small allocations,
so there's really no reason for us to have these inline allocations.
BUG=skia:6484
Change-Id: I0e27ac747a6b15cf178db9639128fef757bc137b
Reviewed-on: https://skia-review.googlesource.com/13137
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Mike Reed [Tue, 11 Apr 2017 16:03:44 +0000 (12:03 -0400)]
Change bitmapcache to not rely on lockpixels.
The Rec in the cache is the owner of the pixel memory
- discardable or
- malloc
Each external client has a pixelref that just points to those pixels,
and whose destructor will notify the rec.
This eliminates the dependency on lockPixels in pixelref, freeing us
to remove that entirely from pixelref.
Bug: skia:
Change-Id: If45ed0ae202a1211336626364235215253e8aa7c
Reviewed-on: https://skia-review.googlesource.com/10300
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Matt Sarett [Tue, 11 Apr 2017 15:25:37 +0000 (11:25 -0400)]
Blacklist DeferredTextureImage on Win Vulkan IntelIris540
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Release-Vulkan
Bug: skia:
Change-Id: I2e465a4668956d4337ecde4f65081bf22b3b0e7a
Reviewed-on: https://skia-review.googlesource.com/13183
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Mike Klein [Tue, 11 Apr 2017 15:32:33 +0000 (11:32 -0400)]
Make SkLiteDL::draw() const.
Nothing interesting here. Just slapping const all over the place.
BUG=skia:6484
Change-Id: I639001754aca6d129c40e9acddc9b2d3730fed0c
Reviewed-on: https://skia-review.googlesource.com/13184
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Klein [Tue, 11 Apr 2017 14:50:27 +0000 (10:50 -0400)]
make SkRecord normally SkRefCnt'd
SkRecord used SkNVRefCnt to avoid adding a vptr.
SkMiniPicture covers the really small allocations,
so there's really no reason to fret over an extra pointer here.
BUG=skia:6484
Change-Id: Ifa43be8eb352b2d59851c75e6b4f164bb38b5ef6
Reviewed-on: https://skia-review.googlesource.com/13139
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Mike Klein [Tue, 11 Apr 2017 15:37:50 +0000 (15:37 +0000)]
Revert "remove unused SkBitmap::copyPixelsTo"
This reverts commit
0f3fdfacf32261f943dcac5cdfd14475011f40db.
Reason for revert: Blink-headless in Google3 needs an update too.
Original change's description:
> remove unused SkBitmap::copyPixelsTo
>
> Needs https://codereview.chromium.org/
2812853002/ to land first
>
> Bug: skia:6465
> Change-Id: I531e33b2848cd995f20844786ed1a8d34d63fb64
> Reviewed-on: https://skia-review.googlesource.com/13171
> 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: I5e7c4b0d05772e4948cb1dffdcc40e095fbdba41
Reviewed-on: https://skia-review.googlesource.com/13185
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Leon Scroggins III [Tue, 11 Apr 2017 14:32:02 +0000 (10:32 -0400)]
Correct GIF frame dependencies and track alpha
Add SkCodec::FrameInfo::fAlphaType. The SkImageInfo for the SkCodec
specifies the SkAlphaType for the first frame, but the opacity can vary
from frame to frame.
When determining the required frame, also compute whether a frame has
alpha. Update how we determine the required frame, which had bugs.
(Update a test that had an incorrect required frame as a result.)
Add new test images covering cases that have been fixed:
- randPixelsAnim2.gif
It has the following frames:
A (keep)
B (keep) (subset)
C (disposePrevious) (covers B)
D (any) (does *not* cover B)
B and C depend on A, but D depends on B, since after disposing C, B
should be visible again.
- alphabetAnim.gif
Includes frames which fill the image size, with different disposal
methods and transparencies.
Change-Id: Ie086167711c4cac4931ed8c4ddaeb9c9b0b91fdb
Reviewed-on: https://skia-review.googlesource.com/9810
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Mike Reed [Tue, 11 Apr 2017 03:31:23 +0000 (23:31 -0400)]
remove unused SkBitmap::copyPixelsTo
Needs https://codereview.chromium.org/
2812853002/ to land first
Bug: skia:6465
Change-Id: I531e33b2848cd995f20844786ed1a8d34d63fb64
Reviewed-on: https://skia-review.googlesource.com/13171
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Mike Klein [Mon, 10 Apr 2017 18:44:47 +0000 (14:44 -0400)]
remove SkNx AVX code
We can't realistically use AVX and SkNx together because of ODR
problems, so remove the code that may tempt us to try.
Remaining code paths using AVX:
- one intrinsics-only routine in SkOpts_hsw.cpp
- SkJumper
Change-Id: I0d2d03b47ea4a0eec27f2de2b28a4c3d1ff8376f
Reviewed-on: https://skia-review.googlesource.com/13121
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Kevin Lubick [Tue, 11 Apr 2017 12:51:33 +0000 (08:51 -0400)]
Fix symbolization of ASAN crashes
Bug: skia:
Change-Id: Id127a3c4a1a40bc6ddb0641c9d72f1a5960bbc6e
Reviewed-on: https://skia-review.googlesource.com/13125
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Matt Sarett [Tue, 11 Apr 2017 13:51:32 +0000 (09:51 -0400)]
Allow BF and BRD clients to request an output color space
Bug: skia:
Change-Id: I0f0d3bfdd5c47544ab71167fd7984ee8e8ac5903
Reviewed-on: https://skia-review.googlesource.com/11601
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Matt Sarett [Tue, 11 Apr 2017 13:26:24 +0000 (09:26 -0400)]
Make sure NaNs clamp to 0 in color look up tables
This operation assumes 0-1 input and guarantees 0-1 output.
The old clamp was poorly written, causing the possibility
for NaNs to not be set to 0.
BUG=709941
Change-Id: I691f0494a562a329967f5b0149a1ba04cbeb8464
Reviewed-on: https://skia-review.googlesource.com/13134
Commit-Queue: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Matt Sarett [Tue, 11 Apr 2017 12:46:01 +0000 (08:46 -0400)]
SkCanvas constructor with legacy flag for Android framework
Bug: skia:
Change-Id: I5b268ad03dde075f2710196d5ad2bd19249557f7
Reviewed-on: https://skia-review.googlesource.com/11788
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>