summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/draw
diff options
context:
space:
mode:
authorZack Rusin <[email protected]>2010-03-30 17:21:11 -0400
committerZack Rusin <[email protected]>2010-03-30 17:21:11 -0400
commitb0f946e90069f34e69a0492caa7a2867ae184e9a (patch)
treef0f2d07e20fbc390fcb30fef69aa13043f89264a /src/gallium/auxiliary/draw
parent8bc07fc83e344c9e693bdec4148009320a1731f1 (diff)
draw llvm: actually set the constant buffers on the context
Diffstat (limited to 'src/gallium/auxiliary/draw')
-rw-r--r--src/gallium/auxiliary/draw/draw_llvm.c2
-rw-r--r--src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline_llvm.c8
2 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/draw/draw_llvm.c b/src/gallium/auxiliary/draw/draw_llvm.c
index cd183d5087c..1127d5417e8 100644
--- a/src/gallium/auxiliary/draw/draw_llvm.c
+++ b/src/gallium/auxiliary/draw/draw_llvm.c
@@ -110,7 +110,7 @@ init_globals(struct draw_llvm *llvm)
LP_CHECK_STRUCT_SIZE(struct draw_jit_context,
llvm->target, context_type);
- LLVMAddTypeName(llvm->module, "context", context_type);
+ LLVMAddTypeName(llvm->module, "draw_jit_context", context_type);
llvm->context_ptr_type = LLVMPointerType(context_type, 0);
}
diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline_llvm.c b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline_llvm.c
index 38b1c4462db..f93df37d92b 100644
--- a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline_llvm.c
+++ b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline_llvm.c
@@ -130,6 +130,12 @@ llvm_middle_end_prepare( struct draw_pt_middle_end *middle,
*max_vertices = *max_vertices & ~1;
draw_llvm_prepare(fpme->llvm);
+
+ /*XXX we only support one constant buffer */
+ fpme->llvm->jit_context.vs_constants =
+ draw->pt.user.vs_constants[0];
+ fpme->llvm->jit_context.gs_constants =
+ draw->pt.user.gs_constants[0];
}
@@ -241,7 +247,7 @@ static void llvm_middle_end_linear_run( struct draw_pt_middle_end *middle,
fpme->llvm->jit_func( &fpme->llvm->jit_context,
pipeline_verts,
- draw->pt.user.vbuffer,
+ (const char **)draw->pt.user.vbuffer,
start,
count,
fpme->vertex_size );