mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 02:48:06 +02:00
i965/fs: Move struct brw_compile (p) entirely inside fs_generator.
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. v2: rzalloc p, as suggested by Eric. Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Paul Berry <stereotype441@gmail.com>
This commit is contained in:
parent
ea681a0d64
commit
9136723214
6 changed files with 4 additions and 6 deletions
|
|
@ -2133,8 +2133,6 @@ brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c,
|
|||
bool start_busy = false;
|
||||
float start_time = 0;
|
||||
|
||||
brw_init_compile(brw, &c->func, c);
|
||||
|
||||
if (unlikely(INTEL_DEBUG & DEBUG_PERF)) {
|
||||
start_busy = (intel->batch.last_bo &&
|
||||
drm_intel_bo_busy(intel->batch.last_bo));
|
||||
|
|
|
|||
|
|
@ -45,13 +45,15 @@ fs_generator::fs_generator(struct brw_context *brw,
|
|||
|
||||
: brw(brw), c(c), prog(prog), fp(fp), dual_source_output(dual_source_output)
|
||||
{
|
||||
p = &c->func;
|
||||
intel = &brw->intel;
|
||||
ctx = &intel->ctx;
|
||||
|
||||
shader = prog ? prog->_LinkedShaders[MESA_SHADER_FRAGMENT] : NULL;
|
||||
|
||||
mem_ctx = c;
|
||||
|
||||
p = rzalloc(mem_ctx, struct brw_compile);
|
||||
brw_init_compile(brw, p, mem_ctx);
|
||||
}
|
||||
|
||||
fs_generator::~fs_generator()
|
||||
|
|
|
|||
|
|
@ -2182,7 +2182,6 @@ fs_visitor::fs_visitor(struct brw_context *brw,
|
|||
: dispatch_width(dispatch_width)
|
||||
{
|
||||
this->c = c;
|
||||
this->p = &c->func;
|
||||
this->brw = brw;
|
||||
this->fp = fp;
|
||||
this->prog = prog;
|
||||
|
|
|
|||
|
|
@ -41,7 +41,6 @@ public:
|
|||
struct brw_context *brw;
|
||||
struct intel_context *intel;
|
||||
struct gl_context *ctx;
|
||||
struct brw_compile *p;
|
||||
struct brw_shader *shader;
|
||||
struct gl_shader_program *prog;
|
||||
|
||||
|
|
|
|||
|
|
@ -215,6 +215,7 @@ public:
|
|||
const struct gl_vertex_program *vp;
|
||||
struct brw_vs_compile *c;
|
||||
struct brw_vs_prog_data *prog_data;
|
||||
struct brw_compile *p;
|
||||
|
||||
char *fail_msg;
|
||||
bool failed;
|
||||
|
|
|
|||
|
|
@ -77,7 +77,6 @@ struct brw_wm_prog_key {
|
|||
};
|
||||
|
||||
struct brw_wm_compile {
|
||||
struct brw_compile func;
|
||||
struct brw_wm_prog_key key;
|
||||
struct brw_wm_prog_data prog_data;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue