Nguyen Dac Nam
935648ffa9
address nit.
6 years ago
Nguyen Dac Nam
bf1174c114
Apply suggestions from code review
Co-Authored-By: Rodrigo Locatti <reinuseslisp@airmail.cc>
6 years ago
namkazy
2c98e14d13
shader_decode: SULD.D using std::pair instead of out parameter
6 years ago
namkazy
9efa51311f
shader_decode: SULD.D avoid duplicate code block.
6 years ago
namkazy
7f5696513f
shader_decode: SULD.D fix conversion error.
6 years ago
namkazy
2906372ba1
shader_decode: SULD.D implement bits64 and reverse shader ir init method to removed shader stage.
6 years ago
namkazy
730f9b55b3
silent warning (conversion error)
6 years ago
namkazy
9f6ebccf06
shader_decode: SULD.D -> SINT actually same as UNORM.
6 years ago
namkazy
6f2b7087c2
shader_decode: SULD.D fix decode SNORM component
6 years ago
namkazy
69657ff19c
clang-format
6 years ago
namkazy
24cc64c5b3
shader_decode: get sampler descriptor from registry.
6 years ago
namkazy
acd3f0ab37
tweaking.
6 years ago
namkazy
3e3afa9be6
cleanup unuse params
6 years ago
namkazy
5cd5857000
cleanup debug code.
6 years ago
namkazy
658112783d
reimplement get component type, uncomment mistaken code
6 years ago
namkazy
3ad06e9b2b
remove disable optimize
6 years ago
namkazy
f24c2e1103
[wip] reimplement SULD.D
6 years ago
namkazy
58bcb86af5
add shader stage when init shader ir
6 years ago
Nguyen Dac Nam
2cefdd92bd
clang-fix
6 years ago
Nguyen Dac Nam
1f3d142875
shader: image - import PredCondition
6 years ago
Nguyen Dac Nam
08db60392d
shader: SULD.D bits32 implement more complexer method.
6 years ago
Nguyen Dac Nam
ed1d8beb13
shader: SULD.D import StoreType
6 years ago
Nguyen Dac Nam
6d235b8631
shader: implement SULD.D bits32
6 years ago
ReinUsesLisp
60106531b4
shader/other: Add error message for some S2R registers
6 years ago
ReinUsesLisp
8b719e9e1d
shader_bytecode: Rename MOV_SYS to S2R
6 years ago
ReinUsesLisp
16ae98dbb3
shader_ir: Add error message for EXIT.FCSM_TR
6 years ago
ReinUsesLisp
e1bd89e1c2
shader/memory: Silence no return value warning
Silences a warning about control paths not all returning a value.
6 years ago
ReinUsesLisp
2339fe199f
shader_decompiler: Remove FragCoord.w hack and change IPA implementation
Credits go to gdkchan and Ryujinx. The pull request used for this can
be found here: https://github.com/Ryujinx/Ryujinx/pull/1082
yuzu was already using the header for interpolation, but it was missing
the FragCoord.w multiplication described in the linked pull request.
This commit finally removes the FragCoord.w == 1.0f hack from the shader
decompiler.
While we are at it, this commit renames some enumerations to match
Nvidia's documentation (linked below) and fixes component declaration
order in the shader program header (z and w were swapped).
https://github.com/NVIDIA/open-gpu-doc/blob/master/Shader-Program-Header/Shader-Program-Header.html
6 years ago
Nguyen Dac Nam
238c35b2c9
clang-format
6 years ago
Nguyen Dac Nam
defb9642da
shader_decode: fix by suggestion
6 years ago
namkazy
cb0a4151f8
clang-format
6 years ago
namkazy
4f7bea403a
shader_decode: ATOM/ATOMS: add function to avoid code repetition
6 years ago
Nguyen Dac Nam
972485ff18
shader_decode: implement ATOM operation for S32 and U32
6 years ago
namkazy
93cac0d294
clang-format
6 years ago
Nguyen Dac Nam
3dc09a6250
shader_decode: implement ATOMS instr partial.
6 years ago
Nguyen Dac Nam
2c780db5b9
shader: node - update correct comment
6 years ago
Nguyen Dac Nam
c119473c40
shader_decode: add Atomic op for common usage
6 years ago
ReinUsesLisp
5300a918c6
shader/lea: Simplify generated LEA code
6 years ago
ReinUsesLisp
523a709bf1
shader/lea: Fix op_a and op_b usages
They were swapped.
6 years ago
ReinUsesLisp
796b3319e6
shader/lea: Remove const and use move when possible
6 years ago
ReinUsesLisp
46791c464a
shader/conversion: Fix F2F rounding operations with different sizes
Rounding operations only matter when the conversion size of source and
destination is the same, i.e. .F16.F16, .F32.F32 and .F64.F64.
When there is a mismatch (.F16.F32), these bits are used for IEEE
rounding, we don't emulate this because GLSL and SPIR-V don't support
configuring it per operation.
6 years ago
makigumo
5a5c6d4ed8
xmad: fix clang build error
6 years ago
ReinUsesLisp
6442e02c5d
shader/shader_ir: Track usage in input attribute and of legacy varyings
6 years ago
ReinUsesLisp
8e6e55d6f8
shader/shader_ir: Fix clip distance usage stores
6 years ago
ReinUsesLisp
464bd5fad7
shader/shader_ir: Change declare output attribute to a switch
6 years ago
Nguyen Dac Nam
3287b1247d
clang-format
6 years ago
Nguyen Dac Nam
240d45830d
nit
6 years ago
ReinUsesLisp
ae6189d7c2
shader/transform_feedback: Expose buffer stride
6 years ago
ReinUsesLisp
3dcaa84ba4
shader/transform_feedback: Add host API friendly TFB builder
6 years ago
Nguyen Dac Nam
829f424618
nit & remove some optional param
6 years ago