+ brw_create_constant_surface(brw, const_bo, const_offset, size,
+ &stage_state->surf_offset[surf_index]);
+ drm_intel_bo_unreference(const_bo);
+
+ brw->ctx.NewDriverState |= brw_new_constbuf;
+}
+
+
+/* Creates a new VS constant buffer reflecting the current VS program's
+ * constants, if needed by the VS program.
+ *
+ * Otherwise, constants go through the CURBEs using the brw_constant_buffer
+ * state atom.
+ */
+static void
+brw_upload_vs_pull_constants(struct brw_context *brw)
+{
+ struct brw_stage_state *stage_state = &brw->vs.base;
+
+ /* BRW_NEW_VERTEX_PROGRAM */
+ struct brw_vertex_program *vp =
+ (struct brw_vertex_program *) brw->vertex_program;