If a bitmap glyph was loaded with FT_LOAD_BITMAP_METRICS_ONLY then the
glyph must be re-loaded without this flag before accessing the bitmap.
BUG=chromium:725975
Change-Id: If5e5a6844e9c32238560135e141fea7f77ad7fac
Reviewed-on: https://skia-review.googlesource.com/20830
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Ubuntu-Clang-x86_64-Debug-MSAN
Change-Id: Id53279c17589b3434629bb644358ee238af8649f
Reviewed-on: https://skia-review.googlesource.com/20269
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Bug: skia:6759
Change-Id: I021a8487ccb1d127b2005285e439be34d644f333
Reviewed-on: https://skia-review.googlesource.com/20905
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
AFAICT none of our clients use this entry point and it is tangling up efforts to add a new parameter to the BlurImageFilter.
Change-Id: I494634db98a1d246854a5e3735380fbe55f425c2
Reviewed-on: https://skia-review.googlesource.com/20837
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Adding a GM (Golden Master) image test in Skia to reproduce the bleed
black issue in Chrome. This would allow regressions to be caught in
Skia's status page before being rolled into Chrome.
Bug: 622128
Change-Id: Ifd2824fff59483c8e4be48392ba467414d41ca13
TEST=imageblurclampmode.cpp
Reviewed-on: https://skia-review.googlesource.com/20778
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
These were relying on a 15-minute status thread to keep them from timing
out. --verbose ought to do the same.
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Android-Clang-NexusPlayer-CPU-Moorefield-x86-Debug-Android
Change-Id: I1d1467a5e777df6ec5e79d2d9ea992e69bfaeeb7
Reviewed-on: https://skia-review.googlesource.com/20821
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
No reason to keep going one at a time when we know there are generally
better ways to handle loading a power-of-two number of low lanes.
This strategy scales up too, with quick answers for 8 (one 8 byte load),
12 (one 8 byte, one 4 byte), etc.
$ ninja -C out monobench; and out/monobench SkRasterPipeline_compile 300
Before: 46.946ns
After: 43.341ns
(This happens to be _lowp. Expect similar small speedups elsewhere.)
Change-Id: I08f87769ea3c9f06ad13d2b1d5326e542b9b63a8
Reviewed-on: https://skia-review.googlesource.com/20903
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
The help simplify the code (and currect a current bug) inside the uploadPixel
functions in GL and Vulkan, we not restrict the bounds upload/write bounds
on a higher level. For non mipped uploads, we requiring the bounds to be within
the bounds on the texture, and for mipped uploads we require the bounds to be
the full texture.
Bug: skia:6780
Change-Id: Ia1cff3ee48edd3676afce6265d60e81ccea6ca6a
Reviewed-on: https://skia-review.googlesource.com/20825
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Per SVG, stroking a zero length line with square or round caps should draw
a square or circle. This path renderer has lots of baked in assumptions
that prevent that behavior, so the easy solution is to let some other path
renderer handle it.
Bug: skia:6781
Change-Id: I9d2da94f75d96554e3cd218848aa552f63add679
Reviewed-on: https://skia-review.googlesource.com/20900
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This lets us run bots that upload images with --verbose.
Today we're getting away with --verbose on some bots because they happen
to skip upload.
Change-Id: If915a65987b43c945263ada7751bf36aedff605a
Reviewed-on: https://skia-review.googlesource.com/20834
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Currently only referenced by SampleApp, and this squelches false positive
warnings from Clang's thread safety analysis when clients build this code.
Bug: skia:
Change-Id: I710fdc882e05fc5b80977139237028d1408f17db
Reviewed-on: https://skia-review.googlesource.com/20831
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
This refactors {from,to}_{byte,8888} to lean a bit more on the compiler,
and to share code between the two. The algorithm is not exactly the
same, but it's comparable, and the results of course are identical.
This new algorithm is a lot easier to generalize to AVX2, and parallels
the full-precision {from,to}_{byte,8888} functions in _stages.cpp.
Change-Id: I31ea90d65967bf4ede2497d1e2197cb0e7648bf8
Reviewed-on: https://skia-review.googlesource.com/20828
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Bug: skia:6797
Change-Id: I812837d02b90b78b6df3980649ccf6362e939afc
Reviewed-on: https://skia-review.googlesource.com/20820
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
This reverts commit 51f6a0f89e.
Reason for revert: try to fix chrome roll
Original change's description:
> Remove deadcode for sRGB image shading.
>
> Change-Id: I9d98da67d97b64ab55cf44b9ae447882dccda1ca
> Reviewed-on: https://skia-review.googlesource.com/20695
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Herb Derby <herb@google.com>
TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,reed@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I90409a08409177d9dc3b094d736af0fdaf7d6cdd
Reviewed-on: https://skia-review.googlesource.com/20824
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
This reverts commit d9b1fe02a6.
Reason for revert: try to fix chrome roll
Original change's description:
> remove a bit more dead code
>
> Change-Id: I61484672e88d6bb4f75833ee89e7178c4f34d610
> Reviewed-on: https://skia-review.googlesource.com/20780
> Commit-Queue: Mike Klein <mtklein@google.com>
> Reviewed-by: Herb Derby <herb@google.com>
TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I03dcd344dfb138261d9421b0692d12e4ed431100
Reviewed-on: https://skia-review.googlesource.com/20822
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
This reverts commit 51f6a0f89e.
Reason for revert: crazy attempt to fix chrome roll
Original change's description:
> Remove deadcode for sRGB image shading.
>
> Change-Id: I9d98da67d97b64ab55cf44b9ae447882dccda1ca
> Reviewed-on: https://skia-review.googlesource.com/20695
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Herb Derby <herb@google.com>
TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,reed@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: Icab02936d6c18e50b8de353aa1cd4c225e15e0bf
Reviewed-on: https://skia-review.googlesource.com/20800
Reviewed-by: Mike Reed <reed@google.com>
Bug: skia:
Change-Id: Ia0e88f3ae29d026843ac7beb2aee3c891123ce18
Reviewed-on: https://skia-review.googlesource.com/20773
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
This reverts commit 4220a929f8.
Reason for revert: did not seem to help chrome
Original change's description:
> speculative fix for chrome roll
>
> Bug: skia:
> Change-Id: Ib1d7d0839093a4ced89f591bc329bbd3adc635f8
> Reviewed-on: https://skia-review.googlesource.com/20768
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
TBR=reed@google.com
Change-Id: I1906664ebf4aae8bc61bd410a74231bce3f4b562
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/20782
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Change-Id: I61484672e88d6bb4f75833ee89e7178c4f34d610
Reviewed-on: https://skia-review.googlesource.com/20780
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Change-Id: I9d98da67d97b64ab55cf44b9ae447882dccda1ca
Reviewed-on: https://skia-review.googlesource.com/20695
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
Bug: skia:
Change-Id: I12021acb5349bd139dceee8ce46de3cfd1ff4d28
Reviewed-on: https://skia-review.googlesource.com/20698
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
Yet another attempt to get the iOS bots stable.
As GPU testers, the iOS bots are already mostly single threaded,
but farm a good chunk of work like image encoding out to threads.
This will take them all the way to really single threaded.
BUG=skia:6748
Change-Id: I222e3ca402eee9d191c8a413b29a65d19c13e88a
Reviewed-on: https://skia-review.googlesource.com/20687
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
A large swath of skps slowed down ~5-6x, likely because of repeat_repeat tiling
slowdowns. This CL reduces our exposure to keep those in legacy mode for now.
Bug: skia:
Change-Id: I16d03c01fe8c14a8b9b6a1a9a0c5f31f8d616b4a
Reviewed-on: https://skia-review.googlesource.com/20694
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
No-Try: true
Change-Id: I3bc19ac43e90de3009ca48a18284485efff21ad8
Reviewed-on: https://skia-review.googlesource.com/20690
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Let's see if this helps iOS?
BUG=skia:6748
Change-Id: Iec67eacef0058dfb79c0223a955a22c676a35278
Reviewed-on: https://skia-review.googlesource.com/20683
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
No longer defined in Chrome.
Change-Id: I5677ef39f7815e77fa52ec9aa667ae2a51e0f20b
Reviewed-on: https://skia-review.googlesource.com/20692
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Allows the Skia debugger to list all the flags on the paint.
Change-Id: I9068965a676809a3e23b066d804506d58910db05
Reviewed-on: https://skia-review.googlesource.com/20689
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
Bug: skia:
Change-Id: I49417789ab43734a1cbb4010281482970579971d
Reviewed-on: https://skia-review.googlesource.com/20505
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
These are just annoying me every time I run DM.
Change-Id: I8beffb0f7a479676741fe75a2066dcfd7fb06567
Reviewed-on: https://skia-review.googlesource.com/20686
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Change-Id: I98f0120a012f0adaf0b34d11135a1210a66ecea0
Reviewed-on: https://skia-review.googlesource.com/20681
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Skia has for some time assumed that when using FT_Render_Glyph with one
of the LCD render modes that one extra pixel would be applied to each
side of the resulting bitmap. FreieType has changed to make this more
conservative when possible, so the pre-allocated SkMask and the generated
FT_Bitmap may no longer agree on the size and origin.
This change ensures the SkMask and FT_Bitmap are the same size and their
origins align. This is not an ideal long term fix, but is both simple and
localized for easy and quick back-porting, should that become necessary.
BUG=skia:6663
Change-Id: I49ec8f45376be8d867e8aef54eab79537731c310
Reviewed-on: https://skia-review.googlesource.com/20327
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>