From cc8eb60c486eaf397685c60b28998682025fee1a Mon Sep 17 00:00:00 2001 From: Yuqian Li Date: Tue, 1 Aug 2017 17:43:30 +0000 Subject: Revert "Revert "Revert "Add support for semaphores to be inserted on GrContext flush""" This reverts commit 876aed8758b7109574999ffac43b1ea47f359bd7. Reason for revert: the bots seem to be unhappily red with this CL Original change's description: > Revert "Revert "Add support for semaphores to be inserted on GrContext flush"" > > This reverts commit 8724b4609996eb6369b454611e31b065f3d8d2cf. > > Reason for revert: Creating a test CL to see what happens on the bots > > Original change's description: > > Revert "Add support for semaphores to be inserted on GrContext flush" > > > > This reverts commit cd1416efbc7af6f115dbaa09dce48e075d1d96ca. > > > > 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 > > > Commit-Queue: Greg Daniel > > > > 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 > > Commit-Queue: Mike Reed > > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia: > Change-Id: I5edbeaa0769670ee58f362f0ccaa78319410aa6c > Reviewed-on: https://skia-review.googlesource.com/26160 > Reviewed-by: Brian Salomon > Commit-Queue: Greg Daniel TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com Change-Id: I22fd6febafe70489a5fdb695c6f4263368eb423d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/29422 Reviewed-by: Yuqian Li Commit-Queue: Yuqian Li --- include/core/SkSurface.h | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) (limited to 'include/core') diff --git a/include/core/SkSurface.h b/include/core/SkSurface.h index a531c4229a..4a8d81205f 100644 --- a/include/core/SkSurface.h +++ b/include/core/SkSurface.h @@ -12,8 +12,6 @@ #include "SkImage.h" #include "SkSurfaceProps.h" -#include "GrTypes.h" - class SkCanvas; class SkPaint; class GrBackendRenderTarget; @@ -331,21 +329,16 @@ public: * If it is not initialized, a new semaphore is created and the GrBackendSemaphore object * is initialized with that semaphore. * - * The client will own and be responsible for deleting the underlying semaphores that are stored - * and returned in initialized GrBackendSemaphore objects. The GrBackendSemaphore objects - * themselves can be deleted as soon as this function returns. - * * If the backend API is OpenGL only uninitialized GrBackendSemaphores are supported. * If the backend API is Vulkan either initialized or unitialized semaphores are supported. * If unitialized, the semaphores which are created will be valid for use only with the VkDevice * with which they were created. * - * If this call returns GrSemaphoresSubmited::kNo, the GPU backend will not have created or - * added any semaphores to signal on the GPU. Thus the client should not have the GPU wait on - * any of the semaphores. However, any pending surface IO will still be flushed. + * If this call returns false, the GPU backend will not have created or added any semaphores to + * signal. Thus the array of semaphores will remain uninitialized. However, any pending surface + * IO will still be flush. */ - GrSemaphoresSubmitted flushAndSignalSemaphores(int numSemaphores, - GrBackendSemaphore signalSemaphores[]); + bool flushAndSignalSemaphores(int numSemaphores, GrBackendSemaphore* signalSemaphores); /** * Inserts a list of GPU semaphores that the current backend 3D API must wait on before -- cgit v1.2.3