[D3D12] Broken memexport shader code
This commit is contained in:
@@ -1296,7 +1296,8 @@ void DxbcShaderTranslator::CompleteShaderCode() {
|
|||||||
// - system_temp_grad_v_.
|
// - system_temp_grad_v_.
|
||||||
PopSystemTemp(6);
|
PopSystemTemp(6);
|
||||||
|
|
||||||
// TODO(Triang3l): Do memexport.
|
// Write memexported data to the shared memory UAV.
|
||||||
|
ExportToMemory();
|
||||||
|
|
||||||
// Release memexport temporary registers.
|
// Release memexport temporary registers.
|
||||||
for (int i = kMaxMemExports - 1; i >= 0; --i) {
|
for (int i = kMaxMemExports - 1; i >= 0; --i) {
|
||||||
|
|||||||
@@ -830,6 +830,9 @@ class DxbcShaderTranslator : public ShaderTranslator {
|
|||||||
void StartPixelShader();
|
void StartPixelShader();
|
||||||
|
|
||||||
// Writing the epilogue.
|
// Writing the epilogue.
|
||||||
|
// ExportToMemory modifies the values of eA/eM# for simplicity, don't call
|
||||||
|
// multiple times.
|
||||||
|
void ExportToMemory();
|
||||||
void CompleteVertexOrDomainShader();
|
void CompleteVertexOrDomainShader();
|
||||||
// Converts four depth values to 24-bit unorm or float, depending on the flag
|
// Converts four depth values to 24-bit unorm or float, depending on the flag
|
||||||
// value.
|
// value.
|
||||||
|
|||||||
1391
src/xenia/gpu/dxbc_shader_translator_memexport.cc
Normal file
1391
src/xenia/gpu/dxbc_shader_translator_memexport.cc
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user