Closed xazhangAMD closed 9 months ago
I didn't see the other discussion early enough. Is there really no better way of doing this? For example, if you do move this into its own pass, could use a generic implementation that uses lgc.input.import.builtin or some other pre-existing ops?
I don't particularly fancy a further proliferation of passes, but I think a number of very similar tasks of "lowering operations" like this could be combined into one pass. Though this doesn't necessarily have to happen in this PR.
I didn't see the other discussion early enough. Is there really no better way of doing this? For example, if you do move this into its own pass, could use a generic implementation that uses lgc.input.import.builtin or some other pre-existing ops?
I don't particularly fancy a further proliferation of passes, but I think a number of very similar tasks of "lowering operations" like this could be combined into one pass. Though this doesn't necessarily have to happen in this PR.
Rex is going to refactor this for the CS part. My current change is just to make it a little easier for mesh/tash shaders. BTW, I need another PR first because that solves several random mesh/task shader test failures. 2812
Rex is going to refactor this for the CS part.
Yes, I will revisit this.
I don't particularly fancy a further proliferation of passes, but I think a number of very similar tasks of "lowering operations" like this could be combined into one pass.
The pass PatchInitializeWorkgroupMemory
does similar thing but is not very generic. I will think about it and do some refactoring work. Currently, task/mesh lowering of memory copy requested by Xavi is added to MeshTaskShader
only CS need to be handled particularly.
So just to be clear, do we wait for the revised version on this?
The fix for random thread IDs has been merged so I have a working version for LLPCFE. This PR can be reviewed as is now or I can also wait for Rex's refactor, too.
Close this PR for now
Test summary for commit e5ba891624d85ed3ccbb33ae470b13f9239c6c9e
CTS tests (Failed: 0/138362)
Ubuntu navi3x, Srdcvk
Ubuntu navi2x, Srdcvk