mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2026-04-27 08:46:03 +03:00
[PR #310] [MERGED] 64 bits OP, impl V_ADDC_U32 & V_MAD_U64_U32 #1471
Labels
No labels
Bloodborne
bug
contributor wanted
documentation
enhancement
frontend
good first issue
help wanted
linux
pull-request
question
release
verification progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/shadPS4#1471
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/shadps4-emu/shadPS4/pull/310
Author: @viniciuslrangel
Created: 7/21/2024
Status: ✅ Merged
Merged: 7/27/2024
Merged by: @raphaelthegreat
Base:
main← Head:op_impl_2📝 Commits (10+)
e23749bimpl V_ADDC_U32 & V_MAD_U64_U32510072bshader recompiler: add 64 bits version to get register / GetSrcc73aff3fix V_ADDC_U32 carry21ce67eshader recompiler: removed automatic conversion to force_flt in GetSRc09946f1shader recompiler: auto cast between u32 and u64 during ssa pass96b2cf1shader recompiler: fix SetVectorReg64 & standardize switches-case11d9fbdshader translate: fix overflow detection in V_ADD_I324d224d6shader recompiler: more 64-bit workdf25708shader recompiler: add V_MAD_U64_U32 vcc output7e0e99eshader recompiler: removed unnecessary changes & missing consts📊 Changes
12 files changed (+361 additions, -40 deletions)
View changed files
📝
src/shader_recompiler/backend/spirv/emit_spirv_instructions.h(+6 -2)📝
src/shader_recompiler/backend/spirv/emit_spirv_integer.cpp(+21 -2)📝
src/shader_recompiler/frontend/opcodes.h(+4 -4)📝
src/shader_recompiler/frontend/translate/translate.cpp(+198 -10)📝
src/shader_recompiler/frontend/translate/translate.h(+7 -1)📝
src/shader_recompiler/frontend/translate/vector_alu.cpp(+43 -1)📝
src/shader_recompiler/ir/ir_emitter.cpp(+57 -10)📝
src/shader_recompiler/ir/ir_emitter.h(+3 -3)📝
src/shader_recompiler/ir/opcodes.inc(+6 -2)📝
src/shader_recompiler/ir/passes/constant_propogation_pass.cpp(+10 -2)📝
src/shader_recompiler/ir/passes/ssa_rewrite_pass.cpp(+5 -3)📝
src/shader_recompiler/ir/value.h(+1 -0)📄 Description
Still need to implement SSA rewrite auto cast between 64 and 32 bitsFixed op src being wrongly forced to float
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.