assert(size > 0);
assert(binder->insert_point + size <= BINDER_SIZE);
+ assert((binder->insert_point % 64) == 0);
+ *out_offset = binder->insert_point;
+
binder->insert_point = align(binder->insert_point + size, 64);
return binder->map + *out_offset;
binder->bo =
iris_bo_alloc(bufmgr, "binder", BINDER_SIZE, IRIS_MEMZONE_BINDER);
binder->map = iris_bo_map(NULL, binder->bo, MAP_WRITE);
+ binder->insert_point = 64; // XXX: avoid null pointer, it confuses tools
}
void
uint32_t *bt_map = NULL;
if (prog_data->binding_table.size_bytes != 0) {
+ iris_use_pinned_bo(batch, ice->state.binder.bo, false);
bt_map = iris_binder_reserve(&ice->state.binder,
prog_data->binding_table.size_bytes,
&bt_offset);