Move atomicinc in GrTracing to behind branch

TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1571603003

Review URL: https://codereview.chromium.org/1571603003
This commit is contained in:
joshualitt 2016-01-11 08:30:47 -08:00 committed by Commit bot
parent 6d0872d9bd
commit 4897ff20fc
3 changed files with 36 additions and 64 deletions

View File

@ -118,11 +118,7 @@ public:
bool twoSidedStencilSupport() const { return fTwoSidedStencilSupport; } bool twoSidedStencilSupport() const { return fTwoSidedStencilSupport; }
bool stencilWrapOpsSupport() const { return fStencilWrapOpsSupport; } bool stencilWrapOpsSupport() const { return fStencilWrapOpsSupport; }
bool discardRenderTargetSupport() const { return fDiscardRenderTargetSupport; } bool discardRenderTargetSupport() const { return fDiscardRenderTargetSupport; }
#if GR_FORCE_GPU_TRACE_DEBUGGING
bool gpuTracingSupport() const { return true; }
#else
bool gpuTracingSupport() const { return fGpuTracingSupport; } bool gpuTracingSupport() const { return fGpuTracingSupport; }
#endif
bool compressedTexSubImageSupport() const { return fCompressedTexSubImageSupport; } bool compressedTexSubImageSupport() const { return fCompressedTexSubImageSupport; }
bool oversizedStencilSupport() const { return fOversizedStencilSupport; } bool oversizedStencilSupport() const { return fOversizedStencilSupport; }
bool textureBarrierSupport() const { return fTextureBarrierSupport; } bool textureBarrierSupport() const { return fTextureBarrierSupport; }

View File

@ -185,12 +185,4 @@ typedef unsigned __int64 uint64_t;
#endif #endif
#endif #endif
/**
* GR_FORCE_GPU_TRACE_DEBUGGING will force gpu tracing/debug markers to be turned on. The trace
* markers will be printed out instead of making the backend calls to push and pop them.
*/
#if !defined(GR_FORCE_GPU_TRACE_DEBUGGING)
#define GR_FORCE_GPU_TRACE_DEBUGGING 0
#endif
#endif #endif

View File

@ -60,72 +60,56 @@ private:
* cpu and gpu (if gpu tracing enabled) for the current scope. * cpu and gpu (if gpu tracing enabled) for the current scope.
* marker is of type const char* and target is of type GrDrawTarget* * marker is of type const char* and target is of type GrDrawTarget*
*/ */
#define GR_CREATE_TRACE_MARKER(name, target) \ #define GR_CREATE_TRACE_MARKER(name, target) \
INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED(name, target) /* Chromium tracing */ \
static int SK_MACRO_APPEND_LINE(name_counter) = 0; \
bool SK_MACRO_APPEND_LINE(gpuTracingEnabled); \
TRACE_EVENT_CATEGORY_GROUP_ENABLED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"), \
&SK_MACRO_APPEND_LINE(gpuTracingEnabled)); \
if (SK_MACRO_APPEND_LINE(gpuTracingEnabled)) { \
INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED(name, SK_MACRO_APPEND_LINE(name_counter), target) \
} \
INTERNAL_TRACE_EVENT_ADD_SCOPED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"), name, \
"id", SK_MACRO_APPEND_LINE(name_counter));
#define GR_CREATE_TRACE_MARKER1(name, target, arg1_name, arg1_val) \ #define INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED(name, name_counter, target) \
INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED(name, target, arg1_name, arg1_val)
#define INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED(name, target, ...) \
static const char* SK_MACRO_APPEND_LINE(static_name) = name; \ static const char* SK_MACRO_APPEND_LINE(static_name) = name; \
static int SK_MACRO_APPEND_LINE(name_counter) = 0; \
INTERNAL_GR_CREATE_TRACE_MARKER(SK_MACRO_APPEND_LINE(static_name), \ INTERNAL_GR_CREATE_TRACE_MARKER(SK_MACRO_APPEND_LINE(static_name), \
SK_MACRO_APPEND_LINE(name_counter), \ name_counter, \
target, ##__VA_ARGS__) \ target) \
sk_atomic_inc(&SK_MACRO_APPEND_LINE(name_counter)); sk_atomic_inc(&name_counter);
#define INTERNAL_GR_CREATE_TRACE_MARKER(name, name_counter, target, ...) \ #define INTERNAL_GR_CREATE_TRACE_MARKER(name, name_counter, target, ...) \
GR_CREATE_GPU_TRACE_MARKER(name, name_counter, target) \ GR_CREATE_GPU_TRACE_MARKER(name, name_counter, target) \
INTERNAL_TRACE_EVENT_ADD_SCOPED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"),name, \
"id", name_counter, ##__VA_ARGS__);
#if GR_FORCE_GPU_TRACE_DEBUGGING #define GR_CREATE_GPU_TRACE_MARKER(name, name_counter, target) \
#define GR_CREATE_GPU_TRACE_MARKER(name, name_counter, target) \ GrGpuTraceMarkerGenerator SK_MACRO_APPEND_LINE(TMG)(target); \
GrGpuTraceMarkerGenerator SK_MACRO_APPEND_LINE(TMG)(target); \ SK_MACRO_APPEND_LINE(TMG).initialize(name, &name_counter); \
SK_MACRO_APPEND_LINE(TMG).initialize(name, &name_counter);
#else
#define GR_CREATE_GPU_TRACE_MARKER(name, name_counter, target) \
GrGpuTraceMarkerGenerator SK_MACRO_APPEND_LINE(TMG)(target); \
bool SK_MACRO_APPEND_LINE(gpuTracingEnabled); \
TRACE_EVENT_CATEGORY_GROUP_ENABLED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"), \
&SK_MACRO_APPEND_LINE(gpuTracingEnabled)); \
if (SK_MACRO_APPEND_LINE(gpuTracingEnabled)) { \
SK_MACRO_APPEND_LINE(TMG).initialize(name, &name_counter); \
}
#endif
#define GR_CREATE_TRACE_MARKER_CONTEXT(name, context) \ #define GR_CREATE_TRACE_MARKER_CONTEXT(name, context) \
INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED_C(name, context) /* Chromium tracing */ \
static int SK_MACRO_APPEND_LINE(name_counter) = 0; \
bool SK_MACRO_APPEND_LINE(gpuTracingEnabled); \
TRACE_EVENT_CATEGORY_GROUP_ENABLED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"), \
&SK_MACRO_APPEND_LINE(gpuTracingEnabled)); \
if (SK_MACRO_APPEND_LINE(gpuTracingEnabled)) { \
INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED_C(name, SK_MACRO_APPEND_LINE(name_counter), context)\
} \
INTERNAL_TRACE_EVENT_ADD_SCOPED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"), name, \
"id", SK_MACRO_APPEND_LINE(name_counter));
#define GR_CREATE_TRACE_MARKER_CONTEXT1(name, context, arg1_name, arg1_val) \ #define INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED_C(name, name_counter, context) \
INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED_C(name, context, arg1_name, arg1_val)
#define INTERNAL_GR_CREATE_TRACE_MARKER_SCOPED_C(name, context, ...) \
static const char* SK_MACRO_APPEND_LINE(static_name) = name; \ static const char* SK_MACRO_APPEND_LINE(static_name) = name; \
static int SK_MACRO_APPEND_LINE(name_counter) = 0; \
INTERNAL_GR_CREATE_TRACE_MARKER_C(SK_MACRO_APPEND_LINE(static_name), \ INTERNAL_GR_CREATE_TRACE_MARKER_C(SK_MACRO_APPEND_LINE(static_name), \
SK_MACRO_APPEND_LINE(name_counter), \ name_counter, \
context, ##__VA_ARGS__) \ context) \
sk_atomic_inc(&SK_MACRO_APPEND_LINE(name_counter)); sk_atomic_inc(&name_counter);
#define INTERNAL_GR_CREATE_TRACE_MARKER_C(name, name_counter, context, ...) \ #define INTERNAL_GR_CREATE_TRACE_MARKER_C(name, name_counter, context, ...) \
GR_CREATE_GPU_TRACE_MARKER_C(name, name_counter, context) \ GR_CREATE_GPU_TRACE_MARKER_C(name, name_counter, context) \
INTERNAL_TRACE_EVENT_ADD_SCOPED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"),name, \
"id", name_counter, ##__VA_ARGS__);
#if GR_FORCE_GPU_TRACE_DEBUGGING #define GR_CREATE_GPU_TRACE_MARKER_C(name, name_counter, context) \
#define GR_CREATE_GPU_TRACE_MARKER_C(name, name_counter, context) \ GrGpuTraceMarkerGeneratorContext SK_MACRO_APPEND_LINE(TMG)(context); \
GrGpuTraceMarkerGeneratorContext SK_MACRO_APPEND_LINE(TMG)(context); \ SK_MACRO_APPEND_LINE(TMG).initialize(name, &name_counter); \
SK_MACRO_APPEND_LINE(TMG).initialize(name, &name_counter);
#else
#define GR_CREATE_GPU_TRACE_MARKER_C(name, name_counter, context) \
GrGpuTraceMarkerGeneratorContext SK_MACRO_APPEND_LINE(TMG)(context); \
bool SK_MACRO_APPEND_LINE(gpuTracingEnabled); \
TRACE_EVENT_CATEGORY_GROUP_ENABLED(TRACE_DISABLED_BY_DEFAULT("skia.gpu"), \
&SK_MACRO_APPEND_LINE(gpuTracingEnabled)); \
if (SK_MACRO_APPEND_LINE(gpuTracingEnabled)) { \
SK_MACRO_APPEND_LINE(TMG).initialize(name, &name_counter); \
}
#endif
#endif #endif