summaryrefslogtreecommitdiffstats
path: root/src/video_core/engines/shader_bytecode.h (follow)
Commit message (Expand)AuthorAgeFilesLines
* shader_ir: Unify constant buffer offset valuesReinUsesLisp2019-01-301-0/+8
* shader_decode: Implement LDG and basic cbuf trackingReinUsesLisp2019-01-301-0/+8
* shader_decode: Implement VMAD and VSETPReinUsesLisp2019-01-151-2/+3
* shader_decode: Implement HFMA2ReinUsesLisp2019-01-151-0/+1
* shader_decode: Fixup clang-formatReinUsesLisp2019-01-151-1/+1
* shader_ir: Initial implementationReinUsesLisp2019-01-151-0/+4
* shader_bytecode: Fixup encodingReinUsesLisp2019-01-151-1/+1
* shader_bytecode: Fixup TEXS.F16 encodingReinUsesLisp2018-12-261-1/+1
* Fixed uninitialized memory due to missing returns in canaryDavid Marcec2018-12-191-0/+2
* shader_bytecode: Fixup half float's operator B encodingReinUsesLisp2018-12-181-1/+1
* Implement postfactor multiplication/division for fmul instructionsheapo2018-12-171-1/+1
* gl_shader_decompiler: Implement TEXS.F16ReinUsesLisp2018-12-051-1/+2
* Merge pull request #1763 from ReinUsesLisp/bfibunnei2018-11-261-0/+3
|\
| * gl_shader_decompiler: Implement BFI_IMM_RReinUsesLisp2018-11-211-0/+3
* | Merge pull request #1760 from ReinUsesLisp/r2pbunnei2018-11-261-0/+14
|\ \
| * | gl_shader_decompiler: Implement R2P_IMMReinUsesLisp2018-11-211-0/+14
| |/
* | Merge pull request #1783 from ReinUsesLisp/clip-distancesbunnei2018-11-261-0/+2
|\ \
| * | gl_shader_decompiler: Implement clip distancesReinUsesLisp2018-11-231-0/+2
| |/
* | Merge pull request #1769 from ReinUsesLisp/ccbunnei2018-11-241-4/+3
|\ \
| * | gl_shader_decompiler: Rename control codes to condition codesReinUsesLisp2018-11-221-4/+3
| |/
* / Added predicate comparison LessEqualWithNan (#1736)Hexagon122018-11-231-0/+1
|/
* Merge pull request #1527 from FernandoS27/assert-flowbunnei2018-11-011-0/+1
|\
| * Assert Control Flow Instructions using Control CodesFernandoS272018-10-291-1/+2
* | Merge pull request #1528 from FernandoS27/assert-control-codesbunnei2018-11-011-1/+5
|\ \
| * | Assert Control Codes GenerationFernandoS272018-10-301-1/+5
| |/
* / global: Use std::optional instead of boost::optional (#1578)Frederic L2018-10-301-4/+4
|/
* Implemented LD_L and ST_LFernandoS272018-10-241-0/+31
* Implement PointSizeFernandoS272018-10-231-0/+1
* Merge pull request #1519 from ReinUsesLisp/vsetpbunnei2018-10-231-3/+15
|\
| * gl_shader_decompiler: Implement VSETPReinUsesLisp2018-10-231-0/+2
| * gl_shader_decompiler: Abstract VMAD into a video subsetReinUsesLisp2018-10-231-3/+13
* | Merge pull request #1512 from ReinUsesLisp/brkbunnei2018-10-231-3/+7
|\ \ | |/ |/|
| * gl_shader_decompiler: Implement PBK and BRKReinUsesLisp2018-10-181-3/+7
* | Added Saturation to FMUL32IFernandoS272018-10-231-0/+4
* | Fixed FSETP and FSETFernandoS272018-10-221-2/+0
* | Merge pull request #1501 from ReinUsesLisp/half-floatbunnei2018-10-201-0/+145
|\ \ | |/ |/|
| * gl_shader_decompiler: Implement HSET2_RReinUsesLisp2018-10-151-0/+18
| * gl_shader_decompiler: Implement HSETP2_RReinUsesLisp2018-10-151-0/+20
| * gl_shader_decompiler: Implement HFMA2 instructionsReinUsesLisp2018-10-151-0/+32
| * gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMMReinUsesLisp2018-10-151-0/+30
| * gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructionsReinUsesLisp2018-10-151-0/+25
| * gl_shader_decompiler: Setup base for half float unpacking and settingReinUsesLisp2018-10-151-0/+20
* | shader_bytecode: Add Control Code enum 0xfReinUsesLisp2018-10-151-1/+1
|/
* gl_shader_decompiler: Implement VMADReinUsesLisp2018-10-111-0/+36
* gl_shader_decompiler: Implement geometry shadersReinUsesLisp2018-10-071-0/+112
* shader_bytecode: Lay out the Ipa-related enums betterLioncash2018-09-211-2/+12
* shader_bytecode: Make operator== and operator!= of IpaMode const qualifiedLioncash2018-09-211-6/+7
* Merge pull request #1279 from FernandoS27/csetpbunnei2018-09-191-0/+47
|\
| * Implemented I2I.CC on the NEU control code, used by SMOFernandoS272018-09-171-1/+1
| * Implemented CSETPFernandoS272018-09-171-0/+11
| * Implemented Control CodesFernandoS272018-09-171-0/+36
* | Added texture misc modes to texture instructionsFernandoS272018-09-171-1/+147
|/
* Merge pull request #1326 from FearlessTobi/port-4182bunnei2018-09-171-9/+9
|\
| * Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi2018-09-151-9/+9
* | Shaders: Implemented multiple-word loads and stores to and from attribute memory.Subv2018-09-151-1/+9
|/
* Merge pull request #1263 from FernandoS27/tex-modebunnei2018-09-121-0/+10
|\
| * Implemented Texture Processing ModesFernandoS272018-09-121-0/+10
* | Implemented encodings for LEA and PSETFernandoS272018-09-111-0/+64
|/
* Implemented TMMLFernandoS272018-09-101-5/+19
* Implemented TXQ dimension query type, used by SMO.FernandoS272018-09-091-1/+16
* Change name of TEXQ to TXQ, in order to match NVIDIA's namingFernandoS272018-09-091-2/+2
* Implemented IPA ProperlyFernandoS272018-09-061-0/+12
* Merge pull request #1215 from ogniK5377/texs-nodep-assertbunnei2018-09-021-0/+1
|\
| * Added assert for TEXS nodepDavid Marcec2018-09-011-0/+1
* | Merge pull request #1214 from ogniK5377/ipa-assertbunnei2018-09-021-2/+5
|\ \
| * | Added better asserts to IPA, Renamed IPA modes to match mesaDavid Marcec2018-09-011-2/+5
| |/
* | Merge pull request #1216 from ogniK5377/ffma-assertbunnei2018-09-021-0/+3
|\ \
| * | Removed saturate assertDavid Marcec2018-09-011-1/+0
| * | Added FFMA assertsDavid Marcec2018-09-011-0/+4
| |/
* | Removed saturate assertDavid Marcec2018-09-011-1/+0
* | Added FMUL assertsDavid Marcec2018-09-011-0/+5
|/
* Added predicate comparison GreaterEqualWithNanHexagon122018-08-311-0/+1
* gl_shader_decompiler: Implement POPC (#1203)Laku2018-08-311-0/+10
* Merge pull request #1200 from bunnei/improve-ipabunnei2018-08-301-0/+6
|\
| * gl_shader_decompiler: Improve IPA for Pass mode with Position attribute.bunnei2018-08-291-0/+6
* | Shaders: Implemented IADD3tech4me2018-08-291-1/+23
|/
* fix SEL_IMM bitstringLaku2018-08-241-1/+1
* Shaders: Added decodings for IADD3 instructionstech4me2018-08-231-0/+6
* implement lop3Laku2018-08-221-0/+19
* shader_bytecode: Parenthesize conditional expression within GetTextureType()Lioncash2018-08-211-1/+1
* shader_bytecode: Replace some UNIMPLEMENTED logs.bunnei2018-08-211-2/+6
* Merge pull request #1112 from Subv/sampler_typesbunnei2018-08-201-4/+72
|\
| * Shader: Added bitfields for the texture type of the various sampling instructions.Subv2018-08-191-1/+65
| * Shaders: Added decodings for TLD4 and TLD4SSubv2018-08-191-3/+7
* | Merge pull request #1089 from Subv/neg_bitsbunnei2018-08-191-0/+4
|\ \
| * | Shaders: Corrected the 'abs' and 'neg' bit usage in the float arithmetic instructions.Subv2018-08-181-0/+4
* | | Shaders/TEXS: Fixed the component mask in the TEXS instruction.Subv2018-08-191-6/+11
| |/ |/|
* | Merge pull request #1109 from Subv/ldg_decodebunnei2018-08-191-0/+4
|\ \
| * | Shaders: Added decodings for the LDG and STG instructions.Subv2018-08-191-0/+4
* | | Merge pull request #1108 from Subv/front_facingbunnei2018-08-191-0/+3
|\ \ \
| * | | Shaders: Implemented the gl_FrontFacing input attribute (attr 63).Subv2018-08-191-0/+3
| |/ /
* / / Shader: Implemented the predicate and mode arguments of LOP.Subv2018-08-181-1/+6
|/ /
* / Added predcondition GreaterThanWithNanDavid Marcec2018-08-181-0/+1
|/
* gl_shader_decompiler: Implement XMAD instruction.bunnei2018-08-131-4/+25
* Merge pull request #1010 from bunnei/unk-vert-attrib-shaderbunnei2018-08-121-2/+1
|\
| * gl_shader_decompiler: Improve handling of unknown input/output attributes.bunnei2018-08-121-2/+1
* | Merge pull request #1018 from Subv/ssy_syncbunnei2018-08-121-0/+7
|\ \ | |/ |/|
| * GPU/Shader: Don't predicate instructions that don't have a predicate field (SSY).Subv2018-08-111-0/+7
* | video_core: Use variable template variants of type_traits interfaces where applicableLioncash2018-08-101-2/+1
|/
* Merge pull request #982 from bunnei/stub-unk-63bunnei2018-08-091-0/+2
|\
| * gl_shader_decompiler: Stub input attribute Unknown_63.bunnei2018-08-081-0/+2
* | gl_shader_decompiler: Let OpenGL interpret floats.bunnei2018-08-081-9/+4
|/
* shader_bytecode: Implement other TEXS masks.bunnei2018-07-221-5/+9
* gl_shader_decompiler: Implement SEL instruction.bunnei2018-07-221-0/+11
* video_core: Use nested namespaces where applicableLioncash2018-07-211-8/+4
* Merge pull request #655 from bunnei/pred-lt-nanbunnei2018-07-131-0/+1
|\
| * gl_shader_decompiler: Implement PredCondition::LessThanWithNan.bunnei2018-07-131-0/+1
* | gl_shader_decompiler: Use FlowCondition field in EXIT instruction.bunnei2018-07-131-0/+9
|/
* Merge pull request #652 from Subv/fadd32iSebastian Valle2018-07-131-0/+9
|\
| * GPU: Implement the FADD32I shader instruction.Subv2018-07-121-0/+9
* | Merge pull request #651 from Subv/ffma_decodebunnei2018-07-121-1/+1
|\ \
| * | GPU: Corrected the decoding of FFMA for immediate operands.Subv2018-07-121-1/+1
| |/
* | Merge pull request #625 from Subv/imnmxbunnei2018-07-081-3/+17
|\ \ | |/ |/|
| * GPU: Implemented the IMNMX shader instruction.Subv2018-07-041-3/+17
* | Merge pull request #626 from Subv/shader_syncbunnei2018-07-051-0/+5
|\ \
| * | GPU: Stub the shader SYNC and DEPBAR instructions.Subv2018-07-041-0/+5
| |/
* | Merge pull request #622 from Subv/unused_texbunnei2018-07-051-1/+1
|\ \
| * | GPU: Corrected the decoding for the TEX shader instruction.Subv2018-07-041-1/+1
| |/
* / GPU: Implemented the PSETP shader instruction.Subv2018-07-041-0/+13
|/
* GPU: Implemented MUFU suboperation 8, sqrt.Subv2018-07-031-0/+1
* Merge pull request #602 from Subv/mufu_subopbunnei2018-07-011-2/+1
|\
| * GPU: Corrected the size of the MUFU subop field, and removed incorrect "min" operation.Subv2018-06-301-2/+1
* | gl_shader_decompiler: Implement predicate NotEqualWithNan.bunnei2018-06-301-0/+1
|/
* Build: Fixed some MSVC warnings in various parts of the code.Subv2018-06-201-2/+2
* GPU: Don't mark uniform buffers and registers as used for instructions which don't have them.Subv2018-06-191-2/+3
* gl_shader_decompiler: Implement LOP instructions.bunnei2018-06-171-0/+14
* gl_shader_decompiler: Refactor LOP32I instruction a bit in support of LOP.bunnei2018-06-171-3/+2
* gl_shader_decompiler: Implement integer size conversions for I2I/I2F/F2I.bunnei2018-06-161-1/+2
* Merge pull request #558 from Subv/iadd32ibunnei2018-06-121-2/+10
|\
| * GPU: Implemented the iadd32i shader instruction.Subv2018-06-121-2/+10
* | gl_shader_decompiler: Implement saturate for float instructions.bunnei2018-06-121-2/+1
|/
* GPU: Implement the iset family of shader instructions.Subv2018-06-091-0/+9
* GPU: Added decodings for the ISET family of instructions.Subv2018-06-091-0/+7
* Merge pull request #550 from Subv/ssybunnei2018-06-091-0/+2
|\
| * GPU: Stub the SSY shader instruction.Subv2018-06-091-0/+2
* | Merge pull request #551 from bunnei/shrbunnei2018-06-091-0/+4
|\ \
| * | gl_shader_decompiler: Implement SHR instruction.bunnei2018-06-091-0/+4
| |/
* | gl_shader_decompiler: Implement IADD instruction.bunnei2018-06-091-5/+11
* | gl_shader_decompiler: Add missing asserts for saturate_a instructions.bunnei2018-06-091-1/+1
|/
* gl_shader_decompiler: Implement BFE_IMM instruction.bunnei2018-06-071-3/+15
* gl_shader_decompiler: F2F: Implement rounding modes.bunnei2018-06-071-3/+12
* shader_bytecode: Add instruction decodings for BFE, IMNMX, and XMAD.bunnei2018-06-071-0/+20
* gl_shader_decompiler: Implement LD_C instruction.bunnei2018-06-071-0/+16
* gl_shader_decompiler: Refactor uniform handling to allow different decodings.bunnei2018-06-061-6/+10
* Merge pull request #516 from Subv/f2i_rbunnei2018-06-061-4/+20
|\
| * GPU: Implemented the F2I_R shader instruction.Subv2018-06-051-4/+20
* | Merge pull request #521 from Subv/brabunnei2018-06-051-4/+5
|\ \
| * | GPU: Corrected the branch targets for the shader bra instruction.Subv2018-06-051-4/+5
* | | gl_shader_decompiler: Implement SHL instruction.bunnei2018-06-051-13/+17
|/ /
* | GPU: Implement the ISCADD shader instructions.Subv2018-06-051-0/+16
* | GPU: Added decodings for the ISCADD instructions.Subv2018-06-051-0/+7
|/
* Merge pull request #514 from Subv/lop32ibunnei2018-06-051-1/+15
|\
| * GPU: Implemented the LOP32I instruction.Subv2018-06-041-1/+15
* | Merge pull request #510 from Subv/isetpbunnei2018-06-051-0/+10
|\ \
| * | GPU: Implemented the ISETP_R and ISETP_C shader instructions.Subv2018-06-041-0/+10
| |/
* | Merge pull request #512 from Subv/fsetbunnei2018-06-051-1/+1
|\ \
| * | GPU: Use the bf bit in FSET to determine whether to write 0xFFFFFFFF or 1.0f.Subv2018-06-041-1/+1
| |/
* | GPU: Partially implemented the shader BRA instruction.Subv2018-06-041-0/+13
* | GPU: Added decoding for the BRA instruction.Subv2018-06-041-0/+2
|/
* gl_shader_decompiler: Implement TEXS component mask.bunnei2018-06-031-2/+16
* Merge pull request #494 from bunnei/shader-texbunnei2018-06-031-0/+15
|\
| * gl_shader_decompiler: Implement TEX instruction.bunnei2018-06-011-0/+10
| * gl_shader_decompiler: Support multi-destination for TEXS.bunnei2018-06-011-0/+5
* | gl_shader_decompiler: Implement RRO as a register move.bunnei2018-06-031-3/+7
|/
* Merge pull request #489 from Subv/vertexidbunnei2018-05-301-0/+4
|\
| * Shaders: Implemented reading the gl_InstanceID and gl_VertexID variables in the vertex shader.Subv2018-05-301-0/+4
* | gl_shader_decompiler: Partially implement F2F_R instruction.bunnei2018-05-301-3/+3
|/
* shader_bytecode: Implement other variants of FMNMX.bunnei2018-05-261-3/+7
* Merge pull request #458 from Subv/fmnmxbunnei2018-05-211-0/+5
|\
| * Shaders: Implemented the FMNMX shader instruction.Subv2018-05-211-0/+5
* | ShadersDecompiler: Added decoding for the PSETP instruction.Subv2018-05-191-0/+3
|/
* shader_bytecode: Add decoding for FMNMX instruction.bunnei2018-04-291-0/+2
* gl_shader_decompiler: Partially implement I2I_R, and I2F_R.bunnei2018-04-291-8/+8
* shader_bytecode: Add decodings for i2i instructions.bunnei2018-04-291-3/+20
* gl_shader_decompiler: Implement MOV32_IMM instruction.bunnei2018-04-291-2/+2
* gl_shader_decompiler: Boilerplate for handling integer instructions.bunnei2018-04-261-1/+9
* Shaders: Added bit decodings for the I2I instruction.Subv2018-04-251-0/+6
* Shaders: Added decodings for the FSET instructions.Subv2018-04-251-8/+29
* shader_bytecode: Add several more instruction decodings.bunnei2018-04-211-5/+52
* shader_bytecode: Decode instructions based on bit strings.bunnei2018-04-211-185/+172
* ShaderGen: Implemented predicated instruction execution.Subv2018-04-211-1/+5
* ShaderGen: Implemented the fsetp instruction.Subv2018-04-211-3/+40
* ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO).Subv2018-04-201-0/+3
* ShaderGen: Implemented the fmul32i shader instruction.Subv2018-04-191-3/+14
* shader_bytecode: Make ctor's constexpr and explicit.bunnei2018-04-181-7/+7
* gl_shader_decompiler: Implement FMUL/FADD/FFMA immediate instructions.bunnei2018-04-171-0/+14
* gl_shader_decompiler: Add support for TEXS instruction.bunnei2018-04-171-5/+14
* shaders: Add NumTextureSamplers const, remove unused #pragma.bunnei2018-04-151-2/+0
* shaders: Address PR review feedback.bunnei2018-04-141-1/+1
* shaders: Fix GCC and clang build issues.bunnei2018-04-141-3/+3
* gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup.bunnei2018-04-141-20/+39
* shader_bytecode: Add FSETP and KIL to GetInfo.bunnei2018-04-141-0/+3
* shader_bytecode: Add SubOp decoding.bunnei2018-04-141-0/+10
* shader_bytecode: Add initial module for shader decoding.bunnei2018-04-141-0/+297