diff options
author | Chia-I Wu <[email protected]> | 2013-06-20 17:42:21 +0800 |
---|---|---|
committer | Chia-I Wu <[email protected]> | 2013-06-25 13:17:21 +0800 |
commit | 851202c319701c541d52f87ffa22505504c50d57 (patch) | |
tree | 0d36147c66cd5bf795168fb567c0089761f579d6 /src/gallium/drivers/ilo/ilo_gpe.h | |
parent | d209da5e338ee1f437cbce21e9cba667d60ee557 (diff) |
ilo: use ilo_shader_cso for GS
Add ilo_gpe_init_gs_cso() to construct 3DSTATE_GS once and early for geometry
shaders.
Diffstat (limited to 'src/gallium/drivers/ilo/ilo_gpe.h')
-rw-r--r-- | src/gallium/drivers/ilo/ilo_gpe.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/gallium/drivers/ilo/ilo_gpe.h b/src/gallium/drivers/ilo/ilo_gpe.h index b5d0163f909..e9141f7c3af 100644 --- a/src/gallium/drivers/ilo/ilo_gpe.h +++ b/src/gallium/drivers/ilo/ilo_gpe.h @@ -438,4 +438,27 @@ ilo_gpe_init_vs_cso(const struct ilo_dev_info *dev, const struct ilo_shader_state *vs, struct ilo_shader_cso *cso); +void +ilo_gpe_init_gs_cso_gen6(const struct ilo_dev_info *dev, + const struct ilo_shader_state *gs, + struct ilo_shader_cso *cso); + +void +ilo_gpe_init_gs_cso_gen7(const struct ilo_dev_info *dev, + const struct ilo_shader_state *gs, + struct ilo_shader_cso *cso); + +static inline void +ilo_gpe_init_gs_cso(const struct ilo_dev_info *dev, + const struct ilo_shader_state *gs, + struct ilo_shader_cso *cso) +{ + if (dev->gen >= ILO_GEN(7)) { + ilo_gpe_init_gs_cso_gen7(dev, gs, cso); + } + else { + ilo_gpe_init_gs_cso_gen6(dev, gs, cso); + } +} + #endif /* ILO_GPE_H */ |