diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c index 5090220f8ce..0c169559278 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c @@ -444,6 +444,11 @@ struct wined3d_cs_stop enum wined3d_cs_op opcode; }; +static inline void wined3d_cs_submit(struct wined3d_cs *cs, enum wined3d_cs_queue_id queue_id) +{ + cs->ops->submit(cs, queue_id); +} + static const char *debug_cs_op(enum wined3d_cs_op op) { switch (op) @@ -553,7 +558,7 @@ void wined3d_cs_emit_present(struct wined3d_cs *cs, struct wined3d_swapchain *sw wined3d_resource_acquire(&swapchain->back_buffers[i]->resource); } - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); /* Limit input latency by limiting the number of presents that we can get * ahead of the worker thread. */ @@ -635,7 +640,7 @@ void wined3d_cs_emit_clear(struct wined3d_cs *cs, DWORD rect_count, const RECT * wined3d_resource_acquire(view->resource); } - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } void wined3d_cs_emit_clear_rendertarget_view(struct wined3d_cs *cs, struct wined3d_rendertarget_view *view, @@ -671,7 +676,7 @@ void wined3d_cs_emit_clear_rendertarget_view(struct wined3d_cs *cs, struct wined wined3d_resource_acquire(view->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); if (flags & WINED3DCLEAR_SYNCHRONOUS) wined3d_cs_finish(cs, WINED3D_CS_QUEUE_DEFAULT); } @@ -819,7 +824,7 @@ void wined3d_cs_emit_dispatch(struct wined3d_cs *cs, acquire_compute_pipeline_resources(state); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } void wined3d_cs_emit_dispatch_indirect(struct wined3d_cs *cs, @@ -837,7 +842,7 @@ void wined3d_cs_emit_dispatch_indirect(struct wined3d_cs *cs, acquire_compute_pipeline_resources(state); wined3d_resource_acquire(&buffer->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_draw(struct wined3d_cs *cs, const void *data) @@ -984,7 +989,7 @@ void wined3d_cs_emit_draw(struct wined3d_cs *cs, GLenum primitive_type, unsigned acquire_graphics_pipeline_resources(state, indexed, d3d_info); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } void wined3d_cs_emit_draw_indirect(struct wined3d_cs *cs, GLenum primitive_type, unsigned int patch_vertex_count, @@ -1006,7 +1011,7 @@ void wined3d_cs_emit_draw_indirect(struct wined3d_cs *cs, GLenum primitive_type, acquire_graphics_pipeline_resources(state, indexed, d3d_info); wined3d_resource_acquire(&buffer->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_flush(struct wined3d_cs *cs, const void *data) @@ -1026,7 +1031,7 @@ void wined3d_cs_emit_flush(struct wined3d_cs *cs) op = cs->ops->require_space(cs, sizeof(*op), WINED3D_CS_QUEUE_DEFAULT); op->opcode = WINED3D_CS_OP_FLUSH; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); cs->queries_flushed = TRUE; } @@ -1047,7 +1052,7 @@ void wined3d_cs_emit_set_predication(struct wined3d_cs *cs, struct wined3d_query op->predicate = predicate; op->value = value; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_viewports(struct wined3d_cs *cs, const void *data) @@ -1073,7 +1078,7 @@ void wined3d_cs_emit_set_viewports(struct wined3d_cs *cs, unsigned int viewport_ memcpy(op->viewports, viewports, viewport_count * sizeof(*viewports)); op->viewport_count = viewport_count; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_scissor_rects(struct wined3d_cs *cs, const void *data) @@ -1098,7 +1103,7 @@ void wined3d_cs_emit_set_scissor_rects(struct wined3d_cs *cs, unsigned int rect_ memcpy(op->rects, rects, rect_count * sizeof(*rects)); op->rect_count = rect_count; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_rendertarget_view(struct wined3d_cs *cs, const void *data) @@ -1127,7 +1132,7 @@ void wined3d_cs_emit_set_rendertarget_view(struct wined3d_cs *cs, unsigned int v op->view_idx = view_idx; op->view = view; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_depth_stencil_view(struct wined3d_cs *cs, const void *data) @@ -1172,7 +1177,7 @@ void wined3d_cs_emit_set_depth_stencil_view(struct wined3d_cs *cs, struct wined3 op->opcode = WINED3D_CS_OP_SET_DEPTH_STENCIL_VIEW; op->view = view; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_vertex_declaration(struct wined3d_cs *cs, const void *data) @@ -1191,7 +1196,7 @@ void wined3d_cs_emit_set_vertex_declaration(struct wined3d_cs *cs, struct wined3 op->opcode = WINED3D_CS_OP_SET_VERTEX_DECLARATION; op->declaration = declaration; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_stream_source(struct wined3d_cs *cs, const void *data) @@ -1226,7 +1231,7 @@ void wined3d_cs_emit_set_stream_source(struct wined3d_cs *cs, UINT stream_idx, op->offset = offset; op->stride = stride; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_stream_source_freq(struct wined3d_cs *cs, const void *data) @@ -1251,7 +1256,7 @@ void wined3d_cs_emit_set_stream_source_freq(struct wined3d_cs *cs, UINT stream_i op->frequency = frequency; op->flags = flags; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_stream_output(struct wined3d_cs *cs, const void *data) @@ -1284,7 +1289,7 @@ void wined3d_cs_emit_set_stream_output(struct wined3d_cs *cs, UINT stream_idx, op->buffer = buffer; op->offset = offset; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_index_buffer(struct wined3d_cs *cs, const void *data) @@ -1316,7 +1321,7 @@ void wined3d_cs_emit_set_index_buffer(struct wined3d_cs *cs, struct wined3d_buff op->format_id = format_id; op->offset = offset; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_constant_buffer(struct wined3d_cs *cs, const void *data) @@ -1346,7 +1351,7 @@ void wined3d_cs_emit_set_constant_buffer(struct wined3d_cs *cs, enum wined3d_sha op->cb_idx = cb_idx; op->buffer = buffer; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_texture(struct wined3d_cs *cs, const void *data) @@ -1437,7 +1442,7 @@ void wined3d_cs_emit_set_texture(struct wined3d_cs *cs, UINT stage, struct wined op->stage = stage; op->texture = texture; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_shader_resource_view(struct wined3d_cs *cs, const void *data) @@ -1470,7 +1475,7 @@ void wined3d_cs_emit_set_shader_resource_view(struct wined3d_cs *cs, enum wined3 op->view_idx = view_idx; op->view = view; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_unordered_access_view(struct wined3d_cs *cs, const void *data) @@ -1504,7 +1509,7 @@ void wined3d_cs_emit_set_unordered_access_view(struct wined3d_cs *cs, enum wined op->view = view; op->initial_count = initial_count; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_sampler(struct wined3d_cs *cs, const void *data) @@ -1529,7 +1534,7 @@ void wined3d_cs_emit_set_sampler(struct wined3d_cs *cs, enum wined3d_shader_type op->sampler_idx = sampler_idx; op->sampler = sampler; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_shader(struct wined3d_cs *cs, const void *data) @@ -1553,7 +1558,7 @@ void wined3d_cs_emit_set_shader(struct wined3d_cs *cs, enum wined3d_shader_type op->type = type; op->shader = shader; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_blend_state(struct wined3d_cs *cs, const void *data) @@ -1580,7 +1585,7 @@ void wined3d_cs_emit_set_blend_state(struct wined3d_cs *cs, struct wined3d_blend op->state = state; op->factor = *blend_factor; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_rasterizer_state(struct wined3d_cs *cs, const void *data) @@ -1600,7 +1605,7 @@ void wined3d_cs_emit_set_rasterizer_state(struct wined3d_cs *cs, op->opcode = WINED3D_CS_OP_SET_RASTERIZER_STATE; op->state = rasterizer_state; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_render_state(struct wined3d_cs *cs, const void *data) @@ -1620,7 +1625,7 @@ void wined3d_cs_emit_set_render_state(struct wined3d_cs *cs, enum wined3d_render op->state = state; op->value = value; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_texture_state(struct wined3d_cs *cs, const void *data) @@ -1642,7 +1647,7 @@ void wined3d_cs_emit_set_texture_state(struct wined3d_cs *cs, UINT stage, op->state = state; op->value = value; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_sampler_state(struct wined3d_cs *cs, const void *data) @@ -1664,7 +1669,7 @@ void wined3d_cs_emit_set_sampler_state(struct wined3d_cs *cs, UINT sampler_idx, op->state = state; op->value = value; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_transform(struct wined3d_cs *cs, const void *data) @@ -1686,7 +1691,7 @@ void wined3d_cs_emit_set_transform(struct wined3d_cs *cs, enum wined3d_transform op->state = state; op->matrix = *matrix; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_clip_plane(struct wined3d_cs *cs, const void *data) @@ -1706,7 +1711,7 @@ void wined3d_cs_emit_set_clip_plane(struct wined3d_cs *cs, UINT plane_idx, const op->plane_idx = plane_idx; op->plane = *plane; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_color_key(struct wined3d_cs *cs, const void *data) @@ -1789,7 +1794,7 @@ void wined3d_cs_emit_set_color_key(struct wined3d_cs *cs, struct wined3d_texture else op->set = 0; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_material(struct wined3d_cs *cs, const void *data) @@ -1808,7 +1813,7 @@ void wined3d_cs_emit_set_material(struct wined3d_cs *cs, const struct wined3d_ma op->opcode = WINED3D_CS_OP_SET_MATERIAL; op->material = *material; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_light(struct wined3d_cs *cs, const void *data) @@ -1856,7 +1861,7 @@ void wined3d_cs_emit_set_light(struct wined3d_cs *cs, const struct wined3d_light op->opcode = WINED3D_CS_OP_SET_LIGHT; op->light = *light; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_set_light_enable(struct wined3d_cs *cs, const void *data) @@ -1890,7 +1895,7 @@ void wined3d_cs_emit_set_light_enable(struct wined3d_cs *cs, unsigned int idx, B op->idx = idx; op->enable = enable; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static const struct @@ -1958,7 +1963,7 @@ static void wined3d_cs_mt_push_constants(struct wined3d_cs *cs, enum wined3d_pus op->count = count; memcpy(op->constants, constants, size); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_reset_state(struct wined3d_cs *cs, const void *data) @@ -1977,7 +1982,7 @@ void wined3d_cs_emit_reset_state(struct wined3d_cs *cs) op = cs->ops->require_space(cs, sizeof(*op), WINED3D_CS_QUEUE_DEFAULT); op->opcode = WINED3D_CS_OP_RESET_STATE; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_callback(struct wined3d_cs *cs, const void *data) @@ -1996,7 +2001,7 @@ static void wined3d_cs_emit_callback(struct wined3d_cs *cs, void (*callback)(voi op->callback = callback; op->object = object; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } void wined3d_cs_destroy_object(struct wined3d_cs *cs, void (*callback)(void *object), void *object) @@ -2060,7 +2065,7 @@ void wined3d_cs_emit_query_issue(struct wined3d_cs *cs, struct wined3d_query *qu op->query = query; op->flags = flags; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); cs->queries_flushed = FALSE; } @@ -2083,7 +2088,7 @@ void wined3d_cs_emit_preload_resource(struct wined3d_cs *cs, struct wined3d_reso wined3d_resource_acquire(resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_unload_resource(struct wined3d_cs *cs, const void *data) @@ -2105,7 +2110,7 @@ void wined3d_cs_emit_unload_resource(struct wined3d_cs *cs, struct wined3d_resou wined3d_resource_acquire(resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_map(struct wined3d_cs *cs, const void *data) @@ -2136,7 +2141,7 @@ HRESULT wined3d_cs_map(struct wined3d_cs *cs, struct wined3d_resource *resource, op->flags = flags; op->hr = &hr; - cs->ops->submit(cs, WINED3D_CS_QUEUE_MAP); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_MAP); wined3d_cs_finish(cs, WINED3D_CS_QUEUE_MAP); return hr; @@ -2163,7 +2168,7 @@ HRESULT wined3d_cs_unmap(struct wined3d_cs *cs, struct wined3d_resource *resourc op->sub_resource_idx = sub_resource_idx; op->hr = &hr; - cs->ops->submit(cs, WINED3D_CS_QUEUE_MAP); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_MAP); wined3d_cs_finish(cs, WINED3D_CS_QUEUE_MAP); return hr; @@ -2295,7 +2300,7 @@ void wined3d_cs_emit_blt_sub_resource(struct wined3d_cs *cs, struct wined3d_reso if (src_resource) wined3d_resource_acquire(src_resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); if (flags & WINED3D_BLT_SYNCHRONOUS) wined3d_cs_finish(cs, WINED3D_CS_QUEUE_DEFAULT); } @@ -2376,7 +2381,7 @@ void wined3d_cs_emit_update_sub_resource(struct wined3d_cs *cs, struct wined3d_r wined3d_resource_acquire(resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_MAP); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_MAP); /* The data pointer may go away, so we need to wait until it is read. * Copying the data may be faster if it's small. */ wined3d_cs_finish(cs, WINED3D_CS_QUEUE_MAP); @@ -2415,7 +2420,7 @@ void wined3d_cs_emit_add_dirty_texture_region(struct wined3d_cs *cs, wined3d_resource_acquire(&texture->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_clear_unordered_access_view(struct wined3d_cs *cs, const void *data) @@ -2443,7 +2448,7 @@ void wined3d_cs_emit_clear_unordered_access_view_uint(struct wined3d_cs *cs, wined3d_resource_acquire(view->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_copy_uav_counter(struct wined3d_cs *cs, const void *data) @@ -2472,7 +2477,7 @@ void wined3d_cs_emit_copy_uav_counter(struct wined3d_cs *cs, struct wined3d_buff wined3d_resource_acquire(&dst_buffer->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_exec_generate_mipmaps(struct wined3d_cs *cs, const void *data) @@ -2494,7 +2499,7 @@ void wined3d_cs_emit_generate_mipmaps(struct wined3d_cs *cs, struct wined3d_shad wined3d_resource_acquire(view->resource); - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); } static void wined3d_cs_emit_stop(struct wined3d_cs *cs) @@ -2504,7 +2509,7 @@ static void wined3d_cs_emit_stop(struct wined3d_cs *cs) op = cs->ops->require_space(cs, sizeof(*op), WINED3D_CS_QUEUE_DEFAULT); op->opcode = WINED3D_CS_OP_STOP; - cs->ops->submit(cs, WINED3D_CS_QUEUE_DEFAULT); + wined3d_cs_submit(cs, WINED3D_CS_QUEUE_DEFAULT); wined3d_cs_finish(cs, WINED3D_CS_QUEUE_DEFAULT); }