i965: Fold the gen7_cc_viewport_state_pointer atom into brw_cc_vp.
These always happen together; the extra atom just means another item to iterate through, flags to check, and a call through a function pointer. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
@@ -62,7 +62,14 @@ brw_upload_cc_vp(struct brw_context *brw)
|
||||
}
|
||||
}
|
||||
|
||||
brw->state.dirty.cache |= CACHE_NEW_CC_VP;
|
||||
if (brw->gen >= 7) {
|
||||
BEGIN_BATCH(2);
|
||||
OUT_BATCH(_3DSTATE_VIEWPORT_STATE_POINTERS_CC << 16 | (2 - 2));
|
||||
OUT_BATCH(brw->cc.vp_offset);
|
||||
ADVANCE_BATCH();
|
||||
} else {
|
||||
brw->state.dirty.cache |= CACHE_NEW_CC_VP;
|
||||
}
|
||||
}
|
||||
|
||||
const struct brw_tracked_state brw_cc_vp = {
|
||||
|
||||
@@ -117,7 +117,6 @@ extern const struct brw_tracked_state gen6_vs_state;
|
||||
extern const struct brw_tracked_state gen6_wm_push_constants;
|
||||
extern const struct brw_tracked_state gen6_wm_state;
|
||||
extern const struct brw_tracked_state gen7_depthbuffer;
|
||||
extern const struct brw_tracked_state gen7_cc_viewport_state_pointer;
|
||||
extern const struct brw_tracked_state gen7_clip_state;
|
||||
extern const struct brw_tracked_state gen7_disable_stages;
|
||||
extern const struct brw_tracked_state gen7_gs_push_constants;
|
||||
|
||||
@@ -190,7 +190,6 @@ static const struct brw_tracked_state *gen7_atoms[] =
|
||||
&brw_state_base_address,
|
||||
|
||||
&brw_cc_vp,
|
||||
&gen7_cc_viewport_state_pointer, /* must do after brw_cc_vp */
|
||||
&gen7_sf_clip_viewport,
|
||||
|
||||
&gen7_push_constant_space,
|
||||
@@ -265,7 +264,6 @@ static const struct brw_tracked_state *gen8_atoms[] =
|
||||
&gen8_state_base_address,
|
||||
|
||||
&brw_cc_vp,
|
||||
&gen7_cc_viewport_state_pointer, /* must do after brw_cc_vp */
|
||||
&gen8_sf_clip_viewport,
|
||||
|
||||
&gen7_push_constant_space,
|
||||
|
||||
@@ -99,22 +99,3 @@ const struct brw_tracked_state gen7_sf_clip_viewport = {
|
||||
},
|
||||
.emit = gen7_upload_sf_clip_viewport,
|
||||
};
|
||||
|
||||
/* ----------------------------------------------------- */
|
||||
|
||||
static void upload_cc_viewport_state_pointer(struct brw_context *brw)
|
||||
{
|
||||
BEGIN_BATCH(2);
|
||||
OUT_BATCH(_3DSTATE_VIEWPORT_STATE_POINTERS_CC << 16 | (2 - 2));
|
||||
OUT_BATCH(brw->cc.vp_offset);
|
||||
ADVANCE_BATCH();
|
||||
}
|
||||
|
||||
const struct brw_tracked_state gen7_cc_viewport_state_pointer = {
|
||||
.dirty = {
|
||||
.mesa = 0,
|
||||
.brw = BRW_NEW_BATCH,
|
||||
.cache = CACHE_NEW_CC_VP
|
||||
},
|
||||
.emit = upload_cc_viewport_state_pointer,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user