diff options
Diffstat (limited to 'src/shader_recompiler')
| -rw-r--r-- | src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp b/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp index bab32b58b..a82472152 100644 --- a/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp +++ b/src/shader_recompiler/ir_opt/collect_shader_info_pass.cpp | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | // Licensed under GPLv2 or any later version | 2 | // Licensed under GPLv2 or any later version |
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include "common/alignment.h" | ||
| 5 | #include "shader_recompiler/environment.h" | 6 | #include "shader_recompiler/environment.h" |
| 6 | #include "shader_recompiler/frontend/ir/modifiers.h" | 7 | #include "shader_recompiler/frontend/ir/modifiers.h" |
| 7 | #include "shader_recompiler/frontend/ir/program.h" | 8 | #include "shader_recompiler/frontend/ir/program.h" |
| @@ -602,7 +603,7 @@ void VisitUsages(Info& info, IR::Inst& inst) { | |||
| 602 | } | 603 | } |
| 603 | u32& size{info.constant_buffer_used_sizes[index.U32()]}; | 604 | u32& size{info.constant_buffer_used_sizes[index.U32()]}; |
| 604 | if (offset.IsImmediate()) { | 605 | if (offset.IsImmediate()) { |
| 605 | size = std::max(size, offset.U32() + element_size); | 606 | size = Common::AlignUp(std::max(size, offset.U32() + element_size), 16u); |
| 606 | } else { | 607 | } else { |
| 607 | size = 0x10'000; | 608 | size = 0x10'000; |
| 608 | } | 609 | } |