Fernando Sahmkow
3e0f5631c3
Shader_Ir: correct clang format
2019-07-18 10:09:26 -04:00
Fernando Sahmkow
a13b47f080
Shader_Ir: Downgrade precision and rounding asserts to debug asserts.
...
This commit reduces the sevirity of asserts for FP precision and
rounding as this are well known and have little to no consequences in
gpu's accuracy.
2019-07-18 08:17:19 -04:00
Fernando Sahmkow
a1abc0fd31
Merge pull request #2740 from lioncash/bra
...
shader/decode/other: Correct branch indirect argument within BRA handling
2019-07-17 14:25:08 -04:00
Lioncash
778d8fedfa
shader/decode/other: Correct branch indirect argument within BRA handling
...
This appears to have been a copy/paste error introduced within
d5d4cc30ec
2019-07-16 12:20:45 -04:00
ReinUsesLisp
a54be6ef96
shader: Allow tracking of indirect buffers without variable offset
...
While changing this code, simplify tracking code to allow returning
the base address node, this way callers don't have to manually rebuild
it on each invocation.
2019-07-14 22:36:44 -03:00
Fernando Sahmkow
43662e376e
Merge pull request #2692 from ReinUsesLisp/tlds-f16
...
shader/texture: Add F16 support for TLDS
2019-07-14 08:44:38 -04:00
Fernando Sahmkow
82efa35683
shader_ir: Unify blocks in decompiled shaders.
2019-07-09 08:14:39 -04:00
Fernando Sahmkow
d5d4cc30ec
shader_ir: Implement BRX & BRA.CC
2019-07-09 08:14:37 -04:00
Tobias
d15f1f4e9e
Delete decode_integer_set.cpp
2019-07-07 21:40:33 +02:00
ReinUsesLisp
48d485d6df
shader/texture: Add F16 support for TLDS
2019-07-07 16:05:56 -03:00
ReinUsesLisp
7478665d14
decode/texture: Address feedback
2019-06-24 02:05:05 -03:00
Fernando Sahmkow
d826617314
shader_ir: Fix image copy rebase issues
2019-06-20 21:38:34 -03:00
ReinUsesLisp
7e4a7929f8
shader: Implement bindless images
2019-06-20 21:38:33 -03:00
ReinUsesLisp
224e4e174d
shader: Decode SUST and implement backing image functionality
2019-06-20 21:38:33 -03:00
ReinUsesLisp
27cd63a05a
shader: Implement texture buffers
2019-06-20 21:36:12 -03:00
ReinUsesLisp
e8bd976b4d
shader: Split SSY and PBK stack
...
Hardware testing revealed that SSY and PBK push to a different stack,
allowing code like this:
SSY label1;
PBK label2;
SYNC;
label1: PBK;
label2: EXIT;
2019-06-07 02:18:27 -03:00
ReinUsesLisp
fd392543e8
shader: Use shared_ptr to store nodes and move initialization to file
...
Instead of having a vector of unique_ptr stored in a vector and
returning star pointers to this, use shared_ptr. While changing
initialization code, move it to a separate file when possible.
This is a first step to allow code analysis and node generation beyond
the ShaderIR class.
2019-06-05 20:41:52 -03:00
bunnei
fe5f59d53d
Merge pull request #2446 from ReinUsesLisp/tid
...
shader: Implement S2R Tid{XYZ} and CtaId{XYZ}
2019-05-29 12:21:17 -04:00
bunnei
e8f7d09cf1
Merge pull request #2485 from ReinUsesLisp/generic-memory
...
shader/memory: Implement generic memory stores and loads (ST and LD)
2019-05-24 18:24:26 -04:00
Lioncash
9d3cbef5ce
shader/decode/*: Add missing newline to files lacking them
...
Keeps the shader code file endings consistent.
2019-05-23 02:55:52 -03:00
Lioncash
bf42020f25
shader/decode/*: Eliminate indirect inclusions
...
Amends cases where we were using things that were indirectly being
satisfied through other headers. This way, if those headers change and
eliminate dependencies on other headers in the future, we don't have
cascading compilation errors.
2019-05-23 02:55:52 -03:00
Lioncash
d9b4b49538
shader/decode/memory: Remove left in debug pragma
2019-05-22 17:08:50 -04:00
ReinUsesLisp
68af52d525
shader/memory: Implement ST (generic memory)
2019-05-20 22:41:53 -03:00
ReinUsesLisp
71ded7da4e
shader/memory: Implement LD (generic memory)
2019-05-20 22:38:59 -03:00
ReinUsesLisp
8a83af0af0
shader: Implement S2R Tid{XYZ} and CtaId{XYZ}
2019-05-20 16:36:49 -03:00
bunnei
5127e54674
Merge pull request #2441 from ReinUsesLisp/al2p
...
shader: Implement AL2P and ALD.PHYS
2019-05-19 14:02:58 -04:00
Lioncash
18d2c00687
video_core/shader/decode/texture: Remove unused variable from GetTld4Code()
2019-05-09 18:49:56 -04:00
Lioncash
7af5216680
shader/decode/texture: Remove unused variable
...
This isn't used anywhere, so we can get rid of it.
2019-05-04 02:10:38 -04:00
ReinUsesLisp
5bf7324068
shader_ir/other: Implement IPA.IDX
2019-05-02 21:46:37 -03:00
ReinUsesLisp
6ed96fd359
shader_ir/memory: Assert on non-32 bits ALD.PHYS
2019-05-02 21:46:25 -03:00
ReinUsesLisp
d6193e2e36
shader: Add physical attributes commentaries
2019-05-02 21:46:25 -03:00
ReinUsesLisp
f96020b2ae
shader_ir/memory: Implement physical input attributes
2019-05-02 21:46:25 -03:00
ReinUsesLisp
f6194ce3fe
shader: Remove unused AbufNode Ipa mode
2019-05-02 21:46:25 -03:00
ReinUsesLisp
d786245490
shader_ir/memory: Emit AL2P IR
2019-05-02 21:46:25 -03:00
bunnei
c9a6cf792f
Merge pull request #2435 from ReinUsesLisp/misc-vc
...
shader_ir: Miscellaneous fixes
2019-04-28 22:29:43 -04:00
bunnei
673cfd89c1
Merge pull request #2322 from ReinUsesLisp/wswitch
...
video_core: Silent -Wswitch warnings
2019-04-28 22:24:58 -04:00
bunnei
89bada4ac4
Merge pull request #2423 from FernandoS27/half-correct
...
Corrections on Half Float operations: HADD2 HMUL2 and HFMA2
2019-04-28 22:24:22 -04:00
ReinUsesLisp
6198b04557
shader_ir/texture: Fix sampler const buffer key shift
2019-04-26 01:09:29 -03:00
Fernando Sahmkow
b17f7da309
Corrections Half Float operations on const buffers and implement saturation.
2019-04-20 21:11:33 -04:00
bunnei
7fc67a06bb
Merge pull request #2407 from FernandoS27/f2f
...
Do some corrections in conversion shader instructions.
2019-04-20 00:42:34 -04:00
bunnei
6c1418fc8a
Merge pull request #2409 from ReinUsesLisp/half-floats
...
shader_ir/decode: Miscellaneous fixes to half-float decompilation
2019-04-19 21:31:52 -04:00
ReinUsesLisp
7a56d07632
video_core: Silent -Wswitch warnings
2019-04-18 15:54:39 -03:00
bunnei
c1c43bde80
Merge pull request #2348 from FernandoS27/guest-bindless
...
Implement Bindless Textures on Shader Decompiler and GL backend
2019-04-17 20:59:49 -04:00
bunnei
d4b42f6bc6
Merge pull request #2315 from ReinUsesLisp/severity-decompiler
...
shader_ir/decode: Reduce the severity of common assertions
2019-04-16 22:21:19 -04:00
ReinUsesLisp
6ea1afc2bc
shader_ir/decode: Fix half float pre-operations and remove MetaHalfArithmetic
...
Operations done before the main half float operation (like HAdd) were
managing a packed value instead of the unpacked one. Adding an unpacked
operation allows us to drop the per-operand MetaHalfArithmetic entry,
simplifying the code overall.
2019-04-15 21:16:10 -03:00
ReinUsesLisp
6d47914b88
shader_ir/decode: Implement half float saturation
2019-04-15 21:16:10 -03:00
ReinUsesLisp
9c4449696a
shader_ir/decode: Reduce severity of unimplemented half-float FTZ
2019-04-15 21:16:09 -03:00
Fernando Sahmkow
73f925a949
Do some corrections in conversion shader instructions.
...
Corrects encodings for I2F, F2F, I2I and F2I
Implements Immediate variants of all four conversion types.
Add assertions to unimplemented stuffs.
2019-04-15 19:16:27 -04:00
ReinUsesLisp
79e7fb6d6f
shader_ir: Implement STG, keep track of global memory usage and flush
2019-04-14 00:25:32 -03:00
Fernando Sahmkow
34b15b69df
Correct XMAD mode, psl and high_b on different encodings.
2019-04-08 13:01:17 -04:00