Commit Graph

29526 Commits

Author SHA1 Message Date
Mike Reed
54518ac1c2 remove unused SkPoint3 from SkColor.h
Bug: skia:
Change-Id: Iba327a5604dc11525c4d8d0a535a7c417a1b8185
Reviewed-on: https://skia-review.googlesource.com/25961
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-22 19:30:37 +00:00
Mike Reed
31599e98df remove dead code around SK_SUPPORT_LEGACY_TEXTBLOB_SERIAL_API
Bug: skia:
Change-Id: Ifcf6054871d907efeb2fcf2815bc4c25671525b6
Reviewed-on: https://skia-review.googlesource.com/25944
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-22 19:30:07 +00:00
Mike Reed
8724b46099 Revert "Add support for semaphores to be inserted on GrContext flush"
This reverts commit cd1416efbc.

Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths

Original change's description:
> Add support for semaphores to be inserted on GrContext flush
> 
> This also moves the logic of inserting semaphores down into GrDrawingManager
> and finishFlush on GrGpu. With it being on finishFlush, there should be no
> issues when the DrawingManager starts respecting the proxy passed in assuming
> it always calls finishFlush at the end (which it should).
> 
> Bug: skia:
> Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7
> Reviewed-on: https://skia-review.googlesource.com/25641
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/25980
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-22 17:34:00 +00:00
Mike Klein
f5d4d86d85 Revert "use rasterpipeline for filtering for very large images"
This reverts commit 97d4cf0e7e.

Reason for revert: looks like this is breaking one cc unit test, LayerTreeHostScrollbarsPixelTest.HugeTransformScale, which appears to be a comparison against a golden .png.


Original change's description:
> use rasterpipeline for filtering for very large images
> 
> Bug: skia:
> Change-Id: I8d1c2fca1bf2ad94cdfbef32d068f47503ea1e03
> Reviewed-on: https://skia-review.googlesource.com/24140
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>

TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com

Change-Id: Idc94873cca90a73fbd567b16ed2c45b961e76e85
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/25806
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-07-22 02:06:37 +00:00
Greg Daniel
cd1416efbc Add support for semaphores to be inserted on GrContext flush
This also moves the logic of inserting semaphores down into GrDrawingManager
and finishFlush on GrGpu. With it being on finishFlush, there should be no
issues when the DrawingManager starts respecting the proxy passed in assuming
it always calls finishFlush at the end (which it should).

Bug: skia:
Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7
Reviewed-on: https://skia-review.googlesource.com/25641
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-07-22 01:03:06 +00:00
Mike Reed
97d4cf0e7e use rasterpipeline for filtering for very large images
Bug: skia:
Change-Id: I8d1c2fca1bf2ad94cdfbef32d068f47503ea1e03
Reviewed-on: https://skia-review.googlesource.com/24140
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-07-22 00:03:07 +00:00
Brian Osman
de6e5bf33f Tracing cleanup and bugfixes
TraceID was unused, remove it.

Simplify casting logic by using the same union helper as the macros.
This fixes a bug that was present in the bool handling - we were
treating the union value as a pointer, so we were dereferencing
random stack memory. Luckily it never crashes, we did get the wrong
values for bools.

Bug: skia:
Change-Id: I15d44756214f34c1f6479980d9a487ac7f3d8f6c
Reviewed-on: https://skia-review.googlesource.com/25801
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-21 20:57:27 +00:00
Mike Reed
aaa3056e46 switch away from std::function in public api
Bug: skia:
Change-Id: I181382dc1f9d8671b814134c1a787185745b90a8
Reviewed-on: https://skia-review.googlesource.com/25643
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-21 19:38:15 +00:00
Robert Phillips
c686ce39f0 Smaller fragment from "Reduce dependence on GrSurface's origin field"
TBR=bsalomon@google.com
Change-Id: I996226ffaf84ca357740a6da9bb80a3b8febb379
Reviewed-on: https://skia-review.googlesource.com/25745
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-07-21 19:05:25 +00:00
Ben Wagner
219f3622ba Add strikeout font metrics.
This also updates create_test_font so that it can be built, compiles,
and uses SkFontStyle instead of SkTypeface::Style.

BUG=b/63669723

Change-Id: I6eb0f851853f4721cf8e5052255b5b6750c3257f
Reviewed-on: https://skia-review.googlesource.com/24740
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-07-21 18:59:05 +00:00
Mike Reed
f19421961c don't rely on canvas->readPixels
Bug: skia:3216
Change-Id: I01a8d0083c79c0fe71fbc4d8cfdde4fa6e48b636
Reviewed-on: https://skia-review.googlesource.com/25741
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-21 18:49:05 +00:00
Mike Klein
ce98801bbb when encoding PNG, don't assume F16 values are in range
I believe this will fix this batch of broken colorImages:

   https://gold.skia.org/search?blame=e23e55ef33358b2f6f98fc9cb795c71397c01618&fdiffmax=-1&fref=false&frgbamax=255&frgbamin=0&head=true&include=false&limit=50&match=gamma_correct&match=name&metric=combined&neg=false&offset=0&pos=false&query=source_type%3DcolorImage&sort=desc&unt=true

Depending on the instruction set, clamping to logical [0,1] may be
implicit or not as we work our way down to bytes.  I think that's why
these broken images are not more widespread on the bots.

Change-Id: Ie9bb937864bf6954301d76d9921a2d3029d12c9a
Reviewed-on: https://skia-review.googlesource.com/25742
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-21 17:47:24 +00:00
Mike Klein
7634330c98 reduce code size in GrGLTestInterface.o and GrGLAssembleInterface.o
All these std::function instantiations fill the object files up with
almost 1MB of boilerplate generated code.  I think we can do better by
implementing GrGLFunction as its own std::function-like type with much
less overhead, bringing the total object file size down to about 200K.

This reduces DM from 28780344 to 27726144 on my Mac, a touch above 1MB.

Change-Id: I219a86737d1dfb8b68e4eb47b51a8a98b18ff282
Reviewed-on: https://skia-review.googlesource.com/20551
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-21 16:51:33 +00:00
Mike Reed
a7ba6e7fcc Revert "Revert "check for no blur and exit early""
This reverts commit 8825a09fc8.

Bug: skia:
Change-Id: I01df7bf9e398012b5320655da3cab306256e31fb
Reviewed-on: https://skia-review.googlesource.com/25740
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-21 16:47:23 +00:00
Brian Osman
65e4c614f0 Add category support to JSON and SkDebugf tracing
Bug: skia:
Change-Id: I4d0bdb9d954e49b79ace0552d7b74b36a512c00d
Reviewed-on: https://skia-review.googlesource.com/25642
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-07-21 16:38:23 +00:00
Robert Phillips
57aa367aa3 Add initial version of GrResourceAllocator's free pool (take 2)
TBR=bsalomon@google.com
Change-Id: I252d0d75f9ad3911abf97495f67d5178e924dd78
Reviewed-on: https://skia-review.googlesource.com/25560
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-21 16:18:53 +00:00
Cary Clark
8825a09fc8 Revert "check for no blur and exit early"
This reverts commit 35a5e418b9.

Reason for revert: breaks google 3

Original change's description:
> check for no blur and exit early
> 
> Bug: skia:
> Change-Id: I98c07c5fd77ec67398dd4df12fb6a24aa4ca7731
> Reviewed-on: https://skia-review.googlesource.com/25567
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Florin Malita <fmalita@chromium.org>

TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org,reed@google.com

Change-Id: I9c4b50bb2fda504e5c61ed03c0722abff327ca72
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/25568
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2017-07-21 16:07:06 +00:00
Mike Reed
353196f44f clean read/write pixels signatures, augment SkSurface API
For now, not adding writePixels to surface, since it appears we may not
be able to remove writePixels from canvas :(

Bug: skia:3216
Change-Id: I64ccebb31effacffe615ae4537fb46a161a6768d
Reviewed-on: https://skia-review.googlesource.com/25562
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-07-21 15:27:23 +00:00
Mike Reed
35a5e418b9 check for no blur and exit early
Bug: skia:
Change-Id: I98c07c5fd77ec67398dd4df12fb6a24aa4ca7731
Reviewed-on: https://skia-review.googlesource.com/25567
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-07-21 15:18:33 +00:00
Florin Malita
15cac7296e Revert "Revert "Always use raster pipeline for radial gradients""
This reverts commit 8b8b2244c3.

Reason for revert: guard landed in g3

Original change's description:
> Revert "Always use raster pipeline for radial gradients"
> 
> This reverts commit 5a5207ae67.
> 
> Reason for revert: suspect this is the reason for Google3 roll failure.
> 
> First color mismatch. Expected ff0006f9, got ff0004fb
> Expected output mismatch apps/cereal/skia_expected/radialGradient.png (3392 pixels)
> 
> 
> Original change's description:
> > Always use raster pipeline for radial gradients
> > 
> > Change-Id: Id4c9ed45c28becf0e25ed9ff1b3380c7ca65aa4b
> > Reviewed-on: https://skia-review.googlesource.com/25363
> > Reviewed-by: Mike Klein <mtklein@chromium.org>
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> 
> TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org,reed@google.com
> 
> Change-Id: I382a22f354d3c0a1465bd9c1555f226b0f1abb58
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/25441
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org,reed@google.com

Change-Id: I1a53c98735e5b344d0c2a18800ec94520f328931
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/25660
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
2017-07-21 14:55:24 +00:00
Stephan Altmueller
e86af693dc Enable verbose output on iOS and Android
Bug: skia:
Change-Id: Ia2c40b01d78257dd7e30805a034a581b708d0b90
Reviewed-on: https://skia-review.googlesource.com/25563
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2017-07-21 14:43:03 +00:00
Robert Phillips
96be9df130 Revert "Reduce dependence on GrSurface's origin field"
This reverts commit 467022b186.

Reason for revert: GrAHardwareBufferImageGenerator.cpp

Original change's description:
> Reduce dependence on GrSurface's origin field
> 
> Unfortunately, GrGPU and its ilk are still using the GrSurface's origin a lot. I will clean that up in a second CL.
> 
> Change-Id: Iba729440ce8ea8d24bb7f4e5de55ed576a0f176d
> Reviewed-on: https://skia-review.googlesource.com/24700
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: I1b3f5c3b82d250ac164beb1d5c83abb6c3c6ab3b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/25620
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-07-21 14:17:54 +00:00
Yuqian Li
7877d32378 Make update_edge as a member function of SkAnalyticEdge
This is to prepare for future SkScan_DAAPath.cpp to use this member function
(https://skia-review.googlesource.com/c/19666/).

Bug: skia:
Change-Id: I5fb90ac67b80f8a69a712e7e697d68dcadba5d14
Reviewed-on: https://skia-review.googlesource.com/24180
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-07-21 14:17:03 +00:00
Robert Phillips
467022b186 Reduce dependence on GrSurface's origin field
Unfortunately, GrGPU and its ilk are still using the GrSurface's origin a lot. I will clean that up in a second CL.

Change-Id: Iba729440ce8ea8d24bb7f4e5de55ed576a0f176d
Reviewed-on: https://skia-review.googlesource.com/24700
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-21 14:05:33 +00:00
Brian Osman
594838a44d Delete more event tracing macros (take 2)
Also tried to clean up the comments to be clearer.

Re-land of: https://skia-review.googlesource.com/25364, with some
macros that are used by Flutter restored.

Change-Id: I648815c275dfea2ec83a382a633af8d9f7780512
Reviewed-on: https://skia-review.googlesource.com/25561
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-07-21 13:47:23 +00:00
Robert Phillips
39f1a9589b Revert "Add initial version of GrResourceAllocator's free pool"
This reverts commit 6ec9a4ffe4.

Reason for revert: Maybe breaking iOS bots

Original change's description:
> Add initial version of GrResourceAllocator's free pool
> 
> Change-Id: Ibd60303ffb1d3ea814dad0cee3a521f94da63ca8
> Reviewed-on: https://skia-review.googlesource.com/24262
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: I0195f64503a6f2f7b416f75b57fb9141e5b9f796
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/25540
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-07-21 12:15:14 +00:00
Brian Salomon
650ced07d9 Make GrColorFragmentProcessorAnalysis do all analysis in constructor.
We no longer do piecemeal analysis. This simplifies the change to make FPs have unique ownership.

Change-Id: I4e6b2c23b4277b612dedfc466cee74630a30e997
Reviewed-on: https://skia-review.googlesource.com/25362
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-21 11:48:53 +00:00
Robert Phillips
6ec9a4ffe4 Add initial version of GrResourceAllocator's free pool
Change-Id: Ibd60303ffb1d3ea814dad0cee3a521f94da63ca8
Reviewed-on: https://skia-review.googlesource.com/24262
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-07-21 11:37:23 +00:00
Mike Klein
8b8b2244c3 Revert "Always use raster pipeline for radial gradients"
This reverts commit 5a5207ae67.

Reason for revert: suspect this is the reason for Google3 roll failure.

First color mismatch. Expected ff0006f9, got ff0004fb
Expected output mismatch apps/cereal/skia_expected/radialGradient.png (3392 pixels)


Original change's description:
> Always use raster pipeline for radial gradients
> 
> Change-Id: Id4c9ed45c28becf0e25ed9ff1b3380c7ca65aa4b
> Reviewed-on: https://skia-review.googlesource.com/25363
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org,reed@google.com

Change-Id: I382a22f354d3c0a1465bd9c1555f226b0f1abb58
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/25441
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-07-21 00:11:43 +00:00
Florin Malita
5a5207ae67 Always use raster pipeline for radial gradients
Change-Id: Id4c9ed45c28becf0e25ed9ff1b3380c7ca65aa4b
Reviewed-on: https://skia-review.googlesource.com/25363
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-20 22:51:02 +00:00
Mike Klein
e23e55ef33 retry explore always using SkRasterPipeline for color space transforms
Testing notes:
  $ out/dm --src colorImage --colorImages skimage/colorspace --config srgb 8888 f16
  All images identical on Trashcan.

  Had to revert before because of crashes on iOS, and image diffs
  (32-bit ARM?).

Change-Id: Ic182c0f98b1a846a351499aa53293186bb55f2ad
Original: https://skia-review.googlesource.com/c/19744/
Reviewed-on: https://skia-review.googlesource.com/20680
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-20 22:33:52 +00:00
Mike Klein
d04598734d Revert "Delete more event tracing macros"
This reverts commit fd52317bf6.

Reason for revert: 

../../flutter/shell/common/skia_event_tracer_impl.cc:34:12: error: use of undeclared identifier 'TRACE_EVENT_PHASE_BEGIN'
      case TRACE_EVENT_PHASE_BEGIN:

:(


Original change's description:
> Delete more event tracing macros
> 
> Also tried to clean up the comments to be clearer.
> 
> Bug: skia:
> Change-Id: I9762564a7f59bbfbd6a43afe902596d25ff1d523
> Reviewed-on: https://skia-review.googlesource.com/25364
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=mtklein@chromium.org,brianosman@google.com

Change-Id: I3869991b8aa3d0d67d12fbe76a207a1167801a63
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/25440
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-07-20 22:13:53 +00:00
Brian Osman
fd52317bf6 Delete more event tracing macros
Also tried to clean up the comments to be clearer.

Bug: skia:
Change-Id: I9762564a7f59bbfbd6a43afe902596d25ff1d523
Reviewed-on: https://skia-review.googlesource.com/25364
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-07-20 21:20:22 +00:00
Greg Daniel
8761e0c546 Add ability to pre-initialize vulkan semaphores when flushing surfaces
Bug: skia:
Change-Id: I2d3eb68d2ac6045fe3e30350fdd21140e22861d7
Reviewed-on: https://skia-review.googlesource.com/24645
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-20 20:59:52 +00:00
Brian Salomon
807371c15b Revert "Remove GrBackendRenderTargetDesc in favor of GrBackendRenderTarget."
This reverts commit e2d37c2a07.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Remove GrBackendRenderTargetDesc in favor of GrBackendRenderTarget.
> 
> Also removes a reference to GrBackendTextureDesc in a comment and updates markdown docs.
> 
> Docs-Preview: https://skia.org/?cl=24861
> Bug: skia:
> Change-Id: Ic6490d5ef46953450e6dee69271397bb2b94d0d6
> Reviewed-on: https://skia-review.googlesource.com/24861
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I4b85b529727f0bf5aec21d87e725a8195666e2e5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/25182
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-20 20:48:23 +00:00
Mike Klein
3b59af5bf8 override SkRasterPipelineBlitter::blitRect()
Now that we can natively do 2D blits, it's time to invert the blitH() /
blitRect() who-implements-whom relationship.  blitRect() is our more
fundamental blit.

Change-Id: Ia0ae4a3cd75c7bbfc7bd5b08ff429193ce09a73b
Reviewed-on: https://skia-review.googlesource.com/25361
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-20 20:40:04 +00:00
Brian Salomon
e2d37c2a07 Remove GrBackendRenderTargetDesc in favor of GrBackendRenderTarget.
Also removes a reference to GrBackendTextureDesc in a comment and updates markdown docs.

Docs-Preview: https://skia.org/?cl=24861
Bug: skia:
Change-Id: Ic6490d5ef46953450e6dee69271397bb2b94d0d6
Reviewed-on: https://skia-review.googlesource.com/24861
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-07-20 20:28:57 +00:00
Greg Daniel
dba7e7ccfb Add test for flushing empty surface with semaphores
Bug: skia:
Change-Id: I8d7dcb29c5b4c460aa5137842caf6563448ba5d3
Reviewed-on: https://skia-review.googlesource.com/25181
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-07-20 20:26:28 +00:00
Hal Canary
c7d295ecf7 DM: excercise other SkPDF raster dpis
Change-Id: Ia50661a8391da526d509adbe2d7203866c140b1c
Reviewed-on: https://skia-review.googlesource.com/25321
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-07-20 20:23:54 +00:00
Heather Miller
93d7d23a3a Update Skia milestone to 62
Bug: skia:
Change-Id: I94c906422508a75a859c7c780abf520a6083cbf8
Reviewed-on: https://skia-review.googlesource.com/25360
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
2017-07-20 20:21:23 +00:00
Brian Osman
53136aa93f First stab at JSON event tracer
Not yet thread safe (so it forces threading off).
Builds JSON on the fly, so overhead is certainly bad.
Plan to fix all of that, but this at least "works".

There is now one tracing flag: 'trace'.
- 'debugf' installs the SkDebugf tracer.
- 'atrace' installs the Android ATrace tracer.
- Any other value is interpreted as a filename, and
  produces a JSON file for chrome://tracing.

All three modes work in DM, nanobench, and Viewer.

Bug: skia:
Change-Id: I3fbc22382b99418a508c670be2770195c0a1c364
Reviewed-on: https://skia-review.googlesource.com/24781
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-20 20:11:22 +00:00
Mike Klein
45c16fa82c convert over to 2d-mode
[√] convert all stages to use SkJumper_MemoryCtx / be 2d-compatible
 [√] convert compile to 2d also, remove 1d run/compile
 [√] convert all call sites
 [√] no diffs

Change-Id: I3b806eb8fe0c3ec043359616409f7cd1211a1e43
Reviewed-on: https://skia-review.googlesource.com/24263
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-07-20 19:50:32 +00:00
Hal Canary
3f4671871f SkPDF: handle unsupported colortypes (e.g. F16) uniformly
Change-Id: I1a9e7a749b5be9dc552608493e23a03db9b2c5b1
Reviewed-on: https://skia-review.googlesource.com/25161
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2017-07-20 19:10:22 +00:00
Florin Malita
2371da0731 Use raster pipeline for repeat/mirror radial gradients
(reland of https://skia-review.googlesource.com/c/24283/)

The legacy clamp specialization is still faster, but for repeat and
mirror RP wins (at low color stop counts).

Change-Id: I97a77188e912239f31e94600021b469ce7c40797
Reviewed-on: https://skia-review.googlesource.com/24742
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-20 18:36:52 +00:00
Eric Boren
fe40abc14b Add new Android builder which uses API_LEVEL 26
Bug: skia:6870
Change-Id: Idd9a27518c1123c0a729b4d07461047f5530aae3
Reviewed-on: https://skia-review.googlesource.com/24960
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-07-20 18:25:12 +00:00
Mike Klein
f93552ba44 Target arm64-apple-ios for aarch64 stages.
This should avoid use of x18.

BUG=skia:6873

Change-Id: Iffafe0a48784b03942325517a999ad9bb44c1f99
Reviewed-on: https://skia-review.googlesource.com/25180
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-20 17:58:22 +00:00
Hal Canary
9a0e39054c sk_sp: act as if operator bool() not implicit.
Change-Id: Icd426a162ca0c778db7b3373efcb2c546da50273
Reviewed-on: https://skia-review.googlesource.com/22543
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-07-20 17:43:52 +00:00
Chris Dalton
80ace82be1 Only run GL congs on CCPR bots
Bug: skia:
Change-Id: Ief012869b740bbfb947a77c91c4478a851f2517e
Reviewed-on: https://skia-review.googlesource.com/25062
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-07-20 17:39:52 +00:00
Mike Klein
0fddb2d7c1 Retry cleaning up SkLinearBitmapPipeline.
This is mostly dead code.

In order to make it truly dead, we need to opt drawing unpremul images
into SkRasterPipelineBlitter.  They had been handled by
SkLinearBitmapPipeline, but can't be draw by SkBitmapProcLegacyShader.

Drawing unpremul images is tested by the GM all_variants_8888, which
gave us trouble last time around (serialize-8888 drew right, 8888 wrong)
but now draws fine.  I think this was probably also the root of the
revert, drawing some unpremul image in Chrome's tests somewhere.

Change-Id: I453f9df44ade807316935921cbae82961e2f08aa
Reviewed-on: https://skia-review.googlesource.com/24862
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-20 16:45:52 +00:00
Derek Sollenberger
edfe3dfb47 Add option to ignore SIGINT when running DM on Android.
Bug: skia:6856
Change-Id: Iaaad2c22988cf8058304b7396c7d24eacd2f3edb
Reviewed-on: https://skia-review.googlesource.com/24745
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2017-07-20 16:28:06 +00:00