Ken came up with an idea to introduce new state flag for blorp and to use it instead of trashing all the other bits. This series introduces the flag and makes every atom to track it by default. Finally blorp is made to track base state address and urb setup allowing one to skip unnecessary re-emissions.
Kenneth Graunke (1): i965: Make all atoms to track BRW_NEW_BLORP by default Topi Pohjolainen (6): i965: Remove pointers to non-existing atoms i965/blorp/gen6: Use normal base state address setup i965: Introduce state flag for blorp i965/blorp: Use BRW_NEW_BLORP instead of trashing all state bits i965/blorp: Reconfigure base state address only if needed i965/blorp: Do not tricker re-emission of base state address src/mesa/drivers/dri/i965/brw_binding_tables.c | 10 ++++- src/mesa/drivers/dri/i965/brw_blorp.cpp | 4 +- src/mesa/drivers/dri/i965/brw_blorp.h | 4 -- src/mesa/drivers/dri/i965/brw_cc.c | 7 ++- src/mesa/drivers/dri/i965/brw_clip.c | 3 +- src/mesa/drivers/dri/i965/brw_clip_state.c | 1 + src/mesa/drivers/dri/i965/brw_context.h | 2 + src/mesa/drivers/dri/i965/brw_curbe.c | 2 + src/mesa/drivers/dri/i965/brw_draw_upload.c | 5 ++- src/mesa/drivers/dri/i965/brw_gs_state.c | 1 + src/mesa/drivers/dri/i965/brw_gs_surface_state.c | 4 ++ src/mesa/drivers/dri/i965/brw_interpolation_map.c | 3 +- src/mesa/drivers/dri/i965/brw_misc_state.c | 22 ++++++--- src/mesa/drivers/dri/i965/brw_primitive_restart.c | 3 +- src/mesa/drivers/dri/i965/brw_sampler_state.c | 6 +++ src/mesa/drivers/dri/i965/brw_sf.c | 3 +- src/mesa/drivers/dri/i965/brw_sf_state.c | 4 +- src/mesa/drivers/dri/i965/brw_state.h | 8 ---- src/mesa/drivers/dri/i965/brw_state_upload.c | 1 + src/mesa/drivers/dri/i965/brw_tcs_surface_state.c | 4 ++ src/mesa/drivers/dri/i965/brw_tes_surface_state.c | 4 ++ src/mesa/drivers/dri/i965/brw_urb.c | 3 +- src/mesa/drivers/dri/i965/brw_vs_state.c | 1 + src/mesa/drivers/dri/i965/brw_vs_surface_state.c | 4 ++ src/mesa/drivers/dri/i965/brw_wm_state.c | 1 + src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 16 ++++++- src/mesa/drivers/dri/i965/gen6_blorp.cpp | 52 ++-------------------- src/mesa/drivers/dri/i965/gen6_cc.c | 2 + src/mesa/drivers/dri/i965/gen6_clip_state.c | 6 ++- src/mesa/drivers/dri/i965/gen6_depthstencil.c | 1 + src/mesa/drivers/dri/i965/gen6_gs_state.c | 2 + src/mesa/drivers/dri/i965/gen6_multisample_state.c | 3 +- src/mesa/drivers/dri/i965/gen6_sampler_state.c | 1 + src/mesa/drivers/dri/i965/gen6_scissor_state.c | 3 +- src/mesa/drivers/dri/i965/gen6_sf_state.c | 3 +- src/mesa/drivers/dri/i965/gen6_sol.c | 2 + src/mesa/drivers/dri/i965/gen6_urb.c | 3 +- src/mesa/drivers/dri/i965/gen6_viewport_state.c | 7 ++- src/mesa/drivers/dri/i965/gen6_vs_state.c | 2 + src/mesa/drivers/dri/i965/gen6_wm_state.c | 2 + src/mesa/drivers/dri/i965/gen7_blorp.cpp | 5 ++- src/mesa/drivers/dri/i965/gen7_cs_state.c | 3 ++ src/mesa/drivers/dri/i965/gen7_ds_state.c | 2 + src/mesa/drivers/dri/i965/gen7_gs_state.c | 1 + src/mesa/drivers/dri/i965/gen7_hs_state.c | 2 + src/mesa/drivers/dri/i965/gen7_l3_state.c | 1 + src/mesa/drivers/dri/i965/gen7_misc_state.c | 3 +- src/mesa/drivers/dri/i965/gen7_sf_state.c | 6 ++- src/mesa/drivers/dri/i965/gen7_sol_state.c | 1 + src/mesa/drivers/dri/i965/gen7_te_state.c | 3 +- src/mesa/drivers/dri/i965/gen7_urb.c | 3 +- src/mesa/drivers/dri/i965/gen7_viewport_state.c | 3 +- src/mesa/drivers/dri/i965/gen7_vs_state.c | 1 + src/mesa/drivers/dri/i965/gen7_wm_state.c | 2 + src/mesa/drivers/dri/i965/gen8_blend_state.c | 4 +- src/mesa/drivers/dri/i965/gen8_blorp.cpp | 4 +- src/mesa/drivers/dri/i965/gen8_depth_state.c | 3 +- src/mesa/drivers/dri/i965/gen8_disable.c | 3 +- src/mesa/drivers/dri/i965/gen8_draw_upload.c | 5 ++- src/mesa/drivers/dri/i965/gen8_ds_state.c | 1 + src/mesa/drivers/dri/i965/gen8_gs_state.c | 1 + src/mesa/drivers/dri/i965/gen8_hs_state.c | 1 + src/mesa/drivers/dri/i965/gen8_multisample_state.c | 3 +- src/mesa/drivers/dri/i965/gen8_ps_state.c | 7 ++- src/mesa/drivers/dri/i965/gen8_sf_state.c | 9 ++-- src/mesa/drivers/dri/i965/gen8_sol_state.c | 1 + src/mesa/drivers/dri/i965/gen8_viewport_state.c | 3 +- src/mesa/drivers/dri/i965/gen8_vs_state.c | 1 + src/mesa/drivers/dri/i965/gen8_wm_depth_stencil.c | 3 +- 69 files changed, 189 insertions(+), 111 deletions(-) -- 2.5.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev