summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_state.h
diff options
context:
space:
mode:
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 125567b677..78c4778580 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 *,