summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdiel Janulgue <abdiel.janulgue@linux.intel.com>2014-12-15 15:40:05 +0200
committerAbdiel Janulgue <abdiel.janulgue@linux.intel.com>2015-09-11 11:22:57 +0300
commited40102501e77e18fa84df85860e279e72284312 (patch)
treedb3263783ca698fa08d70ee0fb5d781a44fc2527
parentd5b1bbf45739cd08eca5283369531bb89d570db8 (diff)
i965: Upload UBO surfaces before emitting constant state packet
Now that UBOs are uploaded as push constants. We need to obtain and append the amount of push constant entries generated by the UBO entry fetches to the 3DSTATE_CONSTANT_* packets. v2: GEN8 support Signed-off-by: Abdiel Janulgue <abdiel.janulgue@linux.intel.com>
-rw-r--r--src/mesa/drivers/dri/i965/brw_state_upload.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_state_upload.c b/src/mesa/drivers/dri/i965/brw_state_upload.c
index b2ca9c2c0e..280340f9bb 100644
--- a/src/mesa/drivers/dri/i965/brw_state_upload.c
+++ b/src/mesa/drivers/dri/i965/brw_state_upload.c
@@ -197,6 +197,9 @@ static const struct brw_tracked_state *gen7_render_atoms[] =
&brw_vs_image_surfaces, /* Before vs push/pull constants and binding table */
&brw_gs_image_surfaces, /* Before gs push/pull constants and binding table */
&brw_wm_image_surfaces, /* Before wm push/pull constants and binding table */
+ &brw_vs_ubo_surfaces,
+ &brw_gs_ubo_surfaces,
+ &brw_wm_ubo_surfaces,
&gen6_vs_push_constants, /* Before vs_state */
&gen6_gs_push_constants, /* Before gs_state */
@@ -206,13 +209,10 @@ static const struct brw_tracked_state *gen7_render_atoms[] =
* table upload must be last.
*/
&brw_vs_pull_constants,
- &brw_vs_ubo_surfaces,
&brw_vs_abo_surfaces,
&brw_gs_pull_constants,
- &brw_gs_ubo_surfaces,
&brw_gs_abo_surfaces,
&brw_wm_pull_constants,
- &brw_wm_ubo_surfaces,
&brw_wm_abo_surfaces,
&gen6_renderbuffer_surfaces,
&brw_texture_surfaces,
@@ -281,6 +281,9 @@ static const struct brw_tracked_state *gen8_render_atoms[] =
&brw_vs_image_surfaces, /* Before vs push/pull constants and binding table */
&brw_gs_image_surfaces, /* Before gs push/pull constants and binding table */
&brw_wm_image_surfaces, /* Before wm push/pull constants and binding table */
+ &brw_vs_ubo_surfaces,
+ &brw_gs_ubo_surfaces,
+ &brw_wm_ubo_surfaces,
&gen6_vs_push_constants, /* Before vs_state */
&gen6_gs_push_constants, /* Before gs_state */
@@ -290,13 +293,10 @@ static const struct brw_tracked_state *gen8_render_atoms[] =
* table upload must be last.
*/
&brw_vs_pull_constants,
- &brw_vs_ubo_surfaces,
&brw_vs_abo_surfaces,
&brw_gs_pull_constants,
- &brw_gs_ubo_surfaces,
&brw_gs_abo_surfaces,
&brw_wm_pull_constants,
- &brw_wm_ubo_surfaces,
&brw_wm_abo_surfaces,
&gen6_renderbuffer_surfaces,
&brw_texture_surfaces,