Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 858e12c

Browse files
egdanielSkia Commit-Bot
authored andcommitted
Remove unused GrSignalSemaphoreOp and forced flushed on semaphore insertion.
Bug: skia: Change-Id: Iad0e6468552606d7528aaf0307948fe84f85a0d8 Reviewed-on: https://skia-review.googlesource.com/c/175256 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
1 parent f0b6044 commit 858e12c

File tree

10 files changed

+11
-60
lines changed

10 files changed

+11
-60
lines changed

src/gpu/GrGpu.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,7 @@ GrSemaphoresSubmitted GrGpu::finishFlush(int numSemaphores,
369369
} else {
370370
semaphore = resourceProvider->makeSemaphore(false);
371371
}
372-
this->insertSemaphore(semaphore, false);
372+
this->insertSemaphore(semaphore);
373373

374374
if (!backendSemaphores[i].isInitialized()) {
375375
backendSemaphores[i] = semaphore->backendSemaphore();

src/gpu/GrGpu.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ class GrGpu : public SkRefCnt {
267267
virtual sk_sp<GrSemaphore> wrapBackendSemaphore(const GrBackendSemaphore& semaphore,
268268
GrResourceProvider::SemaphoreWrapType wrapType,
269269
GrWrapOwnership ownership) = 0;
270-
virtual void insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush = false) = 0;
270+
virtual void insertSemaphore(sk_sp<GrSemaphore> semaphore) = 0;
271271
virtual void waitSemaphore(sk_sp<GrSemaphore> semaphore) = 0;
272272

273273
/**

src/gpu/gl/GrGLGpu.cpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4333,16 +4333,12 @@ sk_sp<GrSemaphore> GrGLGpu::wrapBackendSemaphore(const GrBackendSemaphore& semap
43334333
return GrGLSemaphore::MakeWrapped(this, semaphore.glSync(), ownership);
43344334
}
43354335

4336-
void GrGLGpu::insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush) {
4336+
void GrGLGpu::insertSemaphore(sk_sp<GrSemaphore> semaphore) {
43374337
GrGLSemaphore* glSem = static_cast<GrGLSemaphore*>(semaphore.get());
43384338

43394339
GrGLsync sync;
43404340
GL_CALL_RET(sync, FenceSync(GR_GL_SYNC_GPU_COMMANDS_COMPLETE, 0));
43414341
glSem->setSync(sync);
4342-
4343-
if (flush) {
4344-
GL_CALL(Flush());
4345-
}
43464342
}
43474343

43484344
void GrGLGpu::waitSemaphore(sk_sp<GrSemaphore> semaphore) {
@@ -4362,7 +4358,9 @@ void GrGLGpu::insertEventMarker(const char* msg) {
43624358
sk_sp<GrSemaphore> GrGLGpu::prepareTextureForCrossContextUsage(GrTexture* texture) {
43634359
// Set up a semaphore to be signaled once the data is ready, and flush GL
43644360
sk_sp<GrSemaphore> semaphore = this->makeSemaphore(true);
4365-
this->insertSemaphore(semaphore, true);
4361+
this->insertSemaphore(semaphore);
4362+
// We must call flush here to make sure the GrGLSync object gets created and sent to the gpu.
4363+
GL_CALL(Flush());
43664364

43674365
return semaphore;
43684366
}

src/gpu/gl/GrGLGpu.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ class GrGLGpu final : public GrGpu, private GrMesh::SendToGpuImpl {
163163
sk_sp<GrSemaphore> wrapBackendSemaphore(const GrBackendSemaphore& semaphore,
164164
GrResourceProvider::SemaphoreWrapType wrapType,
165165
GrWrapOwnership ownership) override;
166-
void insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush) override;
166+
void insertSemaphore(sk_sp<GrSemaphore> semaphore) override;
167167
void waitSemaphore(sk_sp<GrSemaphore> semaphore) override;
168168

169169
sk_sp<GrSemaphore> prepareTextureForCrossContextUsage(GrTexture*) override;

src/gpu/mock/GrMockGpu.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class GrMockGpu : public GrGpu {
4141
sk_sp<GrSemaphore> wrapBackendSemaphore(const GrBackendSemaphore& semaphore,
4242
GrResourceProvider::SemaphoreWrapType wrapType,
4343
GrWrapOwnership ownership) override { return nullptr; }
44-
void insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush) override {}
44+
void insertSemaphore(sk_sp<GrSemaphore> semaphore) override {}
4545
void waitSemaphore(sk_sp<GrSemaphore> semaphore) override {}
4646
sk_sp<GrSemaphore> prepareTextureForCrossContextUsage(GrTexture*) override { return nullptr; }
4747

src/gpu/mtl/GrMtlGpu.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ class GrMtlGpu : public GrGpu {
108108
sk_sp<GrSemaphore> wrapBackendSemaphore(const GrBackendSemaphore& semaphore,
109109
GrResourceProvider::SemaphoreWrapType wrapType,
110110
GrWrapOwnership ownership) override { return nullptr; }
111-
void insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush) override {}
111+
void insertSemaphore(sk_sp<GrSemaphore> semaphore) override {}
112112
void waitSemaphore(sk_sp<GrSemaphore> semaphore) override {}
113113
sk_sp<GrSemaphore> prepareTextureForCrossContextUsage(GrTexture*) override { return nullptr; }
114114

src/gpu/ops/GrSemaphoreOp.cpp

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -13,37 +13,6 @@
1313
#include "GrMemoryPool.h"
1414
#include "GrOpFlushState.h"
1515

16-
class GrSignalSemaphoreOp final : public GrSemaphoreOp {
17-
public:
18-
DEFINE_OP_CLASS_ID
19-
20-
static std::unique_ptr<GrOp> Make(GrContext* context,
21-
sk_sp<GrSemaphore> semaphore,
22-
GrRenderTargetProxy* proxy,
23-
bool forceFlush) {
24-
GrOpMemoryPool* pool = context->contextPriv().opMemoryPool();
25-
26-
return pool->allocate<GrSignalSemaphoreOp>(std::move(semaphore), proxy, forceFlush);
27-
}
28-
29-
const char* name() const override { return "SignalSemaphore"; }
30-
31-
private:
32-
friend class GrOpMemoryPool; // for ctor
33-
34-
explicit GrSignalSemaphoreOp(sk_sp<GrSemaphore> semaphore, GrRenderTargetProxy* proxy,
35-
bool forceFlush)
36-
: INHERITED(ClassID(), std::move(semaphore), proxy), fForceFlush(forceFlush) {}
37-
38-
void onExecute(GrOpFlushState* state, const SkRect& chainBounds) override {
39-
state->gpu()->insertSemaphore(fSemaphore, fForceFlush);
40-
}
41-
42-
bool fForceFlush;
43-
44-
typedef GrSemaphoreOp INHERITED;
45-
};
46-
4716
class GrWaitSemaphoreOp final : public GrSemaphoreOp {
4817
public:
4918
DEFINE_OP_CLASS_ID
@@ -73,13 +42,6 @@ class GrWaitSemaphoreOp final : public GrSemaphoreOp {
7342

7443
////////////////////////////////////////////////////////////////////////////////
7544

76-
std::unique_ptr<GrOp> GrSemaphoreOp::MakeSignal(GrContext* context,
77-
sk_sp<GrSemaphore> semaphore,
78-
GrRenderTargetProxy* proxy,
79-
bool forceFlush) {
80-
return GrSignalSemaphoreOp::Make(context, std::move(semaphore), proxy, forceFlush);
81-
}
82-
8345
std::unique_ptr<GrOp> GrSemaphoreOp::MakeWait(GrContext* context,
8446
sk_sp<GrSemaphore> semaphore,
8547
GrRenderTargetProxy* proxy) {

src/gpu/ops/GrSemaphoreOp.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,6 @@
1616

1717
class GrSemaphoreOp : public GrOp {
1818
public:
19-
static std::unique_ptr<GrOp> MakeSignal(GrContext*,
20-
sk_sp<GrSemaphore>,
21-
GrRenderTargetProxy*,
22-
bool forceFlush);
23-
2419
static std::unique_ptr<GrOp> MakeWait(GrContext*,
2520
sk_sp<GrSemaphore>,
2621
GrRenderTargetProxy*);

src/gpu/vk/GrVkGpu.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2112,18 +2112,14 @@ sk_sp<GrSemaphore> GrVkGpu::wrapBackendSemaphore(const GrBackendSemaphore& semap
21122112
return GrVkSemaphore::MakeWrapped(this, semaphore.vkSemaphore(), wrapType, ownership);
21132113
}
21142114

2115-
void GrVkGpu::insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush) {
2115+
void GrVkGpu::insertSemaphore(sk_sp<GrSemaphore> semaphore) {
21162116
GrVkSemaphore* vkSem = static_cast<GrVkSemaphore*>(semaphore.get());
21172117

21182118
GrVkSemaphore::Resource* resource = vkSem->getResource();
21192119
if (resource->shouldSignal()) {
21202120
resource->ref();
21212121
fSemaphoresToSignal.push_back(resource);
21222122
}
2123-
2124-
if (flush) {
2125-
this->submitCommandBuffer(kSkip_SyncQueue);
2126-
}
21272123
}
21282124

21292125
void GrVkGpu::waitSemaphore(sk_sp<GrSemaphore> semaphore) {

src/gpu/vk/GrVkGpu.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ class GrVkGpu : public GrGpu {
146146
sk_sp<GrSemaphore> wrapBackendSemaphore(const GrBackendSemaphore& semaphore,
147147
GrResourceProvider::SemaphoreWrapType wrapType,
148148
GrWrapOwnership ownership) override;
149-
void insertSemaphore(sk_sp<GrSemaphore> semaphore, bool flush) override;
149+
void insertSemaphore(sk_sp<GrSemaphore> semaphore) override;
150150
void waitSemaphore(sk_sp<GrSemaphore> semaphore) override;
151151

152152
// These match the definitions in SkDrawable, from whence they came

0 commit comments

Comments
 (0)