diff options
author | Brian Paul <[email protected]> | 2009-12-16 12:33:11 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2009-12-16 12:33:11 -0700 |
commit | e288796c92bb7d75cd6dfee968804c6230ef38d7 (patch) | |
tree | f252402e55bec302143128060fa4b44e7bede201 | |
parent | 2297bc9233be014b7b5aa037769209fbe9f6a66c (diff) |
llvmpipe: added lp_build_int32_vec4_type()
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_bld_type.c | 21 | ||||
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_bld_type.h | 4 |
2 files changed, 25 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_bld_type.c b/src/gallium/drivers/llvmpipe/lp_bld_type.c index 606243d6c5a..e8cf7256c0e 100644 --- a/src/gallium/drivers/llvmpipe/lp_bld_type.c +++ b/src/gallium/drivers/llvmpipe/lp_bld_type.c @@ -157,6 +157,27 @@ lp_build_int_vec_type(struct lp_type type) } +/** + * Build int32[4] vector type + */ +LLVMTypeRef +lp_build_int32_vec4_type() +{ + struct lp_type t; + LLVMTypeRef type; + + memset(&t, 0, sizeof(t)); + t.floating = FALSE; /* floating point values */ + t.sign = TRUE; /* values are signed */ + t.norm = FALSE; /* values are not limited to [0,1] or [-1,1] */ + t.width = 32; /* 32-bit int */ + t.length = 4; /* 4 elements per vector */ + + type = lp_build_int_elem_type(t); + return LLVMVectorType(type, t.length); +} + + struct lp_type lp_int_type(struct lp_type type) { diff --git a/src/gallium/drivers/llvmpipe/lp_bld_type.h b/src/gallium/drivers/llvmpipe/lp_bld_type.h index ee5ca3483c1..118fb339089 100644 --- a/src/gallium/drivers/llvmpipe/lp_bld_type.h +++ b/src/gallium/drivers/llvmpipe/lp_bld_type.h @@ -162,6 +162,10 @@ LLVMTypeRef lp_build_int_vec_type(struct lp_type type); +LLVMTypeRef +lp_build_int32_vec4_type(); + + struct lp_type lp_int_type(struct lp_type type); |