summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2012-02-17 16:17:28 +0000
committerJosé Fonseca <[email protected]>2012-02-17 16:17:28 +0000
commite648f5e197a62afeb9d86c36cc8337058e325d38 (patch)
tree89188ffae5277f6736df656a9b60ba0c933bb894 /src/gallium
parentb5941e33d0040e03dc7adeac5a6fda99f3c1c93d (diff)
llvmpipe: Test lp_test_arit with LP_NATIVE_VECTOR_WIDTH.
Instead of assuming 4 wide vectors.
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_test_arit.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_test_arit.c b/src/gallium/drivers/llvmpipe/lp_test_arit.c
index 1b576a29809..303042684c1 100644
--- a/src/gallium/drivers/llvmpipe/lp_test_arit.c
+++ b/src/gallium/drivers/llvmpipe/lp_test_arit.c
@@ -35,6 +35,7 @@
#include "util/u_math.h"
#include "gallivm/lp_bld.h"
+#include "gallivm/lp_bld_debug.h"
#include "gallivm/lp_bld_init.h"
#include "gallivm/lp_bld_arit.h"
@@ -194,9 +195,10 @@ build_unary_test_func(struct gallivm_state *gallivm,
LLVMContextRef context,
const struct unary_test_t *test)
{
+ struct lp_type type = lp_type_float_vec(32);
LLVMTypeRef i32t = LLVMInt32TypeInContext(context);
LLVMTypeRef f32t = LLVMFloatTypeInContext(context);
- LLVMTypeRef v4f32t = LLVMVectorType(f32t, 4);
+ LLVMTypeRef vf32t = lp_build_vec_type(gallivm, type);
LLVMTypeRef args[1] = { f32t };
LLVMValueRef func = LLVMAddFunction(module, test->name, LLVMFunctionType(f32t, args, Elements(args), 0));
LLVMValueRef arg1 = LLVMGetParam(func, 0);
@@ -207,14 +209,14 @@ build_unary_test_func(struct gallivm_state *gallivm,
struct lp_build_context bld;
- lp_build_context_init(&bld, gallivm, lp_float32_vec4_type());
+ lp_build_context_init(&bld, gallivm, lp_type_float_vec(32));
LLVMSetFunctionCallConv(func, LLVMCCallConv);
LLVMPositionBuilderAtEnd(builder, block);
/* scalar to vector */
- arg1 = LLVMBuildInsertElement(builder, LLVMGetUndef(v4f32t), arg1, index0, "");
+ arg1 = LLVMBuildInsertElement(builder, LLVMGetUndef(vf32t), arg1, index0, "");
ret = test->builder(&bld, arg1);