vs->id = brw->program_id++;
//vs->has_flow_control = brw_wm_has_flow_control(vs);
- /* Tell the draw module about this shader:
- */
+ vs->tokens = tgsi_dup_tokens(shader->tokens);
+ if (vs->tokens == NULL)
+ goto fail;
+
+ tgsi_scan_shader(vs->tokens, &vs->info);
/* Done:
*/
return (void *)vs;
+
+fail:
+ FREE(vs);
+ return NULL;
}
/* XXX: immediates can go elsewhere if necessary:
*/
assert(c->vp->info.file_max[TGSI_FILE_IMMEDIATE] +
- c->vp->info.file_max[TGSI_FILE_TEMPORARY] + 21 > BRW_MAX_GRF);
+ c->vp->info.file_max[TGSI_FILE_TEMPORARY] + 21 <= BRW_MAX_GRF);
c->vp->use_const_buffer = GL_FALSE;
}