diff options
Diffstat (limited to 'src/shader_recompiler/profile.h')
| -rw-r--r-- | src/shader_recompiler/profile.h | 7 |
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 | }; |