i965: Move intel_context::perf_debug to brw_context.
authorKenneth Graunke <kenneth@whitecape.org>
Wed, 3 Jul 2013 21:41:58 +0000 (14:41 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Tue, 9 Jul 2013 21:09:14 +0000 (14:09 -0700)
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Chris Forbes <chrisf@ijw.co.nz>
Acked-by: Paul Berry <stereotype441@gmail.com>
Acked-by: Anuj Phogat <anuj.phogat@gmail.com>
23 files changed:
src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
src/mesa/drivers/dri/i965/brw_context.c
src/mesa/drivers/dri/i965/brw_context.h
src/mesa/drivers/dri/i965/brw_draw.c
src/mesa/drivers/dri/i965/brw_draw_upload.c
src/mesa/drivers/dri/i965/brw_fs.cpp
src/mesa/drivers/dri/i965/brw_queryobj.c
src/mesa/drivers/dri/i965/brw_shader.cpp
src/mesa/drivers/dri/i965/brw_state_cache.c
src/mesa/drivers/dri/i965/brw_vec4.cpp
src/mesa/drivers/dri/i965/brw_vs.c
src/mesa/drivers/dri/i965/brw_wm.c
src/mesa/drivers/dri/i965/gen6_queryobj.c
src/mesa/drivers/dri/i965/intel_blit.c
src/mesa/drivers/dri/i965/intel_buffer_objects.c
src/mesa/drivers/dri/i965/intel_context.c
src/mesa/drivers/dri/i965/intel_context.h
src/mesa/drivers/dri/i965/intel_fbo.c
src/mesa/drivers/dri/i965/intel_mipmap_tree.c
src/mesa/drivers/dri/i965/intel_pixel_bitmap.c
src/mesa/drivers/dri/i965/intel_pixel_read.c
src/mesa/drivers/dri/i965/intel_tex_copy.c
src/mesa/drivers/dri/i965/intel_tex_subimage.c

index 365c49c1eb1cfc704c306df1eb4fcd1d22b2548c..cd4c59019066cc30bb7d0bfcb14434d845d8ec0e 100644 (file)
@@ -147,7 +147,6 @@ is_color_fast_clear_compatible(struct brw_context *brw,
                                gl_format format,
                                const union gl_color_union *color)
 {
-   struct intel_context *intel = &brw->intel;
    if (_mesa_is_format_integer_color(format))
       return false;
 
index f0f472349d0d7c1b61cb7750141a70e9c05bec25..c05e3d56483caa25b17256a1347767a4459579df 100644 (file)
@@ -464,7 +464,7 @@ brwCreateContext(int api,
       ctx->Const.ContextFlags |= GL_CONTEXT_FLAG_DEBUG_BIT;
 
       /* Turn on some extra GL_ARB_debug_output generation. */
-      intel->perf_debug = true;
+      brw->perf_debug = true;
    }
 
    brw_fs_alloc_reg_sets(brw);
index a6d7abd83f382a28cecf9654b2548dd7952e2552..d1086440444cf8e8859963faa3d06b7a7f4c24db 100644 (file)
@@ -858,6 +858,13 @@ struct brw_context
 
    GLenum reduced_primitive;
 
+   /**
+    * Set if we're either a debug context or the INTEL_DEBUG=perf environment
+    * variable is set, this is the flag indicating to do expensive work that
+    * might lead to a perf_debug() call.
+    */
+   bool perf_debug;
+
    bool emit_state_always;
    bool has_surface_tile_offset;
    bool has_compr4;
index 3514082c4dc2efc76fab3d934861c581aa5ddf64..3651b93e161a5518605e1372e8a35f4f626162fa 100644 (file)
@@ -494,7 +494,7 @@ void brw_draw_prims( struct gl_context *ctx,
                     GLuint max_index,
                     struct gl_transform_feedback_object *tfb_vertcount )
 {
-   struct intel_context *intel = intel_context(ctx);
+   struct brw_context *brw = brw_context(ctx);
    const struct gl_client_array **arrays = ctx->Array._DrawArrays;
 
    if (!_mesa_check_conditional_render(ctx))
index 37cd9b524b54bca406c7f8630b0c4a0d46a3dd1f..3e8fcb1e12ba8077bc7da67277c166f63852dc19 100644 (file)
@@ -800,7 +800,6 @@ const struct brw_tracked_state brw_vertices = {
 static void brw_upload_indices(struct brw_context *brw)
 {
    struct gl_context *ctx = &brw->intel.ctx;
-   struct intel_context *intel = &brw->intel;
    const struct _mesa_index_buffer *index_buffer = brw->ib.ib;
    GLuint ib_size;
    drm_intel_bo *bo = NULL;
index 4ee91f613a2be3c1cc17103526f30ea5dd9a912c..65cb8ab8a9ed1958a8a3a2aefdfa23bc79a10b5a 100644 (file)
@@ -3020,7 +3020,7 @@ brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c,
    bool start_busy = false;
    float start_time = 0;
 
-   if (unlikely(intel->perf_debug)) {
+   if (unlikely(brw->perf_debug)) {
       start_busy = (brw->batch.last_bo &&
                     drm_intel_bo_busy(brw->batch.last_bo));
       start_time = get_time();
@@ -3077,7 +3077,7 @@ brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c,
                                                    simd16_instructions,
                                                    final_assembly_size);
 
-   if (unlikely(intel->perf_debug) && shader) {
+   if (unlikely(brw->perf_debug) && shader) {
       if (shader->compiled_once)
          brw_wm_debug_recompile(brw, prog, &c->key);
       shader->compiled_once = true;
index 6b2f9888c2568d3abfd8fd068795d320c1b09f46..3d84b67d2f7336df7aec11efc3be3c0f90c2332d 100644 (file)
@@ -140,7 +140,7 @@ brw_queryobj_get_results(struct gl_context *ctx,
    if (drm_intel_bo_references(brw->batch.bo, query->bo))
       intel_batchbuffer_flush(brw);
 
-   if (unlikely(intel->perf_debug)) {
+   if (unlikely(brw->perf_debug)) {
       if (drm_intel_bo_busy(query->bo)) {
          perf_debug("Stalling on the GPU waiting for a query object.\n");
       }
index 0c5a6cc872b19755ba0d3f3d60d5bac52800d013..822ce377470728bdf2e6bc6ad023b39ef5027eba 100644 (file)
@@ -182,7 +182,7 @@ brw_link_shader(struct gl_context *ctx, struct gl_shader_program *shProg)
          lower_variable_index_to_cond_assign(shader->ir,
                                              input, output, temp, uniform);
 
-      if (unlikely((intel->perf_debug) && lowered_variable_indexing)) {
+      if (unlikely(brw->perf_debug && lowered_variable_indexing)) {
          perf_debug("Unsupported form of variable indexing in FS; falling "
                     "back to very inefficient code generation\n");
       }
index fa79cc06ce7ee4ef892a02668180dbaccc5aa51e..ddb275fa218e6d484a476aa24d2ad30019f820e4 100644 (file)
@@ -386,8 +386,6 @@ brw_clear_cache(struct brw_context *brw, struct brw_cache *cache)
 void
 brw_state_cache_check_size(struct brw_context *brw)
 {
-   struct intel_context *intel = &brw->intel;
-
    /* un-tuned guess.  Each object is generally a page, so 2000 of them is 8 MB of
     * state cache.
     */
index 04a26ea8aa20074354829fbe3318b751e9d65382..c93670637699b7170562b95e416bcb814ce33013 100644 (file)
@@ -1504,11 +1504,10 @@ brw_vs_emit(struct brw_context *brw,
             void *mem_ctx,
             unsigned *final_assembly_size)
 {
-   struct intel_context *intel = &brw->intel;
    bool start_busy = false;
    float start_time = 0;
 
-   if (unlikely(intel->perf_debug)) {
+   if (unlikely(brw->perf_debug)) {
       start_busy = (brw->batch.last_bo &&
                     drm_intel_bo_busy(brw->batch.last_bo));
       start_time = get_time();
@@ -1548,7 +1547,7 @@ brw_vs_emit(struct brw_context *brw,
    const unsigned *generated =g.generate_assembly(&v.instructions,
                                                   final_assembly_size);
 
-   if (unlikely(intel->perf_debug) && shader) {
+   if (unlikely(brw->perf_debug) && shader) {
       if (shader->compiled_once) {
          brw_vs_debug_recompile(brw, prog, &c->key);
       }
index 15bd1872f016963752287de7e1ddf0df7d36c264..292064ee376b6a54f75270957fe5596d77ab3989 100644 (file)
@@ -334,7 +334,6 @@ do_vs_prog(struct brw_context *brw,
 static bool
 key_debug(struct brw_context *brw, const char *name, int a, int b)
 {
-   struct intel_context *intel = &brw->intel;
    if (a != b) {
       perf_debug("  %s %d->%d\n", name, a, b);
       return true;
@@ -347,7 +346,6 @@ brw_vs_debug_recompile(struct brw_context *brw,
                        struct gl_shader_program *prog,
                        const struct brw_vs_prog_key *key)
 {
-   struct intel_context *intel = &brw->intel;
    struct brw_cache_item *c = NULL;
    const struct brw_vs_prog_key *old_key = NULL;
    bool found = false;
index b36ddbad4eaa815bea1589514aa5169664b83fcb..603c63644c30fdb6886e885bae7489ca1b8efe8e 100644 (file)
@@ -140,7 +140,6 @@ bool do_wm_prog(struct brw_context *brw,
                struct brw_fragment_program *fp,
                struct brw_wm_prog_key *key)
 {
-   struct intel_context *intel = &brw->intel;
    struct brw_wm_compile *c;
    const GLuint *program;
    struct gl_shader *fs = NULL;
@@ -205,7 +204,6 @@ bool do_wm_prog(struct brw_context *brw,
 static bool
 key_debug(struct brw_context *brw, const char *name, int a, int b)
 {
-   struct intel_context *intel = &brw->intel;
    if (a != b) {
       perf_debug("  %s %d->%d\n", name, a, b);
       return true;
@@ -244,7 +242,6 @@ brw_wm_debug_recompile(struct brw_context *brw,
                        struct gl_shader_program *prog,
                        const struct brw_wm_prog_key *key)
 {
-   struct intel_context *intel = &brw->intel;
    struct brw_cache_item *c = NULL;
    const struct brw_wm_prog_key *old_key = NULL;
    bool found = false;
index a3af19e15359f2e8e88089004e0fb9f684e2ad68..814363068a238b72d158fc809f0239ba6d11842e 100644 (file)
@@ -157,7 +157,6 @@ gen6_queryobj_get_results(struct gl_context *ctx,
                           struct brw_query_object *query)
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
 
    if (query->bo == NULL)
       return;
@@ -169,7 +168,7 @@ gen6_queryobj_get_results(struct gl_context *ctx,
    if (drm_intel_bo_references(brw->batch.bo, query->bo))
       intel_batchbuffer_flush(brw);
 
-   if (unlikely(intel->perf_debug)) {
+   if (unlikely(brw->perf_debug)) {
       if (drm_intel_bo_busy(query->bo)) {
          perf_debug("Stalling on the GPU waiting for a query object.\n");
       }
index 3d2181de8b2b86d6998c9727d93078bae4e3f57e..9806e5001e6e21b983a472bac9c6dc682db6e861 100644 (file)
@@ -158,7 +158,6 @@ intel_miptree_blit(struct brw_context *brw,
                    uint32_t width, uint32_t height,
                    GLenum logicop)
 {
-   struct intel_context *intel = &brw->intel;
    /* No sRGB decode or encode is done by the hardware blitter, which is
     * consistent with what we want in the callers (glCopyTexSubImage(),
     * glBlitFramebuffer(), texture validation, etc.).
index aae9f9e0088eb1c226a3c44356d40775fb09bc00..0fcb990d0fad9930ac087b1b9c53edd621fc2a8a 100644 (file)
@@ -162,7 +162,6 @@ intel_bufferobj_subdata(struct gl_context * ctx,
                         const GLvoid * data, struct gl_buffer_object *obj)
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
    struct intel_buffer_object *intel_obj = intel_buffer_object(obj);
    bool busy;
 
@@ -246,7 +245,6 @@ intel_bufferobj_map_range(struct gl_context * ctx,
                          GLbitfield access, struct gl_buffer_object *obj)
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
    struct intel_buffer_object *intel_obj = intel_buffer_object(obj);
 
    assert(intel_obj);
index 3ef6d2cf85cc01513eae869356a9e990df908617..2839d6dd91ab4bbc2dac73debba4a090aca2e6d8 100644 (file)
@@ -569,7 +569,7 @@ intelInitContext(struct brw_context *brw,
       INTEL_DEBUG &= ~DEBUG_SHADER_TIME;
    }
    if (INTEL_DEBUG & DEBUG_PERF)
-      intel->perf_debug = true;
+      brw->perf_debug = true;
 
    if (INTEL_DEBUG & DEBUG_AUB)
       drm_intel_bufmgr_gem_set_aub_dump(brw->bufmgr, true);
index d2eb7463bc2079920b2541bb13b8b7553c6e81e3..2713eb852a6855cc7347b45dc4224f2aa5ee5a33 100644 (file)
@@ -129,13 +129,6 @@ struct intel_context
    bool has_llc;
    bool has_swizzling;
 
-   /**
-    * Set if we're either a debug context or the INTEL_DEBUG=perf environment
-    * variable is set, this is the flag indicating to do expensive work that
-    * might lead to a perf_debug() call.
-    */
-   bool perf_debug;
-
    struct {
       drm_intel_bo *bo;
       GLuint offset;
@@ -258,8 +251,8 @@ extern int INTEL_DEBUG;
    static GLuint msg_id = 0;                                    \
    if (unlikely(INTEL_DEBUG & DEBUG_PERF))                      \
       dbg_printf(__VA_ARGS__);                                  \
-   if (intel->perf_debug)                                       \
-      _mesa_gl_debug(&intel->ctx, &msg_id,                      \
+   if (brw->perf_debug)                                         \
+      _mesa_gl_debug(&brw->intel.ctx, &msg_id,                  \
                      MESA_DEBUG_TYPE_PERFORMANCE,               \
                      MESA_DEBUG_SEVERITY_MEDIUM,                \
                      __VA_ARGS__);                              \
index def162d10d0df32c42f65cf1d6c5c22e6c686b5e..89ee59e8e5fc44c13d447bd7be3835a7d79d73ff 100644 (file)
@@ -668,7 +668,6 @@ intel_blit_framebuffer_with_blitter(struct gl_context *ctx,
                                     GLbitfield mask, GLenum filter)
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
 
    if (mask & GL_COLOR_BUFFER_BIT) {
       GLint i;
index 460779db1c0ad05bd38fd9418a640dc64793bfa8..6ad8044d8c08277caf08031e73c0d245c92e141f 100644 (file)
@@ -1045,7 +1045,6 @@ intel_miptree_copy_slice(struct brw_context *brw,
                         int depth)
 
 {
-   struct intel_context *intel = &brw->intel;
    gl_format format = src_mt->format;
    uint32_t width = src_mt->level[level].width;
    uint32_t height = src_mt->level[level].height;
index c7e1512e3b8989715b77d95a80db2f266da819c9..5398cb878ef68fd620233356bc1c6ae0c0bbe188 100644 (file)
@@ -177,7 +177,6 @@ do_blit_bitmap( struct gl_context *ctx,
                const GLubyte *bitmap )
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
    struct gl_framebuffer *fb = ctx->DrawBuffer;
    struct intel_renderbuffer *irb;
    GLfloat tmpColor[4];
index b12e349458cbfeeb93cbcacc2c830ea7b1ccd9d1..d9f48dd962818a88f0133ad0e3287b2f19c750a0 100644 (file)
@@ -165,7 +165,6 @@ intelReadPixels(struct gl_context * ctx,
                 const struct gl_pixelstore_attrib *pack, GLvoid * pixels)
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
    bool dirty;
 
    DBG("%s\n", __FUNCTION__);
index fece5a9a83031df05bdf8a55967106c8739d9487..189aa10532a77213473a460cfd3fb30398f0c290 100644 (file)
@@ -98,7 +98,6 @@ intelCopyTexSubImage(struct gl_context *ctx, GLuint dims,
                      GLsizei width, GLsizei height)
 {
    struct brw_context *brw = brw_context(ctx);
-   struct intel_context *intel = intel_context(ctx);
 
    /* Try BLORP first.  It can handle almost everything. */
    if (brw_blorp_copytexsubimage(brw, rb, texImage, slice, x, y,
index b5bf477848b4d73ce2f1688256570f6d72d9e8bb..008ac8d7efc5b04fe1bd0a57e376fbcf65d23f92 100644 (file)
@@ -220,7 +220,7 @@ intel_texsubimage_tiled_memcpy(struct gl_context * ctx,
       intel_batchbuffer_flush(brw);
    }
 
-   if (unlikely(intel->perf_debug)) {
+   if (unlikely(brw->perf_debug)) {
       if (drm_intel_bo_busy(bo)) {
          perf_debug("Mapping a busy BO, causing a stall on the GPU.\n");
       }