X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fllvmpipe%2Flp_bld_depth.h;h=d169c896711475abac98e7b1767720f3057525f6;hb=0b239d9ed98f197176e2c9ccaaa3fb475144d23d;hp=a54ef3a711e9d40ca7a2b8a27546ba517220eb37;hpb=4926c5748028d33da4808f8a5473aa7b2f2bdc62;p=mesa.git diff --git a/src/gallium/drivers/llvmpipe/lp_bld_depth.h b/src/gallium/drivers/llvmpipe/lp_bld_depth.h index a54ef3a711e..d169c896711 100644 --- a/src/gallium/drivers/llvmpipe/lp_bld_depth.h +++ b/src/gallium/drivers/llvmpipe/lp_bld_depth.h @@ -36,10 +36,14 @@ #define LP_BLD_DEPTH_H +#include "pipe/p_compiler.h" +#include "pipe/p_state.h" + #include "gallivm/lp_bld.h" struct pipe_depth_state; +struct gallivm_state; struct util_format_description; struct lp_type; struct lp_build_mask_context; @@ -51,35 +55,49 @@ lp_depth_type(const struct util_format_description *format_desc, void -lp_build_depth_stencil_test(LLVMBuilderRef builder, +lp_build_depth_stencil_test(struct gallivm_state *gallivm, const struct pipe_depth_state *depth, const struct pipe_stencil_state stencil[2], - struct lp_type type, + struct lp_type z_src_type, const struct util_format_description *format_desc, struct lp_build_mask_context *mask, LLVMValueRef stencil_refs[2], - LLVMValueRef zs_src, - LLVMValueRef zs_dst_ptr, - LLVMValueRef facing, - LLVMValueRef *zs_value, + LLVMValueRef z_src, + LLVMValueRef z_fb, + LLVMValueRef s_fb, + LLVMValueRef face, + LLVMValueRef *z_value, + LLVMValueRef *s_value, boolean do_branch); void -lp_build_depth_write(LLVMBuilderRef builder, - const struct util_format_description *format_desc, - LLVMValueRef zs_dst_ptr, - LLVMValueRef zs_value); +lp_build_depth_stencil_load_swizzled(struct gallivm_state *gallivm, + struct lp_type z_src_type, + const struct util_format_description *format_desc, + boolean is_1d, + LLVMValueRef depth_ptr, + LLVMValueRef depth_stride, + LLVMValueRef *z_fb, + LLVMValueRef *s_fb, + LLVMValueRef loop_counter); void -lp_build_deferred_depth_write(LLVMBuilderRef builder, - struct lp_type z_src_type, - const struct util_format_description *format_desc, - struct lp_build_mask_context *mask, - LLVMValueRef zs_dst_ptr, - LLVMValueRef zs_value); +lp_build_depth_stencil_write_swizzled(struct gallivm_state *gallivm, + struct lp_type z_src_type, + const struct util_format_description *format_desc, + boolean is_1d, + struct lp_build_mask_context *mask, + LLVMValueRef z_fb, + LLVMValueRef s_fb, + LLVMValueRef loop_counter, + LLVMValueRef depth_ptr, + LLVMValueRef depth_stride, + LLVMValueRef z_value, + LLVMValueRef s_value); + void -lp_build_occlusion_count(LLVMBuilderRef builder, +lp_build_occlusion_count(struct gallivm_state *gallivm, struct lp_type type, LLVMValueRef maskvalue, LLVMValueRef counter);