0
0
Fork 0
mirror of https://github.com/GreemDev/Ryujinx.git synced 2024-12-23 17:25:48 +00:00
Ryujinx/src/Ryujinx.Graphics.Shader/StructuredIr
gdkchan 21c9ac6240
Implement shader storage buffer operations using new Load/Store instructions (#4993)
* Implement storage buffer operations using new Load/Store instruction

* Extend GenerateMultiTargetStorageOp to also match access with constant offset, and log and comments

* Remove now unused code

* Catch more complex cases of global memory usage

* Shader cache version bump

* Extend global access elimination to work with more shared memory cases

* Change alignment requirement from 16 bytes to 8 bytes, handle cases where we need more than 16 storage buffers

* Tweak preferencing to catch more cases

* Enable CB0 elimination even when host storage buffer alignment is > 16 (for Intel)

* Fix storage buffer bindings

* Simplify some code

* Shader cache version bump

* Fix typo

* Extend global memory elimination to handle shared memory with multiple possible offsets and local memory
2023-06-03 20:12:18 -03:00
..
AstAssignment.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstBlock.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstBlockType.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstBlockVisitor.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstComment.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstHelper.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstNode.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstOperand.cs Replace constant buffer access on shader with new Load instruction (#4646) 2023-05-20 16:19:26 -03:00
AstOperation.cs Force reciprocal operation with value biased by constant to be precise on macOS (#5110) 2023-05-26 15:19:37 -03:00
AstOptimizer.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
AstTextureOperation.cs Force reciprocal operation with value biased by constant to be precise on macOS (#5110) 2023-05-26 15:19:37 -03:00
BufferDefinition.cs Replace constant buffer access on shader with new Load instruction (#4646) 2023-05-20 16:19:26 -03:00
BufferLayout.cs Replace constant buffer access on shader with new Load instruction (#4646) 2023-05-20 16:19:26 -03:00
GotoElimination.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
GotoStatement.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
HelperFunctionsMask.cs Implement shader storage buffer operations using new Load/Store instructions (#4993) 2023-06-03 20:12:18 -03:00
IAstNode.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
InstructionInfo.cs Implement shader storage buffer operations using new Load/Store instructions (#4993) 2023-06-03 20:12:18 -03:00
IoDefinition.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
OperandInfo.cs Replace constant buffer access on shader with new Load instruction (#4646) 2023-05-20 16:19:26 -03:00
PhiFunctions.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
ShaderProperties.cs Implement shader storage buffer operations using new Load/Store instructions (#4993) 2023-06-03 20:12:18 -03:00
StructuredFunction.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
StructuredProgram.cs Implement shader storage buffer operations using new Load/Store instructions (#4993) 2023-06-03 20:12:18 -03:00
StructuredProgramContext.cs Force reciprocal operation with value biased by constant to be precise on macOS (#5110) 2023-05-26 15:19:37 -03:00
StructuredProgramInfo.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
StructureType.cs Replace constant buffer access on shader with new Load instruction (#4646) 2023-05-20 16:19:26 -03:00