X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fr600%2Fevergreen_compute.h;h=e6c6d8f100d39a6bc97ccb900e1b357313a7da34;hb=4e9aa6711f933f9c85c9fd09831060541bc2003a;hp=df3fb83a317f026f61df0a4c4663300f0c759370;hpb=d3b013049126fb44d65a0a67001b04acbe778613;p=mesa.git diff --git a/src/gallium/drivers/r600/evergreen_compute.h b/src/gallium/drivers/r600/evergreen_compute.h index df3fb83a317..e6c6d8f100d 100644 --- a/src/gallium/drivers/r600/evergreen_compute.h +++ b/src/gallium/drivers/r600/evergreen_compute.h @@ -26,15 +26,13 @@ #ifndef EVERGREEN_COMPUTE_H #define EVERGREEN_COMPUTE_H -#include "r600.h" #include "r600_pipe.h" struct r600_atom; struct evergreen_compute_resource; -void *evergreen_create_compute_state(struct pipe_context *ctx, const const struct pipe_compute_state *cso); +void *evergreen_create_compute_state(struct pipe_context *ctx, const struct pipe_compute_state *cso); void evergreen_delete_compute_state(struct pipe_context *ctx, void *state); -void evergreen_direct_dispatch( struct pipe_context *context, const uint *block_layout, const uint *grid_layout); void evergreen_compute_upload_input(struct pipe_context *context, const uint *block_layout, const uint *grid_layout, const void *input); void evergreen_init_atom_start_compute_cs(struct r600_context *rctx); void evergreen_init_compute_state_functions(struct r600_context *rctx); @@ -42,30 +40,29 @@ void evergreen_emit_cs_shader(struct r600_context *rctx, struct r600_atom * atom struct pipe_resource *r600_compute_global_buffer_create(struct pipe_screen *screen, const struct pipe_resource *templ); void r600_compute_global_buffer_destroy(struct pipe_screen *screen, struct pipe_resource *res); -void* r600_compute_global_transfer_map(struct pipe_context *ctx, struct pipe_transfer* transfer); +void *r600_compute_global_transfer_map( + struct pipe_context *ctx_, + struct pipe_resource *resource, + unsigned level, + unsigned usage, + const struct pipe_box *box, + struct pipe_transfer **ptransfer); void r600_compute_global_transfer_unmap(struct pipe_context *ctx, struct pipe_transfer* transfer); -struct pipe_transfer * r600_compute_global_get_transfer(struct pipe_context *, struct pipe_resource *, unsigned level, - unsigned usage, const struct pipe_box *); -void r600_compute_global_transfer_destroy(struct pipe_context *, struct pipe_transfer *); void r600_compute_global_transfer_flush_region( struct pipe_context *, struct pipe_transfer *, const struct pipe_box *); void r600_compute_global_transfer_inline_write( struct pipe_context *, struct pipe_resource *, unsigned level, unsigned usage, const struct pipe_box *, const void *data, unsigned stride, unsigned layer_stride); -static inline void COMPUTE_DBG(const char *fmt, ...) +static inline void COMPUTE_DBG(struct r600_screen *rscreen, const char *fmt, ...) { - static bool check_debug = false, debug = false; + if (!(rscreen->b.debug_flags & DBG_COMPUTE)) { + return; + } - if (!check_debug) { - debug = debug_get_bool_option("R600_COMPUTE_DEBUG", FALSE); - } - - if (debug) { - va_list ap; - va_start(ap, fmt); - _debug_vprintf(fmt, ap); - va_end(ap); - } + va_list ap; + va_start(ap, fmt); + _debug_vprintf(fmt, ap); + va_end(ap); } #endif