[Mesa-dev] [PATCH 8/8] i965/vs: Move struct brw_compile (p) entirely inside vec4_generator.

Anuj Phogat anuj.phogat at gmail.com
Tue Nov 27 13:16:28 PST 2012


On Tue, Nov 27, 2012 at 12:42 AM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> The brw_compile structure contains the brw_instruction store and the
> brw_eu_emit.c state tracking fields.  These are only useful for the
> final assembly generation pass; the earlier compilation stages doesn't
> need them.
>
> This also means that the code generator for future hardware won't have
> access to the brw_compile structure, which is extremely desirable
> because it prevents accidental generation of Gen4-7 code.
> ---
>  src/mesa/drivers/dri/i965/brw_vec4.cpp      | 2 --
>  src/mesa/drivers/dri/i965/brw_vec4_emit.cpp | 4 +++-
>  src/mesa/drivers/dri/i965/brw_vs.h          | 1 -
>  3 files changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp
> index d705235..34c34d7 100644
> --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp
> @@ -1136,8 +1136,6 @@ brw_vs_emit(struct brw_context *brw,
>     bool start_busy = false;
>     float start_time = 0;
>
> -   brw_init_compile(brw, &c->func, mem_ctx);
> -
>     if (unlikely(INTEL_DEBUG & DEBUG_PERF)) {
>        start_busy = (intel->batch.last_bo &&
>                      drm_intel_bo_busy(intel->batch.last_bo));
> diff --git a/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp b/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp
> index c033804..12694e2 100644
> --- a/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_vec4_emit.cpp
> @@ -140,7 +140,9 @@ vec4_generator::vec4_generator(struct brw_context *brw,
>  {
>     intel = &brw->intel;
>     vp = &c->vp->program;
> -   p = &c->func;
> +
> +   p = rzalloc(mem_ctx, struct brw_compile);
> +   brw_init_compile(brw, p, mem_ctx);
>  }
>
>  vec4_generator::~vec4_generator()
> diff --git a/src/mesa/drivers/dri/i965/brw_vs.h b/src/mesa/drivers/dri/i965/brw_vs.h
> index 7ac1775..75c8a5f 100644
> --- a/src/mesa/drivers/dri/i965/brw_vs.h
> +++ b/src/mesa/drivers/dri/i965/brw_vs.h
> @@ -94,7 +94,6 @@ struct brw_vs_prog_key {
>
>
>  struct brw_vs_compile {
> -   struct brw_compile func;
>     struct brw_vs_prog_key key;
>     struct brw_vs_prog_data prog_data;
>
> --
> 1.8.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev

I haven't tested the patches. But changes look sensible to me.
This series is Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>


More information about the mesa-dev mailing list