mesa/query: remove all the mesa queryobj code.
This is all unused in favour of the state tracker code. Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14075>
This commit is contained in:
@@ -33,121 +33,6 @@
|
|||||||
#include "mtypes.h"
|
#include "mtypes.h"
|
||||||
#include "util/u_memory.h"
|
#include "util/u_memory.h"
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Allocate a new query object. This is a fallback routine called via
|
|
||||||
* ctx->Driver.NewQueryObject().
|
|
||||||
* \param ctx - rendering context
|
|
||||||
* \param id - the new object's ID
|
|
||||||
* \return pointer to new query_object object or NULL if out of memory.
|
|
||||||
*/
|
|
||||||
static struct gl_query_object *
|
|
||||||
_mesa_new_query_object(struct gl_context *ctx, GLuint id)
|
|
||||||
{
|
|
||||||
struct gl_query_object *q = CALLOC_STRUCT(gl_query_object);
|
|
||||||
(void) ctx;
|
|
||||||
if (q) {
|
|
||||||
q->Id = id;
|
|
||||||
q->Result = 0;
|
|
||||||
q->Active = GL_FALSE;
|
|
||||||
|
|
||||||
/* This is to satisfy the language of the specification: "In the initial
|
|
||||||
* state of a query object, the result is available" (OpenGL 3.1 §
|
|
||||||
* 2.13).
|
|
||||||
*/
|
|
||||||
q->Ready = GL_TRUE;
|
|
||||||
|
|
||||||
/* OpenGL 3.1 § 2.13 says about GenQueries, "These names are marked as
|
|
||||||
* used, but no object is associated with them until the first time they
|
|
||||||
* are used by BeginQuery." Since our implementation actually does
|
|
||||||
* allocate an object at this point, use a flag to indicate that this
|
|
||||||
* object has not yet been bound so should not be considered a query.
|
|
||||||
*/
|
|
||||||
q->EverBound = GL_FALSE;
|
|
||||||
}
|
|
||||||
return q;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Begin a query. Software driver fallback.
|
|
||||||
* Called via ctx->Driver.BeginQuery().
|
|
||||||
*/
|
|
||||||
static void
|
|
||||||
_mesa_begin_query(struct gl_context *ctx, struct gl_query_object *q)
|
|
||||||
{
|
|
||||||
ctx->NewState |= _NEW_DEPTH; /* for swrast */
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* End a query. Software driver fallback.
|
|
||||||
* Called via ctx->Driver.EndQuery().
|
|
||||||
*/
|
|
||||||
static void
|
|
||||||
_mesa_end_query(struct gl_context *ctx, struct gl_query_object *q)
|
|
||||||
{
|
|
||||||
ctx->NewState |= _NEW_DEPTH; /* for swrast */
|
|
||||||
q->Ready = GL_TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Wait for query to complete. Software driver fallback.
|
|
||||||
* Called via ctx->Driver.WaitQuery().
|
|
||||||
*/
|
|
||||||
static void
|
|
||||||
_mesa_wait_query(struct gl_context *ctx, struct gl_query_object *q)
|
|
||||||
{
|
|
||||||
/* For software drivers, _mesa_end_query() should have completed the query.
|
|
||||||
* For real hardware, implement a proper WaitQuery() driver function,
|
|
||||||
* which may require issuing a flush.
|
|
||||||
*/
|
|
||||||
assert(q->Ready);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if a query results are ready. Software driver fallback.
|
|
||||||
* Called via ctx->Driver.CheckQuery().
|
|
||||||
*/
|
|
||||||
static void
|
|
||||||
_mesa_check_query(struct gl_context *ctx, struct gl_query_object *q)
|
|
||||||
{
|
|
||||||
/* No-op for sw rendering.
|
|
||||||
* HW drivers may need to flush at this time.
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Delete a query object. Called via ctx->Driver.DeleteQuery(), if not
|
|
||||||
* overwritten by driver. In the latter case, called from the driver
|
|
||||||
* after all driver-specific clean-up has been done.
|
|
||||||
* Not removed from hash table here.
|
|
||||||
*
|
|
||||||
* \param ctx GL context to wich query object belongs.
|
|
||||||
* \param q query object due to be deleted.
|
|
||||||
*/
|
|
||||||
void
|
|
||||||
_mesa_delete_query(struct gl_context *ctx, struct gl_query_object *q)
|
|
||||||
{
|
|
||||||
free(q->Label);
|
|
||||||
free(q);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void
|
|
||||||
_mesa_init_query_object_functions(struct dd_function_table *driver)
|
|
||||||
{
|
|
||||||
driver->NewQueryObject = _mesa_new_query_object;
|
|
||||||
driver->DeleteQuery = _mesa_delete_query;
|
|
||||||
driver->BeginQuery = _mesa_begin_query;
|
|
||||||
driver->EndQuery = _mesa_end_query;
|
|
||||||
driver->WaitQuery = _mesa_wait_query;
|
|
||||||
driver->CheckQuery = _mesa_check_query;
|
|
||||||
}
|
|
||||||
|
|
||||||
static struct gl_query_object **
|
static struct gl_query_object **
|
||||||
get_pipe_stats_binding_point(struct gl_context *ctx,
|
get_pipe_stats_binding_point(struct gl_context *ctx,
|
||||||
GLenum target)
|
GLenum target)
|
||||||
|
@@ -38,19 +38,12 @@ _mesa_lookup_query_object(struct gl_context *ctx, GLuint id)
|
|||||||
_mesa_HashLookupLocked(ctx->Query.QueryObjects, id);
|
_mesa_HashLookupLocked(ctx->Query.QueryObjects, id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
extern void
|
|
||||||
_mesa_init_query_object_functions(struct dd_function_table *driver);
|
|
||||||
|
|
||||||
extern void
|
extern void
|
||||||
_mesa_init_queryobj(struct gl_context *ctx);
|
_mesa_init_queryobj(struct gl_context *ctx);
|
||||||
|
|
||||||
extern void
|
extern void
|
||||||
_mesa_free_queryobj_data(struct gl_context *ctx);
|
_mesa_free_queryobj_data(struct gl_context *ctx);
|
||||||
|
|
||||||
extern void
|
|
||||||
_mesa_delete_query(struct gl_context *ctx, struct gl_query_object *q);
|
|
||||||
|
|
||||||
void GLAPIENTRY
|
void GLAPIENTRY
|
||||||
_mesa_GenQueries(GLsizei n, GLuint *ids);
|
_mesa_GenQueries(GLsizei n, GLuint *ids);
|
||||||
void GLAPIENTRY
|
void GLAPIENTRY
|
||||||
|
@@ -85,8 +85,8 @@ st_DeleteQuery(struct gl_context *ctx, struct gl_query_object *q)
|
|||||||
struct st_query_object *stq = st_query_object(q);
|
struct st_query_object *stq = st_query_object(q);
|
||||||
|
|
||||||
free_queries(pipe, stq);
|
free_queries(pipe, stq);
|
||||||
|
free(stq->base.Label);
|
||||||
_mesa_delete_query(ctx, q);
|
free(stq);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
Reference in New Issue
Block a user