src/Pipeline: Refactor ComputeProgram
• Split up ComputeProgram::emit() into a few smaller functions.
• Calculate the subgroup count in C++, and pass it in as a parameter.
• Add a firstSubgroup, this is currently always 0, but will be used in a later change.
• Pass the workgroup ID as parameters instead of through Data. Data now holds fields common for all workgroups.
This refactoring prepares the code for migrating to coroutines.
Bug: b/131672705
Change-Id: Id3492adc0a7aedc3f16c0e37f135294862c55700
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/30848Tested-by:
Ben Clayton <bclayton@google.com>
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment