Lines Matching refs:scope
80 static void dump_scope(scope_t *scope);
81 static void emit_patch(scope_t *scope, int patch);
132 /* Set Sentinal scope node */
281 /* Process outmost scope */
286 * traversal, recursively handling each scope.
288 /* start at the root scope */
460 dump_scope(scope_t *scope)
465 * Emit the first patch for this scope
467 emit_patch(scope, 0);
470 * Dump each scope within this one.
472 cur_scope = TAILQ_FIRST(&scope->inner_scope);
482 * Emit the second, closing, patch for this scope
484 emit_patch(scope, 1);
488 emit_patch(scope_t *scope, int patch)
493 pinfo = &scope->patches[patch];
507 new_patch->patch_func = scope->func_num;
508 new_patch->begin = scope->begin_addr;
511 new_patch->begin = scope->end_addr;
766 stop("Unable to malloc scope object", EX_SOFTWARE);
774 /* This patch is now the current scope */
780 process_scope(scope_t *scope)
783 * We are "leaving" this scope. We should now have
791 cur_scope = TAILQ_LAST(&scope->inner_scope, scope_tailq);
813 /* Count any patches contained in our inner scope */
824 scope->inner_scope_patches += skip_patch_count;
830 /* Count any patches contained in our innter scope */
837 stop("Unexpected scope type encountered", EX_SOFTWARE);