diff options
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_bld.h')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_bld.h | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_bld.h b/src/gallium/drivers/llvmpipe/lp_bld.h index 368182d638..44343f644b 100644 --- a/src/gallium/drivers/llvmpipe/lp_bld.h +++ b/src/gallium/drivers/llvmpipe/lp_bld.h @@ -48,15 +48,14 @@ /** * Unpack a pixel into its RGBA components. * - * @param ptr value with the pointer to the packed pixel. Pointer type is - * irrelevant. + * @param packed integer. * * @return RGBA in a 4 floats vector. */ LLVMValueRef lp_build_unpack_rgba(LLVMBuilderRef builder, enum pipe_format format, - LLVMValueRef ptr); + LLVMValueRef packed); /** @@ -64,13 +63,38 @@ lp_build_unpack_rgba(LLVMBuilderRef builder, * * @param rgba 4 float vector with the unpacked components. */ -void +LLVMValueRef lp_build_pack_rgba(LLVMBuilderRef builder, enum pipe_format format, - LLVMValueRef ptr, LLVMValueRef rgba); +/** + * Load a pixel into its RGBA components. + * + * @param ptr value with the pointer to the packed pixel. Pointer type is + * irrelevant. + * + * @return RGBA in a 4 floats vector. + */ +LLVMValueRef +lp_build_load_rgba(LLVMBuilderRef builder, + enum pipe_format format, + LLVMValueRef ptr); + + +/** + * Store a pixel. + * + * @param rgba 4 float vector with the unpacked components. + */ +void +lp_build_store_rgba(LLVMBuilderRef builder, + enum pipe_format format, + LLVMValueRef ptr, + LLVMValueRef rgba); + + struct lp_build_loop_state { LLVMBasicBlockRef block; |