glthread: reduce pointer dereferences in glthread_unmarshal_batch
[mesa.git] / src / mesa / main / glthread.c
index 3b6051834834128cb238b59878d0a1de78d3f03e..eae468e211cb039846427a22b5b280fb1851d800 100644 (file)
@@ -44,19 +44,21 @@ glthread_unmarshal_batch(void *job, int thread_index)
 {
    struct glthread_batch *batch = (struct glthread_batch*)job;
    struct gl_context *ctx = batch->ctx;
-   size_t pos = 0;
+   int pos = 0;
+   int used = batch->used;
+   uint8_t *buffer = batch->buffer;
 
    _glapi_set_dispatch(ctx->CurrentServerDispatch);
 
-   while (pos < batch->used) {
+   while (pos < used) {
       const struct marshal_cmd_base *cmd =
-         (const struct marshal_cmd_base *)&batch->buffer[pos];
+         (const struct marshal_cmd_base *)&buffer[pos];
 
       _mesa_unmarshal_dispatch[cmd->cmd_id](ctx, cmd);
       pos += cmd->cmd_size;
    }
 
-   assert(pos == batch->used);
+   assert(pos == used);
    batch->used = 0;
 }