summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Ĺšlusarz <marcin.slusarz@intel.com>2023-01-24 10:52:10 +0100
committerDylan Baker <dylan.c.baker@intel.com>2023-01-24 15:27:06 -0800
commitea4ecc3e72b17a85d03df299bb247c98ce0184d3 (patch)
treee93a0f091eaa5921db3aca72d615824be361f3a2
parent598e985d6527bf65ba93442ae8ac03465cee5668 (diff)
intel/compiler/mesh: handle const data in task & mesh programs
Started showing up when nir_opt_large_constants call was moved in 88756cee8da. Fixes dEQP-VK.mesh_shader.ext.smoke.monolithic.fullscreen_gradient* Suggested-by: Kenneth Graunke <kenneth@whitecape.org> Fixes: 88756cee8da ("intel/compiler: Run nir_opt_large_constants before scalarizing consts") Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20876> (cherry picked from commit 536a2acfc20ab6b21d83f8ca7a1829087ba98032)
-rw-r--r--.pick_status.json2
-rw-r--r--src/intel/compiler/brw_mesh.cpp2
2 files changed, 3 insertions, 1 deletions
diff --git a/.pick_status.json b/.pick_status.json
index ca3fe805754..ee070e3231c 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -202,7 +202,7 @@
"description": "intel/compiler/mesh: handle const data in task & mesh programs",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "88756cee8da77a742fc031ac83f2e5a197023ef8"
},
diff --git a/src/intel/compiler/brw_mesh.cpp b/src/intel/compiler/brw_mesh.cpp
index a897938cf79..c7c18078c20 100644
--- a/src/intel/compiler/brw_mesh.cpp
+++ b/src/intel/compiler/brw_mesh.cpp
@@ -376,6 +376,7 @@ brw_compile_task(const struct brw_compiler *compiler,
g.generate_code(selected->cfg, selected->dispatch_width, selected->shader_stats,
selected->performance_analysis.require(), params->stats);
+ g.add_const_data(nir->constant_data, nir->constant_data_size);
return g.get_assembly();
}
@@ -891,6 +892,7 @@ brw_compile_mesh(const struct brw_compiler *compiler,
g.generate_code(selected->cfg, selected->dispatch_width, selected->shader_stats,
selected->performance_analysis.require(), params->stats);
+ g.add_const_data(nir->constant_data, nir->constant_data_size);
return g.get_assembly();
}