ReactOS 0.4.17-dev-934-g091855f
spirv_compiler Struct Reference
Collaboration diagram for spirv_compiler:

Classes

struct  vkd3d_shader_output_info
 

Public Attributes

struct vkd3d_spirv_builder spirv_builder
 
const struct vsir_program * program
 
struct vkd3d_shader_message_context * message_context
 
struct vkd3d_shader_location location
 
bool failed
 
bool strip_debug
 
bool ssbo_uavs
 
bool uav_read_without_format
 
SpvExecutionMode fragment_coordinate_origin
 
struct rb_tree symbol_table
 
uint32_t temp_id
 
unsigned int temp_count
 
struct vkd3d_hull_shader_variables hs
 
uint32_t sample_positions_id
 
enum vkd3d_shader_type shader_type
 
struct vkd3d_shader_interface_info shader_interface
 
struct vkd3d_shader_descriptor_offset_info offset_info
 
uint32_t descriptor_offsets_member_id
 
uint32_t push_constants_var_id
 
uint32_t * descriptor_offset_ids
 
struct vkd3d_push_constant_buffer_binding * push_constants
 
const struct vkd3d_shader_spirv_target_info * spirv_target_info
 
struct {
   uint32_t   buffer_id
 
} * spirv_parameter_info
 
bool prolog_emitted
 
struct shader_signature input_signature
 
struct shader_signature output_signature
 
struct shader_signature patch_constant_signature
 
const struct vkd3d_shader_transform_feedback_info * xfb_info
 
struct spirv_compiler::vkd3d_shader_output_info * output_info
 
uint32_t private_output_variable [MAX_REG_OUTPUT+1]
 
uint32_t private_output_variable_write_mask [MAX_REG_OUTPUT+1]
 
uint32_t epilogue_function_id
 
uint32_t discard_function_id
 
uint32_t binding_idx
 
const struct vkd3d_shader_scan_descriptor_info1 * scan_descriptor_info
 
unsigned int input_control_point_count
 
unsigned int output_control_point_count
 
bool use_vocp
 
bool use_invocation_interlock
 
bool emit_point_size
 
enum vkd3d_shader_opcode phase
 
bool emit_default_control_point_phase
 
struct vkd3d_shader_phase control_point_phase
 
struct vkd3d_shader_phase patch_constant_phase
 
uint32_t current_spec_constant_id
 
unsigned int spec_constant_count
 
struct vkd3d_shader_spec_constant * spec_constants
 
size_t spec_constants_size
 
enum vkd3d_shader_compile_option_formatting_flags formatting
 
enum vkd3d_shader_compile_option_feature_flags features
 
enum vkd3d_shader_api_version api_version
 
bool write_tess_geom_point_size
 
struct vkd3d_string_buffer_cache string_buffers
 
struct ssa_register_info * ssa_register_info
 
unsigned int ssa_register_count
 
uint64_t config_flags
 
uint32_t * block_label_ids
 
unsigned int block_count
 
const char ** block_names
 
size_t block_name_count
 

Detailed Description

Definition at line 2412 of file spirv.c.

Member Data Documentation

◆ api_version

enum vkd3d_shader_api_version spirv_compiler::api_version

Definition at line 2484 of file spirv.c.

Referenced by spirv_compiler_create().

◆ binding_idx

uint32_t spirv_compiler::binding_idx

Definition at line 2463 of file spirv.c.

◆ block_count

unsigned int spirv_compiler::block_count

Definition at line 2495 of file spirv.c.

Referenced by spirv_compiler_generate_spirv(), and spirv_compiler_init_blocks().

◆ block_label_ids

uint32_t* spirv_compiler::block_label_ids

◆ block_name_count

size_t spirv_compiler::block_name_count

Definition at line 2497 of file spirv.c.

Referenced by spirv_compiler_generate_spirv().

◆ block_names

const char** spirv_compiler::block_names

Definition at line 2496 of file spirv.c.

Referenced by spirv_compiler_emit_label(), and spirv_compiler_generate_spirv().

◆ buffer_id

uint32_t spirv_compiler::buffer_id

Definition at line 2444 of file spirv.c.

◆ config_flags

uint64_t spirv_compiler::config_flags

Definition at line 2492 of file spirv.c.

Referenced by spirv_compile(), spirv_compiler_create(), and spirv_compiler_generate_spirv().

◆ control_point_phase

◆ current_spec_constant_id

uint32_t spirv_compiler::current_spec_constant_id

Definition at line 2478 of file spirv.c.

Referenced by spirv_compiler_alloc_spec_constant_id().

◆ descriptor_offset_ids

uint32_t* spirv_compiler::descriptor_offset_ids

◆ descriptor_offsets_member_id

uint32_t spirv_compiler::descriptor_offsets_member_id

◆ discard_function_id

uint32_t spirv_compiler::discard_function_id

◆ emit_default_control_point_phase

bool spirv_compiler::emit_default_control_point_phase

◆ emit_point_size

bool spirv_compiler::emit_point_size

◆ epilogue_function_id

◆ failed

bool spirv_compiler::failed

Definition at line 2419 of file spirv.c.

Referenced by spirv_compiler_emit_load_ssa_reg(), and spirv_compiler_generate_spirv().

◆ features

Definition at line 2483 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_emit_global_flags().

◆ formatting

Definition at line 2482 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_generate_spirv().

◆ fragment_coordinate_origin

SpvExecutionMode spirv_compiler::fragment_coordinate_origin

Definition at line 2424 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_emit_initial_declarations().

◆ hs

struct vkd3d_hull_shader_variables spirv_compiler::hs

Definition at line 2429 of file spirv.c.

Referenced by spirv_compiler_emit_shader_phase_builtin_variable().

◆ input_control_point_count

unsigned int spirv_compiler::input_control_point_count

Definition at line 2466 of file spirv.c.

Referenced by spirv_compiler_emit_input(), and spirv_compiler_generate_spirv().

◆ input_signature

◆ location

struct vkd3d_shader_location spirv_compiler::location

Definition at line 2418 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_handle_instruction().

◆ message_context

struct vkd3d_shader_message_context* spirv_compiler::message_context

Definition at line 2417 of file spirv.c.

Referenced by spirv_compile(), spirv_compiler_create(), and spirv_compiler_generate_spirv().

◆ offset_info

◆ output_control_point_count

unsigned int spirv_compiler::output_control_point_count

Definition at line 2467 of file spirv.c.

Referenced by spirv_compiler_emit_output(), and spirv_compiler_generate_spirv().

◆ output_info

◆ output_signature

◆ patch_constant_phase

◆ patch_constant_signature

◆ phase

◆ private_output_variable

◆ private_output_variable_write_mask

uint32_t spirv_compiler::private_output_variable_write_mask[MAX_REG_OUTPUT+1]

◆ program

◆ prolog_emitted

bool spirv_compiler::prolog_emitted

Definition at line 2447 of file spirv.c.

Referenced by spirv_compiler_initialise_block().

◆ push_constants

◆ push_constants_var_id

uint32_t spirv_compiler::push_constants_var_id

◆ sample_positions_id

uint32_t spirv_compiler::sample_positions_id

Definition at line 2430 of file spirv.c.

Referenced by spirv_compiler_emit_sample_position().

◆ scan_descriptor_info

◆ shader_interface

◆ shader_type

◆ spec_constant_count

unsigned int spirv_compiler::spec_constant_count

◆ spec_constants

◆ spec_constants_size

size_t spirv_compiler::spec_constants_size

Definition at line 2481 of file spirv.c.

Referenced by spirv_compiler_emit_spec_constant().

◆ spirv_builder

struct vkd3d_spirv_builder spirv_compiler::spirv_builder

Definition at line 2414 of file spirv.c.

Referenced by frag_coord_fixup(), spirv_compiler_build_descriptor_variable(), spirv_compiler_create(), spirv_compiler_decorate_builtin(), spirv_compiler_decorate_descriptor(), spirv_compiler_decorate_nonuniform(), spirv_compiler_decorate_xfb_output(), spirv_compiler_destroy(), spirv_compiler_emit_abs(), spirv_compiler_emit_alu_instruction(), spirv_compiler_emit_array_variable(), spirv_compiler_emit_atomic_instruction(), spirv_compiler_emit_barrier(), spirv_compiler_emit_bitfield_instruction(), spirv_compiler_emit_bool_to_double(), spirv_compiler_emit_bool_to_float(), spirv_compiler_emit_bool_to_int(), spirv_compiler_emit_bool_to_int64(), spirv_compiler_emit_branch(), spirv_compiler_emit_bufinfo(), spirv_compiler_emit_builtin_variable_v(), spirv_compiler_emit_cbv_declaration(), spirv_compiler_emit_combined_sampler_declarations(), spirv_compiler_emit_comparison_instruction(), spirv_compiler_emit_conditional_branch(), spirv_compiler_emit_constant_array(), spirv_compiler_emit_construct_vector(), spirv_compiler_emit_cut_stream(), spirv_compiler_emit_dcl_gs_instances(), spirv_compiler_emit_dcl_immediate_constant_buffer(), spirv_compiler_emit_dcl_indexable_temp(), spirv_compiler_emit_default_control_point_phase(), spirv_compiler_emit_dereference_register(), spirv_compiler_emit_deriv_instruction(), spirv_compiler_emit_descriptor_binding(), spirv_compiler_emit_discard(), spirv_compiler_emit_discard_function(), spirv_compiler_emit_dot(), spirv_compiler_emit_draw_parameter_fixup(), spirv_compiler_emit_emit_stream(), spirv_compiler_emit_eval_attrib(), spirv_compiler_emit_execution_mode(), spirv_compiler_emit_ext_glsl_instruction(), spirv_compiler_emit_f16tof32(), spirv_compiler_emit_f32tof16(), spirv_compiler_emit_float_comparison_instruction(), spirv_compiler_emit_ftoi(), spirv_compiler_emit_ftou(), spirv_compiler_emit_gather4(), spirv_compiler_emit_global_flags(), spirv_compiler_emit_group_nonuniform_ballot(), spirv_compiler_emit_hull_shader_main(), spirv_compiler_emit_imad(), spirv_compiler_emit_imul(), spirv_compiler_emit_initial_declarations(), spirv_compiler_emit_input(), spirv_compiler_emit_input_register(), spirv_compiler_emit_int_div(), spirv_compiler_emit_int_to_bool(), spirv_compiler_emit_interpolation_decorations(), spirv_compiler_emit_isfinite(), spirv_compiler_emit_label(), spirv_compiler_emit_ld(), spirv_compiler_emit_ld_raw_structured_srv_uav(), spirv_compiler_emit_ld_tgsm(), spirv_compiler_emit_ld_uav_typed(), spirv_compiler_emit_load_invocation_id(), spirv_compiler_emit_load_reg(), spirv_compiler_emit_load_scalar(), spirv_compiler_emit_load_ssa_reg(), spirv_compiler_emit_load_undef(), spirv_compiler_emit_lod(), spirv_compiler_emit_main_prolog(), spirv_compiler_emit_merge(), spirv_compiler_emit_mov(), spirv_compiler_emit_movc(), spirv_compiler_emit_neg(), spirv_compiler_emit_orderedness_instruction(), spirv_compiler_emit_output(), spirv_compiler_emit_output_register(), spirv_compiler_emit_point_size(), spirv_compiler_emit_push_constant_buffers(), spirv_compiler_emit_quad_read_across(), spirv_compiler_emit_quad_read_lane_at(), spirv_compiler_emit_query_sample_count(), spirv_compiler_emit_raw_structured_addressing(), spirv_compiler_emit_rcp(), spirv_compiler_emit_register_addressing(), spirv_compiler_emit_register_execution_mode(), spirv_compiler_emit_resinfo(), spirv_compiler_emit_resource_declaration(), spirv_compiler_emit_retc(), spirv_compiler_emit_return(), spirv_compiler_emit_sample(), spirv_compiler_emit_sample_c(), spirv_compiler_emit_sample_info(), spirv_compiler_emit_sample_position(), spirv_compiler_emit_sampler_declaration(), spirv_compiler_emit_sat(), spirv_compiler_emit_shader_epilogue_function(), spirv_compiler_emit_shader_epilogue_invocation(), spirv_compiler_emit_shader_phase_builtin_variable(), spirv_compiler_emit_shader_phase_name(), spirv_compiler_emit_sincos(), spirv_compiler_emit_spec_constant(), spirv_compiler_emit_store(), spirv_compiler_emit_store_dst_components(), spirv_compiler_emit_store_reg(), spirv_compiler_emit_store_scalar(), spirv_compiler_emit_store_shader_output(), spirv_compiler_emit_store_tgsm(), spirv_compiler_emit_store_uav_raw_structured(), spirv_compiler_emit_store_uav_typed(), spirv_compiler_emit_swapc(), spirv_compiler_emit_switch(), spirv_compiler_emit_swizzle(), spirv_compiler_emit_temps(), spirv_compiler_emit_uav_counter_instruction(), spirv_compiler_emit_vector_shuffle(), spirv_compiler_emit_wave_alu_op(), spirv_compiler_emit_wave_bit_count(), spirv_compiler_emit_wave_bool_op(), spirv_compiler_emit_wave_is_first_lane(), spirv_compiler_emit_wave_read_lane_at(), spirv_compiler_emit_wave_read_lane_first(), spirv_compiler_emit_workgroup_memory(), spirv_compiler_enable_descriptor_indexing(), spirv_compiler_enable_resource_type(), spirv_compiler_end_invocation_interlock(), spirv_compiler_enter_shader_phase(), spirv_compiler_generate_spirv(), spirv_compiler_get_buffer_parameter(), spirv_compiler_get_constant(), spirv_compiler_get_constant64(), spirv_compiler_get_current_function_location(), spirv_compiler_get_descriptor_index(), spirv_compiler_get_discard_function_id(), spirv_compiler_get_image_type_id(), spirv_compiler_get_label_id(), spirv_compiler_get_register_id(), spirv_compiler_get_type_id_for_reg(), spirv_compiler_initialise_block(), spirv_compiler_leave_shader_phase(), and spirv_compiler_prepare_image().

◆ 

struct { ... } * spirv_compiler::spirv_parameter_info

◆ spirv_target_info

◆ ssa_register_count

unsigned int spirv_compiler::ssa_register_count

◆ ssa_register_info

◆ ssbo_uavs

◆ string_buffers

struct vkd3d_string_buffer_cache spirv_compiler::string_buffers

◆ strip_debug

bool spirv_compiler::strip_debug

Definition at line 2421 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_generate_spirv().

◆ symbol_table

◆ temp_count

unsigned int spirv_compiler::temp_count

◆ temp_id

uint32_t spirv_compiler::temp_id

Definition at line 2427 of file spirv.c.

Referenced by spirv_compiler_emit_temps(), and spirv_compiler_get_register_info().

◆ uav_read_without_format

bool spirv_compiler::uav_read_without_format

Definition at line 2423 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_get_image_type_id().

◆ use_invocation_interlock

bool spirv_compiler::use_invocation_interlock

◆ use_vocp

bool spirv_compiler::use_vocp

◆ write_tess_geom_point_size

bool spirv_compiler::write_tess_geom_point_size

Definition at line 2485 of file spirv.c.

Referenced by spirv_compiler_create(), and spirv_compiler_emit_point_size().

◆ xfb_info


The documentation for this struct was generated from the following file: