summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-22glasm: Fix phi instruction typesReinUsesLisp
2021-07-22glasm: Implement PREC on relevant instructionsReinUsesLisp
2021-07-22glasm: Implement stores to gl_ViewportIndexReinUsesLisp
2021-07-22glasm: Implement gl_PointSize storesReinUsesLisp
2021-07-22glasm: Implement gl_PointCoordReinUsesLisp
2021-07-22glasm: Implement ImageQueryLodReinUsesLisp
2021-07-22glasm: Implement ImageFetchReinUsesLisp
2021-07-22glasm: Implement IADD.CCameerj
2021-07-22glasm: Implement BFE.CCReinUsesLisp
2021-07-22glasm: Implement SelectU1ReinUsesLisp
2021-07-22HACK: Bind stages before and after bindingsReinUsesLisp
Works around a bug where program parameters are only applied to the current stage, and this one wasn't bound at the moment. Affects all SSBO usages on GLASM.
2021-07-22glasm: Implement gl_WorkGroupIDReinUsesLisp
2021-07-22glasm: Implement TXQ and improve texture info readsReinUsesLisp
2021-07-22glasm: Implement gl_FrongFacing attributeReinUsesLisp
2021-07-22glasm: Support textures used in more than one stageReinUsesLisp
2021-07-22glasm: Implement textureGather instructionsReinUsesLisp
2021-07-22glasm: Implement gl_FragDepth and gl_SampleMask storesReinUsesLisp
2021-07-22glasm: Do not alias ConditionRef for nowReinUsesLisp
Immediate condition refs where not handled correctly. Just move the value for now.
2021-07-22shader: Read branch conditions from an instructionReinUsesLisp
Fixes the identity removal pass.
2021-07-22glasm: Implement InstanceId and VertexIdReinUsesLisp
2021-07-22glasm: Add missing return value on move assignmentReinUsesLisp
2021-07-22glasm: Fix aliased bitcasts ref countingReinUsesLisp
2021-07-22glasm: Remove unintentional comma on vector insertReinUsesLisp
2021-07-22glasm: Implement TEX and TEXS instructionsReinUsesLisp
Remove lod clamp from texture instructions with lod, as this is not needed (nor supported).
2021-07-22glasm: Add support for non-2D texture samplesReinUsesLisp
2021-07-22glasm: Reorder unreachable image instructions to the bottomReinUsesLisp
2021-07-22glasm: Add support for texture offsetsReinUsesLisp
2021-07-22glasm: Improve texture sampling instructionsReinUsesLisp
2021-07-22emit_glasm: Enable ARB_draw_buffers when neededReinUsesLisp
2021-07-22emit_glasm: Add support for reading position attributesReinUsesLisp
2021-07-22shader_recompiler: GCC fixeslat9nq
Fixes members of unnamed union not being accessible, and one function without a declaration.
2021-07-22glasm: Implement rest of shared memameerj
2021-07-22opengl: Initial (broken) support to GLASM shadersReinUsesLisp
2021-07-22shader: Use a non-trivial dummy to construct ASL node unionReinUsesLisp
2021-07-22emit_spirv: Jump to loop body with local variableReinUsesLisp
Silence unused variable warning
2021-07-22glasm: Implement derivative instructions on GLASMReinUsesLisp
2021-07-22glasm: Initial (broken) implementation of TEX on GLASMReinUsesLisp
2021-07-22glasm: Implement some graphics instructions on GLASMReinUsesLisp
2021-07-22glasm: Add Void type to GLASM valuesReinUsesLisp
2021-07-22glasm: Add graphics specific shader declarations to GLASMReinUsesLisp
2021-07-22glasm: Implement local memory for glasmameerj
2021-07-22emit_spirv: Add missing block in caseReinUsesLisp
2021-07-22glasm: Initial implementation of phi nodes on GLASMReinUsesLisp
2021-07-22glasm: Write result to scalar on integer comparison instructionsReinUsesLisp
2021-07-22glasm: Declare NV_shader_thread_group when neededReinUsesLisp
2021-07-22vk_update_descriptor: Properly initialize payload on the update descriptor queueReinUsesLisp
2021-07-22glasm: Rework control flow introducing a syntax listReinUsesLisp
This commit regresses VertexA shaders, their transformation pass has to be adapted to the new control flow.
2021-07-22glasm: Implement Storage atomicsameerj
StorageAtomicExchangeU64 is failing test seemingly due to failure storing 64-bit result into the register
2021-07-22glasm: Ensure reg alloc order across compilers on GLASMReinUsesLisp
Use a struct constructor to serialize register allocation arguments to ensure registers are allocated in the same order regardless of the compiler used. The A and B functions can be called in any order when passed as arguments to "foo": foo(A(), B()) But the order is guaranteed for curly-braced constructor calls in classes: Foo{A(), B()} Use this to get consistent behavior.
2021-07-22glasm: Enable unintentionally disabled register aliasing on GLASMReinUsesLisp