summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader (unfollow)
Commit message (Expand)AuthorFilesLines
2019-10-26Shader_IR: Address Feedback.Fernando Sahmkow7-52/+59
2019-10-25gl_shader_cache: Implement locker variants invalidationReinUsesLisp2-12/+19
2019-10-25gl_shader_disk_cache: Store and load fast BRXReinUsesLisp1-2/+2
2019-10-25const_buffer_locker: Minor style changesReinUsesLisp2-152/+76
2019-10-25gl_shader_decompiler: Move entries to a separate functionReinUsesLisp7-32/+29
2019-10-25Shader_IR: Implement Fast BRX and allow multi-branches in the CFG.Fernando Sahmkow1-1/+1
2019-10-25Shader_IR: Correct typo in Consistent method.Fernando Sahmkow2-2/+2
2019-10-25Shader_IR: allow lookup of texture samplers within the shader_ir for instructions that don't provide itFernando Sahmkow4-42/+212
2019-10-25Shader_IR: Implement Fast BRX and allow multi-branches in the CFG.Fernando Sahmkow5-130/+246
2019-10-25Shader_Cache: setup connection of ConstBufferLockerFernando Sahmkow5-12/+22
2019-10-25VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.Fernando Sahmkow3-0/+123
2019-10-25Shader_IR: Implement BRX tracking.Fernando Sahmkow1-0/+113
2019-10-24shader_ir: Use std::array with pair instead of unordered_mapLioncash1-53/+67
2019-10-24video_core/shader: Resolve instances of variable shadowingLioncash6-11/+12
2019-10-22Shader_Ir: Fix TLD4S from using a component mask.Fernando Sahmkow2-5/+5
2019-10-22shader_ir/memory: Ignore global memory when tracking failsReinUsesLisp2-18/+26
2019-10-18video_core/shader/ast: Make ShowCurrentState() and SanityCheck() const member functionsLioncash2-5/+5
2019-10-18video_core/shader/ast: Make ASTManager::Print a const member functionLioncash2-3/+3
2019-10-18video_core/shader/ast: Make ExprPrinter members privateLioncash1-1/+2
2019-10-18video_core/shader/ast: Make Indent() return a string_viewLioncash1-14/+24
2019-10-18video_core/shader/ast: Make Indent() privateLioncash1-9/+9
2019-10-18video_core/shader/ast: Rename Ident() to Indent()Lioncash1-13/+13
2019-10-18video_core/shader/ast: Make use of fmt where applicableLioncash1-14/+14
2019-10-16control_flow: Silence truncation warningsLioncash2-4/+4
2019-10-16shader/node: std::move Meta instance within OperationNode constructorLioncash1-1/+1
2019-10-07shader/half_set_predicate: Fix HSETP2 for constant buffersReinUsesLisp1-0/+2
2019-10-07shader/half_set_predicate: Reduce DEBUG_ASSERT to LOG_DEBUGReinUsesLisp1-1/+2
2019-10-05video_core/control_flow: Eliminate variable shadowing warningsLioncash1-6/+6
2019-10-05video_core/control_flow: Eliminate pessimizing movesLioncash1-5/+8
2019-10-05video_core/ast: Unindent most of IsFullyDecompiled() by one levelLioncash1-12/+12
2019-10-05video_core/ast: Make ShowCurrentState() take a string_view instead of std::stringLioncash2-2/+2
2019-10-05video_core/ast: Eliminate variable shadowing warningsLioncash1-3/+3
2019-10-05video_core/ast: Replace std::string with a constexpr std::string_viewLioncash1-3/+1
2019-10-05video_core/ast: Default the move constructor and assignment operatorLioncash2-26/+2
2019-10-05video_core/{ast, expr}: Organize forward declarationLioncash2-10/+10
2019-10-05video_core/expr: Supply operator!= along with operator==Lioncash2-1/+32
2019-10-05video_core/{ast, expr}: Use std::move where applicableLioncash4-45/+47
2019-10-05video_core/ast: Supply const accessors for data where applicableLioncash2-37/+41
2019-10-05Shader_ir: Address feedbackFernando Sahmkow4-50/+14
2019-10-05Shader_Ir: Address Feedback and clang format.Fernando Sahmkow3-43/+50
2019-10-05Shader_IR: clean up AST handling and add documentation.Fernando Sahmkow1-2/+6
2019-10-05Shader_IR: Correct OutwardMoves for IfsFernando Sahmkow1-22/+11
2019-10-05Shader_IR: corrections and clang-formatFernando Sahmkow2-70/+64
2019-10-05Shader_IR: allow else derivation to be optional.Fernando Sahmkow6-8/+14
2019-10-05vk_shader_compiler: Implement the decompiler in SPIR-VFernando Sahmkow2-1/+25
2019-10-05Shader_IR: mark labels as unused for partial decompile.Fernando Sahmkow2-3/+9
2019-10-05Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes.Fernando Sahmkow10-74/+307
2019-10-05gl_shader_decompiler: Implement AST decompilingFernando Sahmkow10-34/+116
2019-10-05shader_ir: Declare Manager and pass it to appropiate programs.Fernando Sahmkow7-104/+214
2019-10-05shader_ir: Corrections to outward movements and misc stuffsFernando Sahmkow5-58/+305
2019-10-05shader_ir: Add basic goto eliminationFernando Sahmkow2-38/+484
2019-10-05shader_ir: Initial Decompile SetupFernando Sahmkow5-5/+507
2019-09-21gl_shader_decompiler: Use uint for images and fix SUATOMReinUsesLisp3-69/+52
2019-09-21shader/image: Implement SULD and remove irrelevant codeReinUsesLisp2-25/+52
2019-09-21Shader_IR: ICMP corrections and fixesFernando Sahmkow1-6/+9
2019-09-20Shader_IR: Implement ICMP.Fernando Sahmkow1-0/+26
2019-09-19VideoCore: Corrections to the MME Inliner and removal of hacky instance management.Fernando Sahmkow2-0/+22
2019-09-17shader_ir/warp: Implement SHFLReinUsesLisp2-0/+57
2019-09-11shader/image: Implement SUATOM and fix SUSTReinUsesLisp3-37/+122
2019-09-06gl_shader_decompiler: Keep track of written images and mark them as modifiedReinUsesLisp3-42/+54
2019-09-06kepler_compute: Implement texture queriesReinUsesLisp1-0/+4
2019-09-05shader_ir: Implement LD_SReinUsesLisp1-10/+13
2019-09-05shader_ir: Implement ST_SReinUsesLisp4-11/+45
2019-09-04shader/shift: Implement SHR wrapped and clamped variantsReinUsesLisp1-6/+13
2019-09-04half_set_predicate: Fix predicate assignmentsReinUsesLisp1-10/+9
2019-08-30video_core: Silent miscellaneous warnings (#2820)Rodrigo Locatti5-5/+0
2019-08-28shader_ir/conversion: Split int and float selector and implement F2F H1ReinUsesLisp1-18/+16
2019-08-28shader_ir/conversion: Implement F2I F16 Ra.H1ReinUsesLisp1-4/+16
2019-08-28float_set_predicate: Add missing negation bit for the second operandReinUsesLisp1-4/+5
2019-08-21shader_ir: Implement VOTEReinUsesLisp4-0/+62
2019-08-04shader_ir: Implement NOPReinUsesLisp1-0/+6
2019-08-04half_set_predicate: Fix HSETP2_C constant buffer offsetReinUsesLisp1-1/+1
2019-07-26decode/half_set_predicate: Fix predicatesReinUsesLisp1-3/+3
2019-07-22shader/decode: Implement S2R TicReinUsesLisp3-0/+15
2019-07-20Shader_Ir: Implement F16 Variants of F2F, F2I, I2F.Fernando Sahmkow2-16/+39
2019-07-20Shader_Ir: Change Debug Asserts for Log WarningsFernando Sahmkow3-10/+17
2019-07-20shader/half_set_predicate: Fix HSETP2 implementationReinUsesLisp2-19/+15
2019-07-20shader/half_set_predicate: Implement missing HSETP2 variantsReinUsesLisp1-13/+29
2019-07-19video_core/control_flow: Provide operator!= for types with operator==Lioncash1-4/+21
2019-07-19video_core/control_flow: Prevent sign conversion in TryGetBlock()Lioncash1-1/+1
2019-07-19video_core/control_flow: Remove unnecessary BlockStack copy constructorLioncash1-2/+1
2019-07-19video_core/control_flow: Use std::move where applicableLioncash1-10/+15
2019-07-19video_core/control_flow: Use the prefix variant of operator++ for iteratorsLioncash1-2/+2
2019-07-19video_core/control_flow: Use empty() member function for checking emptinessLioncash1-2/+2
2019-07-19video_core: Resolve -Wreorder warningsLioncash1-1/+1
2019-07-19video_core/control_flow: Make program_size for ScanFlow() a std::size_tLioncash2-5/+4
2019-07-19video_core/control_flow: Place all internally linked types/functions within an anonymous namespaceLioncash1-1/+2
2019-07-19video_core/shader/decode: Prevent sign-conversion warningsLioncash1-2/+2
2019-07-18Shader_Ir: correct clang formatFernando Sahmkow1-2/+2
2019-07-18Shader_Ir: Downgrade precision and rounding asserts to debug asserts.Fernando Sahmkow5-10/+10
2019-07-17shader_ir: std::move Node instance where applicableLioncash4-60/+67
2019-07-17shader_ir: Rename Get/SetTemporal to Get/SetTemporaryLioncash5-36/+36
2019-07-17shader_ir: Remove unused includesLioncash1-3/+0
2019-07-16Shader_Ir: Correct tracking to track from right to leftFernando Sahmkow1-2/+2
2019-07-16shader/decode/other: Correct branch indirect argument within BRA handlingLioncash1-1/+1
2019-07-15shader: Allow tracking of indirect buffers without variable offsetReinUsesLisp6-35/+36
2019-07-09shader_ir: Add comments on missing instruction.Fernando Sahmkow2-2/+9
2019-07-09shader_ir: limit explorastion to best known program size.Fernando Sahmkow1-1/+1
2019-07-09control_flow: Correct block breaking algorithm.Fernando Sahmkow1-17/+17
2019-07-09control_flow: Assert shaders bigger than limit.Fernando Sahmkow1-0/+2
2019-07-09control_flow: Address feedback.Fernando Sahmkow1-89/+37
2019-07-09shader_ir: Correct parsing of scheduling instructions and correct sizingFernando Sahmkow2-13/+30
2019-07-09shader_ir: Correct max sizingFernando Sahmkow2-2/+2
2019-07-09shader_ir: Remove unnecessary constructors and use optional for ScanFlow resultFernando Sahmkow3-28/+17
2019-07-09shader_ir: Corrections, documenting and asserting control_flowFernando Sahmkow3-52/+54
2019-07-09shader_ir: Unify blocks in decompiled shaders.Fernando Sahmkow6-54/+79
2019-07-09shader_ir: Decompile Flow StackFernando Sahmkow4-11/+206
2019-07-09shader_ir: propagate shader size to the IRFernando Sahmkow3-6/+7
2019-07-09shader_ir: Implement BRX & BRA.CCFernando Sahmkow3-4/+42
2019-07-09shader_ir: Remove the old scanner.Fernando Sahmkow2-77/+0
2019-07-09shader_ir: Implement a new shader scannerFernando Sahmkow3-16/+471
2019-07-08gl_shader_decompiler: Implement gl_ViewportIndex and gl_Layer in vertex shadersReinUsesLisp2-0/+31
2019-07-07Delete decode_integer_set.cppTobias1-0/+0
2019-07-07shader/texture: Add F16 support for TLDSReinUsesLisp1-1/+7
2019-06-24decode/texture: Address feedbackReinUsesLisp1-0/+1
2019-06-21texture_cache: Style and CorrectionsFernando Sahmkow1-1/+2
2019-06-21shader_ir: Fix image copy rebase issuesFernando Sahmkow1-2/+7
2019-06-21shader: Implement bindless imagesReinUsesLisp3-2/+40
2019-06-21shader: Decode SUST and implement backing image functionalityReinUsesLisp4-1/+140
2019-06-21shader: Implement texture buffersReinUsesLisp2-0/+46
2019-06-07shader: Split SSY and PBK stackReinUsesLisp2-11/+14
2019-06-07shader/node: Minor changesReinUsesLisp1-50/+54
2019-06-07shader: Move Node declarations out of the shader IR headerReinUsesLisp3-493/+517
2019-06-06shader: Use shared_ptr to store nodes and move initialization to fileReinUsesLisp32-192/+238
2019-05-23shader/shader_ir: Make Comment() take a std::string by valueLioncash2-3/+3
2019-05-23shader/decode/*: Add missing newline to files lacking themLioncash18-18/+18
2019-05-23shader/decode/*: Eliminate indirect inclusionsLioncash6-1/+5
2019-05-22shader/decode/memory: Remove left in debug pragmaLioncash1-2/+0
2019-05-21shader/memory: Implement ST (generic memory)ReinUsesLisp1-21/+35
2019-05-21shader/memory: Implement LD (generic memory)ReinUsesLisp2-11/+23
2019-05-20shader: Implement S2R Tid{XYZ} and CtaId{XYZ}ReinUsesLisp2-15/+35
2019-05-19shader/shader_ir: Remove unnecessary inline specifiersLioncash1-2/+2
2019-05-19shader/shader_ir: Simplify constructors for OperationNodeLioncash1-15/+6
2019-05-19shader/shader_ir: Remove unnecessary template parameter packs from Operation() overloads where applicableLioncash1-2/+0
2019-05-19shader/shader_ir: Mark tracking functions as const member functionsLioncash2-8/+11
2019-05-19shader/shader_ir: Place implementations of constructor and destructor in cpp fileLioncash2-5/+9
2019-05-10video_core/shader/decode/texture: Remove unused variable from GetTld4Code()Lioncash1-1/+0
2019-05-04shader/decode/texture: Remove unused variableLioncash1-1/+0
2019-05-03shader_ir/other: Implement IPA.IDXReinUsesLisp1-5/+8
2019-05-03shader_ir/memory: Assert on non-32 bits ALD.PHYSReinUsesLisp1-0/+3
2019-05-03shader: Add physical attributes commentariesReinUsesLisp3-4/+6
2019-05-03gl_shader_decompiler: Implement GLSL physical attributesReinUsesLisp1-1/+1
2019-05-03shader_ir/memory: Implement physical input attributesReinUsesLisp3-6/+28
2019-05-03shader: Remove unused AbufNode Ipa modeReinUsesLisp4-29/+10
2019-05-03shader_ir/memory: Emit AL2P IRReinUsesLisp2-0/+22
2019-04-26shader_ir: Move Sampler index entry in operand< to sort declarationsReinUsesLisp1-2/+2
2019-04-26shader_ir: Add missing entry to Sampler operand< comparisonReinUsesLisp1-2/+3
2019-04-26shader_ir/texture: Fix sampler const buffer key shiftReinUsesLisp1-1/+1
2019-04-21Corrections Half Float operations on const buffers and implement saturation.Fernando Sahmkow2-15/+16
2019-04-18video_core: Silent -Wswitch warningsReinUsesLisp4-9/+16
2019-04-16shader_ir/decode: Fix half float pre-operations and remove MetaHalfArithmeticReinUsesLisp7-52/+42
2019-04-16shader_ir/decode: Implement half float saturationReinUsesLisp3-4/+14
2019-04-16shader_ir/decode: Reduce severity of unimplemented half-float FTZReinUsesLisp3-3/+9
2019-04-16renderer_opengl: Implement half float NaN comparisonsReinUsesLisp2-18/+17
2019-04-16shader_ir: Avoid using static on heap-allocated objectsReinUsesLisp1-5/+4
2019-04-16Do some corrections in conversion shader instructions.Fernando Sahmkow1-16/+53
2019-04-14shader_ir: Implement STG, keep track of global memory usage and flushReinUsesLisp2-38/+87
2019-04-08Correct XMAD mode, psl and high_b on different encodings.Fernando Sahmkow1-9/+30
2019-04-08Adapt Bindless to work with AOFFIFernando Sahmkow1-7/+18
2019-04-08Move ConstBufferAccessor to Maxwell3d, correct mistakes and clang format.Fernando Sahmkow2-3/+4
2019-04-08Fix TMMLFernando Sahmkow1-5/+7
2019-04-08Refactor GetTextureCode and GetTexCode to use an optional instead of optional parametersFernando Sahmkow2-34/+33
2019-04-08Implement TXQ_BFernando Sahmkow1-2/+8
2019-04-08Implement TMML_BFernando Sahmkow1-5/+10
2019-04-08Corrections to TEX_BFernando Sahmkow1-4/+5
2019-04-08Implement Bindless Handling on SetupTextureFernando Sahmkow1-4/+3
2019-04-08Unify both sampler types.Fernando Sahmkow2-18/+40
2019-04-08Implement Bindless Samplers and TEX_B in the IR.Fernando Sahmkow2-15/+74
2019-04-03shader_ir/memory: Reduce severity of LD_L cache management and log itReinUsesLisp1-2/+2
2019-04-03shader_ir/memory: Reduce severity of ST_L cache management and log itReinUsesLisp1-2/+3
2019-03-31shader_ir/decode: Silent implicit sign conversion warningMat M1-2/+2
2019-03-30shader_ir/decode: Implement AOFFI for TEX and TLD4ReinUsesLisp2-27/+94
2019-03-30shader_ir: Implement immediate register trackingReinUsesLisp2-1/+19
2019-02-26shader/decode: Remove extras from MetaTextureReinUsesLisp2-15/+26
2019-02-26shader/decode: Split memory and texture instructions decodingReinUsesLisp4-493/+527
2019-02-25shader/track: Resolve variable shadowing warningsLioncash1-5/+5
2019-02-14shader_decompiler: Improve Accuracy of Attribute Interpolation.Fernando Sahmkow2-3/+14
2019-02-12gl_shader_decompiler: Re-implement TLDS lodReinUsesLisp1-1/+1
2019-02-11Corrected F2I None mode to RoundEven.Fernando Sahmkow1-3/+3
2019-02-11Fix incorrect value for CC bit in IADDFernando Sahmkow1-2/+2
2019-02-07shader_ir: Remove F4 prefix to texture operationsReinUsesLisp2-14/+13
2019-02-07shader_ir: Clean texture management codeReinUsesLisp2-101/+63
2019-02-07gl_shader_disk_cache: Save GLSL and entries into the precompiled fileReinUsesLisp1-0/+9
2019-02-03Fix TXQ not using the component mask.Fernando Sahmkow1-6/+9
2019-02-03shader_ir/memory: Add ST_L 64 and 128 bits storesReinUsesLisp1-3/+11
2019-02-03shader/track: Search inside of conditional nodesReinUsesLisp1-0/+11
2019-02-03shader_ir: Rename BasicBlock to NodeBlockReinUsesLisp29-119/+117
2019-02-03shader_ir: Pass decoded nodes as a whole instead of per basic blocksReinUsesLisp27-57/+62
2019-02-03shader_ir/memory: Add LD_L 128 bits loadsReinUsesLisp1-7/+19
2019-02-03shader_bytecode: Rename BytesN enums to BitsNReinUsesLisp1-4/+4
2019-02-03shader_ir/memory: Add LD_L 64 bits loadsReinUsesLisp1-6/+17
2019-01-30shader_ir: Unify constant buffer offset valuesReinUsesLisp14-22/+24
2019-01-30shader_decode: Implement LDG and basic cbuf trackingReinUsesLisp3-4/+159
2019-01-28shader/shader_ir: Amend three comment typosLioncash1-3/+3
2019-01-28shader/shader_ir: Amend constructor initializer ordering for AbufNodeLioncash1-2/+2
2019-01-28shader/decode: Avoid a pessimizing std::move within DecodeRange()Lioncash1-1/+1
2019-01-16shader_ir: Fixup clang buildReinUsesLisp1-4/+6
2019-01-15shader_decode: Fixup XMADReinUsesLisp1-1/+1
2019-01-15shader_ir: Pass to decoder functions basic block's codeReinUsesLisp27-82/+83
2019-01-15shader_decode: Improve zero flag implementationReinUsesLisp15-75/+79
2019-01-15shader_ir: Remove composite primitives and use temporals insteadReinUsesLisp3-175/+187
2019-01-15shader_decode: Use proper primitive namesReinUsesLisp3-15/+13
2019-01-15shader_decode: Use BitfieldExtract instead of shift + andReinUsesLisp7-48/+30
2019-01-15shader_ir: Remove Ipa primitiveReinUsesLisp2-5/+2
2019-01-15video_core: Rename glsl_decompiler to gl_shader_decompilerReinUsesLisp2-1631/+0
2019-01-15shader_ir: Remove RZ and use Register::ZeroIndex insteadReinUsesLisp3-12/+16
2019-01-15shader_decode: Implement TEXS.F16ReinUsesLisp3-15/+57
2019-01-15shader_decode: Fixup R2PReinUsesLisp1-2/+3
2019-01-15glsl_decompiler: Fixup TLDSReinUsesLisp1-1/+0
2019-01-15glsl_decompiler: Fixup geometry shadersReinUsesLisp1-10/+16
2019-01-15shader_decode: Fixup WriteLogicOperation zero comparisonReinUsesLisp1-1/+1
2019-01-15glsl_decompiler: Fixup permissive member function declarationsReinUsesLisp1-133/+133
2019-01-15shader_decode: Fixup PSETReinUsesLisp1-2/+3
2019-01-15shader_decode: Fixup clang-formatReinUsesLisp2-2/+4
2019-01-15video_core: Implement IR based geometry shadersReinUsesLisp3-2/+96
2019-01-15shader_decode: Implement VMAD and VSETPReinUsesLisp3-0/+125
2019-01-15shader_decode: Implement HSET2ReinUsesLisp3-1/+50
2019-01-15shader_decode: Rework HSETP2ReinUsesLisp4-47/+57
2019-01-15shader_decode: Implement R2PReinUsesLisp1-1/+28
2019-01-15shader_decode: Implement CSETPReinUsesLisp1-14/+37
2019-01-15shader_decode: Implement PSETReinUsesLisp1-1/+16
2019-01-15shader_decode: Implement HFMA2ReinUsesLisp3-5/+59
2019-01-15glsl_decompiler: Remove HNegate inliningReinUsesLisp1-10/+0
2019-01-15shader_decode: Implement POPCReinUsesLisp4-1/+22
2019-01-15shader_decode: Implement TLDS (untested)ReinUsesLisp3-10/+92
2019-01-15shader_decode: Update TLD4 reflecting #1862 changesReinUsesLisp2-52/+52
2019-01-15shader_ir: Fixup TEX and TEXS and partially fix TLD4 decompilingReinUsesLisp3-60/+72
2019-01-15shader_decode: Fixup FSETReinUsesLisp1-2/+2
2019-01-15shader_decode: Implement IADD32IReinUsesLisp1-0/+11
2019-01-15video_core: Return safe values after an assert hitsReinUsesLisp8-8/+19
2019-01-15shader_decode: Implement FFMAReinUsesLisp1-1/+36
2019-01-15video_core: Address feedbackReinUsesLisp4-13/+16
2019-01-15shader_ir: Fixup file inclusions and clang-formatReinUsesLisp3-2/+2
2019-01-15shader_ir: Move comment node stringMat M1-2/+2
2019-01-15shader_ir: Address feedback to avoid UB in bit castingReinUsesLisp1-2/+4
2019-01-15shader_decode: Fixup clang-formatReinUsesLisp2-3/+2
2019-01-15shader_decode: Implement LEAReinUsesLisp1-0/+55
2019-01-15shader_decode: Implement IADD3ReinUsesLisp1-0/+61
2019-01-15shader_decode: Implement LOP3ReinUsesLisp2-0/+62
2019-01-15shader_decode: Implement ST_LReinUsesLisp1-0/+17
2019-01-15shader_decode: Implement LD_LReinUsesLisp1-0/+18
2019-01-15shader_decode: Implement HSETP2ReinUsesLisp1-1/+37
2019-01-15shader_decode: Implement HADD2 and HMUL2ReinUsesLisp1-1/+48
2019-01-15shader_decode: Implement HADD2_IMM and HMUL2_IMMReinUsesLisp1-1/+28
2019-01-15shader_decode: Implement MOV_SYSReinUsesLisp1-0/+27
2019-01-15shader_decode: Implement IMNMXReinUsesLisp1-0/+16
2019-01-15shader_decode: Implement F2F_CReinUsesLisp1-2/+10
2019-01-15shader_decode: Implement I2IReinUsesLisp1-0/+26
2019-01-15shader_decode: Implement BRA internal flagReinUsesLisp1-4/+8
2019-01-15shader_decode: Implement ISCADDReinUsesLisp1-0/+15
2019-01-15shader_decode: Implement XMADReinUsesLisp1-1/+85
2019-01-15shader_decode: Implement PBK and BRKReinUsesLisp1-1/+22
2019-01-15shader_decode: Implement LOPReinUsesLisp1-0/+15
2019-01-15shader_decode: Implement SELReinUsesLisp1-0/+8
2019-01-15shader_decode: Implement IADDReinUsesLisp1-1/+28
2019-01-15shader_decode: Implement ISETPReinUsesLisp1-1/+30
2019-01-15shader_decode: Implement BFIReinUsesLisp1-1/+22
2019-01-15shader_decode: Implement ISETReinUsesLisp1-1/+27
2019-01-15shader_decode: Implement LD_CReinUsesLisp1-0/+31
2019-01-15shader_decode: Implement SHLReinUsesLisp1-0/+8
2019-01-15shader_decode: Implement SHRReinUsesLisp1-1/+26
2019-01-15shader_decode: Implement LOP32IReinUsesLisp2-1/+72
2019-01-15shader_decode: Implement BFEReinUsesLisp1-1/+25
2019-01-15shader_decode: Implement FSETReinUsesLisp1-1/+36
2019-01-15shader_decode: Implement F2IReinUsesLisp1-0/+37
2019-01-15shader_decode: Implement I2FReinUsesLisp1-0/+23
2019-01-15shader_decode: Implement F2FReinUsesLisp1-1/+37
2019-01-15shader_decode: Stub DEPBARReinUsesLisp1-0/+4
2019-01-15shader_decode: Implement SSY and SYNCReinUsesLisp1-0/+19
2019-01-15shader_decode: Implement PSETPReinUsesLisp1-1/+21
2019-01-15shader_decode: Implement TMMLReinUsesLisp1-3/+45
2019-01-15shader_decode: Implement TEX and TXQReinUsesLisp2-0/+223
2019-01-15shader_decode: Implement TEXS (F32)ReinUsesLisp2-0/+217
2019-01-15shader_decode: Implement FSETPReinUsesLisp1-1/+33
2019-01-15shader_decode: Partially implement BRAReinUsesLisp1-0/+12
2019-01-15shader_decode: Implement IPAReinUsesLisp1-0/+12
2019-01-15shader_decode: Implement EXITReinUsesLisp1-1/+32
2019-01-15shader_decode: Implement ST_AReinUsesLisp1-0/+30
2019-01-15shader_decode: Implement LD_AReinUsesLisp1-1/+39
2019-01-15shader_decode: Implement FADD32IReinUsesLisp1-0/+12
2019-01-15shader_decode: Implement FMUL32_IMMReinUsesLisp1-0/+10
2019-01-15shader_decode: Implement MOV32_IMMReinUsesLisp1-1/+9
2019-01-15shader_decode: Stub RRO_C, RRO_R and RRO_IMMReinUsesLisp1-0/+9
2019-01-15shader_decode: Implement FMNMX_C, FMNMX_R and FMNMX_IMMReinUsesLisp1-0/+18
2019-01-15shader_decode: Implement MUFUReinUsesLisp1-0/+29
2019-01-15shader_decode: Implement FADD_C, FADD_R and FADD_IMMReinUsesLisp1-0/+15
2019-01-15shader_decode: Implement FMUL_C, FMUL_R and FMUL_IMMReinUsesLisp1-0/+42
2019-01-15shader_decode: Implement MOV_C and MOV_RReinUsesLisp1-1/+23
2019-01-15glsl_decompiler: ImplementationReinUsesLisp2-0/+1481
2019-01-15shader_ir: Add condition code helperReinUsesLisp2-0/+13
2019-01-15shader_ir: Add predicate combiner helperReinUsesLisp2-0/+15
2019-01-15shader_ir: Add comparison helpersReinUsesLisp2-0/+106
2019-01-15shader_ir: Add half float helpersReinUsesLisp2-0/+44
2019-01-15shader_ir: Add integer helpersReinUsesLisp2-0/+40
2019-01-15shader_ir: Add float helpersReinUsesLisp2-0/+24
2019-01-15shader_ir: Add settersReinUsesLisp2-0/+24
2019-01-15shader_ir: Add local memory gettersReinUsesLisp2-0/+7
2019-01-15shader_ir: Add internal flag gettersReinUsesLisp2-0/+10
2019-01-15shader_ir: Add attribute gettersReinUsesLisp2-0/+26
2019-01-15shader_ir: Add constant buffer gettersReinUsesLisp2-0/+25
2019-01-15shader_ir: Add register getterReinUsesLisp2-0/+9
2019-01-15shader_ir: Add immediate node constructorsReinUsesLisp2-1/+34
2019-01-15shader_ir: Initial implementationReinUsesLisp28-0/+1542
2018-01-13Remove references to PICA and rasterizers in video_coreJames Rowe9-2453/+0
2017-09-17Improved performance of FromAttributeBufferHuw Pascoe1-1/+2
2017-08-19pica/shader/jit: implement SETEMIT and EMITwwylele2-2/+49
2017-08-19correct constnesswwylele2-2/+4
2017-08-19pica/shader/interpreter: implement SETEMIT and EMITwwylele1-0/+16
2017-08-19pica/shader: extend UnitState for GSwwylele2-0/+84
2017-07-27pica/shader_interpreter: fix off-by-one in LOOPwwylele1-1/+1
2017-06-17Stop using reserved operator names (and/or/xor) with XbyakYuri Kunde Schlesner1-13/+13
2017-05-11Pica: Set program code / swizzle data limit to 4096Jannik Vogel5-13/+16
2017-02-27Doxygen: Amend minor issues (#2593)Mat M2-2/+4
2017-02-12video_core/shader: Document sanitized MUL operationYuri Kunde Schlesner1-0/+8
2017-02-11video_core: Fix benign out-of-bounds indexing of array (#2553)Yuri Kunde Schlesner1-2/+1
2017-02-09VideoCore: Split regs.h inclusionsYuri Kunde Schlesner2-2/+4
2017-02-04VideoCore: Move Regs to its own fileYuri Kunde Schlesner2-2/+2
2017-02-04VideoCore: Split shader regs from Regs structYuri Kunde Schlesner4-6/+6
2017-02-04VideoCore: Split rasterizer regs from Regs structYuri Kunde Schlesner2-13/+13
2017-02-03ShaderJIT: add 16 dummy bytes at the bottom of the stackwwylele1-2/+5
2017-01-31Common/x64: remove legacy emitter and abi (#2504)Weiyi Wang1-1/+0
2017-01-31shader_jit_x64_compiler: esi and edi should be persistent (#2500)Merry1-0/+2
2017-01-30VideoCore: Extract swrast-specific data from OutputVertexYuri Kunde Schlesner2-37/+14
2017-01-30VideoCore/Shader: Clean up OutputVertex::FromAttributeBufferYuri Kunde Schlesner1-9/+14
2017-01-30VideoCore: Split shader output writing from semantic loadingYuri Kunde Schlesner2-18/+16
2017-01-30VideoCore: Consistently use shader configuration to load attributesYuri Kunde Schlesner4-12/+12
2017-01-30VideoCore: Rename some types to more accurate namesYuri Kunde Schlesner4-6/+6
2017-01-26VideoCore/Shader: Move entry_point to SetupBatchYuri Kunde Schlesner5-22/+23
2017-01-26VideoCore/Shader: Move per-batch ShaderEngine state into ShaderSetupYuri Kunde Schlesner5-40/+36
2017-01-26Shader: Remove OutputRegisters structYuri Kunde Schlesner3-19/+13
2017-01-26Shader: Initialize conditional_code in interpreterYuri Kunde Schlesner2-3/+3
2017-01-26Shader: Don't read ShaderSetup from global stateYuri Kunde Schlesner1-3/+3
2017-01-26shader_jit_x64: Don't read program from global stateYuri Kunde Schlesner3-22/+22
2017-01-26VideoCore/Shader: Move ProduceDebugInfo to InterpreterEngineYuri Kunde Schlesner4-19/+10
2017-01-26VideoCore/Shader: Split interpreter and JIT into separate ShaderEnginesYuri Kunde Schlesner6-96/+150
2017-01-26VideoCore/Shader: Rename shader_jit_x64{ => _compiler}.{cpp,h}Yuri Kunde Schlesner3-2/+2
2017-01-26VideoCore/Shader: Split shader uniform state and shader engineYuri Kunde Schlesner3-16/+46
2017-01-26VideoCore/Shader: Add constness to methodsYuri Kunde Schlesner2-4/+4
2017-01-26VideoCore/Shader: Use only entry_point as ShaderSetup paramYuri Kunde Schlesner2-9/+11
2017-01-26VideoCore/Shader: Use self instead of g_state.vs in ShaderSetupYuri Kunde Schlesner2-11/+8
2017-01-26VideoCore/Shader: Extract input vertex loading code into functionYuri Kunde Schlesner2-20/+22
2017-01-23video_core: fix shader.cpp signed / unsigned warningKloen1-2/+2
2017-01-04Fix some warnings (#2399)Jonathan Hao1-2/+0
2016-12-16VideoCore/Shader: Extract DebugData out from UnitStateYuri Kunde Schlesner7-101/+97
2016-12-16Remove unnecessary castYuri Kunde Schlesner1-3/+1
2016-12-16VideoCore/Shader: Extract evaluate_condition lambda to function scopeYuri Kunde Schlesner1-26/+24
2016-12-16VideoCore/Shader: Extract call lambda up a scope and remove unused paramYuri Kunde Schlesner1-21/+17
2016-12-16VideoCore/Shader: Remove dynamic control flow in (Get)UniformOffsetYuri Kunde Schlesner2-18/+11
2016-12-16VideoCore/Shader: Move DebugData to a separate fileYuri Kunde Schlesner3-172/+188
2016-12-15shader_jit_x64: Use LOOPCOUNT_REG as a 64-bit reg when indexingYuri Kunde Schlesner1-1/+1
2016-12-15VideoCore: Eliminate an unnecessary copy in the drawcall loopYuri Kunde Schlesner2-2/+2
2016-12-15shader_jit_x64: Use Reg32 for LOOP* registers, eliminating castsYuri Kunde Schlesner1-16/+16
2016-12-15VideoCore: Convert x64 shader JIT to use Xbyak for assemblyYuri Kunde Schlesner2-223/+225
2016-12-04shader_jit: Fix non-SSE4.1 path where FLR would not truncateJannik Vogel1-1/+1
2016-12-02shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shiftedJannik Vogel1-6/+9
2016-09-30VideoCore: Shader interpreter cleanupsYuri Kunde Schlesner1-32/+42
2016-09-30VideoCore: Fix out-of-bounds read in ShaderSetup::ProduceDebugInfoYuri Kunde Schlesner1-3/+1
2016-09-21Remove special rules for Windows.h and library includesYuri Kunde Schlesner1-1/+1
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner3-3/+3
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot5-22/+3
2016-09-19Manually tweak source formatting and then re-run clang-formatYuri Kunde Schlesner4-9/+6
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot6-311/+335
2016-09-16VideoCore: Fix dangling lambda context in shader interpreterYuri Kunde Schlesner1-1/+1
2016-05-16Retrieve shader result from new OutputRegisters-typeJannik Vogel3-56/+68
2016-05-13Use new shader-jit signature for interpreterJannik Vogel3-8/+8
2016-05-13Refactor access to state in shader-jitJannik Vogel4-24/+42
2016-05-12Move program_counter and call_stack from UnitState to interpreterJannik Vogel3-45/+42
2016-05-12Move default_attributes into Pica stateJannik Vogel1-2/+0
2016-05-11Turn ShaderSetup into structJannik Vogel2-52/+53
2016-05-11Pica: Add tc0.w to OutputVertexJannik Vogel1-1/+2
2016-05-03Pica: Replace logic in shader.cpp with loopJannik Vogel1-34/+4
2016-04-30VideoCore: Run include-what-you-use and fix most includes.Emmanuel Gil Peyrot6-14/+43
2016-04-29Common: Remove section measurement from profiler (#1731)Yuri Kunde Schlesner1-3/+0
2016-04-28Refactor: Extract VertexLoader from command_processor.cpp.Henrik Rydgard1-1/+1
2016-04-24shader: Shader size is long uint, not uint.Sam Spilsbury1-1/+1
2016-04-24shader: Handle non-CALL opcodes with a breakSam Spilsbury1-0/+2
2016-04-24shader: Format string must be provided inline and not as a variableSam Spilsbury1-1/+1
2016-04-14shader_jit_x64: Rename RuntimeAssert to Compile_Assert.bunnei2-5/+5
2016-04-14shader_jit_x64.cpp: Rename JitCompiler to JitShader.bunnei3-92/+92
2016-04-14shader_jit_x64: Free memory that's no longer needed after compilation.bunnei1-0/+6
2016-04-14shader_jit_x64: Use a sorted vector instead of a set for keeping track of return addresses.bunnei2-5/+8
2016-04-14shader_jit_x64: Use CALL/RET instead of JMP for subroutines.bunnei1-17/+7
2016-04-14shader_jit_x64: Separate initialization and code generation for readability.bunnei1-9/+8
2016-04-14shader_jit_x64: Get rid of unnecessary last_program_counter variable.bunnei2-6/+2
2016-04-14shader_jit_x64: Execute certain asserts at runtime.bunnei2-5/+19
2016-04-14shader: Remove unused 'state' argument from 'Setup' function.bunnei2-3/+2
2016-04-14shader_jit_x64: Specify shader main offset at runtime.bunnei3-10/+6
2016-04-14shader_jit_x64: Allocate each program independently and persist for emu session.bunnei3-38/+28
2016-04-14shader_jit_x64: Rewrite flow control to support arbitrary CALL and JMP instructions.bunnei2-35/+119
2016-04-14shader_jit_x64: Fix strict memory aliasing issues.bunnei1-1/+3
2016-04-05Common: Remove Common::make_unique, use std::make_uniqueMerryMage1-1/+0
2016-03-17video_core: Don't cast away constLioncash1-1/+1
2016-03-17shader_interpreter: use std::inner_product for the dot productLioncash1-5/+3
2016-03-15PICA: Fix MAD/MADI encodingJannik Vogel2-29/+33
2016-03-14Respect vs output mapJannik Vogel1-4/+14
2016-03-12shader_jit_x64: Clear cache after code space fills up.bunnei3-2/+19
2016-03-12shader_jit_x64: Make assert outputs more useful & cleanup formatting.bunnei1-4/+7
2016-03-12shader: Update log message to use proper log class.bunnei1-1/+1
2016-03-09Common: Get rid of alignment macrosLioncash1-4/+4
2016-03-03Add immediate mode vertex submissionDwayne Slater4-2/+22
2016-02-05pica: Implement decoding of basic fragment lighting components.bunnei2-5/+9
2016-01-25Shader: Implement "invert condition" feature of IFU instructionYuri Kunde Schlesner2-2/+5
2016-01-24Shader JIT: Fix off-by-one error when compiling JMPsYuri Kunde Schlesner2-6/+6
2015-09-11video_core: Reorganize headersLioncash3-6/+4
2015-09-11video_core: Remove unnecessary includes from headersLioncash1-2/+0
2015-09-10video_core: Remove unused variablesLioncash2-2/+0
2015-09-07Shader JIT: Use SCALE constant from emitteraroulin1-4/+4
2015-09-07Shader: Fix size_t to int casts of register offsetsaroulin2-15/+21
2015-09-02video_core: Fix format specifiers warningsaroulin1-1/+2
2015-09-01x64: Proper stack alignment in shader JIT function callsaroulin2-28/+18
2015-08-31Shader JIT: Fix SGE/SGEI NaN behavioraroulin1-3/+3
2015-08-27Shader JIT: Fix float to integer rounding in MOVAaroulin1-2/+2
2015-08-27Shader JIT: ifdef out reference to ifdef'd out shader_maparchshift1-0/+2
2015-08-25Integrate the MicroProfile profiling libraryYuri Kunde Schlesner1-0/+3
2015-08-24Shader JIT: Tiny micro-optimization in DPHYuri Kunde Schlesner1-4/+4
2015-08-24Shaders: Fix multiplications between 0.0 and infYuri Kunde Schlesner2-39/+45
2015-08-24Shaders: Explicitly conform to PICA semantics in MAX/MINYuri Kunde Schlesner2-2/+10
2015-08-24Shader JIT: Add name to second scratch register (XMM4)Yuri Kunde Schlesner1-3/+5
2015-08-24shader_jit: Replace two MDisp usages with MatRLioncash1-2/+2
2015-08-24Shader JIT: Fix CMP NaN behavior to match hardwareYuri Kunde Schlesner1-8/+23
2015-08-23Shader: Use std::sqrt for float instead of sqrtaroulin1-1/+1
2015-08-23Shader: RCP and RSQ computes only the 1st componentaroulin2-10/+10
2015-08-22Shader: implement DPH/DPHI in JITaroulin2-2/+36
2015-08-22Shader: implement DPH/DPHI in interpreteraroulin1-1/+8
2015-08-19Shader: implement SGE, SGEI and SLT in JITaroulin2-15/+36
2015-08-19Shader: implement SGE, SGEI in interpreteraroulin1-0/+14
2015-08-19Shader: Save caller-saved registers in JIT before a CALLaroulin2-0/+33
2015-08-17Shader: implement EX2 and LG2 in JITaroulin2-2/+22
2015-08-16Shader: implement EX2 and LG2 in interpreteraroulin1-0/+36
2015-08-16Build fix for Debug configurations.Tony Wasserka1-1/+1
2015-08-16Introduce a shader tracer to allow inspection of input/output values for each processed instruction.Tony Wasserka5-37/+322
2015-08-16citra-qt: Improve shader debugger.Tony Wasserka1-6/+0
2015-08-16Shader: Use a POD struct for registers.bunnei5-40/+43
2015-08-16Rename ARCHITECTURE_X64 definition to ARCHITECTURE_x86_64.bunnei1-6/+5
2015-08-16Common: Cleanup CPU capability detection code.bunnei1-5/+5
2015-08-16Common: Move cpu_detect to x64 directory.bunnei1-2/+1
2015-08-16x64: Refactor to remove fake interfaces and general cleanups.bunnei5-144/+22
2015-08-16JIT: Support negative address offsets.bunnei1-26/+25
2015-08-16Shader: Initial implementation of x86_x64 JIT compiler for Pica vertex shaders.bunnei6-2/+924
2015-08-15Common: Added MurmurHash3 hash function for general-purpose use.bunnei1-1/+1
2015-08-15Shader: Define a common interface for running vertex shader programs.bunnei4-184/+278
2015-08-15Shader: Move shader code to its own subdirectory, "shader".bunnei2-0/+701