Struct CompilerMSL::Options
Defined in File spirv_msl.hpp
Nested Relationships
This struct is a nested type of Class CompilerMSL.
Struct Documentation
-
struct Options
Public Types
-
enum Platform
Values:
-
enumerator iOS
-
enumerator macOS
-
enumerator iOS
-
enum class ArgumentBuffersTier
Values:
-
enumerator Tier1
-
enumerator Tier2
-
enumerator Tier1
-
enum class IndexType
Values:
-
enumerator None
-
enumerator UInt16
-
enumerator UInt32
-
enumerator None
Public Functions
-
inline bool is_ios() const
-
inline bool is_macos() const
-
inline bool use_quadgroup_operation() const
-
inline void set_msl_version(uint32_t major, uint32_t minor = 0, uint32_t patch = 0)
-
inline bool supports_msl_version(uint32_t major, uint32_t minor = 0, uint32_t patch = 0) const
Public Members
-
uint32_t msl_version = make_msl_version(1, 2)
-
uint32_t texel_buffer_texture_width = 4096
-
uint32_t r32ui_linear_texture_alignment = 4
-
uint32_t r32ui_alignment_constant_id = 65535
-
uint32_t swizzle_buffer_index = 30
-
uint32_t indirect_params_buffer_index = 29
-
uint32_t shader_output_buffer_index = 28
-
uint32_t shader_patch_output_buffer_index = 27
-
uint32_t shader_tess_factor_buffer_index = 26
-
uint32_t buffer_size_buffer_index = 25
-
uint32_t view_mask_buffer_index = 24
-
uint32_t dynamic_offsets_buffer_index = 23
-
uint32_t shader_input_buffer_index = 22
-
uint32_t shader_index_buffer_index = 21
-
uint32_t shader_patch_input_buffer_index = 20
-
uint32_t shader_input_wg_index = 0
-
uint32_t device_index = 0
-
uint32_t enable_frag_output_mask = 0xffffffff
-
uint32_t additional_fixed_sample_mask = 0xffffffff
-
bool enable_point_size_builtin = true
-
bool enable_frag_depth_builtin = true
-
bool enable_frag_stencil_ref_builtin = true
-
bool disable_rasterization = false
-
bool capture_output_to_buffer = false
-
bool swizzle_texture_samples = false
-
bool tess_domain_origin_lower_left = false
-
bool multiview = false
-
bool multiview_layered_rendering = true
-
bool view_index_from_device_index = false
-
bool dispatch_base = false
-
bool texture_1D_as_2D = false
-
bool argument_buffers = false
-
ArgumentBuffersTier argument_buffers_tier = ArgumentBuffersTier::Tier1
-
bool runtime_array_rich_descriptor = false
-
bool enable_base_index_zero = false
-
bool pad_fragment_output_components = false
-
bool ios_support_base_vertex_instance = false
-
bool use_framebuffer_fetch_subpasses = false
-
bool invariant_float_math = false
-
bool emulate_cube_array = false
-
bool enable_decoration_binding = false
-
bool texture_buffer_native = false
-
bool force_active_argument_buffer_resources = false
-
bool pad_argument_buffer_resources = false
-
bool force_native_arrays = false
-
bool enable_clip_distance_user_varying = true
-
bool multi_patch_workgroup = false
-
bool raw_buffer_tese_input = false
-
bool vertex_for_tessellation = false
-
bool arrayed_subpass_input = false
-
bool ios_use_simdgroup_functions = false
-
bool emulate_subgroups = false
-
uint32_t fixed_subgroup_size = 0
-
bool force_sample_rate_shading = false
-
bool manual_helper_invocation_updates = true
-
bool check_discarded_frag_stores = false
-
bool sample_dref_lod_array_as_grad = false
-
bool readwrite_texture_fences = true
-
bool replace_recursive_inputs = false
-
bool agx_manual_cube_grad_fixup = false
-
bool force_fragment_with_side_effects_execution = false
-
bool input_attachment_is_ds_attachment = false
Public Static Functions
-
static inline uint32_t make_msl_version(uint32_t major, uint32_t minor = 0, uint32_t patch = 0)
-
enum Platform