[PR #3007] [MERGED] Handle DS_READ_U16, DS_WRITE_B16, DS_ADD_U64 #3144

Closed
opened 2026-02-27 22:02:36 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/shadps4-emu/shadPS4/pull/3007
Author: @mikusp
Created: 5/29/2025
Status: Merged
Merged: 6/9/2025
Merged by: @georgemoralis

Base: mainHead: load_write_shared_16bit


📝 Commits (6)

  • 72621fc Handle DS_READ_U16 & DS_WRITE_B16
  • df4a6fc Refactor DS translation
  • 0b21284 Translate DS_ADD_U64
  • d694b8c format
  • 382ff2f Fix RingAccessElimination after changing WriteShared64 type
  • 72553c4 Simplify bounds checking in generated SPIR-V

📊 Changes

19 files changed (+323 additions, -89 deletions)

View changed files

📝 src/shader_recompiler/backend/spirv/emit_spirv.cpp (+5 -0)
📝 src/shader_recompiler/backend/spirv/emit_spirv_atomic.cpp (+54 -31)
src/shader_recompiler/backend/spirv/emit_spirv_bounds.h (+48 -0)
📝 src/shader_recompiler/backend/spirv/emit_spirv_instructions.h (+4 -0)
📝 src/shader_recompiler/backend/spirv/emit_spirv_shared_memory.cpp (+63 -20)
📝 src/shader_recompiler/backend/spirv/spirv_emit_context.cpp (+24 -7)
📝 src/shader_recompiler/backend/spirv/spirv_emit_context.h (+6 -6)
📝 src/shader_recompiler/frontend/translate/data_share.cpp (+43 -13)
📝 src/shader_recompiler/frontend/translate/translate.h (+1 -0)
📝 src/shader_recompiler/ir/ir_emitter.cpp (+9 -2)
📝 src/shader_recompiler/ir/ir_emitter.h (+1 -1)
📝 src/shader_recompiler/ir/opcodes.inc (+6 -2)
📝 src/shader_recompiler/ir/passes/ring_access_elimination.cpp (+4 -2)
📝 src/shader_recompiler/ir/passes/shader_info_collection_pass.cpp (+2 -0)
📝 src/shader_recompiler/ir/passes/shared_memory_to_storage_pass.cpp (+13 -2)
📝 src/shader_recompiler/profile.h (+1 -1)
📝 src/video_core/renderer_vulkan/vk_instance.cpp (+28 -1)
📝 src/video_core/renderer_vulkan/vk_instance.h (+9 -0)
📝 src/video_core/renderer_vulkan/vk_pipeline_cache.cpp (+2 -1)

📄 Description

Hit by God of War


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/shadps4-emu/shadPS4/pull/3007 **Author:** [@mikusp](https://github.com/mikusp) **Created:** 5/29/2025 **Status:** ✅ Merged **Merged:** 6/9/2025 **Merged by:** [@georgemoralis](https://github.com/georgemoralis) **Base:** `main` ← **Head:** `load_write_shared_16bit` --- ### 📝 Commits (6) - [`72621fc`](https://github.com/shadps4-emu/shadPS4/commit/72621fcadd1a682fcdef2b903504aba1dced5656) Handle DS_READ_U16 & DS_WRITE_B16 - [`df4a6fc`](https://github.com/shadps4-emu/shadPS4/commit/df4a6fce5d78e5f20e18bdbdc523d3034d3f956c) Refactor DS translation - [`0b21284`](https://github.com/shadps4-emu/shadPS4/commit/0b2128448ac48790c1bbd98a6c280ab8cf737465) Translate DS_ADD_U64 - [`d694b8c`](https://github.com/shadps4-emu/shadPS4/commit/d694b8cf7eefc6cc6678048503f0eb48ae18a6c9) format - [`382ff2f`](https://github.com/shadps4-emu/shadPS4/commit/382ff2fb4ad7b55ec5bb64f2811ae88298c070b0) Fix RingAccessElimination after changing WriteShared64 type - [`72553c4`](https://github.com/shadps4-emu/shadPS4/commit/72553c44d8e68e75a7a8e7b32a2ec49cc4ea6cdc) Simplify bounds checking in generated SPIR-V ### 📊 Changes **19 files changed** (+323 additions, -89 deletions) <details> <summary>View changed files</summary> 📝 `src/shader_recompiler/backend/spirv/emit_spirv.cpp` (+5 -0) 📝 `src/shader_recompiler/backend/spirv/emit_spirv_atomic.cpp` (+54 -31) ➕ `src/shader_recompiler/backend/spirv/emit_spirv_bounds.h` (+48 -0) 📝 `src/shader_recompiler/backend/spirv/emit_spirv_instructions.h` (+4 -0) 📝 `src/shader_recompiler/backend/spirv/emit_spirv_shared_memory.cpp` (+63 -20) 📝 `src/shader_recompiler/backend/spirv/spirv_emit_context.cpp` (+24 -7) 📝 `src/shader_recompiler/backend/spirv/spirv_emit_context.h` (+6 -6) 📝 `src/shader_recompiler/frontend/translate/data_share.cpp` (+43 -13) 📝 `src/shader_recompiler/frontend/translate/translate.h` (+1 -0) 📝 `src/shader_recompiler/ir/ir_emitter.cpp` (+9 -2) 📝 `src/shader_recompiler/ir/ir_emitter.h` (+1 -1) 📝 `src/shader_recompiler/ir/opcodes.inc` (+6 -2) 📝 `src/shader_recompiler/ir/passes/ring_access_elimination.cpp` (+4 -2) 📝 `src/shader_recompiler/ir/passes/shader_info_collection_pass.cpp` (+2 -0) 📝 `src/shader_recompiler/ir/passes/shared_memory_to_storage_pass.cpp` (+13 -2) 📝 `src/shader_recompiler/profile.h` (+1 -1) 📝 `src/video_core/renderer_vulkan/vk_instance.cpp` (+28 -1) 📝 `src/video_core/renderer_vulkan/vk_instance.h` (+9 -0) 📝 `src/video_core/renderer_vulkan/vk_pipeline_cache.cpp` (+2 -1) </details> ### 📄 Description Hit by God of War --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 22:02:36 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/shadPS4#3144
No description provided.