mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-04-21 14:10:37 +02:00
radv: move radv_vertex_input_state to radv_pipeline_graphics.h
Like other similar states that are shared between graphics pipeline and command buffers. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37025>
This commit is contained in:
parent
d7f401c2bb
commit
53ce957983
2 changed files with 27 additions and 28 deletions
|
|
@ -56,6 +56,33 @@ struct radv_blend_equation_state {
|
|||
bool mrt0_is_dual_src;
|
||||
};
|
||||
|
||||
struct radv_vertex_input_state {
|
||||
uint32_t attribute_mask;
|
||||
|
||||
uint32_t instance_rate_inputs;
|
||||
uint32_t nontrivial_divisors;
|
||||
uint32_t zero_divisors;
|
||||
uint32_t post_shuffle;
|
||||
/* Having two separate fields instead of a single uint64_t makes it easier to remove attributes
|
||||
* using bitwise arithmetic.
|
||||
*/
|
||||
uint32_t alpha_adjust_lo;
|
||||
uint32_t alpha_adjust_hi;
|
||||
uint32_t nontrivial_formats;
|
||||
|
||||
uint8_t bindings[MAX_VERTEX_ATTRIBS];
|
||||
uint32_t divisors[MAX_VERTEX_ATTRIBS];
|
||||
uint32_t offsets[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t formats[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t format_align_req_minus_1[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t component_align_req_minus_1[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t format_sizes[MAX_VERTEX_ATTRIBS];
|
||||
uint32_t attrib_index_offset[MAX_VERTEX_ATTRIBS]; /* Only used with static strides. */
|
||||
uint32_t non_trivial_format[MAX_VERTEX_ATTRIBS];
|
||||
|
||||
bool bindings_match_attrib;
|
||||
};
|
||||
|
||||
struct radv_dynamic_state {
|
||||
struct vk_dynamic_graphics_state vk;
|
||||
|
||||
|
|
|
|||
|
|
@ -30,7 +30,6 @@ struct radv_device;
|
|||
struct radv_pipeline;
|
||||
struct radv_ray_tracing_pipeline;
|
||||
struct radv_shader_args;
|
||||
struct radv_vertex_input_state;
|
||||
struct radv_shader_args;
|
||||
struct radv_serialized_shader_arena_block;
|
||||
struct vk_pipeline_robustness_state;
|
||||
|
|
@ -288,33 +287,6 @@ radv_is_last_vgt_stage(const struct radv_shader_stage *stage)
|
|||
(stage->info.next_stage == MESA_SHADER_FRAGMENT || stage->info.next_stage == MESA_SHADER_NONE);
|
||||
}
|
||||
|
||||
struct radv_vertex_input_state {
|
||||
uint32_t attribute_mask;
|
||||
|
||||
uint32_t instance_rate_inputs;
|
||||
uint32_t nontrivial_divisors;
|
||||
uint32_t zero_divisors;
|
||||
uint32_t post_shuffle;
|
||||
/* Having two separate fields instead of a single uint64_t makes it easier to remove attributes
|
||||
* using bitwise arithmetic.
|
||||
*/
|
||||
uint32_t alpha_adjust_lo;
|
||||
uint32_t alpha_adjust_hi;
|
||||
uint32_t nontrivial_formats;
|
||||
|
||||
uint8_t bindings[MAX_VERTEX_ATTRIBS];
|
||||
uint32_t divisors[MAX_VERTEX_ATTRIBS];
|
||||
uint32_t offsets[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t formats[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t format_align_req_minus_1[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t component_align_req_minus_1[MAX_VERTEX_ATTRIBS];
|
||||
uint8_t format_sizes[MAX_VERTEX_ATTRIBS];
|
||||
uint32_t attrib_index_offset[MAX_VERTEX_ATTRIBS]; /* Only used with static strides. */
|
||||
uint32_t non_trivial_format[MAX_VERTEX_ATTRIBS];
|
||||
|
||||
bool bindings_match_attrib;
|
||||
};
|
||||
|
||||
struct radv_vs_prolog_key {
|
||||
/* All the fields are pre-masked with BITFIELD_MASK(num_attributes).
|
||||
* Some of the fields are pre-masked by other conditions. See lookup_vs_prolog.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue