elem_types[LP_JIT_CTX_IMAGES] = LLVMArrayType(image_type,
PIPE_MAX_SHADER_IMAGES);
elem_types[LP_JIT_CTX_ALPHA_REF] = LLVMFloatTypeInContext(lc);
+ elem_types[LP_JIT_CTX_SAMPLE_MASK] =
elem_types[LP_JIT_CTX_STENCIL_REF_FRONT] =
elem_types[LP_JIT_CTX_STENCIL_REF_BACK] = LLVMInt32TypeInContext(lc);
elem_types[LP_JIT_CTX_U8_BLEND_COLOR] = LLVMPointerType(LLVMInt8TypeInContext(lc), 0);
LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, num_ssbos,
gallivm->target, context_type,
LP_JIT_CTX_NUM_SSBOS);
+ LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, sample_mask,
+ gallivm->target, context_type,
+ LP_JIT_CTX_SAMPLE_MASK);
LP_CHECK_STRUCT_SIZE(struct lp_jit_context,
gallivm->target, context_type);
const uint32_t *ssbos[LP_MAX_TGSI_SHADER_BUFFERS];
int num_ssbos[LP_MAX_TGSI_SHADER_BUFFERS];
+
+ uint32_t sample_mask;
};
LP_JIT_CTX_VIEWPORTS,
LP_JIT_CTX_SSBOS,
LP_JIT_CTX_NUM_SSBOS,
+ LP_JIT_CTX_SAMPLE_MASK,
LP_JIT_CTX_COUNT
};
#define lp_jit_context_num_ssbos(_gallivm, _ptr) \
lp_build_struct_get_ptr(_gallivm, _ptr, LP_JIT_CTX_NUM_SSBOS, "num_ssbos")
+#define lp_jit_context_sample_mask(_gallivm, _ptr) \
+ lp_build_struct_get_ptr(_gallivm, _ptr, LP_JIT_CTX_SAMPLE_MASK, "sample_mask")
+
struct lp_jit_thread_data
{
struct lp_build_format_cache *cache;