diff options
Diffstat (limited to 'src/gallium/auxiliary/gallivm/lp_bld_swizzle.h')
-rw-r--r-- | src/gallium/auxiliary/gallivm/lp_bld_swizzle.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_swizzle.h b/src/gallium/auxiliary/gallivm/lp_bld_swizzle.h index c366a65..0bf4ce9 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_swizzle.h +++ b/src/gallium/auxiliary/gallivm/lp_bld_swizzle.h @@ -44,6 +44,9 @@ struct lp_type; struct lp_build_context; +#define LP_BLD_SWIZZLE_DONTCARE 0xFF + + LLVMValueRef lp_build_broadcast(struct gallivm_state *gallivm, LLVMTypeRef vec_type, @@ -103,4 +106,25 @@ lp_build_swizzle_soa_inplace(struct lp_build_context *bld, const unsigned char swizzles[4]); +void +lp_build_transpose_aos(struct gallivm_state *gallivm, + struct lp_type type, + const LLVMValueRef src[4], + LLVMValueRef dst[4]); + + +LLVMValueRef +lp_build_pack_aos_scalars(struct gallivm_state *gallivm, + struct lp_type src_type, + struct lp_type dst_type, + const LLVMValueRef src); + + +LLVMValueRef +lp_build_unpack_broadcast_aos_scalars(struct gallivm_state *gallivm, + struct lp_type src_type, + struct lp_type dst_type, + const LLVMValueRef src); + + #endif /* !LP_BLD_SWIZZLE_H */ |