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.
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
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));
{
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()
struct brw_vs_compile {
- struct brw_compile func;
struct brw_vs_prog_key key;
struct brw_vs_prog_data prog_data;