llvmpipe: Remove TGSI sampler pointers from JIT context too.

This commit is contained in:
José Fonseca
2010-01-07 16:16:45 +00:00
parent 12c6b871a3
commit 8081c1eaa5
3 changed files with 9 additions and 19 deletions

View File

@@ -79,25 +79,22 @@ lp_jit_init_globals(struct llvmpipe_screen *screen)
/* struct lp_jit_context */ /* struct lp_jit_context */
{ {
LLVMTypeRef elem_types[5]; LLVMTypeRef elem_types[4];
LLVMTypeRef context_type; LLVMTypeRef context_type;
elem_types[0] = LLVMPointerType(LLVMFloatType(), 0); /* constants */ elem_types[0] = LLVMPointerType(LLVMFloatType(), 0); /* constants */
elem_types[1] = LLVMPointerType(LLVMInt8Type(), 0); /* samplers */ elem_types[1] = LLVMFloatType(); /* alpha_ref_value */
elem_types[2] = LLVMFloatType(); /* alpha_ref_value */ elem_types[2] = LLVMPointerType(LLVMInt8Type(), 0); /* blend_color */
elem_types[3] = LLVMPointerType(LLVMInt8Type(), 0); /* blend_color */ elem_types[3] = LLVMArrayType(texture_type, PIPE_MAX_SAMPLERS); /* textures */
elem_types[4] = LLVMArrayType(texture_type, PIPE_MAX_SAMPLERS); /* textures */
context_type = LLVMStructType(elem_types, Elements(elem_types), 0); context_type = LLVMStructType(elem_types, Elements(elem_types), 0);
LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, constants, LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, constants,
screen->target, context_type, 0); screen->target, context_type, 0);
LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, samplers,
screen->target, context_type, 1);
LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, alpha_ref_value, LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, alpha_ref_value,
screen->target, context_type, 2); screen->target, context_type, 1);
LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, blend_color, LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, blend_color,
screen->target, context_type, 3); screen->target, context_type, 2);
LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, textures, LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, textures,
screen->target, context_type, screen->target, context_type,
LP_JIT_CONTEXT_TEXTURES_INDEX); LP_JIT_CONTEXT_TEXTURES_INDEX);

View File

@@ -41,7 +41,6 @@
#include "pipe/p_state.h" #include "pipe/p_state.h"
struct tgsi_sampler;
struct llvmpipe_screen; struct llvmpipe_screen;
@@ -78,8 +77,6 @@ struct lp_jit_context
{ {
const float *constants; const float *constants;
struct tgsi_sampler **samplers;
float alpha_ref_value; float alpha_ref_value;
/* FIXME: store (also?) in floats */ /* FIXME: store (also?) in floats */
@@ -92,16 +89,13 @@ struct lp_jit_context
#define lp_jit_context_constants(_builder, _ptr) \ #define lp_jit_context_constants(_builder, _ptr) \
lp_build_struct_get(_builder, _ptr, 0, "constants") lp_build_struct_get(_builder, _ptr, 0, "constants")
#define lp_jit_context_samplers(_builder, _ptr) \
lp_build_struct_get(_builder, _ptr, 1, "samplers")
#define lp_jit_context_alpha_ref_value(_builder, _ptr) \ #define lp_jit_context_alpha_ref_value(_builder, _ptr) \
lp_build_struct_get(_builder, _ptr, 2, "alpha_ref_value") lp_build_struct_get(_builder, _ptr, 1, "alpha_ref_value")
#define lp_jit_context_blend_color(_builder, _ptr) \ #define lp_jit_context_blend_color(_builder, _ptr) \
lp_build_struct_get(_builder, _ptr, 3, "blend_color") lp_build_struct_get(_builder, _ptr, 2, "blend_color")
#define LP_JIT_CONTEXT_TEXTURES_INDEX 4 #define LP_JIT_CONTEXT_TEXTURES_INDEX 3
#define lp_jit_context_textures(_builder, _ptr) \ #define lp_jit_context_textures(_builder, _ptr) \
lp_build_struct_get_ptr(_builder, _ptr, LP_JIT_CONTEXT_TEXTURES_INDEX, "textures") lp_build_struct_get_ptr(_builder, _ptr, LP_JIT_CONTEXT_TEXTURES_INDEX, "textures")

View File

@@ -56,7 +56,6 @@
#define LP_NEW_QUERY 0x4000 #define LP_NEW_QUERY 0x4000
struct tgsi_sampler;
struct vertex_info; struct vertex_info;
struct pipe_context; struct pipe_context;
struct llvmpipe_context; struct llvmpipe_context;