gallium: rename pipe_draw_start_count -> pipe_draw_start_count_bias
and add an index_bias member no functional changes yet, just the rename and unused struct member Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10166>
This commit is contained in:
parent
60fa555e61
commit
4fe6c85526
|
@ -1403,7 +1403,7 @@ void
|
|||
cso_draw_vbo(struct cso_context *cso,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count draw)
|
||||
const struct pipe_draw_start_count_bias draw)
|
||||
{
|
||||
struct u_vbuf *vbuf = cso->vbuf_current;
|
||||
|
||||
|
@ -1429,7 +1429,7 @@ cso_draw_vbo(struct cso_context *cso,
|
|||
void
|
||||
cso_multi_draw(struct cso_context *cso,
|
||||
struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct u_vbuf *vbuf = cso->vbuf_current;
|
||||
|
@ -1458,7 +1458,7 @@ void
|
|||
cso_draw_arrays(struct cso_context *cso, uint mode, uint start, uint count)
|
||||
{
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
util_draw_init_info(&info);
|
||||
|
||||
|
@ -1479,7 +1479,7 @@ cso_draw_arrays_instanced(struct cso_context *cso, uint mode,
|
|||
uint start_instance, uint instance_count)
|
||||
{
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
util_draw_init_info(&info);
|
||||
|
||||
|
|
|
@ -179,13 +179,13 @@ void
|
|||
cso_draw_vbo(struct cso_context *cso,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count draw);
|
||||
const struct pipe_draw_start_count_bias draw);
|
||||
|
||||
/* info->draw_id can be changed by the callee if increment_draw_id is true. */
|
||||
void
|
||||
cso_multi_draw(struct cso_context *cso,
|
||||
struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
void
|
||||
|
|
|
@ -326,7 +326,7 @@ draw_set_mapped_so_targets(struct draw_context *draw,
|
|||
void draw_vbo(struct draw_context *draw,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ DEBUG_GET_ONCE_BOOL_OPTION(draw_no_fse, "DRAW_NO_FSE", FALSE)
|
|||
static boolean
|
||||
draw_pt_arrays(struct draw_context *draw,
|
||||
unsigned prim,
|
||||
const struct pipe_draw_start_count *draw_info,
|
||||
const struct pipe_draw_start_count_bias *draw_info,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct draw_pt_front_end *frontend = NULL;
|
||||
|
@ -363,7 +363,7 @@ prim_restart_loop(struct draw_context *draw,
|
|||
const void *elements)
|
||||
{
|
||||
const unsigned elt_max = draw->pt.user.eltMax;
|
||||
struct pipe_draw_start_count cur;
|
||||
struct pipe_draw_start_count_bias cur;
|
||||
cur.start = start;
|
||||
cur.count = 0;
|
||||
|
||||
|
@ -414,7 +414,7 @@ prim_restart_loop(struct draw_context *draw,
|
|||
static void
|
||||
draw_pt_arrays_restart(struct draw_context *draw,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw_info,
|
||||
const struct pipe_draw_start_count_bias *draw_info,
|
||||
unsigned num_draws)
|
||||
{
|
||||
const unsigned prim = info->mode;
|
||||
|
@ -444,13 +444,13 @@ draw_pt_arrays_restart(struct draw_context *draw,
|
|||
static void
|
||||
resolve_draw_info(const struct pipe_draw_info *raw_info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *raw_draw,
|
||||
const struct pipe_draw_start_count_bias *raw_draw,
|
||||
struct pipe_draw_info *info,
|
||||
struct pipe_draw_start_count *draw,
|
||||
struct pipe_draw_start_count_bias *draw,
|
||||
struct pipe_vertex_buffer *vertex_buffer)
|
||||
{
|
||||
memcpy(info, raw_info, sizeof(struct pipe_draw_info));
|
||||
memcpy(draw, raw_draw, sizeof(struct pipe_draw_start_count));
|
||||
memcpy(draw, raw_draw, sizeof(struct pipe_draw_start_count_bias));
|
||||
|
||||
struct draw_so_target *target =
|
||||
(struct draw_so_target *)indirect->count_from_stream_output;
|
||||
|
@ -469,7 +469,7 @@ resolve_draw_info(const struct pipe_draw_info *raw_info,
|
|||
static void
|
||||
draw_instances(struct draw_context *draw,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
unsigned instance;
|
||||
|
@ -507,15 +507,15 @@ void
|
|||
draw_vbo(struct draw_context *draw,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
unsigned index_limit;
|
||||
unsigned fpstate = util_fpstate_get();
|
||||
struct pipe_draw_info resolved_info;
|
||||
struct pipe_draw_start_count resolved_draw;
|
||||
struct pipe_draw_start_count_bias resolved_draw;
|
||||
struct pipe_draw_info *use_info = (struct pipe_draw_info *)info;
|
||||
struct pipe_draw_start_count *use_draws = (struct pipe_draw_start_count *)draws;
|
||||
struct pipe_draw_start_count_bias *use_draws = (struct pipe_draw_start_count_bias *)draws;
|
||||
|
||||
if (info->instance_count == 0)
|
||||
return;
|
||||
|
|
|
@ -353,7 +353,7 @@ dd_dump_flush(struct dd_draw_state *dstate, struct call_flush *info, FILE *f)
|
|||
static void
|
||||
dd_dump_draw_vbo(struct dd_draw_state *dstate, struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw, FILE *f)
|
||||
const struct pipe_draw_start_count_bias *draw, FILE *f)
|
||||
{
|
||||
int sh, i;
|
||||
|
||||
|
@ -1304,7 +1304,7 @@ static void
|
|||
dd_context_draw_vbo(struct pipe_context *_pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct dd_context *dctx = dd_context(_pipe);
|
||||
|
|
|
@ -124,7 +124,7 @@ struct call_flush {
|
|||
struct call_draw_info {
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_indirect_info indirect;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
};
|
||||
|
||||
struct call_get_query_result_resource {
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
static void noop_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
}
|
||||
|
|
|
@ -116,7 +116,7 @@ rbug_draw_block_locked(struct rbug_context *rb_pipe, int flag)
|
|||
static void
|
||||
rbug_draw_vbo(struct pipe_context *_pipe, const struct pipe_draw_info *_info,
|
||||
const struct pipe_draw_indirect_info *_indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct rbug_context *rb_pipe = rbug_context(_pipe);
|
||||
|
|
|
@ -111,7 +111,7 @@ static void
|
|||
trace_context_draw_vbo(struct pipe_context *_pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct trace_context *tr_ctx = trace_context(_pipe);
|
||||
|
|
|
@ -811,12 +811,12 @@ void trace_dump_draw_info(const struct pipe_draw_info *state)
|
|||
trace_dump_struct_end();
|
||||
}
|
||||
|
||||
void trace_dump_draw_start_count(const struct pipe_draw_start_count *state)
|
||||
void trace_dump_draw_start_count(const struct pipe_draw_start_count_bias *state)
|
||||
{
|
||||
if (!trace_dumping_enabled_locked())
|
||||
return;
|
||||
|
||||
trace_dump_struct_begin("pipe_draw_start_count");
|
||||
trace_dump_struct_begin("pipe_draw_start_count_bias");
|
||||
trace_dump_member(uint, state, start);
|
||||
trace_dump_member(uint, state, count);
|
||||
trace_dump_struct_end();
|
||||
|
|
|
@ -86,7 +86,7 @@ void trace_dump_shader_buffer(const struct pipe_shader_buffer *buffer);
|
|||
|
||||
void trace_dump_draw_info(const struct pipe_draw_info *state);
|
||||
|
||||
void trace_dump_draw_start_count(const struct pipe_draw_start_count *state);
|
||||
void trace_dump_draw_start_count(const struct pipe_draw_start_count_bias *state);
|
||||
|
||||
void trace_dump_draw_indirect_info(const struct pipe_draw_indirect_info *state);
|
||||
|
||||
|
|
|
@ -100,11 +100,11 @@ void
|
|||
util_primconvert_draw_vbo(struct primconvert_context *pc,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct pipe_draw_info new_info;
|
||||
struct pipe_draw_start_count new_draw;
|
||||
struct pipe_draw_start_count_bias new_draw;
|
||||
struct pipe_transfer *src_transfer = NULL;
|
||||
u_translate_func trans_func;
|
||||
u_generate_func gen_func;
|
||||
|
@ -128,7 +128,7 @@ util_primconvert_draw_vbo(struct primconvert_context *pc,
|
|||
return;
|
||||
}
|
||||
|
||||
const struct pipe_draw_start_count *draw = &draws[0];
|
||||
const struct pipe_draw_start_count_bias *draw = &draws[0];
|
||||
|
||||
/* Filter out degenerate primitives, u_upload_alloc() will assert
|
||||
* on size==0 so just bail:
|
||||
|
|
|
@ -48,7 +48,7 @@ void util_primconvert_save_rasterizer_state(struct primconvert_context *pc,
|
|||
void util_primconvert_draw_vbo(struct primconvert_context *pc,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
#endif /* U_PRIMCONVERT_H_ */
|
||||
|
|
|
@ -176,7 +176,7 @@ util_draw_indirect(struct pipe_context *pipe,
|
|||
}
|
||||
|
||||
for (unsigned i = 0; i < draw_count; i++) {
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
draw.count = params[0];
|
||||
info.instance_count = params[1];
|
||||
|
@ -195,7 +195,7 @@ util_draw_indirect(struct pipe_context *pipe,
|
|||
void
|
||||
util_draw_multi(struct pipe_context *pctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct pipe_draw_info tmp_info = *info;
|
||||
|
|
|
@ -55,7 +55,7 @@ util_draw_arrays(struct pipe_context *pipe,
|
|||
uint count)
|
||||
{
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
util_draw_init_info(&info);
|
||||
info.mode = mode;
|
||||
|
@ -77,7 +77,7 @@ util_draw_elements(struct pipe_context *pipe,
|
|||
uint count)
|
||||
{
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
util_draw_init_info(&info);
|
||||
info.index.user = indices;
|
||||
|
@ -101,7 +101,7 @@ util_draw_arrays_instanced(struct pipe_context *pipe,
|
|||
uint instance_count)
|
||||
{
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
util_draw_init_info(&info);
|
||||
info.mode = mode;
|
||||
|
@ -129,7 +129,7 @@ util_draw_elements_instanced(struct pipe_context *pipe,
|
|||
uint instance_count)
|
||||
{
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
util_draw_init_info(&info);
|
||||
info.index.user = indices;
|
||||
|
@ -161,7 +161,7 @@ util_draw_indirect(struct pipe_context *pipe,
|
|||
void
|
||||
util_draw_multi(struct pipe_context *pctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
unsigned
|
||||
|
|
|
@ -201,7 +201,7 @@ void
|
|||
util_dump_draw_info(FILE *stream, const struct pipe_draw_info *state);
|
||||
|
||||
void
|
||||
util_dump_draw_start_count(FILE *stream, const struct pipe_draw_start_count *state);
|
||||
util_dump_draw_start_count(FILE *stream, const struct pipe_draw_start_count_bias *state);
|
||||
|
||||
void
|
||||
util_dump_draw_indirect_info(FILE *stream,
|
||||
|
|
|
@ -935,9 +935,9 @@ util_dump_draw_info(FILE *stream, const struct pipe_draw_info *state)
|
|||
}
|
||||
|
||||
void
|
||||
util_dump_draw_start_count(FILE *stream, const struct pipe_draw_start_count *state)
|
||||
util_dump_draw_start_count(FILE *stream, const struct pipe_draw_start_count_bias *state)
|
||||
{
|
||||
util_dump_struct_begin(stream, "pipe_draw_start_count");
|
||||
util_dump_struct_begin(stream, "pipe_draw_start_count_bias");
|
||||
util_dump_member(stream, uint, state, start);
|
||||
util_dump_member(stream, uint, state, count);
|
||||
util_dump_struct_end(stream);
|
||||
|
|
|
@ -151,7 +151,7 @@ void util_set_shader_buffers_mask(struct pipe_shader_buffer *dst,
|
|||
bool
|
||||
util_upload_index_buffer(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
struct pipe_resource **out_buffer,
|
||||
unsigned *out_offset, unsigned alignment)
|
||||
{
|
||||
|
|
|
@ -58,7 +58,7 @@ void util_set_shader_buffers_mask(struct pipe_shader_buffer *dst,
|
|||
|
||||
bool util_upload_index_buffer(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
struct pipe_resource **out_buffer,
|
||||
unsigned *out_offset, unsigned alignment);
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@ enum pipe_error
|
|||
util_translate_prim_restart_ib(struct pipe_context *context,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect_info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
struct pipe_resource **dst_buffer)
|
||||
{
|
||||
struct pipe_screen *screen = context->screen;
|
||||
|
@ -224,12 +224,12 @@ enum pipe_error
|
|||
util_draw_vbo_without_prim_restart(struct pipe_context *context,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect_info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
const void *src_map;
|
||||
struct range_info ranges = {0};
|
||||
struct pipe_draw_info new_info;
|
||||
struct pipe_draw_start_count new_draw;
|
||||
struct pipe_draw_start_count_bias new_draw;
|
||||
struct pipe_transfer *src_transfer = NULL;
|
||||
unsigned i, start, count;
|
||||
DrawElementsIndirectCommand indirect;
|
||||
|
|
|
@ -50,14 +50,14 @@ enum pipe_error
|
|||
util_translate_prim_restart_ib(struct pipe_context *context,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
struct pipe_resource **dst_buffer);
|
||||
|
||||
enum pipe_error
|
||||
util_draw_vbo_without_prim_restart(struct pipe_context *context,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
static inline unsigned
|
||||
util_prim_restart_index_from_size(unsigned index_size)
|
||||
|
|
|
@ -192,7 +192,7 @@ tc_batch_execute(void *job, UNUSED int thread_index)
|
|||
first_info->info.drawid == 0 &&
|
||||
is_next_call_a_mergeable_draw(first_info, next, &next_info)) {
|
||||
/* Merge up to 256 draw calls. */
|
||||
struct pipe_draw_start_count multi[256];
|
||||
struct pipe_draw_start_count_bias multi[256];
|
||||
unsigned num_draws = 2;
|
||||
|
||||
/* u_threaded_context stores start/count in min/max_index for single draws. */
|
||||
|
@ -2389,10 +2389,10 @@ tc_call_draw_single(struct pipe_context *pipe, union tc_payload *payload)
|
|||
|
||||
/* u_threaded_context stores start/count in min/max_index for single draws. */
|
||||
/* Drivers using u_threaded_context shouldn't use min/max_index. */
|
||||
struct pipe_draw_start_count *draw =
|
||||
(struct pipe_draw_start_count *)&info->info.min_index;
|
||||
STATIC_ASSERT(offsetof(struct pipe_draw_start_count, start) == 0);
|
||||
STATIC_ASSERT(offsetof(struct pipe_draw_start_count, count) == 4);
|
||||
struct pipe_draw_start_count_bias *draw =
|
||||
(struct pipe_draw_start_count_bias *)&info->info.min_index;
|
||||
STATIC_ASSERT(offsetof(struct pipe_draw_start_count_bias, start) == 0);
|
||||
STATIC_ASSERT(offsetof(struct pipe_draw_start_count_bias, count) == 4);
|
||||
|
||||
info->info.index_bounds_valid = false;
|
||||
info->info.has_user_indices = false;
|
||||
|
@ -2406,7 +2406,7 @@ tc_call_draw_single(struct pipe_context *pipe, union tc_payload *payload)
|
|||
struct tc_draw_indirect {
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_indirect_info indirect;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
};
|
||||
|
||||
static void
|
||||
|
@ -2429,7 +2429,7 @@ tc_call_draw_indirect(struct pipe_context *pipe, union tc_payload *payload)
|
|||
struct tc_draw_multi {
|
||||
struct pipe_draw_info info;
|
||||
unsigned num_draws;
|
||||
struct pipe_draw_start_count slot[]; /* variable-sized array */
|
||||
struct pipe_draw_start_count_bias slot[]; /* variable-sized array */
|
||||
};
|
||||
|
||||
static void
|
||||
|
@ -2452,7 +2452,7 @@ tc_call_draw_multi(struct pipe_context *pipe, union tc_payload *payload)
|
|||
void
|
||||
tc_draw_vbo(struct pipe_context *_pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
STATIC_ASSERT(DRAW_INFO_SIZE_WITHOUT_INDEXBUF_AND_MIN_MAX_INDEX +
|
||||
|
|
|
@ -411,7 +411,7 @@ threaded_context_flush(struct pipe_context *_pipe,
|
|||
void
|
||||
tc_draw_vbo(struct pipe_context *_pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
static inline struct threaded_context *
|
||||
|
|
|
@ -406,7 +406,7 @@ void u_vbuf_destroy(struct u_vbuf *mgr)
|
|||
static enum pipe_error
|
||||
u_vbuf_translate_buffers(struct u_vbuf *mgr, struct translate_key *key,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned vb_mask, unsigned out_vb,
|
||||
int start_vertex, unsigned num_vertices,
|
||||
int min_index, boolean unroll_indices)
|
||||
|
@ -609,7 +609,7 @@ u_vbuf_translate_find_free_vb_slots(struct u_vbuf *mgr,
|
|||
static boolean
|
||||
u_vbuf_translate_begin(struct u_vbuf *mgr,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
int start_vertex, unsigned num_vertices,
|
||||
int min_index, boolean unroll_indices)
|
||||
{
|
||||
|
@ -1236,7 +1236,7 @@ u_vbuf_get_minmax_index_mapped(const struct pipe_draw_info *info,
|
|||
|
||||
void u_vbuf_get_minmax_index(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned *out_min_index, unsigned *out_max_index)
|
||||
{
|
||||
struct pipe_transfer *transfer = NULL;
|
||||
|
@ -1287,7 +1287,7 @@ u_vbuf_split_indexed_multidraw(struct u_vbuf *mgr, struct pipe_draw_info *info,
|
|||
assert(info->index_size);
|
||||
|
||||
for (unsigned i = 0; i < draw_count; i++) {
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
unsigned offset = i * stride / 4;
|
||||
|
||||
draw.count = indirect_data[offset + 0];
|
||||
|
@ -1302,7 +1302,7 @@ u_vbuf_split_indexed_multidraw(struct u_vbuf *mgr, struct pipe_draw_info *info,
|
|||
|
||||
void u_vbuf_draw_vbo(struct u_vbuf *mgr, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count draw)
|
||||
const struct pipe_draw_start_count_bias draw)
|
||||
{
|
||||
struct pipe_context *pipe = mgr->pipe;
|
||||
int start_vertex;
|
||||
|
@ -1314,7 +1314,7 @@ void u_vbuf_draw_vbo(struct u_vbuf *mgr, const struct pipe_draw_info *info,
|
|||
const uint32_t incompatible_vb_mask =
|
||||
mgr->incompatible_vb_mask & used_vb_mask;
|
||||
struct pipe_draw_info new_info;
|
||||
struct pipe_draw_start_count new_draw;
|
||||
struct pipe_draw_start_count_bias new_draw;
|
||||
|
||||
/* Normal draw. No fallback and no user buffers. */
|
||||
if (!incompatible_vb_mask &&
|
||||
|
|
|
@ -81,10 +81,10 @@ void u_vbuf_set_vertex_buffers(struct u_vbuf *mgr,
|
|||
const struct pipe_vertex_buffer *bufs);
|
||||
void u_vbuf_draw_vbo(struct u_vbuf *mgr, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count draw);
|
||||
const struct pipe_draw_start_count_bias draw);
|
||||
void u_vbuf_get_minmax_index(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned *out_min_index, unsigned *out_max_index);
|
||||
|
||||
/* Save/restore functionality. */
|
||||
|
|
|
@ -291,7 +291,7 @@ void
|
|||
d3d12_draw_vbo(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
void
|
||||
|
|
|
@ -168,7 +168,7 @@ fill_sampler_descriptors(struct d3d12_context *ctx,
|
|||
static unsigned
|
||||
fill_state_vars(struct d3d12_context *ctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
struct d3d12_shader *shader,
|
||||
uint32_t *values)
|
||||
{
|
||||
|
@ -244,7 +244,7 @@ check_descriptors_left(struct d3d12_context *ctx)
|
|||
static void
|
||||
set_graphics_root_parameters(struct d3d12_context *ctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
unsigned num_params = 0;
|
||||
|
||||
|
@ -358,7 +358,7 @@ static void
|
|||
twoface_emulation(struct d3d12_context *ctx,
|
||||
struct d3d12_rasterizer_state *rast,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
/* draw backfaces */
|
||||
ctx->base.bind_rasterizer_state(&ctx->base, rast->twoface_back);
|
||||
|
@ -424,7 +424,7 @@ void
|
|||
d3d12_draw_vbo(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -226,7 +226,7 @@ etna_get_fs(struct etna_context *ctx, struct etna_shader_key key)
|
|||
static void
|
||||
etna_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -78,7 +78,7 @@ emit_vertexbufs(struct fd_context *ctx) assert_dt
|
|||
|
||||
static void
|
||||
draw_impl(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw, struct fd_ringbuffer *ring,
|
||||
const struct pipe_draw_start_count_bias *draw, struct fd_ringbuffer *ring,
|
||||
unsigned index_offset, bool binning) assert_dt
|
||||
{
|
||||
OUT_PKT3(ring, CP_SET_CONSTANT, 2);
|
||||
|
@ -154,7 +154,7 @@ draw_impl(struct fd_context *ctx, const struct pipe_draw_info *info,
|
|||
static bool
|
||||
fd2_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *pinfo,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *pdraw,
|
||||
const struct pipe_draw_start_count_bias *pdraw,
|
||||
unsigned index_offset) assert_dt
|
||||
{
|
||||
if (!ctx->prog.fs || !ctx->prog.vs)
|
||||
|
@ -190,7 +190,7 @@ fd2_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *pinfo,
|
|||
};
|
||||
/* clang-format on */
|
||||
|
||||
struct pipe_draw_start_count draw = *pdraw;
|
||||
struct pipe_draw_start_count_bias draw = *pdraw;
|
||||
unsigned count = draw.count;
|
||||
unsigned step = step_tbl[pinfo->mode];
|
||||
unsigned num_vertices = ctx->batch->num_vertices;
|
||||
|
|
|
@ -97,7 +97,7 @@ draw_impl(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
|||
static bool
|
||||
fd3_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned index_offset) in_dt
|
||||
{
|
||||
struct fd3_emit emit = {
|
||||
|
|
|
@ -48,7 +48,7 @@ struct fd3_emit {
|
|||
const struct fd3_program_state *prog;
|
||||
const struct pipe_draw_info *info;
|
||||
const struct pipe_draw_indirect_info *indirect;
|
||||
const struct pipe_draw_start_count *draw;
|
||||
const struct pipe_draw_start_count_bias *draw;
|
||||
bool binning_pass;
|
||||
struct ir3_cache_key key;
|
||||
enum fd_dirty_3d_state dirty;
|
||||
|
|
|
@ -74,7 +74,7 @@ draw_impl(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
|||
static bool
|
||||
fd4_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned index_offset) in_dt
|
||||
{
|
||||
struct fd4_context *fd4_ctx = fd4_context(ctx);
|
||||
|
|
|
@ -88,7 +88,7 @@ fd4_draw_emit(struct fd_batch *batch, struct fd_ringbuffer *ring,
|
|||
enum pc_di_primtype primtype, enum pc_di_vis_cull_mode vismode,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw, unsigned index_offset)
|
||||
const struct pipe_draw_start_count_bias *draw, unsigned index_offset)
|
||||
{
|
||||
struct pipe_resource *idx_buffer = NULL;
|
||||
enum a4xx_index_size idx_type;
|
||||
|
|
|
@ -46,7 +46,7 @@ struct fd4_emit {
|
|||
const struct fd4_program_state *prog;
|
||||
const struct pipe_draw_info *info;
|
||||
const struct pipe_draw_indirect_info *indirect;
|
||||
const struct pipe_draw_start_count *draw;
|
||||
const struct pipe_draw_start_count_bias *draw;
|
||||
bool binning_pass;
|
||||
struct ir3_cache_key key;
|
||||
enum fd_dirty_3d_state dirty;
|
||||
|
|
|
@ -70,7 +70,7 @@ draw_impl(struct fd_context *ctx, struct fd_ringbuffer *ring,
|
|||
static bool
|
||||
fd5_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned index_offset) in_dt
|
||||
{
|
||||
struct fd5_context *fd5_ctx = fd5_context(ctx);
|
||||
|
|
|
@ -82,7 +82,7 @@ fd5_draw_emit(struct fd_batch *batch, struct fd_ringbuffer *ring,
|
|||
enum pc_di_primtype primtype, enum pc_di_vis_cull_mode vismode,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw, unsigned index_offset)
|
||||
const struct pipe_draw_start_count_bias *draw, unsigned index_offset)
|
||||
{
|
||||
struct pipe_resource *idx_buffer = NULL;
|
||||
enum a4xx_index_size idx_type;
|
||||
|
|
|
@ -46,7 +46,7 @@ struct fd5_emit {
|
|||
const struct fd5_program_state *prog;
|
||||
const struct pipe_draw_info *info;
|
||||
const struct pipe_draw_indirect_info *indirect;
|
||||
const struct pipe_draw_start_count *draw;
|
||||
const struct pipe_draw_start_count_bias *draw;
|
||||
bool binning_pass;
|
||||
struct ir3_cache_key key;
|
||||
enum fd_dirty_3d_state dirty;
|
||||
|
|
|
@ -96,7 +96,7 @@ draw_emit_indirect(struct fd_ringbuffer *ring,
|
|||
static void
|
||||
draw_emit(struct fd_ringbuffer *ring, struct CP_DRAW_INDX_OFFSET_0 *draw0,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw, unsigned index_offset)
|
||||
const struct pipe_draw_start_count_bias *draw, unsigned index_offset)
|
||||
{
|
||||
if (info->index_size) {
|
||||
assert(!info->has_user_indices);
|
||||
|
@ -133,7 +133,7 @@ fixup_draw_state(struct fd_context *ctx, struct fd6_emit *emit) assert_dt
|
|||
static bool
|
||||
fd6_draw_vbo(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned index_offset) assert_dt
|
||||
{
|
||||
struct fd6_context *fd6_ctx = fd6_context(ctx);
|
||||
|
|
|
@ -90,7 +90,7 @@ struct fd6_emit {
|
|||
const struct fd_vertex_state *vtx;
|
||||
const struct pipe_draw_info *info;
|
||||
const struct pipe_draw_indirect_info *indirect;
|
||||
const struct pipe_draw_start_count *draw;
|
||||
const struct pipe_draw_start_count_bias *draw;
|
||||
struct ir3_cache_key key;
|
||||
enum fd_dirty_3d_state dirty;
|
||||
uint32_t dirty_groups;
|
||||
|
|
|
@ -63,7 +63,7 @@ bitfield_size_bits(unsigned n)
|
|||
|
||||
static unsigned
|
||||
prim_count(const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
/* PIPE_PRIM_MAX used internally for RECTLIST blits on 3d pipe: */
|
||||
unsigned vtx_per_prim =
|
||||
|
@ -89,7 +89,7 @@ prim_count(const struct pipe_draw_info *info,
|
|||
*/
|
||||
static unsigned
|
||||
primitive_stream_size_bits(const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned num_bins)
|
||||
{
|
||||
unsigned num_prims = prim_count(info, draw);
|
||||
|
@ -128,7 +128,7 @@ draw_stream_size_bits(const struct pipe_draw_info *info, unsigned num_bins,
|
|||
|
||||
void
|
||||
fd6_vsc_update_sizes(struct fd_batch *batch, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
if (!batch->num_bins_per_pipe) {
|
||||
batch->num_bins_per_pipe = fd_gmem_estimate_bins_per_pipe(batch);
|
||||
|
|
|
@ -26,6 +26,6 @@
|
|||
|
||||
void fd6_vsc_update_sizes(struct fd_batch *batch,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
#endif /* FD6_VSC_H_ */
|
||||
|
|
|
@ -241,7 +241,7 @@ fd_blitter_clear(struct pipe_context *pctx, unsigned buffers,
|
|||
.max_index = 1,
|
||||
.instance_count = MAX2(1, pfb->layers),
|
||||
};
|
||||
struct pipe_draw_start_count draw = {
|
||||
struct pipe_draw_start_count_bias draw = {
|
||||
.count = 2,
|
||||
};
|
||||
pctx->draw_vbo(pctx, &info, NULL, &draw, 1);
|
||||
|
|
|
@ -464,7 +464,7 @@ struct fd_context {
|
|||
/* draw: */
|
||||
bool (*draw_vbo)(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned index_offset) dt;
|
||||
bool (*clear)(struct fd_context *ctx, unsigned buffers,
|
||||
const union pipe_color_union *color, double depth,
|
||||
|
|
|
@ -226,7 +226,7 @@ batch_draw_tracking(struct fd_batch *batch, const struct pipe_draw_info *info,
|
|||
|
||||
static void
|
||||
update_draw_stats(struct fd_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws) assert_dt
|
||||
{
|
||||
ctx->stats.draw_calls++;
|
||||
|
@ -266,7 +266,7 @@ update_draw_stats(struct fd_context *ctx, const struct pipe_draw_info *info,
|
|||
static void
|
||||
fd_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws, unsigned num_draws) in_dt
|
||||
const struct pipe_draw_start_count_bias *draws, unsigned num_draws) in_dt
|
||||
{
|
||||
struct fd_context *ctx = fd_context(pctx);
|
||||
|
||||
|
|
|
@ -143,7 +143,7 @@ static inline void
|
|||
fd_draw_emit(struct fd_batch *batch, struct fd_ringbuffer *ring,
|
||||
enum pc_di_primtype primtype, enum pc_di_vis_cull_mode vismode,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw, unsigned index_offset)
|
||||
const struct pipe_draw_start_count_bias *draw, unsigned index_offset)
|
||||
{
|
||||
struct pipe_resource *idx_buffer = NULL;
|
||||
enum pc_di_index_size idx_type = INDEX_SIZE_IGN;
|
||||
|
|
|
@ -466,7 +466,7 @@ ir3_emit_vs_driver_params(const struct ir3_shader_variant *v,
|
|||
struct fd_ringbuffer *ring, struct fd_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw) assert_dt
|
||||
const struct pipe_draw_start_count_bias *draw) assert_dt
|
||||
{
|
||||
assert(v->need_driver_params);
|
||||
|
||||
|
@ -548,7 +548,7 @@ ir3_emit_vs_consts(const struct ir3_shader_variant *v,
|
|||
struct fd_ringbuffer *ring, struct fd_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw) assert_dt
|
||||
const struct pipe_draw_start_count_bias *draw) assert_dt
|
||||
{
|
||||
debug_assert(v->type == MESA_SHADER_VERTEX);
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@ DEBUG_GET_ONCE_BOOL_OPTION(i915_no_vbuf, "I915_NO_VBUF", FALSE)
|
|||
static void
|
||||
i915_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -855,7 +855,7 @@ void iris_copy_region(struct blorp_context *blorp,
|
|||
|
||||
void iris_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
void iris_launch_grid(struct pipe_context *, const struct pipe_grid_info *);
|
||||
|
||||
|
|
|
@ -117,7 +117,7 @@ static void
|
|||
iris_update_draw_parameters(struct iris_context *ice,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
bool changed = false;
|
||||
|
||||
|
@ -179,7 +179,7 @@ static void
|
|||
iris_indirect_draw_vbo(struct iris_context *ice,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *dindirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
|
||||
struct pipe_draw_info info = *dinfo;
|
||||
|
@ -224,7 +224,7 @@ static void
|
|||
iris_simple_draw_vbo(struct iris_context *ice,
|
||||
const struct pipe_draw_info *draw,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *sc)
|
||||
const struct pipe_draw_start_count_bias *sc)
|
||||
{
|
||||
struct iris_batch *batch = &ice->batches[IRIS_BATCH_RENDER];
|
||||
|
||||
|
@ -241,7 +241,7 @@ iris_simple_draw_vbo(struct iris_context *ice,
|
|||
void
|
||||
iris_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -263,7 +263,7 @@ _iris_measure_snapshot(struct iris_context *ice,
|
|||
enum intel_measure_snapshot_type type,
|
||||
const struct pipe_draw_info *draw,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *sc)
|
||||
const struct pipe_draw_start_count_bias *sc)
|
||||
{
|
||||
|
||||
const struct intel_measure_config *config = config_from_context(ice);
|
||||
|
|
|
@ -46,7 +46,7 @@ void _iris_measure_snapshot(struct iris_context *ice,
|
|||
enum intel_measure_snapshot_type type,
|
||||
const struct pipe_draw_info *draw,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *sc);
|
||||
const struct pipe_draw_start_count_bias *sc);
|
||||
|
||||
#define iris_measure_snapshot(ice, batch, type, draw, indirect, start_count) \
|
||||
if (unlikely(((struct iris_screen *) ice->ctx.screen)->measure.config)) \
|
||||
|
|
|
@ -63,7 +63,7 @@ struct iris_vtable {
|
|||
struct iris_batch *batch,
|
||||
const struct pipe_draw_info *draw,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *sc);
|
||||
const struct pipe_draw_start_count_bias *sc);
|
||||
void (*update_surface_base_address)(struct iris_batch *batch,
|
||||
struct iris_binder *binder);
|
||||
void (*upload_compute_state)(struct iris_context *ice,
|
||||
|
|
|
@ -6570,7 +6570,7 @@ iris_upload_render_state(struct iris_context *ice,
|
|||
struct iris_batch *batch,
|
||||
const struct pipe_draw_info *draw,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *sc)
|
||||
const struct pipe_draw_start_count_bias *sc)
|
||||
{
|
||||
bool use_predicate = ice->state.predicate == IRIS_PREDICATE_STATE_USE_BIT;
|
||||
|
||||
|
|
|
@ -267,7 +267,7 @@ lima_pipe_format_to_attrib_type(enum pipe_format format)
|
|||
|
||||
static void
|
||||
lima_pack_vs_cmd(struct lima_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct lima_context_constant_buffer *ccb =
|
||||
ctx->const_buffer + PIPE_SHADER_VERTEX;
|
||||
|
@ -316,7 +316,7 @@ lima_pack_vs_cmd(struct lima_context *ctx, const struct pipe_draw_info *info,
|
|||
|
||||
static void
|
||||
lima_pack_plbu_cmd(struct lima_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct lima_vs_compiled_shader *vs = ctx->vs;
|
||||
struct pipe_scissor_state *cscissor = &ctx->clipped_scissor;
|
||||
|
@ -808,7 +808,7 @@ lima_pack_render_state(struct lima_context *ctx, const struct pipe_draw_info *in
|
|||
|
||||
static void
|
||||
lima_update_gp_attribute_info(struct lima_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct lima_job *job = lima_job_get(ctx);
|
||||
struct lima_vertex_element_state *ve = ctx->vertex_elements;
|
||||
|
@ -924,7 +924,7 @@ lima_update_pp_uniform(struct lima_context *ctx)
|
|||
|
||||
static void
|
||||
lima_update_varying(struct lima_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct lima_job *job = lima_job_get(ctx);
|
||||
struct lima_screen *screen = lima_screen(ctx->base.screen);
|
||||
|
@ -1009,7 +1009,7 @@ lima_update_varying(struct lima_context *ctx, const struct pipe_draw_info *info,
|
|||
static void
|
||||
lima_draw_vbo_update(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct lima_context *ctx = lima_context(pctx);
|
||||
struct lima_context_framebuffer *fb = &ctx->framebuffer;
|
||||
|
@ -1064,7 +1064,7 @@ lima_draw_vbo_update(struct pipe_context *pctx,
|
|||
static void
|
||||
lima_draw_vbo_indexed(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct lima_context *ctx = lima_context(pctx);
|
||||
struct lima_job *job = lima_job_get(ctx);
|
||||
|
@ -1108,11 +1108,11 @@ lima_draw_vbo_indexed(struct pipe_context *pctx,
|
|||
static void
|
||||
lima_draw_vbo_count(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
static const uint32_t max_verts = 65535;
|
||||
|
||||
struct pipe_draw_start_count local_draw = *draw;
|
||||
struct pipe_draw_start_count_bias local_draw = *draw;
|
||||
unsigned start = draw->start;
|
||||
unsigned count = draw->count;
|
||||
|
||||
|
@ -1136,7 +1136,7 @@ static void
|
|||
lima_draw_vbo(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
static void
|
||||
llvmpipe_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (!indirect && (!draws[0].count || !info->instance_count))
|
||||
|
|
|
@ -196,14 +196,14 @@ nv30_fragtex_set_sampler_views(struct pipe_context *pipe,
|
|||
|
||||
void
|
||||
nv30_push_vbo(struct nv30_context *nv30, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
void
|
||||
nv30_draw_init(struct pipe_context *pipe);
|
||||
|
||||
void
|
||||
nv30_render_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
bool
|
||||
nv30_state_validate(struct nv30_context *nv30, uint32_t mask, bool hwtnl);
|
||||
|
|
|
@ -377,7 +377,7 @@ nv30_render_validate(struct nv30_context *nv30)
|
|||
|
||||
void
|
||||
nv30_render_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw_one)
|
||||
const struct pipe_draw_start_count_bias *draw_one)
|
||||
{
|
||||
struct nv30_context *nv30 = nv30_context(pipe);
|
||||
struct draw_context *draw = nv30->draw;
|
||||
|
|
|
@ -196,7 +196,7 @@ emit_vertices_seq(struct push_context *ctx, unsigned start, unsigned count)
|
|||
|
||||
void
|
||||
nv30_push_vbo(struct nv30_context *nv30, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct push_context ctx;
|
||||
unsigned i, index_size;
|
||||
|
|
|
@ -547,7 +547,7 @@ nv30_draw_elements(struct nv30_context *nv30, bool shorten,
|
|||
static void
|
||||
nv30_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -328,7 +328,7 @@ nv50_cb_push(struct nouveau_context *nv,
|
|||
/* nv50_vbo.c */
|
||||
void nv50_draw_vbo(struct pipe_context *, const struct pipe_draw_info *,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
void *
|
||||
|
@ -343,7 +343,7 @@ void nv50_vertex_arrays_validate(struct nv50_context *nv50);
|
|||
/* nv50_push.c */
|
||||
void nv50_push_vbo(struct nv50_context *, const struct pipe_draw_info *,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
/* nv84_video.c */
|
||||
struct pipe_video_codec *
|
||||
|
|
|
@ -240,7 +240,7 @@ nv50_prim_gl(unsigned prim)
|
|||
void
|
||||
nv50_push_vbo(struct nv50_context *nv50, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct push_context ctx;
|
||||
unsigned i, index_size;
|
||||
|
|
|
@ -759,7 +759,7 @@ nv50_draw_vbo_kick_notify(struct nouveau_pushbuf *chan)
|
|||
void
|
||||
nv50_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -414,7 +414,7 @@ nvc0_cb_bo_push(struct nouveau_context *,
|
|||
/* nvc0_vbo.c */
|
||||
void nvc0_draw_vbo(struct pipe_context *, const struct pipe_draw_info *,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
void *
|
||||
|
@ -440,10 +440,10 @@ nvc0_video_buffer_create(struct pipe_context *pipe,
|
|||
/* nvc0_push.c */
|
||||
void nvc0_push_vbo(struct nvc0_context *, const struct pipe_draw_info *,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
void nvc0_push_vbo_indirect(struct nvc0_context *, const struct pipe_draw_info *,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
/* nve4_compute.c */
|
||||
void nve4_launch_grid(struct pipe_context *, const struct pipe_grid_info *);
|
||||
|
|
|
@ -925,7 +925,7 @@ nvc0_update_prim_restart(struct nvc0_context *nvc0, bool en, uint32_t index)
|
|||
void
|
||||
nvc0_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -37,7 +37,7 @@ struct push_context {
|
|||
static void nvc0_push_upload_vertex_ids(struct push_context *,
|
||||
struct nvc0_context *,
|
||||
const struct pipe_draw_info *,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
static void
|
||||
nvc0_push_context_init(struct nvc0_context *nvc0, struct push_context *ctx)
|
||||
|
@ -493,7 +493,7 @@ typedef struct {
|
|||
void
|
||||
nvc0_push_vbo_indirect(struct nvc0_context *nvc0, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
/* The strategy here is to just read the commands from the indirect buffer
|
||||
* and do the draws. This is suboptimal, but will only happen in the case
|
||||
|
@ -516,7 +516,7 @@ nvc0_push_vbo_indirect(struct nvc0_context *nvc0, const struct pipe_draw_info *i
|
|||
uint8_t *buf_data = nouveau_resource_map_offset(
|
||||
&nvc0->base, buf, indirect->offset, NOUVEAU_BO_RD);
|
||||
struct pipe_draw_info single = *info;
|
||||
struct pipe_draw_start_count sdraw = *draw;
|
||||
struct pipe_draw_start_count_bias sdraw = *draw;
|
||||
for (i = 0; i < draw_count; i++, buf_data += indirect->stride) {
|
||||
if (info->index_size) {
|
||||
DrawElementsIndirectCommand *cmd = (void *)buf_data;
|
||||
|
@ -557,7 +557,7 @@ nvc0_push_vbo_indirect(struct nvc0_context *nvc0, const struct pipe_draw_info *i
|
|||
void
|
||||
nvc0_push_vbo(struct nvc0_context *nvc0, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct push_context ctx;
|
||||
unsigned i, index_size;
|
||||
|
@ -711,7 +711,7 @@ static void
|
|||
nvc0_push_upload_vertex_ids(struct push_context *ctx,
|
||||
struct nvc0_context *nvc0,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
|
||||
{
|
||||
struct nouveau_pushbuf *push = ctx->push;
|
||||
|
|
|
@ -63,7 +63,7 @@ panfrost_bo_access_for_stage(enum pipe_shader_type stage)
|
|||
mali_ptr
|
||||
panfrost_get_index_buffer_bounded(struct panfrost_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned *min_index, unsigned *max_index)
|
||||
{
|
||||
struct panfrost_resource *rsrc = pan_resource(info->index.resource);
|
||||
|
|
|
@ -73,7 +73,7 @@ panfrost_emit_vertex_data(struct panfrost_batch *batch,
|
|||
mali_ptr
|
||||
panfrost_get_index_buffer_bounded(struct panfrost_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned *min_index, unsigned *max_index);
|
||||
|
||||
void
|
||||
|
|
|
@ -173,7 +173,7 @@ static void
|
|||
panfrost_statistics_record(
|
||||
struct panfrost_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
if (!ctx->active_queries)
|
||||
return;
|
||||
|
@ -288,7 +288,7 @@ panfrost_is_implicit_prim_restart(const struct pipe_draw_info *info)
|
|||
static void
|
||||
panfrost_draw_emit_tiler(struct panfrost_batch *batch,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
void *invocation_template,
|
||||
mali_ptr shared_mem, mali_ptr indices,
|
||||
mali_ptr fs_vary, mali_ptr varyings,
|
||||
|
@ -408,7 +408,7 @@ panfrost_draw_emit_tiler(struct panfrost_batch *batch,
|
|||
static void
|
||||
panfrost_direct_draw(struct panfrost_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
if (!draw->count || !info->instance_count)
|
||||
return;
|
||||
|
@ -536,10 +536,10 @@ static void
|
|||
panfrost_indirect_draw(struct panfrost_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
if (indirect->count_from_stream_output) {
|
||||
struct pipe_draw_start_count tmp_draw = *draw;
|
||||
struct pipe_draw_start_count_bias tmp_draw = *draw;
|
||||
struct panfrost_streamout_target *so =
|
||||
pan_so_target(indirect->count_from_stream_output);
|
||||
|
||||
|
@ -689,7 +689,7 @@ static void
|
|||
panfrost_draw_vbo(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct panfrost_context *ctx = pan_context(pipe);
|
||||
|
|
|
@ -335,7 +335,7 @@ static boolean immd_is_good_idea(struct r300_context *r300,
|
|||
|
||||
static void r300_draw_arrays_immediate(struct r300_context *r300,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct pipe_vertex_element* velem;
|
||||
struct pipe_vertex_buffer* vbuf;
|
||||
|
@ -499,7 +499,7 @@ static void r300_emit_draw_elements(struct r300_context *r300,
|
|||
|
||||
static void r300_draw_elements_immediate(struct r300_context *r300,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
const uint8_t *ptr1;
|
||||
const uint16_t *ptr2;
|
||||
|
@ -585,7 +585,7 @@ static void r300_draw_elements_immediate(struct r300_context *r300,
|
|||
|
||||
static void r300_draw_elements(struct r300_context *r300,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
int instance_id)
|
||||
{
|
||||
struct pipe_resource *indexBuffer =
|
||||
|
@ -677,7 +677,7 @@ done:
|
|||
|
||||
static void r300_draw_arrays(struct r300_context *r300,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
int instance_id)
|
||||
{
|
||||
boolean alt_num_verts = r300->screen->caps.is_r500 &&
|
||||
|
@ -719,7 +719,7 @@ static void r300_draw_arrays(struct r300_context *r300,
|
|||
|
||||
static void r300_draw_arrays_instanced(struct r300_context *r300,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
@ -729,7 +729,7 @@ static void r300_draw_arrays_instanced(struct r300_context *r300,
|
|||
|
||||
static void r300_draw_elements_instanced(struct r300_context *r300,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
@ -789,7 +789,7 @@ static unsigned r300_max_vertex_count(struct r300_context *r300)
|
|||
static void r300_draw_vbo(struct pipe_context* pipe,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
@ -799,7 +799,7 @@ static void r300_draw_vbo(struct pipe_context* pipe,
|
|||
|
||||
struct r300_context* r300 = r300_context(pipe);
|
||||
struct pipe_draw_info info = *dinfo;
|
||||
struct pipe_draw_start_count draw = draws[0];
|
||||
struct pipe_draw_start_count_bias draw = draws[0];
|
||||
|
||||
if (r300->skip_rendering ||
|
||||
!u_trim_pipe_prim(info.mode, &draw.count)) {
|
||||
|
@ -856,7 +856,7 @@ static void r300_draw_vbo(struct pipe_context* pipe,
|
|||
static void r300_swtcl_draw_vbo(struct pipe_context* pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
@ -865,7 +865,7 @@ static void r300_swtcl_draw_vbo(struct pipe_context* pipe,
|
|||
}
|
||||
|
||||
struct r300_context* r300 = r300_context(pipe);
|
||||
struct pipe_draw_start_count draw = draws[0];
|
||||
struct pipe_draw_start_count_bias draw = draws[0];
|
||||
|
||||
if (r300->skip_rendering) {
|
||||
return;
|
||||
|
|
|
@ -37,7 +37,7 @@ struct r300_stencilref_context {
|
|||
void (*draw_vbo)(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
uint32_t rs_cull_mode;
|
||||
|
@ -106,7 +106,7 @@ static void r300_stencilref_end(struct r300_context *r300)
|
|||
static void r300_stencilref_draw_vbo(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
struct r300_context *r300 = r300_context(pipe);
|
||||
|
|
|
@ -2075,7 +2075,7 @@ static inline void r600_emit_rasterizer_prim_state(struct r600_context *rctx)
|
|||
|
||||
static void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -954,7 +954,7 @@ static bool si_check_ring_space(struct si_context *sctx, unsigned out_indexbuf_s
|
|||
|
||||
enum si_prim_discard_outcome
|
||||
si_prepare_prim_discard_or_split_draw(struct si_context *sctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws, bool primitive_restart,
|
||||
unsigned total_count)
|
||||
{
|
||||
|
@ -1023,7 +1023,7 @@ si_prepare_prim_discard_or_split_draw(struct si_context *sctx, const struct pipe
|
|||
|
||||
/* Split single draws if splitting multi draws isn't enough. */
|
||||
struct pipe_draw_info split_draw = *info;
|
||||
struct pipe_draw_start_count split_draw_range = draws[0];
|
||||
struct pipe_draw_start_count_bias split_draw_range = draws[0];
|
||||
unsigned base_start = split_draw_range.start;
|
||||
|
||||
split_draw.primitive_restart = primitive_restart;
|
||||
|
|
|
@ -887,7 +887,7 @@ struct si_small_prim_cull_info {
|
|||
typedef void (*pipe_draw_vbo_func)(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
struct si_context {
|
||||
|
@ -1481,7 +1481,7 @@ enum si_prim_discard_outcome
|
|||
void si_build_prim_discard_compute_shader(struct si_shader_context *ctx);
|
||||
enum si_prim_discard_outcome
|
||||
si_prepare_prim_discard_or_split_draw(struct si_context *sctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws, bool primitive_restart,
|
||||
unsigned total_count);
|
||||
void si_compute_signal_gfx(struct si_context *sctx);
|
||||
|
|
|
@ -964,7 +964,7 @@ static void si_emit_draw_registers(struct si_context *sctx,
|
|||
template <chip_class GFX_VERSION, si_has_ngg NGG, si_has_prim_discard_cs ALLOW_PRIM_DISCARD_CS>
|
||||
static void si_emit_draw_packets(struct si_context *sctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws,
|
||||
struct pipe_resource *indexbuf, unsigned index_size,
|
||||
unsigned index_offset, unsigned instance_count,
|
||||
|
@ -1454,7 +1454,7 @@ static bool si_upload_and_prefetch_VB_descriptors(struct si_context *sctx)
|
|||
|
||||
static void si_get_draw_start_count(struct si_context *sctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws, unsigned *start, unsigned *count)
|
||||
{
|
||||
if (indirect && !indirect->count_from_stream_output) {
|
||||
|
@ -1668,7 +1668,7 @@ template <chip_class GFX_VERSION, si_has_tess HAS_TESS, si_has_gs HAS_GS, si_has
|
|||
static void si_draw_vbo(struct pipe_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
/* Keep code that uses the least number of local variables as close to the beginning
|
||||
|
@ -2232,7 +2232,7 @@ static void si_draw_rectangle(struct blitter_context *blitter, void *vertex_elem
|
|||
pipe->bind_vs_state(pipe, si_get_blitter_vs(sctx, type, num_instances));
|
||||
|
||||
struct pipe_draw_info info = {};
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
info.mode = SI_PRIM_RECTANGLE_LIST;
|
||||
info.instance_count = num_instances;
|
||||
|
@ -2311,7 +2311,7 @@ static void si_init_draw_vbo_all_families(struct si_context *sctx)
|
|||
static void si_invalid_draw_vbo(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
unreachable("vertex shader not bound");
|
||||
|
|
|
@ -61,7 +61,7 @@ void
|
|||
softpipe_draw_vbo(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -183,7 +183,7 @@ void
|
|||
softpipe_draw_vbo(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
void
|
||||
|
|
|
@ -66,7 +66,7 @@ svga_hwtnl_draw_arrays(struct svga_hwtnl *hwtnl,
|
|||
enum pipe_error
|
||||
svga_hwtnl_draw_range_elements(struct svga_hwtnl *hwtnl,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned count);
|
||||
|
||||
boolean
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
static enum pipe_error
|
||||
translate_indices(struct svga_hwtnl *hwtnl,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
enum pipe_prim_type gen_prim,
|
||||
unsigned orig_nr, unsigned gen_nr,
|
||||
unsigned gen_size,
|
||||
|
@ -216,7 +216,7 @@ svga_hwtnl_simple_draw_range_elements(struct svga_hwtnl *hwtnl,
|
|||
enum pipe_error
|
||||
svga_hwtnl_draw_range_elements(struct svga_hwtnl *hwtnl,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned count)
|
||||
{
|
||||
struct pipe_context *pipe = &hwtnl->svga->pipe;
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
static enum pipe_error
|
||||
retry_draw_range_elements(struct svga_context *svga,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw,
|
||||
const struct pipe_draw_start_count_bias *draw,
|
||||
unsigned count)
|
||||
{
|
||||
SVGA_STATS_TIME_PUSH(svga_sws(svga), SVGA_STATS_TIME_DRAWELEMENTS);
|
||||
|
@ -219,7 +219,7 @@ get_vcount_from_stream_output(struct svga_context *svga,
|
|||
static void
|
||||
svga_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -41,7 +41,7 @@ enum pipe_error
|
|||
svga_swtnl_draw_vbo(struct svga_context *svga,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
|
||||
#endif
|
||||
|
|
|
@ -334,7 +334,7 @@ svga_vbuf_render_draw_elements(struct vbuf_render *render,
|
|||
.min_index = svga_render->min_index,
|
||||
.max_index = svga_render->max_index,
|
||||
};
|
||||
const struct pipe_draw_start_count draw = {
|
||||
const struct pipe_draw_start_count_bias draw = {
|
||||
.start = 0,
|
||||
.count = nr_indices,
|
||||
};
|
||||
|
|
|
@ -40,7 +40,7 @@ enum pipe_error
|
|||
svga_swtnl_draw_vbo(struct svga_context *svga,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw_one)
|
||||
const struct pipe_draw_start_count_bias *draw_one)
|
||||
{
|
||||
struct pipe_transfer *vb_transfer[PIPE_MAX_ATTRIBS] = { 0 };
|
||||
struct pipe_transfer *ib_transfer = NULL;
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
static void
|
||||
swr_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
@ -82,7 +82,7 @@ swr_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info,
|
|||
swr_update_draw_context(ctx);
|
||||
|
||||
struct pipe_draw_info resolved_info;
|
||||
struct pipe_draw_start_count resolved_draw;
|
||||
struct pipe_draw_start_count_bias resolved_draw;
|
||||
/* DrawTransformFeedback */
|
||||
if (indirect && indirect->count_from_stream_output) {
|
||||
// trick copied from softpipe to modify const struct *info
|
||||
|
|
|
@ -1168,7 +1168,7 @@ swr_get_last_fe(const struct swr_context *ctx)
|
|||
void
|
||||
swr_update_derived(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *p_draw_info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
struct swr_context *ctx = swr_context(pipe);
|
||||
struct swr_screen *screen = swr_screen(pipe->screen);
|
||||
|
|
|
@ -131,7 +131,7 @@ struct swr_derived_state {
|
|||
|
||||
void swr_update_derived(struct pipe_context *,
|
||||
const struct pipe_draw_info * = nullptr,
|
||||
const struct pipe_draw_start_count *draw = nullptr);
|
||||
const struct pipe_draw_start_count_bias *draw = nullptr);
|
||||
|
||||
/*
|
||||
* Conversion functions: Convert mesa state defines to SWR.
|
||||
|
|
|
@ -49,7 +49,7 @@ static void
|
|||
tegra_draw_vbo(struct pipe_context *pcontext,
|
||||
const struct pipe_draw_info *pinfo,
|
||||
const struct pipe_draw_indirect_info *pindirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -997,7 +997,7 @@ v3d_emit_gl_shader_state(struct v3d_context *v3d,
|
|||
static void
|
||||
v3d_update_primitives_generated_counter(struct v3d_context *v3d,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
assert(!v3d->prog.gs);
|
||||
|
||||
|
@ -1106,7 +1106,7 @@ v3d_check_compiled_shaders(struct v3d_context *v3d)
|
|||
static void
|
||||
v3d_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -290,7 +290,7 @@ vc4_hw_2116_workaround(struct pipe_context *pctx, int vert_count)
|
|||
static void
|
||||
vc4_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -861,7 +861,7 @@ static void virgl_clear_texture(struct pipe_context *ctx,
|
|||
static void virgl_draw_vbo(struct pipe_context *ctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (num_draws > 1) {
|
||||
|
|
|
@ -739,7 +739,7 @@ int virgl_encoder_set_index_buffer(struct virgl_context *ctx,
|
|||
int virgl_encoder_draw_vbo(struct virgl_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw)
|
||||
const struct pipe_draw_start_count_bias *draw)
|
||||
{
|
||||
uint32_t length = VIRGL_DRAW_VBO_SIZE;
|
||||
if (info->mode == PIPE_PRIM_PATCHES)
|
||||
|
|
|
@ -137,7 +137,7 @@ int virgl_encoder_set_viewport_states(struct virgl_context *ctx,
|
|||
int virgl_encoder_draw_vbo(struct virgl_context *ctx,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draw);
|
||||
const struct pipe_draw_start_count_bias *draw);
|
||||
|
||||
|
||||
int virgl_encoder_create_surface(struct virgl_context *ctx,
|
||||
|
|
|
@ -335,7 +335,7 @@ void
|
|||
zink_draw_vbo(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
|
||||
void
|
||||
|
|
|
@ -283,7 +283,7 @@ void
|
|||
zink_draw_vbo(struct pipe_context *pctx,
|
||||
const struct pipe_draw_info *dinfo,
|
||||
const struct pipe_draw_indirect_info *dindirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws)
|
||||
{
|
||||
if (!dindirect && (!draws[0].count || !dinfo->instance_count))
|
||||
|
|
|
@ -484,7 +484,7 @@ VKAPI_ATTR void VKAPI_CALL lvp_CmdDraw(
|
|||
LVP_FROM_HANDLE(lvp_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
struct lvp_cmd_buffer_entry *cmd;
|
||||
|
||||
uint32_t cmd_size = sizeof(struct pipe_draw_start_count);
|
||||
uint32_t cmd_size = sizeof(struct pipe_draw_start_count_bias);
|
||||
cmd = cmd_buf_entry_alloc_size(cmd_buffer, cmd_size, LVP_CMD_DRAW);
|
||||
if (!cmd)
|
||||
return;
|
||||
|
@ -736,7 +736,7 @@ VKAPI_ATTR void VKAPI_CALL lvp_CmdDrawIndexed(
|
|||
LVP_FROM_HANDLE(lvp_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
struct lvp_cmd_buffer_entry *cmd;
|
||||
|
||||
uint32_t cmd_size = sizeof(struct pipe_draw_start_count);
|
||||
uint32_t cmd_size = sizeof(struct pipe_draw_start_count_bias);
|
||||
cmd = cmd_buf_entry_alloc_size(cmd_buffer, cmd_size, LVP_CMD_DRAW_INDEXED);
|
||||
if (!cmd)
|
||||
return;
|
||||
|
|
|
@ -2158,7 +2158,7 @@ static void handle_draw_indirect(struct lvp_cmd_buffer_entry *cmd,
|
|||
struct rendering_state *state, bool indexed)
|
||||
{
|
||||
const struct lvp_subpass *subpass = &state->pass->subpasses[state->subpass];
|
||||
struct pipe_draw_start_count draw = {0};
|
||||
struct pipe_draw_start_count_bias draw = {0};
|
||||
if (indexed) {
|
||||
state->info.index_bounds_valid = false;
|
||||
state->info.index_size = state->index_size;
|
||||
|
@ -2629,7 +2629,7 @@ static void handle_draw_indirect_count(struct lvp_cmd_buffer_entry *cmd,
|
|||
struct rendering_state *state, bool indexed)
|
||||
{
|
||||
const struct lvp_subpass *subpass = &state->pass->subpasses[state->subpass];
|
||||
struct pipe_draw_start_count draw = {0};
|
||||
struct pipe_draw_start_count_bias draw = {0};
|
||||
if (indexed) {
|
||||
state->info.index_bounds_valid = false;
|
||||
state->info.index_size = state->index_size;
|
||||
|
@ -2806,7 +2806,7 @@ static void handle_draw_indirect_byte_count(struct lvp_cmd_buffer_entry *cmd,
|
|||
{
|
||||
struct lvp_cmd_draw_indirect_byte_count *dibc = &cmd->u.draw_indirect_byte_count;
|
||||
const struct lvp_subpass *subpass = &state->pass->subpasses[state->subpass];
|
||||
struct pipe_draw_start_count draw = {0};
|
||||
struct pipe_draw_start_count_bias draw = {0};
|
||||
|
||||
pipe_buffer_read(state->pctx,
|
||||
dibc->counter_buffer->bo,
|
||||
|
|
|
@ -743,7 +743,7 @@ struct lvp_cmd_draw {
|
|||
uint32_t instance_count;
|
||||
uint32_t first_instance;
|
||||
uint32_t draw_count;
|
||||
struct pipe_draw_start_count draws[0];
|
||||
struct pipe_draw_start_count_bias draws[0];
|
||||
};
|
||||
|
||||
struct lvp_cmd_draw_indexed {
|
||||
|
@ -752,7 +752,7 @@ struct lvp_cmd_draw_indexed {
|
|||
uint32_t first_instance;
|
||||
bool calc_start;
|
||||
uint32_t draw_count;
|
||||
struct pipe_draw_start_count draws[0];
|
||||
struct pipe_draw_start_count_bias draws[0];
|
||||
};
|
||||
|
||||
struct lvp_cmd_draw_indirect {
|
||||
|
|
|
@ -3220,7 +3220,7 @@ NineDevice9_ProcessVertices( struct NineDevice9 *This,
|
|||
struct pipe_stream_output_info so;
|
||||
struct pipe_stream_output_target *target;
|
||||
struct pipe_draw_info draw;
|
||||
struct pipe_draw_start_count sc;
|
||||
struct pipe_draw_start_count_bias sc;
|
||||
struct pipe_box box;
|
||||
bool programmable_vs = This->state.vs && !(This->state.vdecl && This->state.vdecl->position_t);
|
||||
unsigned offsets[1] = {0};
|
||||
|
|
|
@ -2355,7 +2355,7 @@ CSMT_ITEM_NO_WAIT(nine_context_clear_fb,
|
|||
|
||||
static inline void
|
||||
init_draw_info(struct pipe_draw_info *info,
|
||||
struct pipe_draw_start_count *draw,
|
||||
struct pipe_draw_start_count_bias *draw,
|
||||
struct NineDevice9 *dev, D3DPRIMITIVETYPE type, UINT count)
|
||||
{
|
||||
info->mode = d3dprimitivetype_to_pipe_prim(type);
|
||||
|
@ -2376,7 +2376,7 @@ CSMT_ITEM_NO_WAIT(nine_context_draw_primitive,
|
|||
{
|
||||
struct nine_context *context = &device->context;
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
nine_update_state(device);
|
||||
|
||||
|
@ -2401,7 +2401,7 @@ CSMT_ITEM_NO_WAIT(nine_context_draw_indexed_primitive,
|
|||
{
|
||||
struct nine_context *context = &device->context;
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
nine_update_state(device);
|
||||
|
||||
|
@ -2431,7 +2431,7 @@ CSMT_ITEM_NO_WAIT(nine_context_draw_indexed_primitive_from_vtxbuf_idxbuf,
|
|||
{
|
||||
struct nine_context *context = &device->context;
|
||||
struct pipe_draw_info info;
|
||||
struct pipe_draw_start_count draw;
|
||||
struct pipe_draw_start_count_bias draw;
|
||||
|
||||
nine_update_state(device);
|
||||
|
||||
|
|
|
@ -50,7 +50,7 @@ struct pipe_depth_stencil_alpha_state;
|
|||
struct pipe_device_reset_callback;
|
||||
struct pipe_draw_info;
|
||||
struct pipe_draw_indirect_info;
|
||||
struct pipe_draw_start_count;
|
||||
struct pipe_draw_start_count_bias;
|
||||
struct pipe_grid_info;
|
||||
struct pipe_fence_handle;
|
||||
struct pipe_framebuffer_state;
|
||||
|
@ -138,7 +138,7 @@ struct pipe_context {
|
|||
void (*draw_vbo)(struct pipe_context *pipe,
|
||||
const struct pipe_draw_info *info,
|
||||
const struct pipe_draw_indirect_info *indirect,
|
||||
const struct pipe_draw_start_count *draws,
|
||||
const struct pipe_draw_start_count_bias *draws,
|
||||
unsigned num_draws);
|
||||
/*@}*/
|
||||
|
||||
|
|
|
@ -734,9 +734,10 @@ struct pipe_draw_indirect_info
|
|||
struct pipe_stream_output_target *count_from_stream_output;
|
||||
};
|
||||
|
||||
struct pipe_draw_start_count {
|
||||
struct pipe_draw_start_count_bias {
|
||||
unsigned start;
|
||||
unsigned count;
|
||||
int index_bias; /**< a bias to be added to each index */
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue