gallium: get rid of pipe_screen_config::flags

They were set only by the DRI state tracker, which is problematic
when radeonsi is used with different state trackers in the same
process.

Also, we don't need them anymore.

Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
Nicolai Hähnle 2017-08-03 15:01:09 +02:00
parent 12ce39d3de
commit 9fb8476e67
6 changed files with 7 additions and 23 deletions

View file

@ -390,12 +390,6 @@ enum pipe_flush_flags
*/
#define PIPE_CONTEXT_PREFER_THREADED (1 << 3)
/**
* Implicit and explicit derivatives after KILL behave as if KILL didn't
* happen.
*/
#define PIPE_SCREEN_ENABLE_CORRECT_TGSI_DERIVATIVES_AFTER_KILL (1 << 0)
/**
* Flags for pipe_context::memory_barrier.

View file

@ -365,7 +365,6 @@ struct pipe_screen {
* Global configuration options for screen creation.
*/
struct pipe_screen_config {
unsigned flags;
const struct driOptionCache *options;
};

View file

@ -2073,8 +2073,7 @@ dri2_init_screen(__DRIscreen * sPriv)
if (pipe_loader_drm_probe_fd(&screen->dev, fd)) {
struct pipe_screen_config config = {};
config.flags =
dri_init_options_get_screen_flags(screen);
dri_init_options(screen);
pscreen = pipe_loader_create_screen(screen->dev, &config);
}
@ -2169,7 +2168,7 @@ dri_kms_init_screen(__DRIscreen * sPriv)
struct pipe_screen_config config = {};
config.flags = dri_init_options_get_screen_flags(screen);
dri_init_options(screen);
if (pipe_loader_sw_probe_kms(&screen->dev, fd))
pscreen = pipe_loader_create_screen(screen->dev, &config);

View file

@ -478,20 +478,12 @@ dri_set_background_context(struct st_context_iface *st,
hud_add_queue_for_monitoring(ctx->hud, queue_info);
}
unsigned
dri_init_options_get_screen_flags(struct dri_screen *screen)
void
dri_init_options(struct dri_screen *screen)
{
unsigned flags = 0;
pipe_loader_load_options(screen->dev);
dri_fill_st_options(screen);
if (driQueryOptionb(&screen->dev->option_cache,
"glsl_correct_derivatives_after_discard"))
flags |= PIPE_SCREEN_ENABLE_CORRECT_TGSI_DERIVATIVES_AFTER_KILL;
return flags;
}
const __DRIconfig **

View file

@ -130,8 +130,8 @@ void
dri_fill_st_visual(struct st_visual *stvis, struct dri_screen *screen,
const struct gl_config *mode);
unsigned
dri_init_options_get_screen_flags(struct dri_screen *screen);
void
dri_init_options(struct dri_screen *screen);
const __DRIconfig **
dri_init_screen_helper(struct dri_screen *screen,

View file

@ -402,7 +402,7 @@ drisw_init_screen(__DRIscreen * sPriv)
if (pipe_loader_sw_probe_dri(&screen->dev, &drisw_lf)) {
struct pipe_screen_config config;
config.flags = dri_init_options_get_screen_flags(screen);
dri_init_options(screen);
pscreen = pipe_loader_create_screen(screen->dev, &config);
}