/* Reallocate for 4 more elements whenever it's necessary */
struct ir3_const_state *const_state = ir3_const_state(ctx->so);
if (const_state->immediate_idx == const_state->immediates_size * 4) {
+ const_state->immediates = rerzalloc(const_state,
+ const_state->immediates,
+ __typeof__(const_state->immediates[0]),
+ const_state->immediates_size,
+ const_state->immediates_size + 4);
const_state->immediates_size += 4;
- const_state->immediates = realloc (const_state->immediates,
- const_state->immediates_size * sizeof(const_state->immediates[0]));
for (int i = const_state->immediate_idx; i < const_state->immediates_size * 4; i++)
const_state->immediates[i / 4].val[i % 4] = 0xd0d0d0d0;
}
if (i == const_state->immediate_idx) {
- struct ir3_compiler *compiler = instr->block->shader->compiler;
/* Add on a new immediate to be pushed, if we have space left in the
* constbuf.
*/
if (const_state->offsets.immediate + const_state->immediate_idx / 4 >=
- compiler->max_const)
+ ir3_max_const(ctx->so))
return false;
swiz = i % 4;