summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZack Rusin <zackr@vmware.com>2013-03-29 19:33:34 -0700
committerZack Rusin <zackr@vmware.com>2013-04-03 10:16:25 -0700
commitb16ae0f792ed1980e86c45f9e3d203412b5a80d3 (patch)
tree451f975bc618dfdee561daea74294b78d83888c1
parent49b7d933f8608df9d20606f022a032785e243ab9 (diff)
downloadexternal_mesa3d-b16ae0f792ed1980e86c45f9e3d203412b5a80d3.zip
external_mesa3d-b16ae0f792ed1980e86c45f9e3d203412b5a80d3.tar.gz
external_mesa3d-b16ae0f792ed1980e86c45f9e3d203412b5a80d3.tar.bz2
draw/llvm: use an enum instead of magic numbers
I think this was there before and got accidently removed during a merge. Same code as for the GS context, which is also using an enum instead of hardcoded numbers. Signed-off-by: Zack Rusin <zackr@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: José Fonseca <jfonseca@vmware.com>
-rw-r--r--src/gallium/auxiliary/draw/draw_llvm.c8
-rw-r--r--src/gallium/auxiliary/draw/draw_llvm.h17
2 files changed, 15 insertions, 10 deletions
diff --git a/src/gallium/auxiliary/draw/draw_llvm.c b/src/gallium/auxiliary/draw/draw_llvm.c
index d0199bb..5100ce0 100644
--- a/src/gallium/auxiliary/draw/draw_llvm.c
+++ b/src/gallium/auxiliary/draw/draw_llvm.c
@@ -203,7 +203,7 @@ create_jit_context_type(struct gallivm_state *gallivm,
{
LLVMTargetDataRef target = gallivm->target;
LLVMTypeRef float_type = LLVMFloatTypeInContext(gallivm->context);
- LLVMTypeRef elem_types[5];
+ LLVMTypeRef elem_types[DRAW_JIT_CTX_NUM_FIELDS];
LLVMTypeRef context_type;
elem_types[0] = LLVMArrayType(LLVMPointerType(float_type, 0), /* vs_constants */
@@ -224,11 +224,11 @@ create_jit_context_type(struct gallivm_state *gallivm,
#endif
LP_CHECK_MEMBER_OFFSET(struct draw_jit_context, vs_constants,
- target, context_type, 0);
+ target, context_type, DRAW_JIT_CTX_CONSTANTS);
LP_CHECK_MEMBER_OFFSET(struct draw_jit_context, planes,
- target, context_type, 1);
+ target, context_type, DRAW_JIT_CTX_PLANES);
LP_CHECK_MEMBER_OFFSET(struct draw_jit_context, viewport,
- target, context_type, 2);
+ target, context_type, DRAW_JIT_CTX_VIEWPORT);
LP_CHECK_MEMBER_OFFSET(struct draw_jit_context, textures,
target, context_type,
DRAW_JIT_CTX_TEXTURES);
diff --git a/src/gallium/auxiliary/draw/draw_llvm.h b/src/gallium/auxiliary/draw/draw_llvm.h
index 8df02a2..5909fc1 100644
--- a/src/gallium/auxiliary/draw/draw_llvm.h
+++ b/src/gallium/auxiliary/draw/draw_llvm.h
@@ -130,18 +130,23 @@ struct draw_jit_context
struct draw_jit_sampler samplers[PIPE_MAX_SAMPLERS];
};
+enum {
+ DRAW_JIT_CTX_CONSTANTS = 0,
+ DRAW_JIT_CTX_PLANES = 1,
+ DRAW_JIT_CTX_VIEWPORT = 2,
+ DRAW_JIT_CTX_TEXTURES = 3,
+ DRAW_JIT_CTX_SAMPLERS = 4,
+ DRAW_JIT_CTX_NUM_FIELDS
+};
#define draw_jit_context_vs_constants(_gallivm, _ptr) \
- lp_build_struct_get_ptr(_gallivm, _ptr, 0, "vs_constants")
+ lp_build_struct_get_ptr(_gallivm, _ptr, DRAW_JIT_CTX_CONSTANTS, "vs_constants")
#define draw_jit_context_planes(_gallivm, _ptr) \
- lp_build_struct_get(_gallivm, _ptr, 1, "planes")
+ lp_build_struct_get(_gallivm, _ptr, DRAW_JIT_CTX_PLANES, "planes")
#define draw_jit_context_viewport(_gallivm, _ptr) \
- lp_build_struct_get(_gallivm, _ptr, 2, "viewport")
-
-#define DRAW_JIT_CTX_TEXTURES 3
-#define DRAW_JIT_CTX_SAMPLERS 4
+ lp_build_struct_get(_gallivm, _ptr, DRAW_JIT_CTX_VIEWPORT, "viewport")
#define draw_jit_context_textures(_gallivm, _ptr) \
lp_build_struct_get_ptr(_gallivm, _ptr, DRAW_JIT_CTX_TEXTURES, "textures")