Lines Matching refs:deps
108 struct skc_grid_deps * deps; // backpointer to deps
139 struct skc_grid grids [SKC_GRID_SIZE_IDS]; // deps + pfns + data
163 skc_scheduler_schedule(grid->deps->scheduler,pn->pfn,grid,pn->name);
222 struct skc_grid_deps * const deps = skc_runtime_host_perm_alloc(runtime,SKC_MEM_FLAGS_READ_WRITE,sizeof(*deps));
225 deps->runtime = runtime;
226 deps->scheduler = scheduler;
228 size_t const handle_map_size = sizeof(*deps->handle_map) * handle_pool_size;
231 deps->handle_map = skc_runtime_host_perm_alloc(runtime,SKC_MEM_FLAGS_READ_WRITE,handle_map_size);
234 memset(deps->handle_map,0xFF,handle_map_size);
237 struct skc_grid * const grids = deps->grids;
247 deps->active[ii] = 0xFFFFFFFF;
250 deps->active[SKC_GRID_SIZE_WORDS-1] = 0x7FFFFFFF;
253 deps->count = 1;
255 return deps;
259 skc_grid_deps_dispose(skc_grid_deps_t const deps)
264 skc_runtime_host_perm_free(deps->runtime,deps->handle_map);
265 skc_runtime_host_perm_free(deps->runtime,deps);
275 skc_grid_deps_debug(struct skc_grid_deps const * const deps)
284 skc_uint const a = deps->active[ii];
308 skc_grid_deps_attach(skc_grid_deps_t const deps,
321 // assert(deps->count < SKC_GRID_SIZE_IDS);
323 while (deps->count == SKC_GRID_SIZE_IDS)
324 skc_scheduler_wait_one(deps->scheduler);
327 deps->count += 1;
330 skc_uint * active = deps->active;
350 struct skc_grid * const grid = deps->grids + first;
360 .deps = deps,
422 if (skc_grid_words_set(grid->deps->active,grid->id)) // 1:inactive
423 grid->deps->count -= 1;
433 grid->deps->handle_map[handle] = grid->id;
441 skc_grid_deps_force(skc_grid_deps_t const deps,
448 skc_grid_id_t * const handle_map = deps->handle_map;
456 skc_grid_t const grid = deps->grids + grid_id;
461 skc_scheduler_wait_one(deps->scheduler);
467 skc_grid_deps_unmap(skc_grid_deps_t const deps,
471 skc_grid_id_t * const handle_map = deps->handle_map;
510 skc_uint const id_before = after->deps->handle_map[before];
518 skc_grid_t const grid_before = after->deps->grids + id_before;
615 struct skc_grid * before = grid->deps->grids;
665 struct skc_grid * after = grid->deps->grids;