X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fllvmpipe%2Flp_jit.c;h=3786c50e99030e59cd25e448cc3c041b0caf7d86;hb=430d384c311468c6180a1d67ed90bb74d4fe1c3b;hp=39910c66837ed2e839f06bc28d824436b70699c2;hpb=2e5cddacf7fb6e031540ae9f459d19cce5edefc4;p=mesa.git diff --git a/src/gallium/drivers/llvmpipe/lp_jit.c b/src/gallium/drivers/llvmpipe/lp_jit.c index 39910c66837..3786c50e990 100644 --- a/src/gallium/drivers/llvmpipe/lp_jit.c +++ b/src/gallium/drivers/llvmpipe/lp_jit.c @@ -146,7 +146,9 @@ create_jit_image_type(struct gallivm_state *gallivm) elem_types[LP_JIT_IMAGE_DEPTH] = LLVMInt32TypeInContext(lc); elem_types[LP_JIT_IMAGE_BASE] = LLVMPointerType(LLVMInt8TypeInContext(lc), 0); elem_types[LP_JIT_IMAGE_ROW_STRIDE] = - elem_types[LP_JIT_IMAGE_IMG_STRIDE] = LLVMInt32TypeInContext(lc); + elem_types[LP_JIT_IMAGE_IMG_STRIDE] = + elem_types[LP_JIT_IMAGE_NUM_SAMPLES] = + elem_types[LP_JIT_IMAGE_SAMPLE_STRIDE] = LLVMInt32TypeInContext(lc); image_type = LLVMStructTypeInContext(lc, elem_types, ARRAY_SIZE(elem_types), 0); @@ -168,6 +170,12 @@ create_jit_image_type(struct gallivm_state *gallivm) LP_CHECK_MEMBER_OFFSET(struct lp_jit_image, img_stride, gallivm->target, image_type, LP_JIT_IMAGE_IMG_STRIDE); + LP_CHECK_MEMBER_OFFSET(struct lp_jit_image, num_samples, + gallivm->target, image_type, + LP_JIT_IMAGE_NUM_SAMPLES); + LP_CHECK_MEMBER_OFFSET(struct lp_jit_image, sample_stride, + gallivm->target, image_type, + LP_JIT_IMAGE_SAMPLE_STRIDE); return image_type; } @@ -218,6 +226,7 @@ lp_jit_create_types(struct lp_fragment_shader_variant *lp) 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); @@ -269,6 +278,9 @@ lp_jit_create_types(struct lp_fragment_shader_variant *lp) 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);