projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gallivm: handle -inf, inf and nan's in sin/cos instructions
[mesa.git]
/
src
/
gallium
/
auxiliary
/
gallivm
/
lp_bld_swizzle.h
diff --git
a/src/gallium/auxiliary/gallivm/lp_bld_swizzle.h
b/src/gallium/auxiliary/gallivm/lp_bld_swizzle.h
index 0bf4ce988a2a8a72ae3a22fcfbfd52a4df20c5da..91ecd34147693c7fffa1442d09bde7987012e9e2 100644
(file)
--- a/
src/gallium/auxiliary/gallivm/lp_bld_swizzle.h
+++ b/
src/gallium/auxiliary/gallivm/lp_bld_swizzle.h
@@
-67,13
+67,14
@@
lp_build_extract_broadcast(struct gallivm_state *gallivm,
/**
/**
- * Broadcast one channel of a vector composed of arrays of XYZ
W
structures into
- * all
four channel
.
+ * Broadcast one channel of a vector composed of arrays of XYZ
..
structures into
+ * all
channels XXX..
.
*/
LLVMValueRef
lp_build_swizzle_scalar_aos(struct lp_build_context *bld,
*/
LLVMValueRef
lp_build_swizzle_scalar_aos(struct lp_build_context *bld,
- LLVMValueRef a,
- unsigned channel);
+ LLVMValueRef a,
+ unsigned channel,
+ unsigned num_channels);
/**
/**
@@
-87,6
+88,14
@@
lp_build_swizzle_aos(struct lp_build_context *bld,
const unsigned char swizzles[4]);
const unsigned char swizzles[4]);
+LLVMValueRef
+lp_build_swizzle_aos_n(struct gallivm_state* gallivm,
+ LLVMValueRef src,
+ const unsigned char* swizzles,
+ unsigned num_swizzles,
+ unsigned dst_len);
+
+
LLVMValueRef
lp_build_swizzle_soa_channel(struct lp_build_context *bld,
const LLVMValueRef *unswizzled,
LLVMValueRef
lp_build_swizzle_soa_channel(struct lp_build_context *bld,
const LLVMValueRef *unswizzled,
@@
-113,11
+122,20
@@
lp_build_transpose_aos(struct gallivm_state *gallivm,
LLVMValueRef dst[4]);
LLVMValueRef dst[4]);
+void
+lp_build_transpose_aos_n(struct gallivm_state *gallivm,
+ struct lp_type type,
+ const LLVMValueRef* src,
+ unsigned num_srcs,
+ LLVMValueRef* dst);
+
+
LLVMValueRef
lp_build_pack_aos_scalars(struct gallivm_state *gallivm,
struct lp_type src_type,
struct lp_type dst_type,
LLVMValueRef
lp_build_pack_aos_scalars(struct gallivm_state *gallivm,
struct lp_type src_type,
struct lp_type dst_type,
- const LLVMValueRef src);
+ const LLVMValueRef src,
+ unsigned channel);
LLVMValueRef
LLVMValueRef