summaryrefslogtreecommitdiff
path: root/src/video_core/engines
diff options
context:
space:
mode:
authorGravatar bunnei2022-11-12 02:27:06 -0800
committerGravatar GitHub2022-11-12 02:27:06 -0800
commit08091ff3e38665181fedcc476a7b83b84159e7a4 (patch)
tree8d059005c6e74fff1ccae781068b12e58ccdc816 /src/video_core/engines
parentMerge pull request #9224 from liamwhite/services-arent-processes (diff)
parentFix regs regression with OpenGL two-sided stencil, and re-add data invalidati... (diff)
downloadyuzu-08091ff3e38665181fedcc476a7b83b84159e7a4.tar.gz
yuzu-08091ff3e38665181fedcc476a7b83b84159e7a4.tar.xz
yuzu-08091ff3e38665181fedcc476a7b83b84159e7a4.zip
Merge pull request #9226 from Kelebek1/regs_regression
[video_core] Fix a couple regs regressions
Diffstat (limited to 'src/video_core/engines')
-rw-r--r--src/video_core/engines/maxwell_3d.cpp5
-rw-r--r--src/video_core/engines/maxwell_3d.h16
2 files changed, 17 insertions, 4 deletions
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp
index 4a2f2c1fd..d502d181c 100644
--- a/src/video_core/engines/maxwell_3d.cpp
+++ b/src/video_core/engines/maxwell_3d.cpp
@@ -249,6 +249,11 @@ void Maxwell3D::ProcessMethodCall(u32 method, u32 argument, u32 nonshadow_argume
249 return; 249 return;
250 case MAXWELL3D_REG_INDEX(fragment_barrier): 250 case MAXWELL3D_REG_INDEX(fragment_barrier):
251 return rasterizer->FragmentBarrier(); 251 return rasterizer->FragmentBarrier();
252 case MAXWELL3D_REG_INDEX(invalidate_texture_data_cache):
253 rasterizer->InvalidateGPUCache();
254 return rasterizer->WaitForIdle();
255 case MAXWELL3D_REG_INDEX(tiled_cache_barrier):
256 return rasterizer->TiledCacheBarrier();
252 } 257 }
253} 258}
254 259
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h
index 910ab213a..34b085388 100644
--- a/src/video_core/engines/maxwell_3d.h
+++ b/src/video_core/engines/maxwell_3d.h
@@ -707,7 +707,7 @@ public:
707 case Size::Size_A2_B10_G10_R10: 707 case Size::Size_A2_B10_G10_R10:
708 return "2_10_10_10"; 708 return "2_10_10_10";
709 case Size::Size_B10_G11_R11: 709 case Size::Size_B10_G11_R11:
710 return "10_11_12"; 710 return "10_11_11";
711 default: 711 default:
712 ASSERT(false); 712 ASSERT(false);
713 return {}; 713 return {};
@@ -2639,7 +2639,7 @@ public:
2639 L2CacheControl l2_cache_control; ///< 0x0218 2639 L2CacheControl l2_cache_control; ///< 0x0218
2640 InvalidateShaderCache invalidate_shader_cache; ///< 0x021C 2640 InvalidateShaderCache invalidate_shader_cache; ///< 0x021C
2641 INSERT_PADDING_BYTES_NOINIT(0xA8); 2641 INSERT_PADDING_BYTES_NOINIT(0xA8);
2642 SyncInfo sync_info; ///< 0x02C8 2642 SyncInfo sync_info; ///< 0x02C8
2643 INSERT_PADDING_BYTES_NOINIT(0x4); 2643 INSERT_PADDING_BYTES_NOINIT(0x4);
2644 u32 prim_circular_buffer_throttle; ///< 0x02D0 2644 u32 prim_circular_buffer_throttle; ///< 0x02D0
2645 u32 flush_invalidate_rop_mini_cache; ///< 0x02D4 2645 u32 flush_invalidate_rop_mini_cache; ///< 0x02D4
@@ -2731,7 +2731,11 @@ public:
2731 s32 stencil_back_ref; ///< 0x0F54 2731 s32 stencil_back_ref; ///< 0x0F54
2732 u32 stencil_back_mask; ///< 0x0F58 2732 u32 stencil_back_mask; ///< 0x0F58
2733 u32 stencil_back_func_mask; ///< 0x0F5C 2733 u32 stencil_back_func_mask; ///< 0x0F5C
2734 INSERT_PADDING_BYTES_NOINIT(0x24); 2734 INSERT_PADDING_BYTES_NOINIT(0x14);
2735 u32 invalidate_texture_data_cache; ///< 0x0F74 Assumed - Not in official docs.
2736 INSERT_PADDING_BYTES_NOINIT(0x4);
2737 u32 tiled_cache_barrier; ///< 0x0F7C Assumed - Not in official docs.
2738 INSERT_PADDING_BYTES_NOINIT(0x4);
2735 VertexStreamSubstitute vertex_stream_substitute; ///< 0x0F84 2739 VertexStreamSubstitute vertex_stream_substitute; ///< 0x0F84
2736 u32 line_mode_clip_generated_edge_do_not_draw; ///< 0x0F8C 2740 u32 line_mode_clip_generated_edge_do_not_draw; ///< 0x0F8C
2737 u32 color_mask_common; ///< 0x0F90 2741 u32 color_mask_common; ///< 0x0F90
@@ -2791,7 +2795,8 @@ public:
2791 FillViaTriangleMode fill_via_triangle_mode; ///< 0x113C 2795 FillViaTriangleMode fill_via_triangle_mode; ///< 0x113C
2792 u32 blend_per_format_snorm8_unorm16_snorm16_enabled; ///< 0x1140 2796 u32 blend_per_format_snorm8_unorm16_snorm16_enabled; ///< 0x1140
2793 u32 flush_pending_writes_sm_gloal_store; ///< 0x1144 2797 u32 flush_pending_writes_sm_gloal_store; ///< 0x1144
2794 INSERT_PADDING_BYTES_NOINIT(0x18); 2798 u32 conservative_raster_enable; ///< 0x1148 Assumed - Not in official docs.
2799 INSERT_PADDING_BYTES_NOINIT(0x14);
2795 std::array<VertexAttribute, NumVertexAttributes> vertex_attrib_format; ///< 0x1160 2800 std::array<VertexAttribute, NumVertexAttributes> vertex_attrib_format; ///< 0x1160
2796 std::array<MsaaSampleLocation, 4> multisample_sample_locations; ///< 0x11E0 2801 std::array<MsaaSampleLocation, 4> multisample_sample_locations; ///< 0x11E0
2797 u32 offset_render_target_index_by_viewport_index; ///< 0x11F0 2802 u32 offset_render_target_index_by_viewport_index; ///< 0x11F0
@@ -3287,6 +3292,8 @@ ASSERT_REG_POSITION(const_color_rendering, 0x0F40);
3287ASSERT_REG_POSITION(stencil_back_ref, 0x0F54); 3292ASSERT_REG_POSITION(stencil_back_ref, 0x0F54);
3288ASSERT_REG_POSITION(stencil_back_mask, 0x0F58); 3293ASSERT_REG_POSITION(stencil_back_mask, 0x0F58);
3289ASSERT_REG_POSITION(stencil_back_func_mask, 0x0F5C); 3294ASSERT_REG_POSITION(stencil_back_func_mask, 0x0F5C);
3295ASSERT_REG_POSITION(invalidate_texture_data_cache, 0x0F74);
3296ASSERT_REG_POSITION(tiled_cache_barrier, 0x0F7C);
3290ASSERT_REG_POSITION(vertex_stream_substitute, 0x0F84); 3297ASSERT_REG_POSITION(vertex_stream_substitute, 0x0F84);
3291ASSERT_REG_POSITION(line_mode_clip_generated_edge_do_not_draw, 0x0F8C); 3298ASSERT_REG_POSITION(line_mode_clip_generated_edge_do_not_draw, 0x0F8C);
3292ASSERT_REG_POSITION(color_mask_common, 0x0F90); 3299ASSERT_REG_POSITION(color_mask_common, 0x0F90);
@@ -3343,6 +3350,7 @@ ASSERT_REG_POSITION(post_ps_use_pre_ps_coverage, 0x1138);
3343ASSERT_REG_POSITION(fill_via_triangle_mode, 0x113C); 3350ASSERT_REG_POSITION(fill_via_triangle_mode, 0x113C);
3344ASSERT_REG_POSITION(blend_per_format_snorm8_unorm16_snorm16_enabled, 0x1140); 3351ASSERT_REG_POSITION(blend_per_format_snorm8_unorm16_snorm16_enabled, 0x1140);
3345ASSERT_REG_POSITION(flush_pending_writes_sm_gloal_store, 0x1144); 3352ASSERT_REG_POSITION(flush_pending_writes_sm_gloal_store, 0x1144);
3353ASSERT_REG_POSITION(conservative_raster_enable, 0x1148);
3346ASSERT_REG_POSITION(vertex_attrib_format, 0x1160); 3354ASSERT_REG_POSITION(vertex_attrib_format, 0x1160);
3347ASSERT_REG_POSITION(multisample_sample_locations, 0x11E0); 3355ASSERT_REG_POSITION(multisample_sample_locations, 0x11E0);
3348ASSERT_REG_POSITION(offset_render_target_index_by_viewport_index, 0x11F0); 3356ASSERT_REG_POSITION(offset_render_target_index_by_viewport_index, 0x11F0);