vkd3d-shader/ir: Do not print a message for registers that are not being allocated.

This commit is contained in:
Giovanni Mascellani
2025-07-14 22:35:30 +02:00
committed by Henri Verbeet
parent e9d3b9dfd3
commit 7e66d0db6f
Notes: Henri Verbeet 2025-07-17 14:19:12 +02:00
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1623

View File

@@ -8537,11 +8537,11 @@ static uint8_t get_available_writemask(const struct temp_allocator *allocator,
return writemask; return writemask;
} }
static void temp_allocator_allocate(struct temp_allocator *allocator, struct liveness_tracker *tracker, static bool temp_allocator_allocate(struct temp_allocator *allocator, struct liveness_tracker *tracker,
struct temp_allocator_reg *reg, const struct liveness_tracker_reg *liveness_reg, uint32_t base_id) struct temp_allocator_reg *reg, const struct liveness_tracker_reg *liveness_reg, uint32_t base_id)
{ {
if (!liveness_reg->written) if (!liveness_reg->written)
return; return false;
for (uint32_t id = base_id;; ++id) for (uint32_t id = base_id;; ++id)
{ {
@@ -8554,7 +8554,7 @@ static void temp_allocator_allocate(struct temp_allocator *allocator, struct liv
{ {
reg->temp_id = id; reg->temp_id = id;
reg->allocated_mask = liveness_reg->mask; reg->allocated_mask = liveness_reg->mask;
return; return true;
} }
} }
else else
@@ -8567,7 +8567,7 @@ static void temp_allocator_allocate(struct temp_allocator *allocator, struct liv
{ {
reg->temp_id = id; reg->temp_id = id;
reg->allocated_mask = vsir_combine_write_masks(available_mask, liveness_reg->mask); reg->allocated_mask = vsir_combine_write_masks(available_mask, liveness_reg->mask);
return; return true;
} }
} }
} }
@@ -8735,10 +8735,10 @@ enum vkd3d_result vsir_allocate_temp_registers(struct vsir_program *program,
const struct liveness_tracker_reg *liveness_reg = &tracker.ssa_regs[i]; const struct liveness_tracker_reg *liveness_reg = &tracker.ssa_regs[i];
struct temp_allocator_reg *reg = &allocator.ssa_regs[i]; struct temp_allocator_reg *reg = &allocator.ssa_regs[i];
temp_allocator_allocate(&allocator, &tracker, reg, liveness_reg, program->temp_count); if (temp_allocator_allocate(&allocator, &tracker, reg, liveness_reg, program->temp_count))
TRACE("Allocated r%u%s to sr%u (liveness %u-%u).\n", TRACE("Allocated r%u%s to sr%u (liveness %u-%u).\n",
reg->temp_id, debug_vsir_writemask(reg->allocated_mask), i, reg->temp_id, debug_vsir_writemask(reg->allocated_mask), i,
liveness_reg->first_write, liveness_reg->last_access); liveness_reg->first_write, liveness_reg->last_access);
++allocator.allocated_ssa_count; ++allocator.allocated_ssa_count;
} }