summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe/lp_state.h
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2009-08-09 23:10:19 +0100
committerJosé Fonseca <[email protected]>2009-08-29 09:21:27 +0100
commit2d6b39f05edcd575b1e10d53f96a38bec848fa67 (patch)
tree2fcee25f45648d36f6ffeecb0ab9439f77acc4f7 /src/gallium/drivers/llvmpipe/lp_state.h
parente7fc21434d2c5a9177a427950be5029ff4db43ee (diff)
llvmpipe: Use the generated SoA blending code.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_state.h')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_state.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_state.h b/src/gallium/drivers/llvmpipe/lp_state.h
index 125567b6776..78c47785804 100644
--- a/src/gallium/drivers/llvmpipe/lp_state.h
+++ b/src/gallium/drivers/llvmpipe/lp_state.h
@@ -31,6 +31,8 @@
#ifndef LP_STATE_H
#define LP_STATE_H
+#include <llvm-c/Core.h>
+
#include "pipe/p_state.h"
#include "tgsi/tgsi_scan.h"
@@ -90,6 +92,23 @@ struct lp_vertex_shader {
};
+typedef void
+(*lp_blend_func)(float src[][4],
+ float dst[][4],
+ float con[][4],
+ float res[][4]);
+
+
+struct lp_blend_state
+{
+ struct pipe_blend_state base;
+
+ LLVMValueRef function;
+
+ lp_blend_func jit_function;
+};
+
+
void *
llvmpipe_create_blend_state(struct pipe_context *,