Lines Matching refs:scope
84 static void dump_scope(scope_t *scope);
85 static void emit_patch(scope_t *scope, int patch);
136 /* Set Sentinal scope node */
285 /* Process outmost scope */
290 * transversal, recursively handling each scope.
292 /* start at the root scope */
467 dump_scope(scope_t *scope)
472 * Emit the first patch for this scope
474 emit_patch(scope, 0);
477 * Dump each scope within this one.
479 cur_scope = TAILQ_FIRST(&scope->inner_scope);
489 * Emit the second, closing, patch for this scope
491 emit_patch(scope, 1);
495 emit_patch(scope_t *scope, int patch)
500 pinfo = &scope->patches[patch];
514 new_patch->patch_func = scope->func_num;
515 new_patch->begin = scope->begin_addr;
518 new_patch->begin = scope->end_addr;
771 stop("Unable to malloc scope object", EX_SOFTWARE);
779 /* This patch is now the current scope */
785 process_scope(scope_t *scope)
788 * We are "leaving" this scope. We should now have
796 cur_scope = TAILQ_LAST(&scope->inner_scope, scope_tailq);
818 /* Count any patches contained in our inner scope */
829 scope->inner_scope_patches += skip_patch_count;
835 /* Count any patches contained in our inner scope */
842 stop("Unexpected scope type encountered", EX_SOFTWARE);