|
| Compiler (std::vector< uint32_t > ir) |
|
| Compiler (const uint32_t *ir, size_t word_count) |
|
virtual | ~Compiler ()=default |
|
virtual std::string | compile () |
|
const std::string & | get_name (uint32_t id) const |
|
void | set_decoration (uint32_t id, spv::Decoration decoration, uint32_t argument=0) |
|
void | set_decoration_string (uint32_t id, spv::Decoration decoration, const std::string &argument) |
|
void | set_name (uint32_t id, const std::string &name) |
|
uint64_t | get_decoration_mask (uint32_t id) const |
|
const Bitset & | get_decoration_bitset (uint32_t id) const |
|
bool | has_decoration (uint32_t id, spv::Decoration decoration) const |
|
uint32_t | get_decoration (uint32_t id, spv::Decoration decoration) const |
|
const std::string & | get_decoration_string (uint32_t id, spv::Decoration decoration) const |
|
void | unset_decoration (uint32_t id, spv::Decoration decoration) |
|
const SPIRType & | get_type (uint32_t id) const |
|
const SPIRType & | get_type_from_variable (uint32_t id) const |
|
uint32_t | get_non_pointer_type_id (uint32_t type_id) const |
|
const SPIRType & | get_non_pointer_type (const SPIRType &type) const |
|
const SPIRType & | get_non_pointer_type (uint32_t type_id) const |
|
spv::StorageClass | get_storage_class (uint32_t id) const |
|
virtual const std::string | get_fallback_name (uint32_t id) const |
|
virtual const std::string | get_block_fallback_name (uint32_t id) const |
|
const std::string & | get_member_name (uint32_t id, uint32_t index) const |
|
uint32_t | get_member_decoration (uint32_t id, uint32_t index, spv::Decoration decoration) const |
|
const std::string & | get_member_decoration_string (uint32_t id, uint32_t index, spv::Decoration decoration) const |
|
void | set_member_name (uint32_t id, uint32_t index, const std::string &name) |
|
const std::string & | get_member_qualified_name (uint32_t type_id, uint32_t index) const |
|
void | set_member_qualified_name (uint32_t type_id, uint32_t index, const std::string &name) |
|
uint64_t | get_member_decoration_mask (uint32_t id, uint32_t index) const |
|
const Bitset & | get_member_decoration_bitset (uint32_t id, uint32_t index) const |
|
bool | has_member_decoration (uint32_t id, uint32_t index, spv::Decoration decoration) const |
|
void | set_member_decoration (uint32_t id, uint32_t index, spv::Decoration decoration, uint32_t argument=0) |
|
void | set_member_decoration_string (uint32_t id, uint32_t index, spv::Decoration decoration, const std::string &argument) |
|
void | unset_member_decoration (uint32_t id, uint32_t index, spv::Decoration decoration) |
|
virtual const std::string | get_fallback_member_name (uint32_t index) const |
|
std::vector< BufferRange > | get_active_buffer_ranges (uint32_t id) const |
|
size_t | get_declared_struct_size (const SPIRType &struct_type) const |
|
virtual size_t | get_declared_struct_member_size (const SPIRType &struct_type, uint32_t index) const |
|
| SPIRV_CROSS_DEPRECATED ("Please use flatten_buffer_block instead.") void flatten_interface_block(uint32_t id) |
|
std::unordered_set< uint32_t > | get_active_interface_variables () const |
|
void | set_enabled_interface_variables (std::unordered_set< uint32_t > active_variables) |
|
ShaderResources | get_shader_resources () const |
|
ShaderResources | get_shader_resources (const std::unordered_set< uint32_t > &active_variables) const |
|
void | set_remapped_variable_state (uint32_t id, bool remap_enable) |
|
bool | get_remapped_variable_state (uint32_t id) const |
|
void | set_subpass_input_remapped_components (uint32_t id, uint32_t components) |
|
uint32_t | get_subpass_input_remapped_components (uint32_t id) const |
|
std::vector< std::string > | get_entry_points () const |
|
void | set_entry_point (const std::string &name) |
|
SPIREntryPoint & | get_entry_point (const std::string &name) |
|
void | set_entry_point (const std::string &entry, spv::ExecutionModel execution_model) |
|
void | rename_entry_point (const std::string &old_name, const std::string &new_name, spv::ExecutionModel execution_model) |
|
const SPIREntryPoint & | get_entry_point (const std::string &name, spv::ExecutionModel execution_model) const |
|
SPIREntryPoint & | get_entry_point (const std::string &name, spv::ExecutionModel execution_model) |
|
const std::string & | get_cleansed_entry_point_name (const std::string &name, spv::ExecutionModel execution_model) const |
|
uint64_t | get_execution_mode_mask () const |
|
const Bitset & | get_execution_mode_bitset () const |
|
void | unset_execution_mode (spv::ExecutionMode mode) |
|
void | set_execution_mode (spv::ExecutionMode mode, uint32_t arg0=0, uint32_t arg1=0, uint32_t arg2=0) |
|
uint32_t | get_execution_mode_argument (spv::ExecutionMode mode, uint32_t index=0) const |
|
spv::ExecutionModel | get_execution_model () const |
|
uint32_t | get_work_group_size_specialization_constants (SpecializationConstant &x, SpecializationConstant &y, SpecializationConstant &z) const |
|
uint32_t | build_dummy_sampler_for_combined_images () |
|
void | build_combined_image_samplers () |
|
const std::vector< CombinedImageSampler > & | get_combined_image_samplers () const |
|
void | set_variable_type_remap_callback (VariableTypeRemapCallback cb) |
|
std::vector< SpecializationConstant > | get_specialization_constants () const |
|
SPIRConstant & | get_constant (uint32_t id) |
|
const SPIRConstant & | get_constant (uint32_t id) const |
|
uint32_t | get_current_id_bound () const |
|
uint32_t | type_struct_member_offset (const SPIRType &type, uint32_t index) const |
|
uint32_t | type_struct_member_array_stride (const SPIRType &type, uint32_t index) const |
|
uint32_t | type_struct_member_matrix_stride (const SPIRType &type, uint32_t index) const |
|
bool | get_binary_offset_for_decoration (uint32_t id, spv::Decoration decoration, uint32_t &word_offset) const |
|
bool | buffer_is_hlsl_counter_buffer (uint32_t id) const |
|
bool | buffer_get_hlsl_counter_buffer (uint32_t id, uint32_t &counter_id) const |
|
const std::vector< spv::Capability > & | get_declared_capabilities () const |
|
const std::vector< std::string > & | get_declared_extensions () const |
|
std::string | get_remapped_declared_block_name (uint32_t id) const |
|
Bitset | get_buffer_block_flags (uint32_t id) const |
|
|
const uint32_t * | stream (const Instruction &instr) const |
|
template<typename T , typename... P> |
T & | set (uint32_t id, P &&... args) |
|
template<typename T > |
T & | get (uint32_t id) |
|
template<typename T > |
T * | maybe_get (uint32_t id) |
|
template<typename T > |
const T & | get (uint32_t id) const |
|
template<typename T > |
const T * | maybe_get (uint32_t id) const |
|
const SPIREntryPoint & | get_entry_point () const |
|
SPIREntryPoint & | get_entry_point () |
|
virtual std::string | to_name (uint32_t id, bool allow_alias=true) const |
|
bool | is_builtin_variable (const SPIRVariable &var) const |
|
bool | is_hidden_variable (const SPIRVariable &var, bool include_builtins=false) const |
|
bool | is_immutable (uint32_t id) const |
|
bool | is_member_builtin (const SPIRType &type, uint32_t index, spv::BuiltIn *builtin) const |
|
bool | is_scalar (const SPIRType &type) const |
|
bool | is_vector (const SPIRType &type) const |
|
bool | is_matrix (const SPIRType &type) const |
|
bool | is_array (const SPIRType &type) const |
|
uint32_t | expression_type_id (uint32_t id) const |
|
const SPIRType & | expression_type (uint32_t id) const |
|
bool | expression_is_lvalue (uint32_t id) const |
|
bool | variable_storage_is_aliased (const SPIRVariable &var) |
|
SPIRVariable * | maybe_get_backing_variable (uint32_t chain) |
|
void | mark_used_as_array_length (uint32_t id) |
|
void | register_read (uint32_t expr, uint32_t chain, bool forwarded) |
|
void | register_write (uint32_t chain) |
|
bool | is_continue (uint32_t next) const |
|
bool | is_single_block_loop (uint32_t next) const |
|
bool | is_break (uint32_t next) const |
|
bool | is_loop_break (uint32_t next) const |
|
bool | is_conditional (uint32_t next) const |
|
void | flush_dependees (SPIRVariable &var) |
|
void | flush_all_active_variables () |
|
void | flush_control_dependent_expressions (uint32_t block) |
|
void | flush_all_atomic_capable_variables () |
|
void | flush_all_aliased_variables () |
|
void | register_global_read_dependencies (const SPIRBlock &func, uint32_t id) |
|
void | register_global_read_dependencies (const SPIRFunction &func, uint32_t id) |
|
void | update_name_cache (std::unordered_set< std::string > &cache, std::string &name) |
|
bool | function_is_pure (const SPIRFunction &func) |
|
bool | block_is_pure (const SPIRBlock &block) |
|
bool | block_is_outside_flow_control_from_block (const SPIRBlock &from, const SPIRBlock &to) |
|
bool | execution_is_branchless (const SPIRBlock &from, const SPIRBlock &to) const |
|
bool | execution_is_noop (const SPIRBlock &from, const SPIRBlock &to) const |
|
SPIRBlock::ContinueBlockType | continue_block_type (const SPIRBlock &continue_block) const |
|
bool | block_is_loop_candidate (const SPIRBlock &block, SPIRBlock::Method method) const |
|
uint32_t | increase_bound_by (uint32_t incr_amount) |
|
bool | types_are_logically_equivalent (const SPIRType &a, const SPIRType &b) const |
|
void | inherit_expression_dependencies (uint32_t dst, uint32_t source) |
|
bool | interface_variable_exists_in_entry_point (uint32_t id) const |
|
void | remap_variable_type_name (const SPIRType &type, const std::string &var_name, std::string &type_name) const |
|
void | parse () |
|
void | parse (const Instruction &i) |
|
bool | traverse_all_reachable_opcodes (const SPIRBlock &block, OpcodeHandler &handler) const |
|
bool | traverse_all_reachable_opcodes (const SPIRFunction &block, OpcodeHandler &handler) const |
|
ShaderResources | get_shader_resources (const std::unordered_set< uint32_t > *active_variables) const |
|
Bitset | get_buffer_block_flags (const SPIRVariable &var) const |
|
bool | get_common_basic_type (const SPIRType &type, SPIRType::BaseType &base_type) |
|
void | update_active_builtins () |
|
bool | has_active_builtin (spv::BuiltIn builtin, spv::StorageClass storage) |
|
void | analyze_parameter_preservation (SPIRFunction &entry, const CFG &cfg, const std::unordered_map< uint32_t, std::unordered_set< uint32_t >> &variable_to_blocks, const std::unordered_map< uint32_t, std::unordered_set< uint32_t >> &complete_write_blocks) |
|
void | analyze_image_and_sampler_usage () |
|
void | build_function_control_flow_graphs_and_analyze () |
|
void | analyze_variable_scope (SPIRFunction &function, AnalyzeVariableScopeAccessHandler &handler) |
|
void | find_function_local_luts (SPIRFunction &function, const AnalyzeVariableScopeAccessHandler &handler) |
|
void | make_constant_null (uint32_t id, uint32_t type) |
|
bool | instruction_to_result_type (uint32_t &result_type, uint32_t &result_id, spv::Op op, const uint32_t *args, uint32_t length) |
|
Bitset | combined_decoration_for_member (const SPIRType &type, uint32_t index) const |
|
bool | image_is_comparison (const SPIRType &type, uint32_t id) const |
|