diff options
author | Nanley Chery <[email protected]> | 2016-09-30 15:26:19 -0700 |
---|---|---|
committer | Nanley Chery <[email protected]> | 2016-10-31 13:20:00 -0700 |
commit | 477ea60b68d3e9a16d1f4947f95e3e7ce20e6f67 (patch) | |
tree | 36be84e2a3dd108415ce35f8d77a1c9720ec536c /src | |
parent | 06e3cd6a45ae2ad19f77e0f283c46d5f85112847 (diff) |
i965: Program 3DSTATE_AA_LINE_PARAMETERS in upload_invariant_state
This packet is non-pipelined and doesn't ever change across emissions.
Signed-off-by: Nanley Chery <[email protected]>
Reviewed-by: Anuj Phogat <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_misc_state.c | 41 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_state.h | 1 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_state_upload.c | 4 |
3 files changed, 10 insertions, 36 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c index 6fce0389397..40a8d07bfb4 100644 --- a/src/mesa/drivers/dri/i965/brw_misc_state.c +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c @@ -793,37 +793,6 @@ const struct brw_tracked_state brw_polygon_stipple_offset = { }; /** - * AA Line parameters - */ -static void -upload_aa_line_parameters(struct brw_context *brw) -{ - struct gl_context *ctx = &brw->ctx; - - if (!ctx->Line.SmoothFlag) - return; - - /* Original Gen4 doesn't have 3DSTATE_AA_LINE_PARAMETERS. */ - if (brw->gen == 4 && !brw->is_g4x) - return; - - BEGIN_BATCH(3); - OUT_BATCH(_3DSTATE_AA_LINE_PARAMETERS << 16 | (3 - 2)); - /* use legacy aa line coverage computation */ - OUT_BATCH(0); - OUT_BATCH(0); - ADVANCE_BATCH(); -} - -const struct brw_tracked_state brw_aa_line_parameters = { - .dirty = { - .mesa = _NEW_LINE, - .brw = BRW_NEW_CONTEXT, - }, - .emit = upload_aa_line_parameters -}; - -/** * Line stipple packet */ static void @@ -1027,6 +996,16 @@ brw_upload_invariant_state(struct brw_context *brw) ADVANCE_BATCH(); } + /* Original Gen4 doesn't have 3DSTATE_AA_LINE_PARAMETERS. */ + if (!is_965) { + BEGIN_BATCH(3); + OUT_BATCH(_3DSTATE_AA_LINE_PARAMETERS << 16 | (3 - 2)); + /* use legacy aa line coverage computation */ + OUT_BATCH(0); + OUT_BATCH(0); + ADVANCE_BATCH(); + } + const uint32_t _3DSTATE_VF_STATISTICS = is_965 ? GEN4_3DSTATE_VF_STATISTICS : GM45_3DSTATE_VF_STATISTICS; BEGIN_BATCH(1); diff --git a/src/mesa/drivers/dri/i965/brw_state.h b/src/mesa/drivers/dri/i965/brw_state.h index 1420aaba59e..75e497f7b2c 100644 --- a/src/mesa/drivers/dri/i965/brw_state.h +++ b/src/mesa/drivers/dri/i965/brw_state.h @@ -57,7 +57,6 @@ extern const struct brw_tracked_state brw_invariant_state; extern const struct brw_tracked_state brw_fs_samplers; extern const struct brw_tracked_state brw_gs_unit; extern const struct brw_tracked_state brw_line_stipple; -extern const struct brw_tracked_state brw_aa_line_parameters; extern const struct brw_tracked_state brw_binding_table_pointers; extern const struct brw_tracked_state brw_depthbuffer; extern const struct brw_tracked_state brw_polygon_stipple_offset; diff --git a/src/mesa/drivers/dri/i965/brw_state_upload.c b/src/mesa/drivers/dri/i965/brw_state_upload.c index 015ea6e9610..2461ee5800c 100644 --- a/src/mesa/drivers/dri/i965/brw_state_upload.c +++ b/src/mesa/drivers/dri/i965/brw_state_upload.c @@ -90,7 +90,6 @@ static const struct brw_tracked_state *gen4_atoms[] = &brw_polygon_stipple_offset, &brw_line_stipple, - &brw_aa_line_parameters, &brw_psp_urb_cbs, @@ -160,7 +159,6 @@ static const struct brw_tracked_state *gen6_atoms[] = &brw_polygon_stipple_offset, &brw_line_stipple, - &brw_aa_line_parameters, &brw_drawing_rect, @@ -251,7 +249,6 @@ static const struct brw_tracked_state *gen7_render_atoms[] = &brw_polygon_stipple_offset, &brw_line_stipple, - &brw_aa_line_parameters, &brw_drawing_rect, @@ -360,7 +357,6 @@ static const struct brw_tracked_state *gen8_render_atoms[] = &brw_polygon_stipple_offset, &brw_line_stipple, - &brw_aa_line_parameters, &brw_drawing_rect, |