mtklein [Fri, 8 Jul 2016 01:34:06 +0000 (18:34 -0700)]
Revert of Move sRGB <-> linear conversion components to their own files. (patchset #5 id:80001 of https://codereview.chromium.org/
2128893002/ )
Reason for revert:
Monotonicity assert is failing on ARM. (Different rsqrt() and invert() precision?) Will investigate a bit tomorrow... might reland with the test TODO.
Original issue's description:
> Move sRGB <-> linear conversion components to their own files.
>
> This makes them a little easier to use outside SkColorXform code.
>
> I've added some notes about how best to use them and their eccentricities, and added a test.
>
> Ultimately any software sRGB <-> linear conversion should funnel somehow through here.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2128893002
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/
45e58c8807179638980aae8503573b950b844e4c
TBR=reed@google.com,msarett@google.com,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/
2131793002
reed [Thu, 7 Jul 2016 23:44:27 +0000 (16:44 -0700)]
make some canvas utils virtual (for proxy based subclasses)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2130973002
Review-Url: https://codereview.chromium.org/
2130973002
reed [Thu, 7 Jul 2016 23:32:51 +0000 (16:32 -0700)]
fix typos and capitalization on drawTextRSXform CL
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2123923006
Review-Url: https://codereview.chromium.org/
2123923006
pdr [Thu, 7 Jul 2016 21:48:52 +0000 (14:48 -0700)]
Update markdown to use absolute image paths, fixing broken images
Markdown can be served with or without a trailing slash but when a
trailing slash is present, relative image links were broken.
The following example works as expected:
url: https://skia.org/dev/design/pdftheory
image url: PdfLogicalDocumentStructure.png
resolves to: https://skia.org/dev/design/PdfLogicalDocumentStructure.png
The following example was broken before this patch:
url: https://skia.org/dev/design/pdftheory/
image url: PdfLogicalDocumentStructure.png
resolves to: https://skia.org/dev/design/pdftheory/PdfLogicalDocumentStructure.png
The PdfLogicalDocumentStructure.png file lives in /dev/design/, not
/dev/design/pdftheory/. This patch updates all images in our markdown
files to be served with the full path so a trailing slash no longer
breaks images.
I hit this bug when promoting the new Skia debugger:
https://groups.google.com/a/chromium.org/d/msg/paint-dev/QJ8xpu8dNyA/F4KX2O4ZBwAJ
BUG=skia:5493
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2128013003
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=
2128013003
Review-Url: https://codereview.chromium.org/
2128013003
mtklein [Thu, 7 Jul 2016 21:47:36 +0000 (14:47 -0700)]
Move sRGB <-> linear conversion components to their own files.
This makes them a little easier to use outside SkColorXform code.
I've added some notes about how best to use them and their eccentricities, and added a test.
Ultimately any software sRGB <-> linear conversion should funnel somehow through here.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2128893002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/
2128893002
reed [Thu, 7 Jul 2016 21:10:14 +0000 (14:10 -0700)]
add bounds to textblob
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2124113003
TBR=
Review-Url: https://codereview.chromium.org/
2124113003
hush [Thu, 7 Jul 2016 20:58:38 +0000 (13:58 -0700)]
Revert of Better encapsulate oval/rrect batchs. (patchset #5 id:80001 of https://codereview.chromium.org/
2104423003/ )
Reason for revert:
This CL is suspected to break compilation on arm64.
https://build.chromium.org/p/chromium.android/builders/Android%20arm64%20Builder%20%28dbg%29/builds/5851/steps/compile/logs/stdio
Original issue's description:
> Better encapsulate oval/rrect batchs.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104423003
>
> Committed: https://skia.googlesource.com/skia/+/
5fd209e8ee477c703bc5c11b008f247d515fc0fc
> Committed: https://skia.googlesource.com/skia/+/
7f06c6947a3bef78dc57b9252779567c33604c90
> Committed: https://skia.googlesource.com/skia/+/
11bf8b2eae7d1780cb969146422a2ab3b933047a
TBR=robertphillips@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/
2121313004
brianosman [Thu, 7 Jul 2016 20:18:51 +0000 (13:18 -0700)]
Revert of Use sRGB pixel config for ARGB masks (color emoji) (patchset #1 id:1 of https://codereview.chromium.org/
2129913004/ )
Reason for revert:
Color text rendering failing on ANGLE
Original issue's description:
> Use sRGB pixel config for ARGB masks (color emoji)
>
> Fixes over-bright color emoji and GM:colortype in sRGB mode
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129913004
>
> Committed: https://skia.googlesource.com/skia/+/
920af9fac3d9e275a93910d9c626ee7bc23ed17a
TBR=bungeman@google.com,jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/
2128583007
reed [Thu, 7 Jul 2016 19:47:17 +0000 (12:47 -0700)]
drawTextRSXform
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2130643004
Review-Url: https://codereview.chromium.org/
2130643004
halcanary [Thu, 7 Jul 2016 19:31:55 +0000 (12:31 -0700)]
SkPDF: Fix encoding of unichr outside of basic plane
In ToUnicode table, write unicode codepoints as one or two UTF16BE
values, rather than a single hex, as the standard requires.
Factor out uint16 -> big-endian hex code.
SkUtils is now a namespace.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2120533002
Review-Url: https://codereview.chromium.org/
2120533002
halcanary [Thu, 7 Jul 2016 19:28:30 +0000 (12:28 -0700)]
SkPDF: fix PDFA-only metadata error
Review-Url: https://codereview.chromium.org/
2119883002
brianosman [Thu, 7 Jul 2016 19:22:39 +0000 (12:22 -0700)]
Use sRGB pixel config for ARGB masks (color emoji)
Fixes over-bright color emoji and GM:colortype in sRGB mode
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129913004
Review-Url: https://codereview.chromium.org/
2129913004
egdaniel [Thu, 7 Jul 2016 18:58:35 +0000 (11:58 -0700)]
Check granularity in render pass bounds
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2126303002
Review-Url: https://codereview.chromium.org/
2126303002
jvanverth [Thu, 7 Jul 2016 18:18:46 +0000 (11:18 -0700)]
Add offsets to GrVkBuffer.
BUG=skia:5031
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2127183002
Review-Url: https://codereview.chromium.org/
2127183002
csmartdalton [Thu, 7 Jul 2016 15:49:11 +0000 (08:49 -0700)]
Begin instanced rendering for simple shapes
Adds a module that performs instanced rendering and starts using it
for a select subset of draws on Mac GL platforms. The instance
processor can currently handle rects, ovals, round rects, and double
round rects. It can generalize shapes as round rects in order to
improve batching. The instance processor also employs new drawing
algorithms, irrespective of instanced rendering, that improve GPU-side
performance (e.g. sample mask, different triangle layouts, etc.).
This change only scratches the surface of instanced rendering. The
majority of draws still only have one instance. Future work may
include:
* Passing coord transforms through the texel buffer.
* Sending FP uniforms through instanced vertex attribs.
* Using instanced rendering for more draws (stencil writes,
drawAtlas, etc.).
* Adding more shapes to the instance processor’s repertoire.
* Batching draws that have mismatched scissors (analyzing draw
bounds, inserting clip planes, etc.).
* Bindless textures.
* Uber shaders.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2066993003
Committed: https://skia.googlesource.com/skia/+/
42eafa4bc00354b132ad114d22ed6b95d8849891
Review-Url: https://codereview.chromium.org/
2066993003
jvanverth [Thu, 7 Jul 2016 15:21:48 +0000 (08:21 -0700)]
Only check resource tracking on program shutdown, not context shutdown
BUG=skia:5496
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2128273002
Review-Url: https://codereview.chromium.org/
2128273002
egdaniel [Thu, 7 Jul 2016 15:12:33 +0000 (08:12 -0700)]
Fix vulkan compile
TBR=jvanverth@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2122263003
Review-Url: https://codereview.chromium.org/
2122263003
mtklein [Thu, 7 Jul 2016 15:12:09 +0000 (08:12 -0700)]
centralize VECTORCALL as SK_VECTORCALL
Gonna start using this, might as well define it once centrally.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2126253002
No public API changes.
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/
2126253002
egdaniel [Thu, 7 Jul 2016 15:04:08 +0000 (08:04 -0700)]
Correctly handle mat2x2 in Vulkan
BUG=skia:5497
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129953002
Review-Url: https://codereview.chromium.org/
2129953002
bsalomon [Thu, 7 Jul 2016 14:55:24 +0000 (07:55 -0700)]
Better encapsulate oval/rrect batchs.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104423003
Committed: https://skia.googlesource.com/skia/+/
5fd209e8ee477c703bc5c11b008f247d515fc0fc
Committed: https://skia.googlesource.com/skia/+/
7f06c6947a3bef78dc57b9252779567c33604c90
Review-Url: https://codereview.chromium.org/
2104423003
robertphillips [Thu, 7 Jul 2016 14:33:13 +0000 (07:33 -0700)]
Remove fColor from PathRenderer DrawPathArgs struct
This was getting in the way of other refactorings.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2126083002
Review-Url: https://codereview.chromium.org/
2126083002
jvanverth [Thu, 7 Jul 2016 14:16:42 +0000 (07:16 -0700)]
Pull out freelist allocation from GrVkSubHeap
BUG=skia:5031
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2128673002
Review-Url: https://codereview.chromium.org/
2128673002
ethannicholas [Thu, 7 Jul 2016 13:30:48 +0000 (06:30 -0700)]
fix for SkSL producing invalid branch after an OpKill
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129913002
Review-Url: https://codereview.chromium.org/
2129913002
dvonbeck [Thu, 7 Jul 2016 03:03:46 +0000 (20:03 -0700)]
Abstracted diffuse color map out of SkLightingShaderImpl into a generic SkShader
Will not run until after landing https://codereview.chromium.org/
2106893003/
This CL's base is the CL for the addition of NormalSource to the API: https://codereview.chromium.org/
2063793002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2062703003
Review-Url: https://codereview.chromium.org/
2062703003
bsalomon [Thu, 7 Jul 2016 01:56:04 +0000 (18:56 -0700)]
Hide NonAAStrokeRectBatch Geometry class and cleanup class.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2126893002
Review-Url: https://codereview.chromium.org/
2126893002
egdaniel [Wed, 6 Jul 2016 21:38:34 +0000 (14:38 -0700)]
Fix bounds computation for non-aa hairlines when snapping to pixel centers
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2126913002
Review-Url: https://codereview.chromium.org/
2126913002
jvanverth [Wed, 6 Jul 2016 21:26:53 +0000 (14:26 -0700)]
Deleting void pointers is bad, mmmkay?
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129483003
Review-Url: https://codereview.chromium.org/
2129483003
liyuqian [Wed, 6 Jul 2016 21:11:32 +0000 (14:11 -0700)]
More accurate render time and continuous fresh
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129613002
Review-Url: https://codereview.chromium.org/
2129613002
dvonbeck [Wed, 6 Jul 2016 20:58:36 +0000 (13:58 -0700)]
API change to allow for NormalSource selection at the user level.
This CL's base is the CL for CPU handling: https://codereview.chromium.org/
2050773002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2063793002
Review-Url: https://codereview.chromium.org/
2063793002
bsalomon [Wed, 6 Jul 2016 20:06:22 +0000 (13:06 -0700)]
Hide geometry class in AAStrokeRectBatch and remove unused Append function.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2119813004
Review-Url: https://codereview.chromium.org/
2119813004
jvanverth [Wed, 6 Jul 2016 19:56:11 +0000 (12:56 -0700)]
Vulkan fixes for TesselatingPathRenderer test
- Be sure to release all secondard command buffers on shutdown
- Allow mapping of static buffers
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2123323002
Review-Url: https://codereview.chromium.org/
2123323002
lsalzman [Wed, 6 Jul 2016 19:19:56 +0000 (12:19 -0700)]
check for zero scale in SkDraw::ComputeResScaleForStroking
If the transform used to compute the res scale has both 0 scale and skew,
then it will currently compute a 0 res scale. This causes getFillPath
to trigger an assertion while using SkStroke since that can't handle
a 0 res scale.
Downstream Firefox bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1284356
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2125933003
Review-Url: https://codereview.chromium.org/
2125933003
egdaniel [Wed, 6 Jul 2016 19:00:12 +0000 (12:00 -0700)]
Grow descriptor pools by 1.5
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2121243002
Review-Url: https://codereview.chromium.org/
2121243002
dvonbeck [Wed, 6 Jul 2016 19:00:06 +0000 (12:00 -0700)]
Fixed crash when RunInSeriesFP's color input is nil
SeriesFragmentProcessor would call emitChild with "" input color as opposed to nil input color when ginven a nil input color.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2106893003
Review-Url: https://codereview.chromium.org/
2106893003
bungeman [Wed, 6 Jul 2016 18:55:05 +0000 (11:55 -0700)]
Add gm for various font rendering combinations.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2080453002
Review-Url: https://codereview.chromium.org/
2080453002
bsalomon [Wed, 6 Jul 2016 18:54:59 +0000 (11:54 -0700)]
Add gm that tests shaded stroked rectangles.
Fix GPU handling of previously untested cases.
Move rect->path fallback from SkGpuDevice to GrDrawContext.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2125663003
Review-Url: https://codereview.chromium.org/
2125663003
bungeman [Wed, 6 Jul 2016 17:19:54 +0000 (10:19 -0700)]
Update rebaseline instructions.
BUG=skia:2805
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=
2127953002
Review-Url: https://codereview.chromium.org/
2127953002
csmartdalton [Wed, 6 Jul 2016 16:59:43 +0000 (09:59 -0700)]
Fix caching of sample locations
The original caching logic for sample locations wishfully assumed that
the GPU would always use the same sample pattern for render targets
that had the same number of samples. It turns out we can't rely on
that. This change improves the caching logic to handle mismatched
simple patterns with the same count, and adds a unit test that
emulates different sample patterns observed on real hardware.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2111423002
Committed: https://skia.googlesource.com/skia/+/
09d49a3bfe2d1e652a648ce1ea0962b38d10d166
Review-Url: https://codereview.chromium.org/
2111423002
robertphillips [Wed, 6 Jul 2016 16:58:57 +0000 (09:58 -0700)]
Move GrNonAAFillRectPerspectiveBatch to its own file
Get this out of the way of the upcoming changes (and add a test for it)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2108403005
Review-Url: https://codereview.chromium.org/
2108403005
csmartdalton [Wed, 6 Jul 2016 16:47:38 +0000 (09:47 -0700)]
Check fIgnoresCoverage in GrPipeline::AreEqual
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2120153002
Review-Url: https://codereview.chromium.org/
2120153002
reed [Wed, 6 Jul 2016 16:29:16 +0000 (09:29 -0700)]
Experiment: add flag for finish-recording to return null
BUG=skia:5495
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2106843004
Review-Url: https://codereview.chromium.org/
2106843004
jvanverth [Wed, 6 Jul 2016 16:24:57 +0000 (09:24 -0700)]
Add resource tracking output and command buffer recycling
BUG=skia:5042
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2115993002
Review-Url: https://codereview.chromium.org/
2115993002
djsollen [Wed, 6 Jul 2016 16:17:35 +0000 (09:17 -0700)]
Compile Vulkan when building for the Android framework.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2129523002
Review-Url: https://codereview.chromium.org/
2129523002
egdaniel [Wed, 6 Jul 2016 15:51:23 +0000 (08:51 -0700)]
Fix vulkan image sampling
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2118733005
Review-Url: https://codereview.chromium.org/
2118733005
liyuqian [Wed, 6 Jul 2016 14:52:08 +0000 (07:52 -0700)]
Try fix the mac build bot after removing Android SampleApp
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2117793002
Review-Url: https://codereview.chromium.org/
2117793002
bsalomon [Wed, 6 Jul 2016 14:03:26 +0000 (07:03 -0700)]
Increase batching for AA fill rects.
This allows batching of rects provided without a local matrix when local coords are required and when the view matrix changes.
It also allows batching of rects with a local matrix with rects without a local matrix.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116823002
Committed: https://skia.googlesource.com/skia/+/
e525ecaf63f225f1da6e9834f7a291c06ad44d23
Review-Url: https://codereview.chromium.org/
2116823002
ethannicholas [Wed, 6 Jul 2016 13:55:44 +0000 (06:55 -0700)]
fix for Clang 3.8 warning in SkSL
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2118033002
Review-Url: https://codereview.chromium.org/
2118033002
benjaminwagner [Wed, 6 Jul 2016 13:55:04 +0000 (06:55 -0700)]
Blacklist fontscalerdistortable on Win8.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=
2109583003
Review-Url: https://codereview.chromium.org/
2109583003
bsalomon [Wed, 6 Jul 2016 13:30:36 +0000 (06:30 -0700)]
Enlarge strokerect GM size to reveal hidden content
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2126723002
Review-Url: https://codereview.chromium.org/
2126723002
fmalita [Wed, 6 Jul 2016 13:22:06 +0000 (06:22 -0700)]
Document SkSurface::MakeRaster's memory initialization
So clients don't go clearing w/ SK_ColorTRANSPARENT unnecessarily.
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2066903003
Review-Url: https://codereview.chromium.org/
2066903003
pdr [Wed, 6 Jul 2016 13:10:25 +0000 (06:10 -0700)]
Update dev docs to reference the new skia debugger (skiaserve)
This patch adds a new markdown file describing the new debugger along
with instructions on running it locally and a sweet screenshot. The
screenshot has been sized to not be clipped when viewed in production.
The old documentation for the qt-based debugger has been marked as
deprecated and all docs referencing the old debugger have been updated.
BUG=skia:5493
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2121673002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=
2121673002
Review-Url: https://codereview.chromium.org/
2121673002
reed [Wed, 6 Jul 2016 03:10:42 +0000 (20:10 -0700)]
make setScaleTranslate public
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2122093002
TBR=
Review-Url: https://codereview.chromium.org/
2122093002
ksakamoto [Tue, 5 Jul 2016 10:54:53 +0000 (03:54 -0700)]
Revert of Begin instanced rendering for simple shapes (patchset #20 id:380001 of https://codereview.chromium.org/
2066993003/ )
Reason for revert:
This caused static initializer regressions in Chromium (crbug.com/625728).
Relevant build logs here:
Linux:
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/21849
Mac:
https://build.chromium.org/p/chromium/builders/Mac/builds/17350
Relevant lines from the error log:
Linux:
# InstanceProcessor.cpp GrUniqueKey::GenerateDomain()
# InstanceProcessor.cpp gr_instanced::kShapeBufferDomain
FAILED linux-release-64/sizes/nacl_helper-si/initializers: actual 8, expected 7, better lower
FAILED linux-release-64/sizes/chrome-si/initializers: actual 8, expected 7, better lower
Mac:
FAILED mac-release/sizes/chrome-si/initializers: actual 2, expected 0, better lower
Original issue's description:
> Begin instanced rendering for simple shapes
>
> Adds a module that performs instanced rendering and starts using it
> for a select subset of draws on Mac GL platforms. The instance
> processor can currently handle rects, ovals, round rects, and double
> round rects. It can generalize shapes as round rects in order to
> improve batching. The instance processor also employs new drawing
> algorithms, irrespective of instanced rendering, that improve GPU-side
> performance (e.g. sample mask, different triangle layouts, etc.).
>
> This change only scratches the surface of instanced rendering. The
> majority of draws still only have one instance. Future work may
> include:
>
> * Passing coord transforms through the texel buffer.
> * Sending FP uniforms through instanced vertex attribs.
> * Using instanced rendering for more draws (stencil writes,
> drawAtlas, etc.).
> * Adding more shapes to the instance processor’s repertoire.
> * Batching draws that have mismatched scissors (analyzing draw
> bounds, inserting clip planes, etc.).
> * Bindless textures.
> * Uber shaders.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2066993003
>
> Committed: https://skia.googlesource.com/skia/+/
42eafa4bc00354b132ad114d22ed6b95d8849891
NOTREECHECKS=true
TBR=bsalomon@google.com,egdaniel@google.com,robertphillips@google.com,csmartdalton@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:
Review-Url: https://codereview.chromium.org/
2123693002
rmistry [Tue, 5 Jul 2016 00:45:06 +0000 (17:45 -0700)]
Revert of Fix caching of sample locations (patchset #3 id:40001 of https://codereview.chromium.org/
2111423002/ )
Reason for revert:
Seems to be causing Chromium roll failures:
* https://codereview.chromium.org/
2120373003
* https://codereview.chromium.org/
2117193002
* https://codereview.chromium.org/
2124653002
Original issue's description:
> Fix caching of sample locations
>
> The original caching logic for sample locations wishfully assumed that
> the GPU would always use the same sample pattern for render targets
> that had the same number of samples. It turns out we can't rely on
> that. This change improves the caching logic to handle mismatched
> simple patterns with the same count, and adds a unit test that
> emulates different sample patterns observed on real hardware.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2111423002
>
> Committed: https://skia.googlesource.com/skia/+/
09d49a3bfe2d1e652a648ce1ea0962b38d10d166
TBR=bsalomon@google.com,csmartdalton@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/
2120403002
csmartdalton [Mon, 4 Jul 2016 22:55:17 +0000 (15:55 -0700)]
Fix caching of sample locations
The original caching logic for sample locations wishfully assumed that
the GPU would always use the same sample pattern for render targets
that had the same number of samples. It turns out we can't rely on
that. This change improves the caching logic to handle mismatched
simple patterns with the same count, and adds a unit test that
emulates different sample patterns observed on real hardware.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2111423002
Review-Url: https://codereview.chromium.org/
2111423002
reed [Mon, 4 Jul 2016 21:28:31 +0000 (14:28 -0700)]
all dumpcanvas to be built in release
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2123633002
TBR=
Review-Url: https://codereview.chromium.org/
2123633002
update-skps [Mon, 4 Jul 2016 20:38:56 +0000 (13:38 -0700)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
NO_MERGE_BUILDS
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2119053002
Review-Url: https://codereview.chromium.org/
2119053002
benjaminwagner [Mon, 4 Jul 2016 18:30:01 +0000 (11:30 -0700)]
Revert of Increase batching for AA fill rects. (patchset #4 id:60001 of https://codereview.chromium.org/
2116823002/ )
Reason for revert:
I believe this is causing the Chromium DEPS roll to fail due to linux_blink_rel. Reverting for now to get the roll going again.
Original issue's description:
> Increase batching for AA fill rects.
>
> This allows batching of rects provided without a local matrix when local coords are required and when the view matrix changes.
>
> It also allows batching of rects with a local matrix with rects without a local matrix.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116823002
>
> Committed: https://skia.googlesource.com/skia/+/
e525ecaf63f225f1da6e9834f7a291c06ad44d23
TBR=robertphillips@google.com,bsalomon@google.com
NOTREECHECKS=true
# Not skipping CQ checks because original CL landed more than 1 days ago.
Review-Url: https://codereview.chromium.org/
2124603002
benjaminwagner [Sat, 2 Jul 2016 12:12:46 +0000 (05:12 -0700)]
Exclude SkSL in public.bzl.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2122463002
TBR=ethannicholas
NOTREECHECKS=true
Review-Url: https://codereview.chromium.org/
2122463002
ethannicholas [Sat, 2 Jul 2016 02:09:27 +0000 (19:09 -0700)]
fixed SkSL memory leak
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2119903002
NOTREECHECKS=true
Review-Url: https://codereview.chromium.org/
2119903002
ethannicholas [Sat, 2 Jul 2016 02:09:15 +0000 (19:09 -0700)]
fixed non-GPU build
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2120543003
NOTREECHECKS=true
Review-Url: https://codereview.chromium.org/
2120543003
skia.buildbots [Sat, 2 Jul 2016 00:29:18 +0000 (17:29 -0700)]
Update Win toolchain
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116173002
NOTREECHECKS=true
NOTRY=true
TBR=rmistry@google.com
Review-Url: https://codereview.chromium.org/
2116173002
benjaminwagner [Fri, 1 Jul 2016 22:51:41 +0000 (15:51 -0700)]
Specify new Windows Toolchain isolated hash.
NOTREECHECKS=true
NOTRY=true
TBR=rmistry@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2121443002
Review-Url: https://codereview.chromium.org/
2121443002
bsalomon [Fri, 1 Jul 2016 18:02:39 +0000 (11:02 -0700)]
Increase batching for AA fill rects.
This allows batching of rects provided without a local matrix when local coords are required and when the view matrix changes.
It also allows batching of rects with a local matrix with rects without a local matrix.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116823002
Review-Url: https://codereview.chromium.org/
2116823002
robertphillips [Fri, 1 Jul 2016 16:06:56 +0000 (09:06 -0700)]
Split apart the GP construction for the NonAAFillRect Batches
This sets up for adding yet another batch type that specializes for rectStaysRect
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2106063005
Review-Url: https://codereview.chromium.org/
2106063005
halcanary [Fri, 1 Jul 2016 15:48:12 +0000 (08:48 -0700)]
using_skia_and_harfbuzz: use default typeface
Also: add little script to generate utf-8 test text.
BUG=skia:5434
TBR=bungeman@google.com
Review-Url: https://codereview.chromium.org/
2118833002
ethannicholas [Fri, 1 Jul 2016 15:22:01 +0000 (08:22 -0700)]
initial checkin of SkSL compiler
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=
1984363002
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
Review-Url: https://codereview.chromium.org/
1984363002
egdaniel [Fri, 1 Jul 2016 15:06:45 +0000 (08:06 -0700)]
Use bounds of batches for render pass bounds
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2113303002
Review-Url: https://codereview.chromium.org/
2113303002
egdaniel [Fri, 1 Jul 2016 15:03:02 +0000 (08:03 -0700)]
Fix vulkan ImageView swizzling to match spec
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2115903002
Review-Url: https://codereview.chromium.org/
2115903002
bsalomon [Fri, 1 Jul 2016 15:01:36 +0000 (08:01 -0700)]
Cleanup non-AA fill rect batch construction.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2119853002
Review-Url: https://codereview.chromium.org/
2119853002
bsalomon [Fri, 1 Jul 2016 13:31:25 +0000 (06:31 -0700)]
Simplify AA fill rect batch construction and rename Geometry->RectInfo
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116723003
Review-Url: https://codereview.chromium.org/
2116723003
bsalomon [Fri, 1 Jul 2016 12:35:51 +0000 (05:35 -0700)]
Remove unneeded helpers in AA and non-AA rect GrBatch subclasses.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2115673002
Review-Url: https://codereview.chromium.org/
2115673002
bsalomon [Fri, 1 Jul 2016 03:45:38 +0000 (20:45 -0700)]
Cleanup PLSPathBatch
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116543002
Review-Url: https://codereview.chromium.org/
2116543002
bsalomon [Thu, 30 Jun 2016 21:40:01 +0000 (14:40 -0700)]
Disable GPU dithering in Android framework builds
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2115683002
Review-Url: https://codereview.chromium.org/
2115683002
bsalomon [Thu, 30 Jun 2016 20:09:48 +0000 (13:09 -0700)]
Remove unused batch rect append functions
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2106283003
Review-Url: https://codereview.chromium.org/
2106283003
bsalomon [Thu, 30 Jun 2016 19:45:18 +0000 (12:45 -0700)]
Remove GrTInstanceBatch
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2114663003
Review-Url: https://codereview.chromium.org/
2114663003
vjiaoblack [Thu, 30 Jun 2016 19:20:54 +0000 (12:20 -0700)]
Fix bug where ovals' AA exceed bounds by .5 pixel
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2106953009
Review-Url: https://codereview.chromium.org/
2106953009
csmartdalton [Thu, 30 Jun 2016 19:15:49 +0000 (12:15 -0700)]
Begin instanced rendering for simple shapes
Adds a module that performs instanced rendering and starts using it
for a select subset of draws on Mac GL platforms. The instance
processor can currently handle rects, ovals, round rects, and double
round rects. It can generalize shapes as round rects in order to
improve batching. The instance processor also employs new drawing
algorithms, irrespective of instanced rendering, that improve GPU-side
performance (e.g. sample mask, different triangle layouts, etc.).
This change only scratches the surface of instanced rendering. The
majority of draws still only have one instance. Future work may
include:
* Passing coord transforms through the texel buffer.
* Sending FP uniforms through instanced vertex attribs.
* Using instanced rendering for more draws (stencil writes,
drawAtlas, etc.).
* Adding more shapes to the instance processor’s repertoire.
* Batching draws that have mismatched scissors (analyzing draw
bounds, inserting clip planes, etc.).
* Bindless textures.
* Uber shaders.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2066993003
Review-Url: https://codereview.chromium.org/
2066993003
bsalomon [Thu, 30 Jun 2016 19:13:52 +0000 (12:13 -0700)]
Hide GrNonAANinePatchBatch::Geometry and rename to Patch
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2111943002
Review-Url: https://codereview.chromium.org/
2111943002
bsalomon [Thu, 30 Jun 2016 19:05:32 +0000 (12:05 -0700)]
Hide MSAAPathBatch::Geometry and rename to PathInfo
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116533002
Review-Url: https://codereview.chromium.org/
2116533002
halcanary [Thu, 30 Jun 2016 18:55:07 +0000 (11:55 -0700)]
SkPDF: Glyph Useage Map improvements
Instead of having a fFontGlyphUsage on each device and one on each
document, just have the one on the document, and never merge.
Make fGlyphUsage accesible on SkPDFDocument.
Remove SkPDFGlyphSetMap::merge, ::reset, and SkPDFGlyphSet::merge.
SkPDFGlyphSetMap has an TArray of SkPDFGlyphSet, not TDArray of
SkPDFGlyphSet pointers. SkPDFGlyphSet and SkPDFBitset get move
constructors.
All tests produce exactly identical output PDFs.
BUG=skia:5434
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2112943002
Review-Url: https://codereview.chromium.org/
2112943002
egdaniel [Thu, 30 Jun 2016 18:43:10 +0000 (11:43 -0700)]
Remove support for GL discards
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2112693003
Review-Url: https://codereview.chromium.org/
2112693003
msarett [Thu, 30 Jun 2016 17:06:51 +0000 (10:06 -0700)]
Fix png encoding in skia debugger
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2119513002
Review-Url: https://codereview.chromium.org/
2119513002
hstern [Thu, 30 Jun 2016 17:04:21 +0000 (10:04 -0700)]
Add cubic example and draw original path
- Add cubic example
- Draw original path
- Also added dumpHex to stderr option on 'D'
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2106063004
Review-Url: https://codereview.chromium.org/
2106063004
jcgregorio [Thu, 30 Jun 2016 16:18:27 +0000 (09:18 -0700)]
skiaserve: Use snakeCase for JSON identifiers.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2108823006
Review-Url: https://codereview.chromium.org/
2108823006
jvanverth [Thu, 30 Jun 2016 16:10:52 +0000 (09:10 -0700)]
Add static buffer support
Put resource tracking check in the right place
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2112653002
Review-Url: https://codereview.chromium.org/
2112653002
egdaniel [Thu, 30 Jun 2016 15:23:30 +0000 (08:23 -0700)]
Add discard support to Vulkan
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104353002
Review-Url: https://codereview.chromium.org/
2104353002
halcanary [Thu, 30 Jun 2016 15:22:04 +0000 (08:22 -0700)]
SkPDF: allow overriding Producer metadata
I recommend not using this functionality.
Also, some documentation.
BUG=skia:5436
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2074583003
Review-Url: https://codereview.chromium.org/
2074583003
reed [Thu, 30 Jun 2016 15:15:35 +0000 (08:15 -0700)]
use mapRectScaleTranslate for common case in clipRect
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2119473002
Review-Url: https://codereview.chromium.org/
2119473002
bsalomon [Thu, 30 Jun 2016 14:59:23 +0000 (07:59 -0700)]
Hide GrDrawVerticesBatch::Geometry and rename to Mesh
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104383003
Review-Url: https://codereview.chromium.org/
2104383003
jcgregorio [Thu, 30 Jun 2016 14:54:14 +0000 (07:54 -0700)]
debugger: Allow for larger images.
Also differentiate between max dimensions and default dimensions.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2113693002
Review-Url: https://codereview.chromium.org/
2113693002
reed [Thu, 30 Jun 2016 14:47:34 +0000 (07:47 -0700)]
inline very common intersect+rect_rgn
Extracted from previous compound CL (with other changes).
This is the very common case for clips, and inlining this eliminates a series of function calls.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2116513002
TBR=mtklein
Review-Url: https://codereview.chromium.org/
2116513002
hcm [Thu, 30 Jun 2016 14:31:09 +0000 (07:31 -0700)]
Update skia milestone to next
No API changes, just moving version fwd.
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2115573002
Review-Url: https://codereview.chromium.org/
2115573002
bsalomon [Thu, 30 Jun 2016 14:19:27 +0000 (07:19 -0700)]
Even more hiding of Geometry structs in GrBatch subclasses.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2110853004
Review-Url: https://codereview.chromium.org/
2110853004
reed [Thu, 30 Jun 2016 13:38:54 +0000 (06:38 -0700)]
speed up maprect for scale+trans case
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2111703002
Review-Url: https://codereview.chromium.org/
2111703002
borenet [Thu, 30 Jun 2016 12:20:03 +0000 (05:20 -0700)]
Add Android SDK asset
This will allow us to use CIPD to install the Android SDK on bots.
BUG=skia:5427
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2086003002
Review-Url: https://codereview.chromium.org/
2086003002
benjaminwagner [Thu, 30 Jun 2016 11:47:45 +0000 (04:47 -0700)]
Revert of Better encapsulate oval/rrect batchs. (patchset #4 id:60001 of https://codereview.chromium.org/
2104423003/ )
Reason for revert:
Chromium roll is failing:
https://build.chromium.org/p/chromium.linux/builders/Android%20Arm64%20Builder%20%28dbg%29/builds/35938/steps/compile/logs/stdio
[1505/19896] CXX obj/skia/skia/GrOvalRenderer.o
FAILED: obj/skia/skia/GrOvalRenderer.o
/mnt/data/b/build/slave/cache/cipd/goma/gomacc ../../third_party/android_tools/ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-g++ -MMD -MF obj/skia/skia/GrOvalRenderer.o.d -DV8_DEPRECATION_WARNINGS -DENABLE_NOTIFICATIONS -DENABLE_BROWSER_CDMS -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DUSE_OPENSSL_CERTS=1 -DNO_TCMALLOC -DUSE_EXTERNAL_POPUP_MENU=1 -DENABLE_WEBRTC=1 -DDISABLE_NACL -DENABLE_SUPERVISED_USERS=1 -DUSE_PROPRIETARY_CODECS -DVIDEO_HOLE=1 -DSAFE_BROWSING_DB_REMOTE -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DENABLE_WEBVR -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -DANDROID -DHAVE_SYS_UIO_H -DANDROID_NDK_VERSION=r10e -D__GNU_SOURCE=1 -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_SUPPORT_GPU=1 -DSK_BUILD_FOR_ANDROID -DUSE_CHROMIUM_SKIA -DSK_GAMMA_APPLY_TO_A8 -DSK_GAMMA_EXPONENT=1.4 -DSK_GAMMA_CONTRAST=0.0 -DSK_DEFAULT_FONT_CACHE_LIMIT=1048576 -DXML_STATIC -I../.. -Igen -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/include/private -I../../third_party/skia/include/client/android -I../../third_party/skia/src/core -I../../third_party/skia/src/image -I../../third_party/skia/src/opts -I../../third_party/skia/src/pdf -I../../third_party/skia/src/ports -I../../third_party/skia/src/sfnt -I../../third_party/skia/src/utils -I../../third_party/skia/src/lazy -I../../third_party/zlib -I../../third_party/android_tools/ndk/sources/android/cpufeatures -I../../third_party/expat/files/lib -I../../third_party/freetype-android/include -I../../third_party/freetype-android/src/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pipe -ffunction-sections -fno-short-enums -finline-limit=64 -Os -fdata-sections -ffunction-sections -g1 --sysroot=../../third_party/android_tools/ndk/platforms/android-21/arch-arm64 -fvisibility=hidden -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-unused-parameter -fno-threadsafe-statics -fvisibility-inlines-hidden -std=gnu++11 -fno-rtti -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++abi/libcxxabi/include -isystem../../third_party/android_tools/ndk/sources/android/support/include -fno-exceptions -Wno-deprecated -Wno-narrowing -c ../../third_party/skia/src/gpu/GrOvalRenderer.cpp -o obj/skia/skia/GrOvalRenderer.o
In file included from ../../third_party/skia/include/private/../private/SkTemplates.h:17:0,
from ../../third_party/skia/include/private/SkTArray.h:12,
from ../../third_party/skia/src/gpu/GrBufferAllocPool.h:11,
from ../../third_party/skia/src/gpu/GrBatchFlushState.h:11,
from ../../third_party/skia/src/gpu/GrOvalRenderer.cpp:10:
../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory: In instantiation of 'void std::__1::unique_ptr<_Tp, _Dp>::reset(std::__1::unique_ptr<_Tp, _Dp>::pointer) [with _Tp = std::__1::__function::__base<bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>; _Dp = std::__1::__allocator_destructor<std::__1::allocator<std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)> > >; std::__1::unique_ptr<_Tp, _Dp>::pointer = std::__1::__function::__base<bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>*]':
../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory:2598:52: required from 'std::__1::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = std::__1::__function::__base<bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>; _Dp = std::__1::__allocator_destructor<std::__1::allocator<std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)> > >]'
../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/functional:1603:72: required from 'std::__1::function<_Rp(_ArgTypes ...)>::function(_Fp, typename std::__1::enable_if<(std::__1::function<_Rp(_ArgTypes ...)>::__callable<_Fp>::value && (! std::__1::is_same<_Fp, std::__1::function<_Rp(_ArgTypes ...)> >::value))>::type*) [with _Fp = GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>; _Rp = bool; _ArgTypes = {GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int}; typename std::__1::enable_if<(std::__1::function<_Rp(_ArgTypes ...)>::__callable<_Fp>::value && (! std::__1::is_same<_Fp, std::__1::function<_Rp(_ArgTypes ...)> >::value))>::type = void]'
../../third_party/skia/src/gpu/GrBatchFlushState.h:80:9: required from here
../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory:2630:34: error: invalid conversion from 'std::__1::unique_ptr<std::__1::__function::__base<bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>, std::__1::__allocator_destructor<std::__1::allocator<std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)> > > >::pointer {aka std::__1::__function::__base<bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>*}' to 'std::__1::__allocator_destructor<std::__1::allocator<std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)> > >::pointer {aka std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>*}' [-fpermissive]
__ptr_.second()(__tmp);
^
In file included from ../../third_party/skia/include/private/../private/SkTemplates.h:17:0,
from ../../third_party/skia/include/private/SkTArray.h:12,
from ../../third_party/skia/src/gpu/GrBufferAllocPool.h:11,
from ../../third_party/skia/src/gpu/GrBatchFlushState.h:11,
from ../../third_party/skia/src/gpu/GrOvalRenderer.cpp:10:
../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include/memory:3474:10: note: initializing argument 1 of 'void std::__1::__allocator_destructor<_Alloc>::operator()(std::__1::__allocator_destructor<_Alloc>::pointer) [with _Alloc = std::__1::allocator<std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)> >; std::__1::__allocator_destructor<_Alloc>::pointer = std::__1::__function::__func<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)>, std::__1::allocator<GrBatchFlushState::doUpload(GrDrawBatch::DeferredUploadFn&)::<lambda(GrSurface*, int, int, int, int, GrPixelConfig, const void*, size_t)> >, bool(GrSurface*, int, int, int, int, GrPixelConfig, const void*, long unsigned int)>*]'
void operator()(pointer __p) _NOEXCEPT
^
Original issue's description:
> Better encapsulate oval/rrect batchs.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104423003
>
> Committed: https://skia.googlesource.com/skia/+/
5fd209e8ee477c703bc5c11b008f247d515fc0fc
> Committed: https://skia.googlesource.com/skia/+/
7f06c6947a3bef78dc57b9252779567c33604c90
TBR=robertphillips@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/
2111883002
bsalomon [Thu, 30 Jun 2016 01:41:53 +0000 (18:41 -0700)]
Hide more GrBatch Geometry structs.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2110903002
Review-Url: https://codereview.chromium.org/
2110903002
bsalomon [Thu, 30 Jun 2016 00:55:27 +0000 (17:55 -0700)]
Better encapsulate oval/rrect batchs.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104423003
Committed: https://skia.googlesource.com/skia/+/
5fd209e8ee477c703bc5c11b008f247d515fc0fc
Review-Url: https://codereview.chromium.org/
2104423003
benjaminwagner [Wed, 29 Jun 2016 22:24:57 +0000 (15:24 -0700)]
Revert of Better encapsulate oval/rrect batchs. (patchset #3 id:40001 of https://codereview.chromium.org/
2104423003/ )
Reason for revert:
Causing assertion error on Test-Mac-Clang-MacMini4.1-GPU-GeForce320M-x86_64-Debug (https://chromium-swarm.appspot.com/user/task/
2fb6ee239783b910) and Test-Win8-MSVC-ShuttleA-GPU-GTX960-x86_64-Debug (https://chromium-swarm.appspot.com/user/task/
2fb6ebcc157fed10).
Original issue's description:
> Better encapsulate oval/rrect batchs.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=
2104423003
>
> Committed: https://skia.googlesource.com/skia/+/
5fd209e8ee477c703bc5c11b008f247d515fc0fc
TBR=robertphillips@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/
2109913005