gallium: remove screen shader and compute get param callback
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Acked-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176>
This commit is contained in:
@@ -74,26 +74,6 @@ dd_screen_get_disk_shader_cache(struct pipe_screen *_screen)
|
||||
return screen->get_disk_shader_cache(screen);
|
||||
}
|
||||
|
||||
static int
|
||||
dd_screen_get_compute_param(struct pipe_screen *_screen,
|
||||
enum pipe_compute_cap param,
|
||||
void *ret)
|
||||
{
|
||||
struct pipe_screen *screen = dd_screen(_screen)->screen;
|
||||
|
||||
return screen->get_compute_param(screen, param, ret);
|
||||
}
|
||||
|
||||
static int
|
||||
dd_screen_get_shader_param(struct pipe_screen *_screen,
|
||||
enum pipe_shader_type shader,
|
||||
enum pipe_shader_cap param)
|
||||
{
|
||||
struct pipe_screen *screen = dd_screen(_screen)->screen;
|
||||
|
||||
return screen->get_shader_param(screen, shader, param);
|
||||
}
|
||||
|
||||
static uint64_t
|
||||
dd_screen_get_timestamp(struct pipe_screen *_screen)
|
||||
{
|
||||
@@ -639,8 +619,6 @@ ddebug_screen_create(struct pipe_screen *screen)
|
||||
dscreen->base.get_vendor = dd_screen_get_vendor;
|
||||
dscreen->base.get_device_vendor = dd_screen_get_device_vendor;
|
||||
SCR_INIT(get_disk_shader_cache);
|
||||
dscreen->base.get_compute_param = dd_screen_get_compute_param;
|
||||
dscreen->base.get_shader_param = dd_screen_get_shader_param;
|
||||
dscreen->base.query_memory_info = dd_screen_query_memory_info;
|
||||
/* get_video_param */
|
||||
/* get_compute_param */
|
||||
|
||||
@@ -496,24 +496,6 @@ static const char *noop_get_name(struct pipe_screen* pscreen)
|
||||
return "NOOP";
|
||||
}
|
||||
|
||||
static int noop_get_shader_param(struct pipe_screen* pscreen,
|
||||
enum pipe_shader_type shader,
|
||||
enum pipe_shader_cap param)
|
||||
{
|
||||
struct pipe_screen *screen = ((struct noop_pipe_screen*)pscreen)->oscreen;
|
||||
|
||||
return screen->get_shader_param(screen, shader, param);
|
||||
}
|
||||
|
||||
static int noop_get_compute_param(struct pipe_screen *pscreen,
|
||||
enum pipe_compute_cap param,
|
||||
void *ret)
|
||||
{
|
||||
struct pipe_screen *screen = ((struct noop_pipe_screen*)pscreen)->oscreen;
|
||||
|
||||
return screen->get_compute_param(screen, param, ret);
|
||||
}
|
||||
|
||||
static bool noop_is_format_supported(struct pipe_screen* pscreen,
|
||||
enum pipe_format format,
|
||||
enum pipe_texture_target target,
|
||||
@@ -789,8 +771,6 @@ struct pipe_screen *noop_screen_create(struct pipe_screen *oscreen)
|
||||
screen->get_name = noop_get_name;
|
||||
screen->get_vendor = noop_get_vendor;
|
||||
screen->get_device_vendor = noop_get_device_vendor;
|
||||
screen->get_shader_param = noop_get_shader_param;
|
||||
screen->get_compute_param = noop_get_compute_param;
|
||||
screen->is_format_supported = noop_is_format_supported;
|
||||
screen->context_create = noop_create_context;
|
||||
screen->resource_create = noop_resource_create;
|
||||
|
||||
@@ -43,10 +43,8 @@ assert sys.version_info >= (3, 6)
|
||||
#
|
||||
lst_enum_include = [
|
||||
"pipe_texture_target",
|
||||
"pipe_shader_cap",
|
||||
"pipe_shader_ir",
|
||||
"pipe_map_flags",
|
||||
"pipe_compute_cap",
|
||||
"pipe_video_cap",
|
||||
"pipe_video_profile",
|
||||
"pipe_video_entrypoint",
|
||||
|
||||
@@ -150,55 +150,6 @@ trace_screen_get_disk_shader_cache(struct pipe_screen *_screen)
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
trace_screen_get_shader_param(struct pipe_screen *_screen,
|
||||
enum pipe_shader_type shader,
|
||||
enum pipe_shader_cap param)
|
||||
{
|
||||
struct trace_screen *tr_scr = trace_screen(_screen);
|
||||
struct pipe_screen *screen = tr_scr->screen;
|
||||
int result;
|
||||
|
||||
trace_dump_call_begin("pipe_screen", "get_shader_param");
|
||||
|
||||
trace_dump_arg(ptr, screen);
|
||||
trace_dump_arg_enum(pipe_shader_type, shader);
|
||||
trace_dump_arg_enum(pipe_shader_cap, param);
|
||||
|
||||
result = screen->get_shader_param(screen, shader, param);
|
||||
|
||||
trace_dump_ret(int, result);
|
||||
|
||||
trace_dump_call_end();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
trace_screen_get_compute_param(struct pipe_screen *_screen,
|
||||
enum pipe_compute_cap param,
|
||||
void *data)
|
||||
{
|
||||
struct trace_screen *tr_scr = trace_screen(_screen);
|
||||
struct pipe_screen *screen = tr_scr->screen;
|
||||
int result;
|
||||
|
||||
trace_dump_call_begin("pipe_screen", "get_compute_param");
|
||||
|
||||
trace_dump_arg(ptr, screen);
|
||||
trace_dump_arg_enum(pipe_compute_cap, param);
|
||||
trace_dump_arg(ptr, data);
|
||||
|
||||
result = screen->get_compute_param(screen, param, data);
|
||||
|
||||
trace_dump_ret(int, result);
|
||||
|
||||
trace_dump_call_end();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
static int
|
||||
trace_screen_get_video_param(struct pipe_screen *_screen,
|
||||
enum pipe_video_profile profile,
|
||||
@@ -1498,8 +1449,6 @@ trace_screen_create(struct pipe_screen *screen)
|
||||
tr_scr->base.get_device_vendor = trace_screen_get_device_vendor;
|
||||
SCR_INIT(get_compiler_options);
|
||||
SCR_INIT(get_disk_shader_cache);
|
||||
tr_scr->base.get_shader_param = trace_screen_get_shader_param;
|
||||
tr_scr->base.get_compute_param = trace_screen_get_compute_param;
|
||||
SCR_INIT(get_video_param);
|
||||
tr_scr->base.is_format_supported = trace_screen_is_format_supported;
|
||||
SCR_INIT(is_video_format_supported);
|
||||
|
||||
@@ -736,42 +736,6 @@ enum pipe_endian
|
||||
#endif
|
||||
};
|
||||
|
||||
/** Shader caps not specific to any single stage */
|
||||
enum pipe_shader_cap
|
||||
{
|
||||
PIPE_SHADER_CAP_MAX_INSTRUCTIONS, /* if 0, it means the stage is unsupported */
|
||||
PIPE_SHADER_CAP_MAX_ALU_INSTRUCTIONS,
|
||||
PIPE_SHADER_CAP_MAX_TEX_INSTRUCTIONS,
|
||||
PIPE_SHADER_CAP_MAX_TEX_INDIRECTIONS,
|
||||
PIPE_SHADER_CAP_MAX_CONTROL_FLOW_DEPTH,
|
||||
PIPE_SHADER_CAP_MAX_INPUTS,
|
||||
PIPE_SHADER_CAP_MAX_OUTPUTS,
|
||||
PIPE_SHADER_CAP_MAX_CONST_BUFFER0_SIZE,
|
||||
PIPE_SHADER_CAP_MAX_CONST_BUFFERS,
|
||||
PIPE_SHADER_CAP_MAX_TEMPS,
|
||||
/* boolean caps */
|
||||
PIPE_SHADER_CAP_CONT_SUPPORTED,
|
||||
PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR,
|
||||
PIPE_SHADER_CAP_INDIRECT_CONST_ADDR,
|
||||
PIPE_SHADER_CAP_SUBROUTINES, /* BGNSUB, ENDSUB, CAL, RET */
|
||||
PIPE_SHADER_CAP_INTEGERS,
|
||||
PIPE_SHADER_CAP_INT64_ATOMICS,
|
||||
PIPE_SHADER_CAP_FP16,
|
||||
PIPE_SHADER_CAP_FP16_DERIVATIVES,
|
||||
PIPE_SHADER_CAP_FP16_CONST_BUFFERS,
|
||||
PIPE_SHADER_CAP_INT16,
|
||||
PIPE_SHADER_CAP_GLSL_16BIT_CONSTS,
|
||||
PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS,
|
||||
PIPE_SHADER_CAP_TGSI_SQRT_SUPPORTED,
|
||||
PIPE_SHADER_CAP_MAX_SAMPLER_VIEWS,
|
||||
PIPE_SHADER_CAP_TGSI_ANY_INOUT_DECL_RANGE,
|
||||
PIPE_SHADER_CAP_MAX_SHADER_BUFFERS,
|
||||
PIPE_SHADER_CAP_SUPPORTED_IRS,
|
||||
PIPE_SHADER_CAP_MAX_SHADER_IMAGES,
|
||||
PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTERS,
|
||||
PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTER_BUFFERS,
|
||||
};
|
||||
|
||||
/**
|
||||
* Shader intermediate representation.
|
||||
*
|
||||
@@ -790,33 +754,6 @@ enum pipe_shader_ir
|
||||
PIPE_SHADER_IR_NIR,
|
||||
};
|
||||
|
||||
/**
|
||||
* Compute-specific implementation capability. They can be queried
|
||||
* using pipe_screen::get_compute_param.
|
||||
*/
|
||||
enum pipe_compute_cap
|
||||
{
|
||||
PIPE_COMPUTE_CAP_ADDRESS_BITS,
|
||||
PIPE_COMPUTE_CAP_IR_TARGET,
|
||||
PIPE_COMPUTE_CAP_GRID_DIMENSION,
|
||||
PIPE_COMPUTE_CAP_MAX_GRID_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_BLOCK_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_BLOCK_SIZE_CLOVER,
|
||||
PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK,
|
||||
PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK_CLOVER,
|
||||
PIPE_COMPUTE_CAP_MAX_GLOBAL_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_LOCAL_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_PRIVATE_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_INPUT_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_MEM_ALLOC_SIZE,
|
||||
PIPE_COMPUTE_CAP_MAX_CLOCK_FREQUENCY,
|
||||
PIPE_COMPUTE_CAP_MAX_COMPUTE_UNITS,
|
||||
PIPE_COMPUTE_CAP_MAX_SUBGROUPS,
|
||||
PIPE_COMPUTE_CAP_IMAGES_SUPPORTED,
|
||||
PIPE_COMPUTE_CAP_SUBGROUP_SIZES,
|
||||
PIPE_COMPUTE_CAP_MAX_VARIABLE_THREADS_PER_BLOCK,
|
||||
};
|
||||
|
||||
/** Shader caps not specific to any single stage */
|
||||
struct pipe_shader_caps {
|
||||
unsigned max_instructions; /* if 0, it means the stage is unsupported */
|
||||
|
||||
@@ -135,13 +135,6 @@ struct pipe_screen {
|
||||
*/
|
||||
const char *(*get_cl_cts_version)(struct pipe_screen *);
|
||||
|
||||
/**
|
||||
* Query a per-shader-stage integer-valued capability/parameter/limit
|
||||
* \param param one of pipe_caps.x
|
||||
*/
|
||||
int (*get_shader_param)(struct pipe_screen *, enum pipe_shader_type shader,
|
||||
enum pipe_shader_cap param);
|
||||
|
||||
/**
|
||||
* Query an integer-valued capability/parameter/limit for a codec/profile
|
||||
* \param param one of PIPE_VIDEO_CAP_x
|
||||
@@ -151,18 +144,6 @@ struct pipe_screen {
|
||||
enum pipe_video_entrypoint entrypoint,
|
||||
enum pipe_video_cap param);
|
||||
|
||||
/**
|
||||
* Query a compute-specific capability/parameter/limit.
|
||||
* \param param one of PIPE_COMPUTE_CAP_x
|
||||
* \param ret pointer to a preallocated buffer that will be
|
||||
* initialized to the parameter value, or NULL.
|
||||
* \return size in bytes of the parameter value that would be
|
||||
* returned.
|
||||
*/
|
||||
int (*get_compute_param)(struct pipe_screen *,
|
||||
enum pipe_compute_cap param,
|
||||
void *ret);
|
||||
|
||||
/**
|
||||
* Get the sample pixel grid's size. This function requires
|
||||
* pipe_caps.programmable_sample_locations to be callable.
|
||||
|
||||
Reference in New Issue
Block a user