summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/profile.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/shader_recompiler/profile.h')
-rw-r--r--src/shader_recompiler/profile.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/shader_recompiler/profile.h b/src/shader_recompiler/profile.h
index 253e0d0bd..9ca97f6a4 100644
--- a/src/shader_recompiler/profile.h
+++ b/src/shader_recompiler/profile.h
@@ -43,6 +43,7 @@ struct Profile {
43 bool support_gl_variable_aoffi{}; 43 bool support_gl_variable_aoffi{};
44 bool support_gl_sparse_textures{}; 44 bool support_gl_sparse_textures{};
45 bool support_gl_derivative_control{}; 45 bool support_gl_derivative_control{};
46 bool support_scaled_attributes{};
46 47
47 bool warp_size_potentially_larger_than_guest{}; 48 bool warp_size_potentially_larger_than_guest{};
48 49
@@ -52,6 +53,10 @@ struct Profile {
52 bool need_declared_frag_colors{}; 53 bool need_declared_frag_colors{};
53 /// Prevents fast math optimizations that may cause inaccuracies 54 /// Prevents fast math optimizations that may cause inaccuracies
54 bool need_fastmath_off{}; 55 bool need_fastmath_off{};
56 /// Some GPU vendors use a different rounding precision when calculating texture pixel
57 /// coordinates with the 16.8 format in the ImageGather instruction than the Maxwell
58 /// architecture. Applying an offset does fix this mismatching rounding behaviour.
59 bool need_gather_subpixel_offset{};
55 60
56 /// OpFClamp is broken and OpFMax + OpFMin should be used instead 61 /// OpFClamp is broken and OpFMax + OpFMin should be used instead
57 bool has_broken_spirv_clamp{}; 62 bool has_broken_spirv_clamp{};
@@ -73,6 +78,8 @@ struct Profile {
73 bool has_gl_bool_ref_bug{}; 78 bool has_gl_bool_ref_bug{};
74 /// Ignores SPIR-V ordered vs unordered using GLSL semantics 79 /// Ignores SPIR-V ordered vs unordered using GLSL semantics
75 bool ignore_nan_fp_comparisons{}; 80 bool ignore_nan_fp_comparisons{};
81 /// Some drivers have broken support for OpVectorExtractDynamic on subgroup mask inputs
82 bool has_broken_spirv_subgroup_mask_vector_extract_dynamic{};
76 83
77 u32 gl_max_compute_smem_size{}; 84 u32 gl_max_compute_smem_size{};
78}; 85};