summaryrefslogtreecommitdiffstats
path: root/src/shader_recompiler/backend (unfollow)
Commit message (Expand)AuthorFilesLines
2022-08-25video_code: support rectangle textureFengChen5-0/+6
2022-07-29Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan.Kelebek11-2/+3
2022-04-23general: Convert source file copyright comments over to SPDXMorph73-219/+146
2022-04-01shader_compiler: support const buffer indirect addressing in GLSLLiam3-8/+37
2022-04-01shader_recompiler: support const buffer indirect addressing on OpenGL SPIR-VLiam1-10/+11
2022-03-22Include <bit> header when std::count{r,l}_zero is usedBilly Laws3-0/+4
2022-03-20shader_recompiler: Reduce unused includesameerj29-45/+0
2022-03-17Address review commentsLiam2-19/+7
2022-03-17shader_recompiler: Use functions for indirect const buffer accessesLiam3-39/+91
2022-03-17Address review commentsLiam1-16/+15
2022-03-15shader: add support for const buffer indirect addressingLiam1-10/+41
2022-03-12emit_spirv, vk_compute_pass: Resolve VS2022 compiler errorsameerj1-1/+1
2022-01-30emit_glsl_atomic: Implement 32x2 fallback atomic opsameerj1-9/+55
2022-01-30shaders: Add U64->U32x2 Atomic fallback functionsameerj6-1/+413
2022-01-29spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomicsameerj1-2/+2
2022-01-28emit_spirv: Add Xfb execution mode when transform feedback is usedameerj1-3/+9
2022-01-17shader_recompiler: fix potential OOB accessv19932-6/+8
2022-01-10logging/log.h: move enum class formatter to a separate file ...liushuyu1-4/+4
2022-01-08logging: adapt to changes in fmt 8.1liushuyu1-4/+4
2022-01-05glsl: Remove unreachable returnNarr the Reg1-1/+0
2021-12-30glsl: Add boolean reference workaroundameerj2-2/+6
2021-12-30glsl_context_get_set: Add alternative cbuf type for broken driversameerj2-17/+25
2021-12-30emit_glsl_integer: Use negation work aroundameerj1-2/+2
2021-12-30shader: Add integer attribute get optimization passameerj6-0/+61
2021-12-28Empty spacesMatías Locatti1-1/+1
2021-12-28Changes to avoid warnings in SSE4.2 optimized SPIR-VMatías Locatti1-0/+9
2021-12-25emit_glasm_context_get_set: Fix GetAttribute return value type.ameerj1-4/+4
2021-12-25emit_glsl_floating_point: Fix FPNeg on newer Nvidia driversameerj1-2/+2
2021-12-18Remove spirv handle legacy related codevonchenplus3-189/+0
2021-12-18Remove glsl handle legacy related codevonchenplus3-103/+1
2021-12-06emit_spirv: Reduce emit_spirv.h include overheadameerj20-3/+20
2021-12-06glasm: Move implemented instructions from not_implemented.cppameerj7-169/+220
2021-12-06shader_recompiler: Adjust emit_context includesameerj37-37/+37
2021-12-05shader_recompiler: Rename backend emit_context filesameerj6-0/+0
2021-11-16vulkan: Fix rescaling push constant usageameerj4-34/+36
2021-11-16shader, video_core: Fix GCC build errorsameerj1-4/+0
2021-11-16emit_spirv: Fix RescalingLayout alignmentameerj1-0/+1
2021-11-16emit_spirv: Fix RescalingLayout alignmentameerj1-2/+2
2021-11-16shader: Properly scale image reads and add GL SPIR-V supportReinUsesLisp14-47/+163
2021-11-16glsl/glasm: Pass and use scaling parameters in shadersReinUsesLisp6-7/+11
2021-11-16gl_graphics_pipeline: Add downscale factor to shader uniformsameerj3-4/+5
2021-11-16spirv: Implement rescaling patchingReinUsesLisp5-5/+72
2021-11-16shader: Add IsTextureScaled opcodeReinUsesLisp6-0/+24
2021-11-16shader: Add integer division opcodesReinUsesLisp6-0/+30
2021-11-16shader: Add resolution down factor opcodeReinUsesLisp6-0/+18
2021-11-04Simply legacy attribute implementFeng Chen3-152/+125
2021-11-02Shader Cahe: Fix Phi Nodes on GLASM.Fernando Sahmkow1-1/+1
2021-11-01ShaderCache: Fix Phi Nodes Type on OGL.Fernando Sahmkow1-2/+2
2021-10-31Support gl_FogFragCoord attributevonchenplus3-48/+58
2021-10-26Support gl_BackSecondaryColor attributevonchenplus3-0/+33
2021-10-26Support gl_FrontSecondaryColor attributevonchenplus3-0/+33
2021-10-26Support gl_BackColor attributevonchenplus3-0/+33
2021-10-17emit_spirv_image: Fix depth image implicit lod sample in computeameerj1-5/+16
2021-09-29style: Remove extra space preceding the :: operatorMorph1-2/+2
2021-09-15Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan.Fernando Sahmkow1-1/+7
2021-09-08Detail adjustmentFeng Chen1-13/+14
2021-09-08Detail adjustmentFeng Chen2-28/+35
2021-09-07Re-implement get unused locationFeng Chen1-30/+30
2021-09-07Move attribute related definitions to spirv anonymous namespaceFeng Chen2-5/+26
2021-09-06Dynamic get unused locationFeng Chen1-27/+49
2021-09-06Implement intput and output fixed fnc texturesFeng Chen3-19/+23
2021-09-03Rename parametersFeng Chen3-9/+9
2021-09-03Fix create GraphicsPipelines crashFeng Chen1-5/+5
2021-09-02Add input/output locationFeng Chen1-5/+13
2021-08-31emit_glsl_warp: Fix shuffle ops for 64-thread warp sizesameerj1-24/+36
2021-08-31emit_glsl_warp: Fix ballot related ops for 64-thread warp sizesameerj1-24/+38
2021-08-31emit_spirv_warp: Fix shuffle ops for 64-thread warp sizesameerj1-1/+29
2021-08-31emit_spirv_warp: Fix ballot related ops for 64-thread warp sizesameerj1-10/+11
2021-08-31Add colorfront and txtcoord supportFeng Chen3-0/+44
2021-08-27emit_spirv_context_get_set: Fix Get FrontFace return valueameerj1-2/+3
2021-08-19SPIR-V: Merge two ifs in EmitGetAttributeValeri1-6/+2
2021-07-26emit_glasm: Fix LINESS_ADJACENCY typo in InputPrimitive()Lioncash1-1/+1
2021-07-26emit_spirv_instructions: Add missing header guardLioncash1-0/+2
2021-07-23shader: Fix disabled attribute default valuesameerj1-1/+1
2021-07-23glsl: Simplify FCMP emissionameerj1-6/+4
2021-07-23glsl: Update TessellationControl gl_inameerj1-0/+28
2021-07-23shader: Avoid usage of C++20 ranges to build in clangReinUsesLisp2-4/+12
2021-07-23glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZEameerj1-2/+9
2021-07-23shader_recompiler, video_core: Resolve clang errorslat9nq4-9/+13
2021-07-23shader: Ignore global memory ops on devices lacking int64 supportameerj4-16/+62
2021-07-23emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 NvidiaReinUsesLisp1-5/+8
2021-07-23shader: GCC fmt 8.0.0 fixeslat9nq5-11/+14
2021-07-23shader: Fix disabled and unwritten attributes and varyingsReinUsesLisp2-3/+11
2021-07-23glsl: Fix shared and local memory declarationsameerj1-3/+3
2021-07-23opengl: Implement LOP.CCameerj2-6/+38
2021-07-23spirv: Fix code emission when descriptor aliasing is unsupportedReinUsesLisp1-1/+2
2021-07-23glsl: Declare local memory in mainameerj1-3/+3
2021-07-23glsl: Add passthrough geometry shader supportameerj3-7/+27
2021-07-23glasm: Add passthrough geometry shader supportReinUsesLisp2-7/+26
2021-07-23shader: Rework varyings and implement passthrough geometry shadersReinUsesLisp11-97/+116
2021-07-23glsl: Better IAdd Overflow CC fixameerj2-11/+13
2021-07-23shader: Remove IAbs64ReinUsesLisp6-15/+0
2021-07-23glsl: Fix IADD CCameerj2-5/+7
2021-07-23shader: Move loop safety tests to code emissionReinUsesLisp11-32/+48
2021-07-23glsl: Remove frag color initializationameerj1-9/+0
2021-07-23glasm: Implement SetAttribute ViewportMaskameerj2-1/+10
2021-07-23emit_glsl_special: Skip initialization of frag_color0ameerj1-1/+1
2021-07-23glsl: Add missing ; in EmitSetSampleMaskMorph1-1/+1
2021-07-23glsl: Fix output varying initialization when transform feedback is usedameerj1-3/+37
2021-07-23spirv: Properly handle devices without int8 and int16ReinUsesLisp2-39/+67
2021-07-23spirv: Handle small storage buffer loads on devices with no supportReinUsesLisp2-6/+6
2021-07-23glsl: Fix cbuf component indexing bug falbackameerj1-7/+6
2021-07-23shader: Properly manage attributes not written from previous stagesReinUsesLisp6-30/+26
2021-07-23glsl: Only declare fragment outputs on fragment shadersReinUsesLisp1-4/+6
2021-07-23shader: Split profile and runtime info headersReinUsesLisp8-4/+7
2021-07-23glsl: Obey need_declared_frag_colors to declare and initialize all frag_colorameerj2-1/+10
2021-07-23glsl: Address rest of feedbackameerj4-19/+51
2021-07-23glsl: Move gl_Position/generic attribute initialization to EmitProlgueameerj2-14/+12
2021-07-23glsl: Conditionally use fine/coarse derivatives based on device supportameerj2-4/+27
2021-07-23glsl: Cleanup/Address feedbackameerj8-28/+20
2021-07-23glsl: Add Shader_GLSL loggingameerj3-28/+32
2021-07-23glsl: Add LoopSafety instructionsameerj2-0/+10
2021-07-23glsl: Conditionally add EXT_texture_shadow_lodameerj1-3/+5
2021-07-23glsl: Add stubs for sparse queries and variable aoffi when not supportedameerj3-13/+37
2021-07-23glsl: Implement legacy varyingsameerj4-7/+71
2021-07-23glsl: Minor cleanupameerj2-19/+15
2021-07-23glsl: Fix Cbuf getters for F32 typeameerj1-12/+15
2021-07-23glsl: Add immediate index oob checking for Cbuf gettersameerj1-0/+16
2021-07-23glsl: Refactor GetCbuf functions to reduce code duplicationameerj1-104/+66
2021-07-23glsl: Address more feedback. Implement indexed texture readsameerj5-111/+109
2021-07-23glsl: Remove Signed Integer variablesameerj8-43/+13
2021-07-23glsl: Address Rodrigo's feedbackameerj13-75/+87
2021-07-23glsl: Reorganize backend code, remove unneeded [[maybe_unused]]ameerj11-314/+251
2021-07-23glsl: Implement SampleId and SetSampleMaskameerj3-30/+35
2021-07-23glsl: Add gl_PerVertex in for GSameerj1-1/+2
2021-07-23glsl: Use existing tracking for enabling EXT_shader_image_load_formattedameerj1-15/+1
2021-07-23glsl: Enable early fragment testsameerj2-4/+7
2021-07-23glsl: Implement more attribute getters and settersameerj2-12/+60
2021-07-23glsl: Implement fswzaddameerj3-5/+43
2021-07-23glsl: Implement indexed attribute loadsameerj5-29/+64
2021-07-23glsl: Conditionally add GL_ARB_sparse_texture2ameerj1-2/+3
2021-07-23glsl: Conditionally use GL_EXT_shader_image_load_formattedameerj1-2/+18
2021-07-23glsl: Remove output generic indexing for geometry stageameerj1-5/+3
2021-07-23glsl: Allow dynamic tracking of variable allocationameerj3-21/+35
2021-07-23glsl: Implement barriersameerj3-13/+21
2021-07-23glsl: Implement image atomics and set layerameerj4-152/+202
2021-07-23glsl: Fix image gather logicameerj1-0/+4
2021-07-23glsl: Add cbuf access workaround for devices with component indexing bugameerj1-51/+110
2021-07-23glsl: Use textureGrad fallback when EXT_texture_shadow_lod is unsupportedameerj2-8/+40
2021-07-23emit_glsl_image: Use immediate offsets when possibleameerj1-12/+33
2021-07-23glsl: Fix <32-bit SSBO writesameerj4-50/+43
2021-07-23glsl: Cleanup and address feedbackameerj10-86/+69
2021-07-23glsl: Refactor Global memory functionsameerj2-71/+73
2021-07-23glsl: Increase NUM_VARS that can be allocatedameerj1-1/+1
2021-07-23glsl: Implement Load/WriteGlobalameerj9-98/+185
2021-07-23glsl: Implement Imagesameerj2-9/+74
2021-07-23glsl: skip gl_ViewportIndex write if device does not support itameerj3-8/+16
2021-07-23glsl: Implement transform feedbackameerj3-13/+63
2021-07-23glsl: Yet another gl_ViewportIndex fix attemptameerj1-3/+19
2021-07-23glsl: Add gl_ViewportIndex out attributeameerj1-1/+3
2021-07-23emit_glsl_context_get_set: Remove unused functionlat9nq1-4/+0
2021-07-23glsl: Fix precise variable declarationameerj3-24/+25
2021-07-23glsl: Implement tessellation shadersameerj5-27/+146
2021-07-23glsl: Implement ImageGradient and other texture function variantsameerj2-32/+73
2021-07-23glsl: Fix atomic SSBO offsetsameerj4-67/+74
2021-07-23glsl: Implement geometry shadersameerj4-9/+62
2021-07-23glsl: Use NotImplemented macro with function name outputameerj10-104/+103
2021-07-23glsl: Implement gl_ViewportIndexameerj3-5/+14
2021-07-23glsl: SHFL fix and prefer shift operations over divide in glsl shaderameerj5-63/+64
2021-07-23glsl: Implement precise fp variable allocationameerj4-8/+67
2021-07-23HACK glsl: Write defaults to unused generic attributesameerj2-2/+11
2021-07-23glsl: Fix ssbo indexing and name shadowing between shader stagesameerj3-77/+101
2021-07-23glsl: implement set clip distanceameerj2-0/+15
2021-07-23glsl: Rework var alloc to not assign unused resultsameerj9-49/+91
2021-07-23glsl: Rework variable allocator to allow for variable reuseameerj13-351/+480
2021-07-23glsl: Fix ATOM and implement ATOMSameerj4-114/+130
2021-07-23glsl: Use gl_SubGroupInvocationARBameerj2-8/+7
2021-07-23glsl: Implement VOTE for subgroup size potentially largerameerj2-19/+36
2021-07-23glsl: Implement VOTEameerj4-50/+64
2021-07-23glsl: Implement ST{LS}ameerj6-69/+106
2021-07-23glsl: Implement more instructions used by SMOameerj1-3/+3
2021-07-23glsl: Implement more instructions used by SMOameerj5-10/+16
2021-07-23glsl: Fix GetAttribute return valuesameerj2-7/+9
2021-07-23glsl: minor cleanupameerj4-20/+19
2021-07-23glsl: Fix and implement rest of cbuf accessameerj1-7/+43
2021-07-23glsl: Implement TXQ and other misc changesameerj5-6/+36
2021-07-23glsl: TLD4 implementationameerj1-2/+89
2021-07-23glsl: Implement TLD instructionameerj1-1/+55
2021-07-23glsl: Implement TEXSameerj1-1/+29
2021-07-23glsl: Cleanup texture functionsameerj1-13/+11
2021-07-23shader_recompiler: GCC fixeslat9nq14-3/+13
2021-07-23glsl: Implement TEX depth functionsameerj2-4/+46
2021-07-23glsl: Implement TEX ImageSample functionsameerj3-11/+71
2021-07-23glsl: Rework Shuffle emit instructions to align with SPIR-Vameerj1-19/+40
2021-07-23glsl: Better Storage access and wip warpsameerj8-62/+133
2021-07-23glsl: Fix integer conversions, implement clamp CCameerj2-27/+36
2021-07-23glsl: Implement IADD CCameerj2-2/+17
2021-07-23glsl: SSBO access fixes and wip SampleExplicitLod implementation.ameerj2-4/+19
2021-07-23glsl: WIP var forward declarationameerj6-49/+60
2021-07-23glsl: Fix bindings, add some CC opsameerj8-57/+91
2021-07-23glsl: remove unused headersameerj14-34/+10
2021-07-23glsl: Implement derivatives and YDirectionameerj8-81/+87
2021-07-23glsl: Fix non-immediate buffer accessameerj12-72/+133
2021-07-23glsl: textures wipameerj9-75/+139
2021-07-23glsl: Implement some attribute getters and settersameerj9-191/+337
2021-07-23glsl: Track S32 atomicsameerj1-3/+6
2021-07-23glsl: Update phi node managementameerj4-21/+53
2021-07-23glsl: Fix floating point compare opsameerj1-28/+28
2021-07-23glsl: Query GL Device for FP16 extension supportameerj1-2/+7
2021-07-23glsl: Simply FP storage atomicsameerj2-48/+28
2021-07-23glsl: F16x2 storage atomicsameerj7-58/+64
2021-07-23glsl: Revert ssbo aliasing. Storage Atomics implameerj4-68/+132
2021-07-23glsl: implement phi nodesameerj4-20/+54
2021-07-23glsl: Wip storage atomic opsameerj8-325/+406
2021-07-23glsl: Implement FCMPameerj3-242/+185
2021-07-23glsl: Add a more robust fp formatterameerj4-9/+14
2021-07-23glsl: More FP fixesameerj2-9/+16
2021-07-23glsl: FP function fixesameerj7-17/+25
2021-07-23glsl: More FP instructions/fixesameerj5-28/+41
2021-07-23glsl: Add many FP32/64 instructionsameerj12-765/+1011
2021-07-23glsl: Implement more Integer opsameerj3-119/+72
2021-07-23glsl: Implement BF*ameerj3-9/+10
2021-07-23glsl: Implement a few Integer instructionsameerj10-260/+398
2021-07-23glsl: Use std::string_view for Emit function args.ameerj6-760/+838
2021-07-23glsl: Pass IR::Inst& to Emit functionsameerj6-171/+169
2021-07-23glsl: INeg and IAdd negate testsameerj3-94/+106
2021-07-23glsl: Reusable typed variables. IADD32ameerj6-203/+311
2021-07-23glsl: Fix program linking and cbufameerj2-3/+5
2021-07-23glsl: Fix "reg" allocingameerj10-898/+938
2021-07-23glsl: Initial backendameerj26-0/+3266
2021-07-23spirv: Reduce log severity of mismatching denorm rulesReinUsesLisp1-2/+2
2021-07-23shader: Add loggingReinUsesLisp9-21/+23
2021-07-23shader: Add shader loop safety check settingslat9nq4-8/+28
2021-07-23spirv/convert: Catch more signed operations oversightsameerj1-5/+5
2021-07-23spirv/convert: Catch more broken signed operations on Nvidia OpenGLReinUsesLisp1-0/+6
2021-07-23glasm: Use ARB_derivative_control conditionallyReinUsesLisp2-7/+29
2021-07-23emit_glasm_context_get_set: Remove unused variablelat9nq1-1/+0
2021-07-23shader,glasm: Implement legacy texcoord loadsReinUsesLisp1-2/+10
2021-07-23glasm: Implement legacy varyingsReinUsesLisp1-17/+56
2021-07-23shader: Add support for "negative" and unaligned offsetsReinUsesLisp2-6/+11
2021-07-23spirv: Fix output generics with componentsReinUsesLisp1-1/+1
2021-07-23opengl: Declare fragment outputs even if they are not usedReinUsesLisp3-10/+5
2021-07-23spirv: Fix image and image buffer descriptor index usageReinUsesLisp1-5/+7
2021-07-23glasm: Fix immediate texture coordinateReinUsesLisp1-0/+1
2021-07-23glasm: Reduce reg allocation leaks from an exception to a logReinUsesLisp1-1/+1
2021-07-23glasm: Use integer lod for TXQReinUsesLisp2-2/+2
2021-07-23glasm: Fix global memory fallbacksReinUsesLisp1-9/+10
2021-07-23Revert "glasm: Skip phi moves on undefined instructions"ReinUsesLisp1-3/+1
2021-07-23glasm: Remove unintentional '\n' on Undef32ReinUsesLisp1-1/+1
2021-07-23glasm: Use storage buffers instead of global memory when possibleReinUsesLisp4-369/+380
2021-07-23glasm: Implement Y directionReinUsesLisp4-3/+9
2021-07-23glasm: Skip phi moves on undefined instructionsReinUsesLisp1-1/+3
2021-07-23glasm: Implement undef instructionsReinUsesLisp2-15/+15
2021-07-23glasm: Fix global memory callbacksReinUsesLisp1-5/+6
2021-07-23glasm: Release phi node registers after they are no longer neededReinUsesLisp2-38/+54
2021-07-23glasm: Fix INeg32 on negative immediatesReinUsesLisp1-1/+5
2021-07-23glasm: Remove unnecessary value typesReinUsesLisp3-47/+6
2021-07-23glasm: Throw when there are register leaksReinUsesLisp2-0/+7
2021-07-23glasm: Catch more register leaksReinUsesLisp8-41/+114
2021-07-23glasm: Fix usage counting on phi nodesReinUsesLisp3-8/+22
2021-07-23glasm: Implement global memory fallbacksReinUsesLisp2-50/+89
2021-07-23glasm: Implement int64 add and subtractReinUsesLisp2-8/+6
2021-07-23emit_glasm_context_get_set: Remove unused variablelat9nq1-1/+0
2021-07-23glasm: Implement indirect attribute loadsReinUsesLisp4-6/+65
2021-07-23glasm: Implement image atomicsReinUsesLisp2-165/+153
2021-07-23glasm: Reorder unreachable image atomic instsReinUsesLisp1-66/+66
2021-07-23glasm: Implement gl_Layer storesReinUsesLisp1-0/+7
2021-07-23glasm: Implement SampleIdReinUsesLisp2-3/+3
2021-07-23glasm: Implement IsHelperInvocationReinUsesLisp2-3/+3
2021-07-23glasm: Fix EmitVertex's optimizationReinUsesLisp1-1/+1
2021-07-23gl_shader_cache,glasm: Conditionally use typeless image reads extensionReinUsesLisp1-2/+4
2021-07-23glasm: Implement forced early ZReinUsesLisp1-2/+6
2021-07-23glasm: Simplify patch readsReinUsesLisp1-5/+2
2021-07-23glasm: Fix output patch readsReinUsesLisp2-13/+22
2021-07-23shader: Split profile and runtime information in separate structsReinUsesLisp10-66/+80
2021-07-23emit_glasm_context_get_and_set.cpp: Add missing semicolonsameerj1-2/+2
2021-07-23glasm: Fix patch attribute declarationsReinUsesLisp1-1/+1
2021-07-23glasm: Implement FSWZADDameerj3-4/+28
2021-07-23glasm: Implement PrimitiveId attribute readReinUsesLisp1-0/+3
2021-07-23glasm: Implement clip distance storesReinUsesLisp2-0/+15
2021-07-23glasm: Fix tessellation input attributesReinUsesLisp1-2/+5
2021-07-23glasm: Add missing semicolon on tesscoord readingReinUsesLisp1-1/+1
2021-07-23glasm: Fix tessellation headersReinUsesLisp1-2/+2
2021-07-23glasm: Add tessellation shader declarationsReinUsesLisp1-0/+35
2021-07-23glasm: Implement TessellationEvaluationPointReinUsesLisp1-0/+4
2021-07-23glasm: Implement patch memoryReinUsesLisp3-6/+51
2021-07-23glasm: Fix InvocationId declarationReinUsesLisp1-1/+1
2021-07-23glasm: Implement InvocationIdReinUsesLisp2-2/+5
2021-07-23glasm: Optimize EmitVertex into EMITReinUsesLisp1-1/+5
2021-07-23glasm: Implement geometry shader attribute readsReinUsesLisp2-4/+18
2021-07-23glasm: Properly declare attributes on geometry programsReinUsesLisp3-6/+14
2021-07-23glasm: Declare geometry program headersReinUsesLisp1-0/+35
2021-07-23glasm: Fix potential aliasing bug on cube array samplesReinUsesLisp2-35/+44
2021-07-23glasm: Implement ImageWriteReinUsesLisp1-4/+7
2021-07-23glasm: Implement ImageReadReinUsesLisp4-4/+56
2021-07-23glasm: Implement EmitVertex and EndPrimitiveReinUsesLisp2-4/+8
2021-07-23glasm: Implement ImageGradientReinUsesLisp2-7/+65
2021-07-23glasm: Implement 64-bit shiftsReinUsesLisp2-12/+14
2021-07-23glasm: Implement barriersReinUsesLisp1-3/+3
2021-07-23glasm: Fix compute stage nameReinUsesLisp1-1/+1
2021-07-23glasm: Fix phi instruction typesReinUsesLisp1-1/+1
2021-07-23glasm: Implement PREC on relevant instructionsReinUsesLisp1-6/+12
2021-07-23glasm: Implement stores to gl_ViewportIndexReinUsesLisp4-7/+29
2021-07-23glasm: Implement gl_PointSize storesReinUsesLisp1-0/+3
2021-07-23glasm: Implement gl_PointCoordReinUsesLisp1-0/+4
2021-07-23glasm: Implement ImageQueryLodReinUsesLisp1-3/+5
2021-07-23glasm: Implement ImageFetchReinUsesLisp4-13/+38
2021-07-23glasm: Implement IADD.CCameerj1-1/+26
2021-07-23glasm: Implement BFE.CCReinUsesLisp1-0/+8
2021-07-23glasm: Implement SelectU1ReinUsesLisp2-4/+5
2021-07-23glasm: Implement gl_WorkGroupIDReinUsesLisp2-3/+3
2021-07-23glasm: Implement TXQ and improve texture info readsReinUsesLisp2-50/+51
2021-07-23glasm: Implement gl_FrongFacing attributeReinUsesLisp1-0/+3
2021-07-23glasm: Support textures used in more than one stageReinUsesLisp3-4/+24
2021-07-23glasm: Implement textureGather instructionsReinUsesLisp2-15/+97
2021-07-23glasm: Implement gl_FragDepth and gl_SampleMask storesReinUsesLisp2-5/+5
2021-07-23glasm: Do not alias ConditionRef for nowReinUsesLisp2-3/+2
2021-07-23shader: Read branch conditions from an instructionReinUsesLisp7-5/+20
2021-07-23glasm: Implement InstanceId and VertexIdReinUsesLisp1-0/+6
2021-07-23glasm: Add missing return value on move assignmentReinUsesLisp1-0/+1
2021-07-23glasm: Fix aliased bitcasts ref countingReinUsesLisp3-13/+42
2021-07-23glasm: Remove unintentional comma on vector insertReinUsesLisp1-1/+1
2021-07-23glasm: Implement TEX and TEXS instructionsReinUsesLisp6-47/+258
2021-07-23glasm: Add support for non-2D texture samplesReinUsesLisp1-4/+26
2021-07-23glasm: Reorder unreachable image instructions to the bottomReinUsesLisp1-97/+97
2021-07-23glasm: Add support for texture offsetsReinUsesLisp1-11/+15
2021-07-23glasm: Improve texture sampling instructionsReinUsesLisp2-50/+70
2021-07-23emit_glasm: Enable ARB_draw_buffers when neededReinUsesLisp2-1/+5
2021-07-23emit_glasm: Add support for reading position attributesReinUsesLisp1-3/+13
2021-07-23shader_recompiler: GCC fixeslat9nq3-25/+25
2021-07-23glasm: Implement rest of shared memameerj2-35/+29
2021-07-23emit_spirv: Jump to loop body with local variableReinUsesLisp1-1/+1
2021-07-23glasm: Implement derivative instructions on GLASMReinUsesLisp2-12/+12
2021-07-23glasm: Initial (broken) implementation of TEX on GLASMReinUsesLisp3-299/+386
2021-07-23glasm: Implement some graphics instructions on GLASMReinUsesLisp2-6/+5
2021-07-23glasm: Add Void type to GLASM valuesReinUsesLisp3-0/+15
2021-07-23glasm: Add graphics specific shader declarations to GLASMReinUsesLisp2-6/+63
2021-07-23glasm: Implement local memory for glasmameerj4-9/+12
2021-07-23emit_spirv: Add missing block in caseReinUsesLisp1-1/+2
2021-07-23glasm: Initial implementation of phi nodes on GLASMReinUsesLisp5-10/+88
2021-07-23glasm: Write result to scalar on integer comparison instructionsReinUsesLisp1-10/+10
2021-07-23glasm: Declare NV_shader_thread_group when neededReinUsesLisp1-3/+4
2021-07-23glasm: Rework control flow introducing a syntax listReinUsesLisp9-88/+116
2021-07-23glasm: Implement Storage atomicsameerj5-109/+156
2021-07-23glasm: Ensure reg alloc order across compilers on GLASMReinUsesLisp1-11/+14
2021-07-23glasm: Enable unintentionally disabled register aliasing on GLASMReinUsesLisp1-16/+11
2021-07-23glasm: Review all GLASM insts to be aware of register aliasingReinUsesLisp4-20/+51
2021-07-23glasm: Implement shuffle and vote instructions on GLASMReinUsesLisp8-99/+162
2021-07-23glasm: Add MUFU instructions to GLASMReinUsesLisp2-21/+22
2021-07-23glasm: Implement IAbs64 and INeg64 on GLASMReinUsesLisp2-6/+6
2021-07-23glasm: Properly clamp Fp64 on GLASMReinUsesLisp1-6/+6
2021-07-23glasm: Fix register allocation when moving immediate on GLASMReinUsesLisp3-42/+89
2021-07-23glasm: Implement SelectU64 on GLASMReinUsesLisp2-4/+20
2021-07-23glasm: Fix clamps so the min value has priority on NAN on GLASMReinUsesLisp1-12/+15
2021-07-23glasm: Fix moving U64 immediates to registers in GLASMReinUsesLisp2-3/+4
2021-07-23glasm: Implement storage atomic opsameerj4-305/+358
2021-07-23glasm: Add conversion instructions to GLASMReinUsesLisp9-282/+351
2021-07-23glasm: Add fp min/max insts and fix store for fp64 on GLASMReinUsesLisp2-10/+8
2021-07-23glasm: Add logical instructions on GLASMReinUsesLisp2-12/+12
2021-07-23glasm: Remove duplicated Fp64 pack instructions on GLASMReinUsesLisp1-8/+0
2021-07-23glasm: Remove unnecesary new white space on Clamp GLASMReinUsesLisp1-4/+4
2021-07-23glasm: Add floating-point comparisons on GLASMReinUsesLisp3-120/+116
2021-07-23emit_glasm: Implement more integer alu opsameerj2-47/+41
2021-07-23glasm: Reimplement bitwise ops and BFI/BFEameerj4-88/+108
2021-07-23glasm: Initial GLASM fp64 supportReinUsesLisp9-55/+152
2021-07-23glasm: Implement GLASM fp16 packing and move bitwise insnsReinUsesLisp4-66/+77
2021-07-23glasm: Remove unused functions left from rebaseReinUsesLisp1-12/+0
2021-07-23glasm: Specify namespace when using FormatToReinUsesLisp1-6/+6
2021-07-23glasm: Implement more GLASM composite instructionsReinUsesLisp2-54/+63
2021-07-23glasm: Make GLASM aware of typesReinUsesLisp12-1244/+1380
2021-07-23glasm: Use CMP.S for Select32ameerj3-12/+8
2021-07-23glasm: Implement more logical opsameerj2-5/+5
2021-07-23glasm: Implement BFI, BFEameerj4-138/+164
2021-07-23glasm: Use BitField instead of C bitfieldsReinUsesLisp2-8/+12
2021-07-23glasm: Remove unused argument in identity instructions on GLASMReinUsesLisp1-7/+7
2021-07-23glasm: Implement basic GLASM instructionsReinUsesLisp9-840/+1167
2021-07-23glasm: Changes to GLASM register allocator and emit contextReinUsesLisp4-26/+64
2021-07-23glasm: Add GLASM backend infrastructureReinUsesLisp26-0/+3079
2021-07-23shader: Fixup SPIR-V emit header namespacesReinUsesLisp1-2/+2
2021-07-23Move SPIR-V emission functions to their own headerReinUsesLisp23-572/+629
2021-07-23shader: Optimize NVN FallthroughFernandoS271-0/+3
2021-07-23shader: Implement Int32 SUATOM/SUREDameerj5-0/+233
2021-07-23spirv: Be aware of NAN unaware driversReinUsesLisp1-18/+40
2021-07-23spirv: Add SSBO read fallbacks when no aliasing is availableReinUsesLisp1-37/+99
2021-07-23spirv: Add OpKill fallback to demoteReinUsesLisp1-2/+6
2021-07-23spirv: Do not enable ShaderLayerReinUsesLisp1-3/+0
2021-07-23spirv: Enable DemoteToHelperInvocationEXT only when supportedReinUsesLisp1-1/+1
2021-07-23spirv: Use OriginLowerLeft when requestedReinUsesLisp1-1/+5
2021-07-23spirv: Only add image operands mask when neededReinUsesLisp1-5/+9
2021-07-23spirv: Workaround image unsigned offset bugReinUsesLisp2-9/+26
2021-07-23spirv: Add int8 and int16 capabilities only when supportedReinUsesLisp1-2/+2
2021-07-23spirv: Add integer clamping workaroundsReinUsesLisp1-4/+34
2021-07-23spirv: Implement int8 and int16 conversion fallbacksReinUsesLisp1-19/+80
2021-07-23spirv: Support OpenGL uniform buffers and change bindingsReinUsesLisp5-56/+163
2021-07-23spirv: Desambiguate descriptor namesReinUsesLisp1-9/+37
2021-07-23shader: Implement VertexA stageFernandoS272-0/+5
2021-07-23shader: Fix storage type when reading patches on tess controlReinUsesLisp1-1/+2
2021-07-23shader: Implement indexed texturesReinUsesLisp3-56/+92
2021-07-23shader: Move microinstruction header to the value headerReinUsesLisp2-2/+0
2021-07-23shader: Add NVN storage buffer fallbacksReinUsesLisp5-24/+109
2021-07-23spirv: Fix ViewportMaskReinUsesLisp1-1/+2
2021-07-23spirv: Replace Constant/ConstantComposite with Const helperameerj12-112/+101
2021-07-23shader: Address feedbackFernandoS272-5/+2
2021-07-23shader: Add coarse derivativesFernandoS272-0/+12
2021-07-23shader: Implement fine derivates constant propagationFernandoS273-0/+15
2021-07-23shader: Implement SR_Y_DIRECTIONFernandoS272-0/+8
2021-07-23shader: Fix memory barriersReinUsesLisp2-12/+7
2021-07-23spirv: Fix implicit lod typeReinUsesLisp2-1/+5
2021-07-23spirv: Use explicit lods outside of fragment shadersReinUsesLisp1-5/+16
2021-07-23spirv: Use ConstOffset instead of Offset when possibleReinUsesLisp3-21/+67
2021-07-23shader: Implement BFE and BFI CCameerj1-2/+1
2021-07-23shader: Implement SampleMaskReinUsesLisp4-1/+10
2021-07-23shader: Implement PIXLD.MY_INDEXReinUsesLisp5-0/+12
2021-07-23spirv: Bitcast non-F32 output attributes to their type before storeReinUsesLisp1-13/+28
2021-07-23spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp4-0/+15
2021-07-23spirv: Bitcast non-F32 attributes to F32ReinUsesLisp1-7/+9
2021-07-23shader: Implement PrimitiveIdReinUsesLisp3-0/+6
2021-07-23shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp5-55/+232
2021-07-23spirv: Implement image buffersReinUsesLisp3-22/+58
2021-07-23spirv: Implement Layer storesReinUsesLisp4-9/+26
2021-07-23spirv: Fix alpha testFernandoS271-0/+5
2021-07-23spirv: Fix non-atomic 64-bit storeameerj1-1/+1
2021-07-23spirv: Implement alpha testameerj1-0/+45
2021-07-23shader: Implement transform feedbacks and define file formatReinUsesLisp5-16/+97
2021-07-23shader: Implement early Z testsReinUsesLisp1-0/+3
2021-07-23spirv: Rework storage buffers and shader memoryReinUsesLisp6-492/+487
2021-07-23shader: Fix fixed pipeline point size on geometry shadersReinUsesLisp1-10/+18
2021-07-23shader: Implement geometry shadersReinUsesLisp5-65/+163
2021-07-23shader: Implement OUTReinUsesLisp2-0/+10
2021-07-23spirv: Define StorageImageWriteWithoutFormat capability when usedReinUsesLisp1-0/+3
2021-07-23shader: Implement LOP CCReinUsesLisp2-9/+18
2021-07-23shader: Implement SR_THREAD_KILLReinUsesLisp4-0/+9
2021-07-23shader: Implement ATOM/S and REDameerj5-4/+800
2021-07-23spirv: Move phi node patching to a separate functionReinUsesLisp1-13/+16
2021-07-23spirv: Guard against typeless image reads on unsupported devicesReinUsesLisp2-1/+7
2021-07-23shader: Move LaneId to the warp emission file and fix AMDReinUsesLisp3-5/+9
2021-07-23spirv: Fix forward declarations on phi nodesReinUsesLisp1-47/+25
2021-07-23shader: Implement SULD and SUSTReinUsesLisp5-29/+130
2021-07-23shader: Address feedback + clang formatlat9nq2-5/+0
2021-07-23shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq4-14/+22
2021-07-23shader: Interact texture buffers with buffer cacheReinUsesLisp2-28/+28
2021-07-23shader: Fix TextureGradReinUsesLisp1-1/+1
2021-07-23shader: Implement texture buffersReinUsesLisp4-5/+54
2021-07-23shader: Address feedbackFernandoS271-20/+20
2021-07-23shader: Implement indexed Position and ClipDistancesFernandoS271-0/+40
2021-07-23shader: Implement indexed attributesFernandoS274-6/+134
2021-07-23shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardwareFernandoS271-1/+1
2021-07-23shader: Add subgroup masksReinUsesLisp4-10/+56
2021-07-23shader: Implement BAR and fix memory barriersReinUsesLisp2-3/+13
2021-07-23shader: Reimplement GetCbufU64 as GetCbufU32x2ReinUsesLisp4-6/+6
2021-07-23shader: Address FeedbackFernandoS276-71/+26
2021-07-23shader: Implement SR_LaneIdFernandoS272-0/+5
2021-07-23shader: Fix shared memory on cool driversFernandoS271-0/+1
2021-07-23shader: Implement MEMBARFernandoS272-0/+41
2021-07-23shader: Improve VOTE.VTG stubFernandoS272-0/+40
2021-07-23shader: Implement ViewportIndexFernandoS274-2/+27
2021-07-23shader: Stub TLD4's PTP when it isn't constantFernandoS271-1/+2
2021-07-23shader: Fix branches to visited virtual blocksReinUsesLisp1-0/+2
2021-07-23shader: Fix dependency on identity removal passReinUsesLisp2-3/+8
2021-07-23spirv: Remove unnecesary variable for clip distancesReinUsesLisp2-6/+2
2021-07-23shader: Implement ClipDistanceFernandoS273-0/+25
2021-07-23shader: Fix TXDFernandoS271-1/+1
2021-07-23shader: Address feedbackFernandoS271-15/+15
2021-07-23shader: Implement ImageGradientFernandoS272-1/+54
2021-07-23shader: Implement TMML partiallyFernandoS271-2/+2
2021-07-23shader,spirv: Implement ImageQueryLod.FernandoS274-0/+20
2021-07-23shader: Implement TLDFernandoS271-1/+1
2021-07-23spirv: Add fixed pipeline point sizeReinUsesLisp2-1/+5
2021-07-23shader: Add PointCoord attributeFernandoS273-0/+11
2021-07-23shader: Add PointSize attributeameerj3-0/+9
2021-07-23shader: Store type of phi nodes in flagsReinUsesLisp1-1/+2
2021-07-23spirv: Fix default output attribute initializationReinUsesLisp1-3/+3
2021-07-23shader: Implement FSWZADDameerj4-0/+27
2021-07-23shader: Implement BRXFernandoS273-2/+15
2021-07-23shader: Implement I2I CCameerj2-21/+41
2021-07-23shader: Implement I2I SATameerj2-0/+10
2021-07-23shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when availableReinUsesLisp5-1/+334
2021-07-23shader: Better interpolation and disabled attributes supportReinUsesLisp2-12/+46
2021-07-23spirv: Remove dependencies on Environment when generating SPIR-VReinUsesLisp2-9/+7
2021-07-23shader: Implement front faceReinUsesLisp3-0/+8
2021-07-23shader: Implement TXQ and fix FragDepthReinUsesLisp5-8/+64
2021-07-23shader: Refactor PTP and other minor changesReinUsesLisp5-56/+46
2021-07-23shader: Add IR opcode for ImageFetchFernandoS273-3/+35
2021-07-23shader: Implement TLD4.PTPFernandoS275-9/+40
2021-07-23shader: Implement FragDepthFernandoS271-0/+6
2021-07-23shader: Implement TLD4 and TLD4_BFernandoS272-0/+48
2021-07-23shader: Implement SHFLameerj5-60/+151
2021-07-23shader: Fix F2IFernandoS272-4/+19
2021-07-23shader: Implement NDC [-1, 1], attribute types and default varying initializationReinUsesLisp5-39/+112
2021-07-23shader: Implement VOTEameerj5-1/+77
2021-07-23shader: Implement DMNMX, DSET, DSETPameerj3-18/+26
2021-07-23shader: Add support for fp16 comparisons and misc fixesReinUsesLisp2-0/+10
2021-07-23spirv: Implement VertexId and InstanceId, refactor codeReinUsesLisp6-144/+234
2021-07-23shader: Implement I2FReinUsesLisp4-0/+67
2021-07-23shader: Add partial rasterizer integrationReinUsesLisp6-50/+172
2021-07-23shader: Implement DADDameerj1-0/+2
2021-07-23shader: Implement FSET and FSETPameerj1-2/+4
2021-07-23shader: Implement TEXSReinUsesLisp1-1/+10
2021-07-23shader: Implement CAL inlining function callsReinUsesLisp2-15/+8
2021-07-23spirv: Add SignedZeroInfNanPreserve logicameerj1-0/+6
2021-07-23shader: Implement FMNMXameerj2-12/+12
2021-07-23shader: Implement FCMPameerj2-0/+5
2021-07-23shader: Partial implementation of LDCReinUsesLisp4-25/+124
2021-07-23shader: Initial support for textures and TEXReinUsesLisp7-5/+327
2021-07-23shader: Implement R2Pameerj3-3/+13
2021-07-23shader: Implement SHFameerj2-9/+19
2021-07-23shader: Implement LEAameerj3-3/+13
2021-07-23shader: Implement HADD2ReinUsesLisp3-18/+98
2021-07-23shader: Implement FLOameerj2-3/+13
2021-07-23shader: Implement IMNMXameerj2-0/+20
2021-07-23shader: Implement POPCameerj2-0/+10
2021-07-23shader: Implement SHRameerj2-6/+11
2021-07-23spirv: Move phi arguments emit to a separate functionReinUsesLisp1-27/+27
2021-07-23spirv: Add support for self-referencing phi nodesReinUsesLisp1-3/+10
2021-07-23shader: Implement more of XMAD and FFMA32I and fix XMAD.CBCCReinUsesLisp2-6/+6
2021-07-23shader: FMUL, select, RRO, and MUFU fixesReinUsesLisp3-52/+228
2021-07-23shader: Fix MOV(reg), add SHL variants and emit neg and abs instructionsReinUsesLisp2-6/+6
2021-07-23spirv: Fixes and Intel specific workaroundsReinUsesLisp6-20/+31
2021-07-23shader: Rename, implement FADD.SAT and P2R (imm)ReinUsesLisp4-79/+98
2021-07-23shader: Add denorm flush supportReinUsesLisp3-9/+64
2021-07-23spirv: Add lower fp16 to fp32 passReinUsesLisp12-210/+255
2021-07-23shader: Primitive Vulkan integrationReinUsesLisp13-467/+461
2021-07-23spirv: Implement EmitIdentityReinUsesLisp2-3/+3
2021-07-23spirv: Initial bindings supportReinUsesLisp12-218/+408
2021-07-23shader: Add support for forward declarationsReinUsesLisp2-52/+49
2021-07-23shader: Support SSA loops on IRReinUsesLisp3-15/+15
2021-07-23shader: Misc fixesReinUsesLisp2-0/+11
2021-07-23shader: Initial implementation of an ASTReinUsesLisp5-41/+67
2021-07-23spirv: Initial SPIR-V supportReinUsesLisp12-3/+1359
2021-07-23shader: Add pools and rename filesReinUsesLisp1-0/+21