Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | shader_bytecode: Mark EXIT as flow instruction | Fernando Sahmkow | 2019-06-04 | 1 | -1/+1 |
| | |||||
* | shader/memory: Implement ST (generic memory) | ReinUsesLisp | 2019-05-21 | 1 | -0/+1 |
| | |||||
* | shader/memory: Implement LD (generic memory) | ReinUsesLisp | 2019-05-21 | 1 | -4/+15 |
| | |||||
* | shader_ir/other: Implement IPA.IDX | ReinUsesLisp | 2019-05-03 | 1 | -0/+1 |
| | |||||
* | shader_ir/memory: Implement physical input attributes | ReinUsesLisp | 2019-05-03 | 1 | -0/+4 |
| | |||||
* | shader_bytecode: Add AL2P decoding | ReinUsesLisp | 2019-05-03 | 1 | -2/+15 |
| | |||||
* | Merge pull request #2407 from FernandoS27/f2f | bunnei | 2019-04-20 | 1 | -7/+20 |
|\ | | | | | Do some corrections in conversion shader instructions. | ||||
| * | Do some corrections in conversion shader instructions. | Fernando Sahmkow | 2019-04-16 | 1 | -7/+20 |
| | | | | | | | | | | | | Corrects encodings for I2F, F2F, I2I and F2I Implements Immediate variants of all four conversion types. Add assertions to unimplemented stuffs. | ||||
* | | Merge pull request #2348 from FernandoS27/guest-bindless | bunnei | 2019-04-18 | 1 | -0/+36 |
|\ \ | | | | | | | Implement Bindless Textures on Shader Decompiler and GL backend | ||||
| * | | Move ConstBufferAccessor to Maxwell3d, correct mistakes and clang format. | Fernando Sahmkow | 2019-04-08 | 1 | -1/+1 |
| | | | |||||
| * | | Implement TXQ_B | Fernando Sahmkow | 2019-04-08 | 1 | -0/+2 |
| | | | |||||
| * | | Corrections to TEX_B | Fernando Sahmkow | 2019-04-08 | 1 | -0/+32 |
| | | | |||||
| * | | Implement Bindless Samplers and TEX_B in the IR. | Fernando Sahmkow | 2019-04-08 | 1 | -0/+2 |
| | | | |||||
* | | | Merge pull request #2315 from ReinUsesLisp/severity-decompiler | bunnei | 2019-04-17 | 1 | -1/+15 |
|\ \ \ | | | | | | | | | shader_ir/decode: Reduce the severity of common assertions | ||||
| * | | | shader_ir/memory: Reduce severity of LD_L cache management and log it | ReinUsesLisp | 2019-04-03 | 1 | -0/+7 |
| | | | | |||||
| * | | | shader_ir/memory: Reduce severity of ST_L cache management and log it | ReinUsesLisp | 2019-04-03 | 1 | -1/+8 |
| |/ / | |||||
* | / | shader_ir: Implement STG, keep track of global memory usage and flush | ReinUsesLisp | 2019-04-14 | 1 | -0/+6 |
| |/ |/| | |||||
* | | Merge pull request #2366 from FernandoS27/xmad-fix | bunnei | 2019-04-10 | 1 | -0/+3 |
|\ \ | | | | | | | Correct XMAD mode, psl and high_b on different encodings. | ||||
| * | | Correct XMAD mode, psl and high_b on different encodings. | Fernando Sahmkow | 2019-04-08 | 1 | -0/+3 |
| |/ | |||||
* / | Correct LOP_IMN encoding | Fernando Sahmkow | 2019-04-08 | 1 | -1/+1 |
|/ | |||||
* | Merge pull request #2147 from ReinUsesLisp/texture-clean | bunnei | 2019-03-10 | 1 | -12/+13 |
|\ | | | | | shader_ir: Remove "extras" from the MetaTexture | ||||
| * | shader/decode: Remove extras from MetaTexture | ReinUsesLisp | 2019-02-26 | 1 | -4/+4 |
| | | |||||
| * | shader/decode: Split memory and texture instructions decoding | ReinUsesLisp | 2019-02-26 | 1 | -8/+9 |
| | | |||||
* | | video_core/engines: Remove unnecessary includes | Lioncash | 2019-03-06 | 1 | -1/+0 |
|/ | | | | | | | | | Removes a few unnecessary dependencies on core-related machinery, such as the core.h and memory.h, which reduces the amount of rebuilding necessary if those files change. This also uncovered some indirect dependencies within other source files. This also fixes those. | ||||
* | shader_decompiler: Improve Accuracy of Attribute Interpolation. | Fernando Sahmkow | 2019-02-14 | 1 | -3/+3 |
| | |||||
* | Corrected F2I None mode to RoundEven. | Fernando Sahmkow | 2019-02-11 | 1 | -1/+1 |
| | |||||
* | Merge pull request #2081 from ReinUsesLisp/lmem-64 | bunnei | 2019-02-05 | 1 | -3/+3 |
|\ | | | | | shader_ir/memory: Add LD_L 64 bits loads | ||||
| * | shader_bytecode: Rename BytesN enums to BitsN | ReinUsesLisp | 2019-02-03 | 1 | -3/+3 |
| | | |||||
* | | Merge pull request #2082 from FernandoS27/txq-stl | bunnei | 2019-02-05 | 1 | -0/+4 |
|\ \ | |/ |/| | Fix TXQ not using the component mask. | ||||
| * | Update src/video_core/engines/shader_bytecode.h | Mat M | 2019-02-04 | 1 | -1/+1 |
| | | | | | | Co-Authored-By: FernandoS27 <fsahmkow27@gmail.com> | ||||
| * | Fix TXQ not using the component mask. | Fernando Sahmkow | 2019-02-03 | 1 | -0/+4 |
| | | |||||
* | | shader_ir: Unify constant buffer offset values | ReinUsesLisp | 2019-01-30 | 1 | -0/+8 |
|/ | | | | | | | Constant buffer values on the shader IR were using different offsets if the access direct or indirect. cbuf34 has a non-multiplied offset while cbuf36 does. On shader decoding this commit multiplies it by four on cbuf34 queries. | ||||
* | shader_decode: Implement LDG and basic cbuf tracking | ReinUsesLisp | 2019-01-30 | 1 | -0/+8 |
| | |||||
* | shader_decode: Implement VMAD and VSETP | ReinUsesLisp | 2019-01-15 | 1 | -2/+3 |
| | |||||
* | shader_decode: Implement HFMA2 | ReinUsesLisp | 2019-01-15 | 1 | -0/+1 |
| | |||||
* | shader_decode: Fixup clang-format | ReinUsesLisp | 2019-01-15 | 1 | -1/+1 |
| | |||||
* | shader_ir: Initial implementation | ReinUsesLisp | 2019-01-15 | 1 | -0/+4 |
| | |||||
* | shader_bytecode: Fixup encoding | ReinUsesLisp | 2019-01-15 | 1 | -1/+1 |
| | |||||
* | shader_bytecode: Fixup TEXS.F16 encoding | ReinUsesLisp | 2018-12-26 | 1 | -1/+1 |
| | |||||
* | Fixed uninitialized memory due to missing returns in canary | David Marcec | 2018-12-19 | 1 | -0/+2 |
| | | | | Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used. | ||||
* | shader_bytecode: Fixup half float's operator B encoding | ReinUsesLisp | 2018-12-18 | 1 | -1/+1 |
| | |||||
* | Implement postfactor multiplication/division for fmul instructions | heapo | 2018-12-17 | 1 | -1/+1 |
| | |||||
* | gl_shader_decompiler: Implement TEXS.F16 | ReinUsesLisp | 2018-12-05 | 1 | -1/+2 |
| | |||||
* | Merge pull request #1763 from ReinUsesLisp/bfi | bunnei | 2018-11-26 | 1 | -0/+3 |
|\ | | | | | gl_shader_decompiler: Implement BFI_IMM_R | ||||
| * | gl_shader_decompiler: Implement BFI_IMM_R | ReinUsesLisp | 2018-11-21 | 1 | -0/+3 |
| | | |||||
* | | Merge pull request #1760 from ReinUsesLisp/r2p | bunnei | 2018-11-26 | 1 | -0/+14 |
|\ \ | | | | | | | gl_shader_decompiler: Implement R2P_IMM | ||||
| * | | gl_shader_decompiler: Implement R2P_IMM | ReinUsesLisp | 2018-11-21 | 1 | -0/+14 |
| |/ | |||||
* | | Merge pull request #1783 from ReinUsesLisp/clip-distances | bunnei | 2018-11-26 | 1 | -0/+2 |
|\ \ | | | | | | | gl_shader_decompiler: Implement clip distances | ||||
| * | | gl_shader_decompiler: Implement clip distances | ReinUsesLisp | 2018-11-23 | 1 | -0/+2 |
| |/ | |||||
* | | Merge pull request #1769 from ReinUsesLisp/cc | bunnei | 2018-11-24 | 1 | -4/+3 |
|\ \ | | | | | | | gl_shader_decompiler: Rename cc to condition code and name internal flags | ||||
| * | | gl_shader_decompiler: Rename control codes to condition codes | ReinUsesLisp | 2018-11-22 | 1 | -4/+3 |
| |/ | |||||
* / | Added predicate comparison LessEqualWithNan (#1736) | Hexagon12 | 2018-11-23 | 1 | -0/+1 |
|/ | | | | | | | | * Added predicate comparison LessEqualWithNan * oops * Clang fix | ||||
* | Merge pull request #1527 from FernandoS27/assert-flow | bunnei | 2018-11-01 | 1 | -0/+1 |
|\ | | | | | Assert Control Flow Instructions using Control Codes | ||||
| * | Assert Control Flow Instructions using Control Codes | FernandoS27 | 2018-10-29 | 1 | -1/+2 |
| | | |||||
* | | Merge pull request #1528 from FernandoS27/assert-control-codes | bunnei | 2018-11-01 | 1 | -1/+5 |
|\ \ | | | | | | | Assert Control Codes Generation on Shader Instructions | ||||
| * | | Assert Control Codes Generation | FernandoS27 | 2018-10-30 | 1 | -1/+5 |
| |/ | |||||
* / | global: Use std::optional instead of boost::optional (#1578) | Frederic L | 2018-10-30 | 1 | -4/+4 |
|/ | | | | | | | | | | | | | | | | * get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build | ||||
* | Implemented LD_L and ST_L | FernandoS27 | 2018-10-24 | 1 | -0/+31 |
| | |||||
* | Implement PointSize | FernandoS27 | 2018-10-23 | 1 | -0/+1 |
| | |||||
* | Merge pull request #1519 from ReinUsesLisp/vsetp | bunnei | 2018-10-23 | 1 | -3/+15 |
|\ | | | | | gl_shader_decompiler: Implement VSETP | ||||
| * | gl_shader_decompiler: Implement VSETP | ReinUsesLisp | 2018-10-23 | 1 | -0/+2 |
| | | |||||
| * | gl_shader_decompiler: Abstract VMAD into a video subset | ReinUsesLisp | 2018-10-23 | 1 | -3/+13 |
| | | |||||
* | | Merge pull request #1512 from ReinUsesLisp/brk | bunnei | 2018-10-23 | 1 | -3/+7 |
|\ \ | |/ |/| | gl_shader_decompiler: Implement PBK and BRK | ||||
| * | gl_shader_decompiler: Implement PBK and BRK | ReinUsesLisp | 2018-10-18 | 1 | -3/+7 |
| | | |||||
* | | Added Saturation to FMUL32I | FernandoS27 | 2018-10-23 | 1 | -0/+4 |
| | | |||||
* | | Fixed FSETP and FSET | FernandoS27 | 2018-10-22 | 1 | -2/+0 |
| | | |||||
* | | Merge pull request #1501 from ReinUsesLisp/half-float | bunnei | 2018-10-20 | 1 | -0/+145 |
|\ \ | |/ |/| | gl_shader_decompiler: Implement H* instructions | ||||
| * | gl_shader_decompiler: Implement HSET2_R | ReinUsesLisp | 2018-10-15 | 1 | -0/+18 |
| | | |||||
| * | gl_shader_decompiler: Implement HSETP2_R | ReinUsesLisp | 2018-10-15 | 1 | -0/+20 |
| | | |||||
| * | gl_shader_decompiler: Implement HFMA2 instructions | ReinUsesLisp | 2018-10-15 | 1 | -0/+32 |
| | | |||||
| * | gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMM | ReinUsesLisp | 2018-10-15 | 1 | -0/+30 |
| | | |||||
| * | gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructions | ReinUsesLisp | 2018-10-15 | 1 | -0/+25 |
| | | |||||
| * | gl_shader_decompiler: Setup base for half float unpacking and setting | ReinUsesLisp | 2018-10-15 | 1 | -0/+20 |
| | | |||||
* | | shader_bytecode: Add Control Code enum 0xf | ReinUsesLisp | 2018-10-15 | 1 | -1/+1 |
|/ | | | | | | 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. | ||||
* | gl_shader_decompiler: Implement VMAD | ReinUsesLisp | 2018-10-11 | 1 | -0/+36 |
| | |||||
* | gl_shader_decompiler: Implement geometry shaders | ReinUsesLisp | 2018-10-07 | 1 | -0/+112 |
| | |||||
* | shader_bytecode: Lay out the Ipa-related enums better | Lioncash | 2018-09-21 | 1 | -2/+12 |
| | | | | This is more consistent with the surrounding enums. | ||||
* | shader_bytecode: Make operator== and operator!= of IpaMode const qualified | Lioncash | 2018-09-21 | 1 | -6/+7 |
| | | | | | These don't affect the state of the struct and can be const member functions. | ||||
* | Merge pull request #1279 from FernandoS27/csetp | bunnei | 2018-09-19 | 1 | -0/+47 |
|\ | | | | | shader_decompiler: Implemented (Partialy) Control Codes and CSETP | ||||
| * | Implemented I2I.CC on the NEU control code, used by SMO | FernandoS27 | 2018-09-17 | 1 | -1/+1 |
| | | |||||
| * | Implemented CSETP | FernandoS27 | 2018-09-17 | 1 | -0/+11 |
| | | |||||
| * | Implemented Control Codes | FernandoS27 | 2018-09-17 | 1 | -0/+36 |
| | | |||||
* | | Added texture misc modes to texture instructions | FernandoS27 | 2018-09-17 | 1 | -1/+147 |
|/ | |||||
* | Merge pull request #1326 from FearlessTobi/port-4182 | bunnei | 2018-09-17 | 1 | -9/+9 |
|\ | | | | | Port #4182 from Citra: "Prefix all size_t with std::" | ||||
| * | Port #4182 from Citra: "Prefix all size_t with std::" | fearlessTobi | 2018-09-15 | 1 | -9/+9 |
| | | |||||
* | | Shaders: Implemented multiple-word loads and stores to and from attribute memory. | Subv | 2018-09-15 | 1 | -1/+9 |
|/ | | | | This seems to be an optimization performed by nouveau. | ||||
* | Merge pull request #1263 from FernandoS27/tex-mode | bunnei | 2018-09-12 | 1 | -0/+10 |
|\ | | | | | shader_decompiler: Implemented (Partially) Texture Processing Modes | ||||
| * | Implemented Texture Processing Modes | FernandoS27 | 2018-09-12 | 1 | -0/+10 |
| | | |||||
* | | Implemented encodings for LEA and PSET | FernandoS27 | 2018-09-11 | 1 | -0/+64 |
|/ | |||||
* | Implemented TMML | FernandoS27 | 2018-09-10 | 1 | -5/+19 |
| | |||||
* | Implemented TXQ dimension query type, used by SMO. | FernandoS27 | 2018-09-09 | 1 | -1/+16 |
| | |||||
* | Change name of TEXQ to TXQ, in order to match NVIDIA's naming | FernandoS27 | 2018-09-09 | 1 | -2/+2 |
| | |||||
* | Implemented IPA Properly | FernandoS27 | 2018-09-06 | 1 | -0/+12 |
| | |||||
* | Merge pull request #1215 from ogniK5377/texs-nodep-assert | bunnei | 2018-09-02 | 1 | -0/+1 |
|\ | | | | | Added assert for TEXS nodep | ||||
| * | Added assert for TEXS nodep | David Marcec | 2018-09-01 | 1 | -0/+1 |
| | | |||||
* | | Merge pull request #1214 from ogniK5377/ipa-assert | bunnei | 2018-09-02 | 1 | -2/+5 |
|\ \ | | | | | | | Added better asserts to IPA, Renamed IPA modes to match mesa | ||||
| * | | Added better asserts to IPA, Renamed IPA modes to match mesa | David Marcec | 2018-09-01 | 1 | -2/+5 |
| |/ | | | | | | | | | | | | | | | | | | | IpaMode is changed to IpaInterpMode IpaMode is suppose to be 2 bits not 3 Added IpaSampleMode Added Saturate Renamed modes based on https://github.com/mesa3d/mesa/blob/d27c7918916cdc8092959124955f887592e37d72/src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp#L2530 | ||||
* | | Merge pull request #1216 from ogniK5377/ffma-assert | bunnei | 2018-09-02 | 1 | -0/+3 |
|\ \ | | | | | | | Added FFMA asserts and missing fields | ||||
| * | | Removed saturate assert | David Marcec | 2018-09-01 | 1 | -1/+0 |
| | | | | | | | | | | | | Saturate already implemented | ||||
| * | | Added FFMA asserts | David Marcec | 2018-09-01 | 1 | -0/+4 |
| |/ | |||||
* | | Removed saturate assert | David Marcec | 2018-09-01 | 1 | -1/+0 |
| | | | | | | | | Unneeded as we already implement it | ||||
* | | Added FMUL asserts | David Marcec | 2018-09-01 | 1 | -0/+5 |
|/ | |||||
* | Added predicate comparison GreaterEqualWithNan | Hexagon12 | 2018-08-31 | 1 | -0/+1 |
| | |||||
* | gl_shader_decompiler: Implement POPC (#1203) | Laku | 2018-08-31 | 1 | -0/+10 |
| | | | | | | * Implement POPC * implement invert | ||||
* | Merge pull request #1200 from bunnei/improve-ipa | bunnei | 2018-08-30 | 1 | -0/+6 |
|\ | | | | | gl_shader_decompiler: Improve IPA for Pass mode with Position attribute. | ||||
| * | gl_shader_decompiler: Improve IPA for Pass mode with Position attribute. | bunnei | 2018-08-29 | 1 | -0/+6 |
| | | |||||
* | | Shaders: Implemented IADD3 | tech4me | 2018-08-29 | 1 | -1/+23 |
|/ | |||||
* | fix SEL_IMM bitstring | Laku | 2018-08-24 | 1 | -1/+1 |
| | |||||
* | Shaders: Added decodings for IADD3 instructions | tech4me | 2018-08-23 | 1 | -0/+6 |
| | |||||
* | implement lop3 | Laku | 2018-08-22 | 1 | -0/+19 |
| | |||||
* | shader_bytecode: Parenthesize conditional expression within GetTextureType() | Lioncash | 2018-08-21 | 1 | -1/+1 |
| | | | | Resolves a -Wlogical-op-parentheses warning. | ||||
* | shader_bytecode: Replace some UNIMPLEMENTED logs. | bunnei | 2018-08-21 | 1 | -2/+6 |
| | |||||
* | Merge pull request #1112 from Subv/sampler_types | bunnei | 2018-08-20 | 1 | -4/+72 |
|\ | | | | | Shaders: Use the correct shader type when sampling textures. | ||||
| * | Shader: Added bitfields for the texture type of the various sampling instructions. | Subv | 2018-08-19 | 1 | -1/+65 |
| | | |||||
| * | Shaders: Added decodings for TLD4 and TLD4S | Subv | 2018-08-19 | 1 | -3/+7 |
| | | |||||
* | | Merge pull request #1089 from Subv/neg_bits | bunnei | 2018-08-19 | 1 | -0/+4 |
|\ \ | | | | | | | Shaders: Corrected the 'abs' and 'neg' bit usage in the float arithmetic instructions. | ||||
| * | | Shaders: Corrected the 'abs' and 'neg' bit usage in the float arithmetic instructions. | Subv | 2018-08-18 | 1 | -0/+4 |
| | | | | | | | | | | | | We should definitely audit our shader generator for more errors like this. | ||||
* | | | Shaders/TEXS: Fixed the component mask in the TEXS instruction. | Subv | 2018-08-19 | 1 | -6/+11 |
| |/ |/| | | | | | Previously we could end up with a TEXS that didn't write any outputs, this was wrong. | ||||
* | | Merge pull request #1109 from Subv/ldg_decode | bunnei | 2018-08-19 | 1 | -0/+4 |
|\ \ | | | | | | | Shaders: Added decodings for the LDG and STG instructions. | ||||
| * | | Shaders: Added decodings for the LDG and STG instructions. | Subv | 2018-08-19 | 1 | -0/+4 |
| | | | |||||
* | | | Merge pull request #1108 from Subv/front_facing | bunnei | 2018-08-19 | 1 | -0/+3 |
|\ \ \ | | | | | | | | | Shaders: Implemented the gl_FrontFacing input attribute (attr 63). | ||||
| * | | | Shaders: Implemented the gl_FrontFacing input attribute (attr 63). | Subv | 2018-08-19 | 1 | -0/+3 |
| |/ / | |||||
* / / | Shader: Implemented the predicate and mode arguments of LOP. | Subv | 2018-08-18 | 1 | -1/+6 |
|/ / | | | | | | | | | | | The mode can be used to set the predicate to true depending on the result of the logic operation. In some cases, this means discarding the result (writing it to register 0xFF (Zero)). This is used by Super Mario Odyssey. | ||||
* / | Added predcondition GreaterThanWithNan | David Marcec | 2018-08-18 | 1 | -0/+1 |
|/ | |||||
* | gl_shader_decompiler: Implement XMAD instruction. | bunnei | 2018-08-13 | 1 | -4/+25 |
| | |||||
* | Merge pull request #1010 from bunnei/unk-vert-attrib-shader | bunnei | 2018-08-12 | 1 | -2/+1 |
|\ | | | | | gl_shader_decompiler: Improve handling of unknown input/output attributes. | ||||
| * | gl_shader_decompiler: Improve handling of unknown input/output attributes. | bunnei | 2018-08-12 | 1 | -2/+1 |
| | | |||||
* | | Merge pull request #1018 from Subv/ssy_sync | bunnei | 2018-08-12 | 1 | -0/+7 |
|\ \ | |/ |/| | GPU/Shader: Implemented SSY and SYNC as a set_target/jump pair. | ||||
| * | GPU/Shader: Don't predicate instructions that don't have a predicate field (SSY). | Subv | 2018-08-11 | 1 | -0/+7 |
| | | |||||
* | | video_core: Use variable template variants of type_traits interfaces where applicable | Lioncash | 2018-08-10 | 1 | -2/+1 |
|/ | |||||
* | Merge pull request #982 from bunnei/stub-unk-63 | bunnei | 2018-08-09 | 1 | -0/+2 |
|\ | | | | | gl_shader_decompiler: Stub input attribute Unknown_63. | ||||
| * | gl_shader_decompiler: Stub input attribute Unknown_63. | bunnei | 2018-08-08 | 1 | -0/+2 |
| | | |||||
* | | gl_shader_decompiler: Let OpenGL interpret floats. | bunnei | 2018-08-08 | 1 | -9/+4 |
|/ | | | | | - Accuracy is lost in translation to string, e.g. with NaN. - Needed for Super Mario Odyssey. | ||||
* | shader_bytecode: Implement other TEXS masks. | bunnei | 2018-07-22 | 1 | -5/+9 |
| | |||||
* | gl_shader_decompiler: Implement SEL instruction. | bunnei | 2018-07-22 | 1 | -0/+11 |
| | |||||
* | video_core: Use nested namespaces where applicable | Lioncash | 2018-07-21 | 1 | -8/+4 |
| | | | | Compresses a few namespace specifiers to be more compact. | ||||
* | Merge pull request #655 from bunnei/pred-lt-nan | bunnei | 2018-07-13 | 1 | -0/+1 |
|\ | | | | | gl_shader_decompiler: Implement PredCondition::LessThanWithNan. | ||||
| * | gl_shader_decompiler: Implement PredCondition::LessThanWithNan. | bunnei | 2018-07-13 | 1 | -0/+1 |
| | | |||||
* | | gl_shader_decompiler: Use FlowCondition field in EXIT instruction. | bunnei | 2018-07-13 | 1 | -0/+9 |
|/ | |||||
* | Merge pull request #652 from Subv/fadd32i | Sebastian Valle | 2018-07-13 | 1 | -0/+9 |
|\ | | | | | GPU: Implement the FADD32I shader instruction. | ||||
| * | GPU: Implement the FADD32I shader instruction. | Subv | 2018-07-12 | 1 | -0/+9 |
| | | |||||
* | | Merge pull request #651 from Subv/ffma_decode | bunnei | 2018-07-12 | 1 | -1/+1 |
|\ \ | | | | | | | GPU: Corrected the decoding of FFMA for immediate operands. | ||||
| * | | GPU: Corrected the decoding of FFMA for immediate operands. | Subv | 2018-07-12 | 1 | -1/+1 |
| |/ | |||||
* | | Merge pull request #625 from Subv/imnmx | bunnei | 2018-07-08 | 1 | -3/+17 |
|\ \ | |/ |/| | GPU: Implemented the IMNMX shader instruction. | ||||
| * | GPU: Implemented the IMNMX shader instruction. | Subv | 2018-07-04 | 1 | -3/+17 |
| | | | | | | | | It's similar to the FMNMX instruction but it works on integers. | ||||
* | | Merge pull request #626 from Subv/shader_sync | bunnei | 2018-07-05 | 1 | -0/+5 |
|\ \ | | | | | | | GPU: Stub the shader SYNC and DEPBAR instructions. | ||||
| * | | GPU: Stub the shader SYNC and DEPBAR instructions. | Subv | 2018-07-04 | 1 | -0/+5 |
| |/ | | | | | | | It is unknown at this moment if we actually need to do something with these instructions or if the GLSL compiler takes care of that for us. | ||||
* | | Merge pull request #622 from Subv/unused_tex | bunnei | 2018-07-05 | 1 | -1/+1 |
|\ \ | | | | | | | GPU: Ignore unused textures and corrected the TEX shader instruction decoding. | ||||
| * | | GPU: Corrected the decoding for the TEX shader instruction. | Subv | 2018-07-04 | 1 | -1/+1 |
| |/ | |||||
* / | GPU: Implemented the PSETP shader instruction. | Subv | 2018-07-04 | 1 | -0/+13 |
|/ | | | | It's similar to the isetp and fsetp instructions but it works on predicates instead. | ||||
* | GPU: Implemented MUFU suboperation 8, sqrt. | Subv | 2018-07-03 | 1 | -0/+1 |
| | |||||
* | Merge pull request #602 from Subv/mufu_subop | bunnei | 2018-07-01 | 1 | -2/+1 |
|\ | | | | | GPU: Corrected the size of the MUFU subop field, and removed incorrect "min" operation. | ||||
| * | GPU: Corrected the size of the MUFU subop field, and removed incorrect "min" operation. | Subv | 2018-06-30 | 1 | -2/+1 |
| | | |||||
* | | gl_shader_decompiler: Implement predicate NotEqualWithNan. | bunnei | 2018-06-30 | 1 | -0/+1 |
|/ | |||||
* | Build: Fixed some MSVC warnings in various parts of the code. | Subv | 2018-06-20 | 1 | -2/+2 |
| | |||||
* | GPU: Don't mark uniform buffers and registers as used for instructions which don't have them. | Subv | 2018-06-19 | 1 | -2/+3 |
| | | | | | Like the MOV32I and FMUL32I instructions. This fixes a potential crash when using these instructions. | ||||
* | gl_shader_decompiler: Implement LOP instructions. | bunnei | 2018-06-17 | 1 | -0/+14 |
| | |||||
* | gl_shader_decompiler: Refactor LOP32I instruction a bit in support of LOP. | bunnei | 2018-06-17 | 1 | -3/+2 |
| | |||||
* | gl_shader_decompiler: Implement integer size conversions for I2I/I2F/F2I. | bunnei | 2018-06-16 | 1 | -1/+2 |
| | |||||
* | Merge pull request #558 from Subv/iadd32i | bunnei | 2018-06-12 | 1 | -2/+10 |
|\ | | | | | GPU: Implemented the iadd32i shader instruction. | ||||
| * | GPU: Implemented the iadd32i shader instruction. | Subv | 2018-06-12 | 1 | -2/+10 |
| | | |||||
* | | gl_shader_decompiler: Implement saturate for float instructions. | bunnei | 2018-06-12 | 1 | -2/+1 |
|/ | |||||
* | GPU: Implement the iset family of shader instructions. | Subv | 2018-06-09 | 1 | -0/+9 |
| | |||||
* | GPU: Added decodings for the ISET family of instructions. | Subv | 2018-06-09 | 1 | -0/+7 |
| | |||||
* | Merge pull request #550 from Subv/ssy | bunnei | 2018-06-09 | 1 | -0/+2 |
|\ | | | | | GPU: Stub the SSY shader instruction. | ||||
| * | GPU: Stub the SSY shader instruction. | Subv | 2018-06-09 | 1 | -0/+2 |
| | | | | | | | | This instruction tells the GPU where the flow reconverges in a non-uniform control flow scenario, we can ignore this when generating GLSL code. | ||||
* | | Merge pull request #551 from bunnei/shr | bunnei | 2018-06-09 | 1 | -0/+4 |
|\ \ | | | | | | | gl_shader_decompiler: Implement SHR instruction. | ||||
| * | | gl_shader_decompiler: Implement SHR instruction. | bunnei | 2018-06-09 | 1 | -0/+4 |
| |/ | |||||
* | | gl_shader_decompiler: Implement IADD instruction. | bunnei | 2018-06-09 | 1 | -5/+11 |
| | | |||||
* | | gl_shader_decompiler: Add missing asserts for saturate_a instructions. | bunnei | 2018-06-09 | 1 | -1/+1 |
|/ | |||||
* | gl_shader_decompiler: Implement BFE_IMM instruction. | bunnei | 2018-06-07 | 1 | -3/+15 |
| | |||||
* | gl_shader_decompiler: F2F: Implement rounding modes. | bunnei | 2018-06-07 | 1 | -3/+12 |
| | |||||
* | shader_bytecode: Add instruction decodings for BFE, IMNMX, and XMAD. | bunnei | 2018-06-07 | 1 | -0/+20 |
| | |||||
* | gl_shader_decompiler: Implement LD_C instruction. | bunnei | 2018-06-07 | 1 | -0/+16 |
| | |||||
* | gl_shader_decompiler: Refactor uniform handling to allow different decodings. | bunnei | 2018-06-06 | 1 | -6/+10 |
| | |||||
* | Merge pull request #516 from Subv/f2i_r | bunnei | 2018-06-06 | 1 | -4/+20 |
|\ | | | | | GPU: Implemented the F2I_R shader instruction. | ||||
| * | GPU: Implemented the F2I_R shader instruction. | Subv | 2018-06-05 | 1 | -4/+20 |
| | | |||||
* | | Merge pull request #521 from Subv/bra | bunnei | 2018-06-05 | 1 | -4/+5 |
|\ \ | | | | | | | GPU: Corrected the branch targets for the shader bra instruction. | ||||
| * | | GPU: Corrected the branch targets for the shader bra instruction. | Subv | 2018-06-05 | 1 | -4/+5 |
| | | | |||||
* | | | gl_shader_decompiler: Implement SHL instruction. | bunnei | 2018-06-05 | 1 | -13/+17 |
|/ / | |||||
* | | GPU: Implement the ISCADD shader instructions. | Subv | 2018-06-05 | 1 | -0/+16 |
| | | |||||
* | | GPU: Added decodings for the ISCADD instructions. | Subv | 2018-06-05 | 1 | -0/+7 |
|/ | |||||
* | Merge pull request #514 from Subv/lop32i | bunnei | 2018-06-05 | 1 | -1/+15 |
|\ | | | | | GPU: Implemented the LOP32I instruction. | ||||
| * | GPU: Implemented the LOP32I instruction. | Subv | 2018-06-04 | 1 | -1/+15 |
| | | |||||
* | | Merge pull request #510 from Subv/isetp | bunnei | 2018-06-05 | 1 | -0/+10 |
|\ \ | | | | | | | GPU: Implemented the ISETP_R and ISETP_C instructions | ||||
| * | | GPU: Implemented the ISETP_R and ISETP_C shader instructions. | Subv | 2018-06-04 | 1 | -0/+10 |
| |/ | |||||
* | | Merge pull request #512 from Subv/fset | bunnei | 2018-06-05 | 1 | -1/+1 |
|\ \ | | | | | | | GPU: Corrected the FSET and I2F instructions. | ||||
| * | | GPU: Use the bf bit in FSET to determine whether to write 0xFFFFFFFF or 1.0f. | Subv | 2018-06-04 | 1 | -1/+1 |
| |/ | |||||
* | | GPU: Partially implemented the shader BRA instruction. | Subv | 2018-06-04 | 1 | -0/+13 |
| | | |||||
* | | GPU: Added decoding for the BRA instruction. | Subv | 2018-06-04 | 1 | -0/+2 |
|/ | |||||
* | gl_shader_decompiler: Implement TEXS component mask. | bunnei | 2018-06-03 | 1 | -2/+16 |
| | |||||
* | Merge pull request #494 from bunnei/shader-tex | bunnei | 2018-06-03 | 1 | -0/+15 |
|\ | | | | | gl_shader_decompiler: Implement TEX, fixes for TEXS. | ||||
| * | gl_shader_decompiler: Implement TEX instruction. | bunnei | 2018-06-01 | 1 | -0/+10 |
| | | |||||
| * | gl_shader_decompiler: Support multi-destination for TEXS. | bunnei | 2018-06-01 | 1 | -0/+5 |
| | | |||||
* | | gl_shader_decompiler: Implement RRO as a register move. | bunnei | 2018-06-03 | 1 | -3/+7 |
|/ | |||||
* | Merge pull request #489 from Subv/vertexid | bunnei | 2018-05-30 | 1 | -0/+4 |
|\ | | | | | Shaders: Implemented reading the gl_InstanceID and gl_VertexID variables in the vertex shader. | ||||
| * | Shaders: Implemented reading the gl_InstanceID and gl_VertexID variables in the vertex shader. | Subv | 2018-05-30 | 1 | -0/+4 |
| | | |||||
* | | gl_shader_decompiler: Partially implement F2F_R instruction. | bunnei | 2018-05-30 | 1 | -3/+3 |
|/ | |||||
* | shader_bytecode: Implement other variants of FMNMX. | bunnei | 2018-05-26 | 1 | -3/+7 |
| | |||||
* | Merge pull request #458 from Subv/fmnmx | bunnei | 2018-05-21 | 1 | -0/+5 |
|\ | | | | | Shaders: Implemented the FMNMX shader instruction. | ||||
| * | Shaders: Implemented the FMNMX shader instruction. | Subv | 2018-05-21 | 1 | -0/+5 |
| | | |||||
* | | ShadersDecompiler: Added decoding for the PSETP instruction. | Subv | 2018-05-19 | 1 | -0/+3 |
|/ | |||||
* | shader_bytecode: Add decoding for FMNMX instruction. | bunnei | 2018-04-29 | 1 | -0/+2 |
| | |||||
* | gl_shader_decompiler: Partially implement I2I_R, and I2F_R. | bunnei | 2018-04-29 | 1 | -8/+8 |
| | |||||
* | shader_bytecode: Add decodings for i2i instructions. | bunnei | 2018-04-29 | 1 | -3/+20 |
| | |||||
* | gl_shader_decompiler: Implement MOV32_IMM instruction. | bunnei | 2018-04-29 | 1 | -2/+2 |
| | |||||
* | gl_shader_decompiler: Boilerplate for handling integer instructions. | bunnei | 2018-04-26 | 1 | -1/+9 |
| | |||||
* | Shaders: Added bit decodings for the I2I instruction. | Subv | 2018-04-25 | 1 | -0/+6 |
| | |||||
* | Shaders: Added decodings for the FSET instructions. | Subv | 2018-04-25 | 1 | -8/+29 |
| | |||||
* | shader_bytecode: Add several more instruction decodings. | bunnei | 2018-04-21 | 1 | -5/+52 |
| | |||||
* | shader_bytecode: Decode instructions based on bit strings. | bunnei | 2018-04-21 | 1 | -185/+172 |
| | |||||
* | ShaderGen: Implemented predicated instruction execution. | Subv | 2018-04-21 | 1 | -1/+5 |
| | | | | Each predicated instruction will be wrapped in an `if (predicate) { instruction_body; }` in the GLSL, where `predicate` is one of the predicate boolean variables previously set by fsetp. | ||||
* | ShaderGen: Implemented the fsetp instruction. | Subv | 2018-04-21 | 1 | -3/+40 |
| | | | | | | | | | | Predicate variables are now added to the generated shader code in the form of 'pX' where X is the predicate id. These predicate variables are initialized to false on shader startup and are set via the fsetp instructions. TODO: * Not all the comparison types are implemented. * Only the single-predicate version is implemented. | ||||
* | ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO). | Subv | 2018-04-20 | 1 | -0/+3 |
| | |||||
* | ShaderGen: Implemented the fmul32i shader instruction. | Subv | 2018-04-19 | 1 | -3/+14 |
| | |||||
* | shader_bytecode: Make ctor's constexpr and explicit. | bunnei | 2018-04-18 | 1 | -7/+7 |
| | |||||
* | gl_shader_decompiler: Implement FMUL/FADD/FFMA immediate instructions. | bunnei | 2018-04-17 | 1 | -0/+14 |
| | |||||
* | gl_shader_decompiler: Add support for TEXS instruction. | bunnei | 2018-04-17 | 1 | -5/+14 |
| | |||||
* | shaders: Add NumTextureSamplers const, remove unused #pragma. | bunnei | 2018-04-15 | 1 | -2/+0 |
| | |||||
* | shaders: Address PR review feedback. | bunnei | 2018-04-14 | 1 | -1/+1 |
| | |||||
* | shaders: Fix GCC and clang build issues. | bunnei | 2018-04-14 | 1 | -3/+3 |
| | |||||
* | gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup. | bunnei | 2018-04-14 | 1 | -20/+39 |
| | |||||
* | shader_bytecode: Add FSETP and KIL to GetInfo. | bunnei | 2018-04-14 | 1 | -0/+3 |
| | |||||
* | shader_bytecode: Add SubOp decoding. | bunnei | 2018-04-14 | 1 | -0/+10 |
| | |||||
* | shader_bytecode: Add initial module for shader decoding. | bunnei | 2018-04-14 | 1 | -0/+297 |