diff options
| author | 2021-05-30 22:44:28 -0400 | |
|---|---|---|
| committer | 2021-07-22 21:51:37 -0400 | |
| commit | e10366974edd7c75111d0bef16daf941db9e9a30 (patch) | |
| tree | e7e986cc5f7184dba92ac2e6325ac3948111f08d /src/shader_recompiler/backend/glsl/var_alloc.h | |
| parent | HACK glsl: Write defaults to unused generic attributes (diff) | |
| download | yuzu-e10366974edd7c75111d0bef16daf941db9e9a30.tar.gz yuzu-e10366974edd7c75111d0bef16daf941db9e9a30.tar.xz yuzu-e10366974edd7c75111d0bef16daf941db9e9a30.zip | |
glsl: Implement precise fp variable allocation
Diffstat (limited to 'src/shader_recompiler/backend/glsl/var_alloc.h')
| -rw-r--r-- | src/shader_recompiler/backend/glsl/var_alloc.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/shader_recompiler/backend/glsl/var_alloc.h b/src/shader_recompiler/backend/glsl/var_alloc.h index 574960b1a..be21a87ea 100644 --- a/src/shader_recompiler/backend/glsl/var_alloc.h +++ b/src/shader_recompiler/backend/glsl/var_alloc.h | |||
| @@ -33,6 +33,8 @@ enum class GlslVarType : u32 { | |||
| 33 | F32x3, | 33 | F32x3, |
| 34 | U32x4, | 34 | U32x4, |
| 35 | F32x4, | 35 | F32x4, |
| 36 | PrecF32, | ||
| 37 | PrecF64, | ||
| 36 | Void, | 38 | Void, |
| 37 | }; | 39 | }; |
| 38 | 40 | ||
| @@ -40,8 +42,8 @@ struct Id { | |||
| 40 | union { | 42 | union { |
| 41 | u32 raw; | 43 | u32 raw; |
| 42 | BitField<0, 1, u32> is_valid; | 44 | BitField<0, 1, u32> is_valid; |
| 43 | BitField<1, 4, GlslVarType> type; | 45 | BitField<1, 5, GlslVarType> type; |
| 44 | BitField<5, 27, u32> index; | 46 | BitField<6, 26, u32> index; |
| 45 | }; | 47 | }; |
| 46 | 48 | ||
| 47 | bool operator==(Id rhs) const noexcept { | 49 | bool operator==(Id rhs) const noexcept { |
| @@ -101,6 +103,8 @@ private: | |||
| 101 | UseTracker var_u64{}; | 103 | UseTracker var_u64{}; |
| 102 | UseTracker var_s64{}; | 104 | UseTracker var_s64{}; |
| 103 | UseTracker var_f64{}; | 105 | UseTracker var_f64{}; |
| 106 | UseTracker var_precf32{}; | ||
| 107 | UseTracker var_precf64{}; | ||
| 104 | }; | 108 | }; |
| 105 | 109 | ||
| 106 | } // namespace Shader::Backend::GLSL | 110 | } // namespace Shader::Backend::GLSL |