From 53671a37238fd34f08d91d5d079d26437f21a473 Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Thu, 27 Aug 2015 17:42:40 -0400 Subject: [PATCH] nir: add sysval for user-clip-planes For lowering user-clip-planes, we need a way to pass the enabled/used user-clip-planes in to shader. Signed-off-by: Rob Clark Reviewed-by: Jason Ekstrand --- src/glsl/nir/nir_intrinsics.h | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/src/glsl/nir/nir_intrinsics.h b/src/glsl/nir/nir_intrinsics.h index b981df1..70cae42 100644 --- a/src/glsl/nir/nir_intrinsics.h +++ b/src/glsl/nir/nir_intrinsics.h @@ -128,21 +128,22 @@ INTRINSIC(image_size, 0, ARR(), true, 4, 1, 0, INTRINSIC(image_samples, 0, ARR(), true, 1, 1, 0, NIR_INTRINSIC_CAN_ELIMINATE | NIR_INTRINSIC_CAN_REORDER) -#define SYSTEM_VALUE(name, components) \ - INTRINSIC(load_##name, 0, ARR(), true, components, 0, 0, \ +#define SYSTEM_VALUE(name, components, num_indices) \ + INTRINSIC(load_##name, 0, ARR(), true, components, 0, num_indices, \ NIR_INTRINSIC_CAN_ELIMINATE | NIR_INTRINSIC_CAN_REORDER) -SYSTEM_VALUE(front_face, 1) -SYSTEM_VALUE(vertex_id, 1) -SYSTEM_VALUE(vertex_id_zero_base, 1) -SYSTEM_VALUE(base_vertex, 1) -SYSTEM_VALUE(instance_id, 1) -SYSTEM_VALUE(sample_id, 1) -SYSTEM_VALUE(sample_pos, 2) -SYSTEM_VALUE(sample_mask_in, 1) -SYSTEM_VALUE(invocation_id, 1) -SYSTEM_VALUE(local_invocation_id, 3) -SYSTEM_VALUE(work_group_id, 3) +SYSTEM_VALUE(front_face, 1, 0) +SYSTEM_VALUE(vertex_id, 1, 0) +SYSTEM_VALUE(vertex_id_zero_base, 1, 0) +SYSTEM_VALUE(base_vertex, 1, 0) +SYSTEM_VALUE(instance_id, 1, 0) +SYSTEM_VALUE(sample_id, 1, 0) +SYSTEM_VALUE(sample_pos, 2, 0) +SYSTEM_VALUE(sample_mask_in, 1, 0) +SYSTEM_VALUE(invocation_id, 1, 0) +SYSTEM_VALUE(local_invocation_id, 3, 0) +SYSTEM_VALUE(work_group_id, 3, 0) +SYSTEM_VALUE(user_clip_plane, 4, 1) /* const_index[0] is user_clip_plane[idx] */ /* * The format of the indices depends on the type of the load. For uniforms, -- 2.7.4