From 639a2cddc6b95a287337f4ec1f18d714cb7e6baa Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Fri, 21 Jun 2013 12:30:23 +0800 Subject: [PATCH] ilo: use ilo_rasterizer_state exclusively in GPE Replace pipe_rasterizer_state by ilo_rasterizer_state for the remaining GPE functions for consistency. --- .../drivers/ilo/ilo_3d_pipeline_gen7.c | 3 +-- src/gallium/drivers/ilo/ilo_gpe_gen6.c | 19 +++++++++++-------- src/gallium/drivers/ilo/ilo_gpe_gen6.h | 4 ++-- src/gallium/drivers/ilo/ilo_gpe_gen7.c | 4 ++-- src/gallium/drivers/ilo/ilo_gpe_gen7.h | 2 +- 5 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/gallium/drivers/ilo/ilo_3d_pipeline_gen7.c b/src/gallium/drivers/ilo/ilo_3d_pipeline_gen7.c index 20f06d6ebd5..a86b495f8e0 100644 --- a/src/gallium/drivers/ilo/ilo_3d_pipeline_gen7.c +++ b/src/gallium/drivers/ilo/ilo_3d_pipeline_gen7.c @@ -442,8 +442,7 @@ gen7_pipeline_sf(struct ilo_3d_pipeline *p, (ilo->gs)? ilo->gs->shader : (ilo->vs)? ilo->vs->shader : NULL; - p->gen7_3DSTATE_SBE(p->dev, - &ilo->rasterizer->state, fs, last_sh, p->cp); + p->gen7_3DSTATE_SBE(p->dev, ilo->rasterizer, fs, last_sh, p->cp); } /* 3DSTATE_SF */ diff --git a/src/gallium/drivers/ilo/ilo_gpe_gen6.c b/src/gallium/drivers/ilo/ilo_gpe_gen6.c index ad0884ec752..7e1131867e7 100644 --- a/src/gallium/drivers/ilo/ilo_gpe_gen6.c +++ b/src/gallium/drivers/ilo/ilo_gpe_gen6.c @@ -1757,11 +1757,13 @@ ilo_gpe_init_rasterizer_sf(const struct ilo_dev_info *dev, */ void ilo_gpe_gen6_fill_3dstate_sf_raster(const struct ilo_dev_info *dev, - const struct ilo_rasterizer_sf *sf, + const struct ilo_rasterizer_state *rasterizer, int num_samples, enum pipe_format depth_format, uint32_t *payload, unsigned payload_len) { + const struct ilo_rasterizer_sf *sf = &rasterizer->sf; + assert(payload_len == Elements(sf->payload)); if (sf) { @@ -1811,7 +1813,7 @@ ilo_gpe_gen6_fill_3dstate_sf_raster(const struct ilo_dev_info *dev, */ void ilo_gpe_gen6_fill_3dstate_sf_sbe(const struct ilo_dev_info *dev, - const struct pipe_rasterizer_state *rasterizer, + const struct ilo_rasterizer_state *rasterizer, const struct ilo_shader *fs, const struct ilo_shader *last_sh, uint32_t *dw, int num_dwords) @@ -1868,11 +1870,11 @@ ilo_gpe_gen6_fill_3dstate_sf_sbe(const struct ilo_dev_info *dev, * TODO We do not check that yet. */ if (semantic == TGSI_SEMANTIC_GENERIC && - (rasterizer->sprite_coord_enable & (1 << index))) + (rasterizer->state.sprite_coord_enable & (1 << index))) point_sprite_enable |= 1 << dst; if (interp == TGSI_INTERPOLATE_CONSTANT || - (interp == TGSI_INTERPOLATE_COLOR && rasterizer->flatshade)) + (interp == TGSI_INTERPOLATE_COLOR && rasterizer->state.flatshade)) const_interp_enable |= 1 << dst; if (!last_sh) { @@ -1889,7 +1891,8 @@ ilo_gpe_gen6_fill_3dstate_sf_sbe(const struct ilo_dev_info *dev, ctrl = src; - if (semantic == TGSI_SEMANTIC_COLOR && rasterizer->light_twoside && + if (semantic == TGSI_SEMANTIC_COLOR && + rasterizer->state.light_twoside && src < vue_len - 1) { const int next = src + 1; @@ -1984,7 +1987,7 @@ ilo_gpe_gen6_fill_3dstate_sf_sbe(const struct ilo_dev_info *dev, dw[0] |= GEN6_SF_SWIZZLE_ENABLE; } - switch (rasterizer->sprite_coord_mode) { + switch (rasterizer->state.sprite_coord_mode) { case PIPE_SPRITE_COORD_UPPER_LEFT: dw[0] |= GEN6_SF_POINT_SPRITE_UPPERLEFT; break; @@ -2017,9 +2020,9 @@ gen6_emit_3DSTATE_SF(const struct ilo_dev_info *dev, ILO_GPE_VALID_GEN(dev, 6, 6); - ilo_gpe_gen6_fill_3dstate_sf_raster(dev, &rasterizer->sf, + ilo_gpe_gen6_fill_3dstate_sf_raster(dev, rasterizer, 1, PIPE_FORMAT_NONE, payload_raster, Elements(payload_raster)); - ilo_gpe_gen6_fill_3dstate_sf_sbe(dev, &rasterizer->state, + ilo_gpe_gen6_fill_3dstate_sf_sbe(dev, rasterizer, fs, last_sh, payload_sbe, Elements(payload_sbe)); ilo_cp_begin(cp, cmd_len); diff --git a/src/gallium/drivers/ilo/ilo_gpe_gen6.h b/src/gallium/drivers/ilo/ilo_gpe_gen6.h index a8a986a9440..433d2c898b7 100644 --- a/src/gallium/drivers/ilo/ilo_gpe_gen6.h +++ b/src/gallium/drivers/ilo/ilo_gpe_gen6.h @@ -544,14 +544,14 @@ ilo_gpe_gen6_translate_texture(enum pipe_texture_target target); void ilo_gpe_gen6_fill_3dstate_sf_raster(const struct ilo_dev_info *dev, - const struct ilo_rasterizer_sf *sf, + const struct ilo_rasterizer_state *rasterizer, int num_samples, enum pipe_format depth_format, uint32_t *payload, unsigned payload_len); void ilo_gpe_gen6_fill_3dstate_sf_sbe(const struct ilo_dev_info *dev, - const struct pipe_rasterizer_state *rasterizer, + const struct ilo_rasterizer_state *rasterizer, const struct ilo_shader *fs, const struct ilo_shader *last_sh, uint32_t *dw, int num_dwords); diff --git a/src/gallium/drivers/ilo/ilo_gpe_gen7.c b/src/gallium/drivers/ilo/ilo_gpe_gen7.c index 79e01d7968f..40c23d913f0 100644 --- a/src/gallium/drivers/ilo/ilo_gpe_gen7.c +++ b/src/gallium/drivers/ilo/ilo_gpe_gen7.c @@ -184,7 +184,7 @@ gen7_emit_3DSTATE_SF(const struct ilo_dev_info *dev, ILO_GPE_VALID_GEN(dev, 7, 7); ilo_gpe_gen6_fill_3dstate_sf_raster(dev, - &rasterizer->sf, num_samples, + rasterizer, num_samples, (zs_surf) ? zs_surf->format : PIPE_FORMAT_NONE, payload, Elements(payload)); @@ -654,7 +654,7 @@ gen7_emit_3DSTATE_STREAMOUT(const struct ilo_dev_info *dev, static void gen7_emit_3DSTATE_SBE(const struct ilo_dev_info *dev, - const struct pipe_rasterizer_state *rasterizer, + const struct ilo_rasterizer_state *rasterizer, const struct ilo_shader *fs, const struct ilo_shader *last_sh, struct ilo_cp *cp) diff --git a/src/gallium/drivers/ilo/ilo_gpe_gen7.h b/src/gallium/drivers/ilo/ilo_gpe_gen7.h index ac0fb0ee29f..e81884ebf7f 100644 --- a/src/gallium/drivers/ilo/ilo_gpe_gen7.h +++ b/src/gallium/drivers/ilo/ilo_gpe_gen7.h @@ -224,7 +224,7 @@ typedef void typedef void (*ilo_gpe_gen7_3DSTATE_SBE)(const struct ilo_dev_info *dev, - const struct pipe_rasterizer_state *rasterizer, + const struct ilo_rasterizer_state *rasterizer, const struct ilo_shader *fs, const struct ilo_shader *last_sh, struct ilo_cp *cp); -- 2.30.2