Commit graph

159 commits

Author SHA1 Message Date
bunnei
9af9217dea Merge pull request #1501 from ReinUsesLisp/half-float
gl_shader_decompiler: Implement H* instructions
2018-10-19 23:47:19 -04:00
ReinUsesLisp
40845c39c9 shader_bytecode: Add Control Code enum 0xf
Control Code 0xf means to unconditionally execute the instruction. This
value is passed to most BRA, EXIT and SYNC instructions (among others)
but this may not always be the case.
2018-10-15 15:36:47 -03:00
ReinUsesLisp
f1a2fd02a5 gl_shader_decompiler: Implement HSET2_R 2018-10-15 02:55:51 -03:00
ReinUsesLisp
4769eac4b7 gl_shader_decompiler: Implement HSETP2_R 2018-10-15 02:55:51 -03:00
ReinUsesLisp
f4c2f0c35d gl_shader_decompiler: Implement HFMA2 instructions 2018-10-15 02:55:51 -03:00
ReinUsesLisp
d3a031608d gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMM 2018-10-15 02:07:16 -03:00
ReinUsesLisp
cc74fe2cef gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructions 2018-10-15 02:04:31 -03:00
ReinUsesLisp
fcb96ae125 gl_shader_decompiler: Setup base for half float unpacking and setting 2018-10-15 01:58:30 -03:00
ReinUsesLisp
0c0ff8f0f6 gl_shader_decompiler: Implement VMAD 2018-10-11 04:15:10 -03:00
ReinUsesLisp
f1dff1c269 gl_shader_decompiler: Implement geometry shaders 2018-10-07 17:36:00 -03:00
Lioncash
02106208f8 shader_bytecode: Lay out the Ipa-related enums better
This is more consistent with the surrounding enums.
2018-09-21 16:17:31 -04:00
Lioncash
d8cbbfb8ea shader_bytecode: Make operator== and operator!= of IpaMode const qualified
These don't affect the state of the struct and can be const member
functions.
2018-09-21 16:17:27 -04:00
bunnei
7c49810549 Merge pull request #1279 from FernandoS27/csetp
shader_decompiler: Implemented (Partialy) Control Codes and CSETP
2018-09-18 22:10:48 -04:00
FernandoS27
5a00f0ec41 Implemented I2I.CC on the NEU control code, used by SMO 2018-09-17 17:42:46 -04:00
FernandoS27
81fd967a27 Implemented CSETP 2018-09-17 17:42:44 -04:00
FernandoS27
9cdcf964b5 Implemented Control Codes 2018-09-17 17:42:43 -04:00
FernandoS27
dc2a597dc8 Added texture misc modes to texture instructions 2018-09-17 12:51:05 -04:00
bunnei
5c341eca32 Merge pull request #1326 from FearlessTobi/port-4182
Port #4182 from Citra: "Prefix all size_t with std::"
2018-09-17 09:51:47 -04:00
Subv
415fd53a49 Shaders: Implemented multiple-word loads and stores to and from attribute memory.
This seems to be an optimization performed by nouveau.
2018-09-15 11:21:21 -05:00
fearlessTobi
1190ea6ddb Port #4182 from Citra: "Prefix all size_t with std::" 2018-09-15 15:21:06 +02:00
bunnei
6f138dd425 Merge pull request #1263 from FernandoS27/tex-mode
shader_decompiler:  Implemented (Partially) Texture Processing Modes
2018-09-12 16:03:34 -04:00
FernandoS27
aa5c2354eb Implemented Texture Processing Modes 2018-09-12 12:28:22 -04:00
FernandoS27
a6294ad653 Implemented encodings for LEA and PSET 2018-09-11 12:50:25 -04:00
FernandoS27
e54854dfb7 Implemented TMML 2018-09-09 20:46:31 -04:00
FernandoS27
6dd5b33570 Implemented TXQ dimension query type, used by SMO. 2018-09-09 11:59:01 -04:00
FernandoS27
0611ac673f Change name of TEXQ to TXQ, in order to match NVIDIA's naming 2018-09-08 18:08:57 -04:00
FernandoS27
758dd86de9 Implemented IPA Properly 2018-09-05 20:15:47 -04:00
bunnei
2be1a6fe38 Merge pull request #1215 from ogniK5377/texs-nodep-assert
Added assert for TEXS nodep
2018-09-02 10:48:27 -04:00
bunnei
106579cde4 Merge pull request #1214 from ogniK5377/ipa-assert
Added better asserts to IPA, Renamed IPA modes to match mesa
2018-09-02 10:44:43 -04:00
bunnei
cb3726426f Merge pull request #1216 from ogniK5377/ffma-assert
Added FFMA asserts and missing fields
2018-09-02 10:44:13 -04:00
David Marcec
a8c27cb703 Removed saturate assert
Unneeded as we already implement it
2018-09-01 19:33:32 +10:00
David Marcec
70692108c0 Removed saturate assert
Saturate already implemented
2018-09-01 19:29:20 +10:00
David Marcec
9a841e0f5c Added FMUL asserts 2018-09-01 19:05:10 +10:00
David Marcec
d7f1baf47e Added FFMA asserts 2018-09-01 18:45:14 +10:00
David Marcec
e01efcd8ef Added assert for TEXS nodep 2018-09-01 17:00:01 +10:00
David Marcec
3483657ed7 Added better asserts to IPA, Renamed IPA modes to match mesa
IpaMode is changed to IpaInterpMode
IpaMode is suppose to be 2 bits not 3
Added IpaSampleMode
Added Saturate

Renamed modes based on
d27c791891/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp (L2530)
2018-09-01 16:34:27 +10:00
Hexagon12
7afccb51a2 Added predicate comparison GreaterEqualWithNan 2018-08-31 10:40:18 +03:00
Laku
a7f046e97f gl_shader_decompiler: Implement POPC (#1203)
* Implement POPC

* implement invert
2018-08-30 21:32:58 -04:00
bunnei
746e4e9014 Merge pull request #1200 from bunnei/improve-ipa
gl_shader_decompiler: Improve IPA for Pass mode with Position attribute.
2018-08-30 10:31:26 -04:00
tech4me
6df9c631c2 Shaders: Implemented IADD3 2018-08-29 13:44:41 -04:00
bunnei
cda7c87ade gl_shader_decompiler: Improve IPA for Pass mode with Position attribute. 2018-08-29 00:37:29 -04:00
Laku
afc673ec9d fix SEL_IMM bitstring 2018-08-24 07:18:12 +03:00
tech4me
1204fbbc16 Shaders: Added decodings for IADD3 instructions 2018-08-23 15:46:59 -04:00
Laku
5a8c2eff39 implement lop3 2018-08-22 10:09:44 +03:00
Lioncash
309df18cdb shader_bytecode: Parenthesize conditional expression within GetTextureType()
Resolves a -Wlogical-op-parentheses warning.
2018-08-21 15:08:35 -04:00
bunnei
f0e1387103 shader_bytecode: Replace some UNIMPLEMENTED logs. 2018-08-20 21:53:49 -04:00
bunnei
0e2d8a6fc3 Merge pull request #1112 from Subv/sampler_types
Shaders: Use the correct shader type when sampling textures.
2018-08-20 14:30:45 -04:00
bunnei
67de67fdcf Merge pull request #1089 from Subv/neg_bits
Shaders: Corrected the 'abs' and 'neg' bit usage in the float arithmetic instructions.
2018-08-19 17:01:48 -04:00
Subv
67da7c7ab8 Shaders/TEXS: Fixed the component mask in the TEXS instruction.
Previously we could end up with a TEXS that didn't write any outputs, this was wrong.
2018-08-19 14:00:12 -05:00
Subv
8b1711cdd5 Shader: Added bitfields for the texture type of the various sampling instructions. 2018-08-19 12:57:51 -05:00