i965: Move INTEL_DEBUG variable parsing to screen creation time
v2: Do bufmgr set_debug and set_aub_dump at screen time as well. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -822,7 +822,9 @@ brwCreateContext(gl_api api,
|
||||
_mesa_meta_init(ctx);
|
||||
|
||||
brw_process_driconf_options(brw);
|
||||
brw_process_intel_debug_variable(brw);
|
||||
|
||||
if (INTEL_DEBUG & DEBUG_PERF)
|
||||
brw->perf_debug = true;
|
||||
|
||||
if (brw->gen >= 8 && !(INTEL_DEBUG & DEBUG_VEC4VS))
|
||||
brw->scalar_vs = true;
|
||||
|
@@ -88,25 +88,22 @@ intel_debug_flag_for_shader_stage(gl_shader_stage stage)
|
||||
}
|
||||
|
||||
void
|
||||
brw_process_intel_debug_variable(struct brw_context *brw)
|
||||
brw_process_intel_debug_variable(struct intel_screen *screen)
|
||||
{
|
||||
uint64_t intel_debug = driParseDebugString(getenv("INTEL_DEBUG"), debug_control);
|
||||
(void) p_atomic_cmpxchg(&INTEL_DEBUG, 0, intel_debug);
|
||||
|
||||
if (INTEL_DEBUG & DEBUG_BUFMGR)
|
||||
dri_bufmgr_set_debug(brw->bufmgr, true);
|
||||
dri_bufmgr_set_debug(screen->bufmgr, true);
|
||||
|
||||
if ((INTEL_DEBUG & DEBUG_SHADER_TIME) && brw->gen < 7) {
|
||||
if ((INTEL_DEBUG & DEBUG_SHADER_TIME) && screen->devinfo->gen < 7) {
|
||||
fprintf(stderr,
|
||||
"shader_time debugging requires gen7 (Ivybridge) or better.\n");
|
||||
INTEL_DEBUG &= ~DEBUG_SHADER_TIME;
|
||||
}
|
||||
|
||||
if (INTEL_DEBUG & DEBUG_PERF)
|
||||
brw->perf_debug = true;
|
||||
|
||||
if (INTEL_DEBUG & DEBUG_AUB)
|
||||
drm_intel_bufmgr_gem_set_aub_dump(brw->bufmgr, true);
|
||||
drm_intel_bufmgr_gem_set_aub_dump(screen->bufmgr, true);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -114,8 +114,8 @@ extern uint64_t INTEL_DEBUG;
|
||||
|
||||
extern uint64_t intel_debug_flag_for_shader_stage(gl_shader_stage stage);
|
||||
|
||||
struct brw_context;
|
||||
struct intel_screen;
|
||||
|
||||
extern void brw_process_intel_debug_variable(struct brw_context *brw);
|
||||
extern void brw_process_intel_debug_variable(struct intel_screen *);
|
||||
|
||||
extern bool brw_env_var_as_boolean(const char *var_name, bool default_value);
|
||||
|
@@ -1372,6 +1372,8 @@ __DRIconfig **intelInitScreen2(__DRIscreen *psp)
|
||||
if (!intelScreen->devinfo)
|
||||
return false;
|
||||
|
||||
brw_process_intel_debug_variable(intelScreen);
|
||||
|
||||
intelScreen->hw_must_use_separate_stencil = intelScreen->devinfo->gen >= 7;
|
||||
|
||||
intelScreen->hw_has_swizzling = intel_detect_swizzling(intelScreen);
|
||||
|
Reference in New Issue
Block a user