Disable deferred proxies for M60 branch

Bug: 720325
Change-Id: I0529bbcd592bdc5d5a741731af8a66971e485649
Reviewed-on: https://skia-review.googlesource.com/18239
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This commit is contained in:
Robert Phillips 2017-05-31 15:01:20 -04:00 committed by Skia Commit-Bot
parent 3f3075819f
commit 8bf1f9ffcf
5 changed files with 31 additions and 0 deletions

View File

@ -24,6 +24,8 @@ class GrSurfaceProxyPriv;
class GrTextureOpList; class GrTextureOpList;
class GrTextureProxy; class GrTextureProxy;
//#define SK_DISABLE_DEFERRED_PROXIES 1
// This class replicates the functionality GrIORef<GrSurface> but tracks the // This class replicates the functionality GrIORef<GrSurface> but tracks the
// utilitization for later resource allocation (for the deferred case) and // utilitization for later resource allocation (for the deferred case) and
// forwards on the utilization in the wrapped case // forwards on the utilization in the wrapped case

View File

@ -168,6 +168,21 @@ sk_sp<GrTextureProxy> GrSurfaceProxy::MakeDeferred(GrResourceProvider* resourceP
GrSurfaceDesc copyDesc = desc; GrSurfaceDesc copyDesc = desc;
copyDesc.fSampleCnt = SkTMin(desc.fSampleCnt, caps->maxSampleCount()); copyDesc.fSampleCnt = SkTMin(desc.fSampleCnt, caps->maxSampleCount());
#ifdef SK_DISABLE_DEFERRED_PROXIES
sk_sp<GrTexture> tex;
if (SkBackingFit::kApprox == fit) {
tex.reset(resourceProvider->createApproxTexture(copyDesc, flags));
} else {
tex = resourceProvider->createTexture(copyDesc, budgeted, flags);
}
if (!tex) {
return nullptr;
}
return GrSurfaceProxy::MakeWrapped(std::move(tex));
#else
if (willBeRT) { if (willBeRT) {
// We know anything we instantiate later from this deferred path will be // We know anything we instantiate later from this deferred path will be
// both texturable and renderable // both texturable and renderable
@ -176,6 +191,7 @@ sk_sp<GrTextureProxy> GrSurfaceProxy::MakeDeferred(GrResourceProvider* resourceP
} }
return sk_sp<GrTextureProxy>(new GrTextureProxy(copyDesc, fit, budgeted, nullptr, 0, flags)); return sk_sp<GrTextureProxy>(new GrTextureProxy(copyDesc, fit, budgeted, nullptr, 0, flags));
#endif
} }
sk_sp<GrTextureProxy> GrSurfaceProxy::MakeDeferred(GrResourceProvider* resourceProvider, sk_sp<GrTextureProxy> GrSurfaceProxy::MakeDeferred(GrResourceProvider* resourceProvider,

View File

@ -341,6 +341,8 @@ static const SkRect* no_inset(const RectInfo& enclosing,
insetAmount, halfFilterWidth, 0, name); insetAmount, halfFilterWidth, 0, name);
} }
#ifndef SK_DISABLE_DEFERRED_PROXIES
static void proxy_test(skiatest::Reporter* reporter, GrResourceProvider* resourceProvider) { static void proxy_test(skiatest::Reporter* reporter, GrResourceProvider* resourceProvider) {
GrTextureProducer_TestAccess::DomainMode actualMode, expectedMode; GrTextureProducer_TestAccess::DomainMode actualMode, expectedMode;
SkRect actualDomainRect; SkRect actualDomainRect;
@ -444,3 +446,5 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(DetermineDomainModeTest, reporter, ctxInfo) {
} }
#endif #endif
#endif

View File

@ -45,6 +45,8 @@ int32_t GrIORefProxy::getPendingWriteCnt_TestOnly() const {
return fPendingWrites; return fPendingWrites;
} }
#ifndef SK_DISABLE_DEFERRED_PROXIES
static const int kWidthHeight = 128; static const int kWidthHeight = 128;
static void check_refs(skiatest::Reporter* reporter, static void check_refs(skiatest::Reporter* reporter,
@ -189,3 +191,5 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ProxyRefTest, reporter, ctxInfo) {
} }
#endif #endif
#endif

View File

@ -10,6 +10,9 @@
#include "Test.h" #include "Test.h"
#if SK_SUPPORT_GPU #if SK_SUPPORT_GPU
#ifndef SK_DISABLE_DEFERRED_PROXIES
#include "GrBackendSurface.h" #include "GrBackendSurface.h"
#include "GrRenderTargetPriv.h" #include "GrRenderTargetPriv.h"
#include "GrRenderTargetProxy.h" #include "GrRenderTargetProxy.h"
@ -307,3 +310,5 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ZeroSizedProxyTest, reporter, ctxInfo) {
} }
#endif #endif
#endif