nak: Add writes_point_size to nak_shader_info

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27795>
This commit is contained in:
Faith Ekstrand
2024-02-25 13:04:01 -06:00
committed by Marge Bot
parent 828b3c18fb
commit 4287d04e98
2 changed files with 5 additions and 4 deletions
+1 -2
View File
@@ -141,11 +141,10 @@ struct nak_shader_info {
struct {
bool writes_layer;
bool writes_point_size;
uint8_t clip_enable;
uint8_t cull_enable;
uint8_t _pad[1];
struct nak_xfb_info xfb;
} vtg;
+4 -2
View File
@@ -394,15 +394,17 @@ pub extern "C" fn nak_compile_shader(
| ShaderStageInfo::Vertex => {
let writes_layer =
nir.info.outputs_written & (1 << VARYING_SLOT_LAYER) != 0;
let writes_point_size =
nir.info.outputs_written & (1 << VARYING_SLOT_PSIZ) != 0;
let num_clip = nir.info.clip_distance_array_size();
let num_cull = nir.info.cull_distance_array_size();
let clip_enable = (1_u32 << num_clip) - 1;
let cull_enable = ((1_u32 << num_cull) - 1) << num_clip;
nak_shader_info__bindgen_ty_2 {
writes_layer: writes_layer,
writes_layer,
writes_point_size,
clip_enable: clip_enable.try_into().unwrap(),
cull_enable: cull_enable.try_into().unwrap(),
_pad: Default::default(),
xfb: unsafe { nak_xfb_from_nir(nir.xfb_info) },
}
}