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