2 static void debug_dump_inline_context(inline_node *iln)
6 printf("%sinline_context @%p: \n",
7 iln->indent, (void*)iln->ctx);
12 static void dump_inline_tree(inline_node *iln, s4 blocknr)
21 printf("(inline_node *)null\n");
25 for (i=0; i<iln->depth; ++i)
32 printf("parent unset");
35 printf("%s[%d] (°%d) start L%03d %c%c (caller L%03d pc %d)"
36 " (pt=%d+%d,lofs=%d,exh %d) cum(ins %d,bb %d,etl %d) sync=%d(%d) ",
37 indent, iln->depth, iln->debugnr, blocknr,
38 (iln->blockbefore) ? 'B' : '-',
39 (iln->blockafter) ? 'A' : '-',
40 iln->callerblock->nr, iln->callerpc,
41 iln->n_passthroughcount - iln->n_selfpassthroughcount,
42 iln->n_selfpassthroughcount,
45 iln->cumul_instructioncount, iln->cumul_basicblockcount,
46 iln->cumul_exceptiontablelength,
47 iln->synchronize, iln->synclocal
52 printf("%s[%d] ROOT cum(ins %d,bb %d,etl %d) ",
54 iln->cumul_instructioncount, iln->cumul_basicblockcount,
55 iln->cumul_exceptiontablelength);
57 method_println(iln->m);
59 child = iln->children;
64 nr += (child->callerblock->nr - lastnr);
65 lastnr = child->callerblock->nr;
67 if (child->blockbefore)
70 dump_inline_tree(child, nr);
72 nr += child->cumul_basicblockcount - 1;
73 if (!child->blockbefore)
75 if (child->blockafter)
78 while ((child = child->next) != iln->children);
82 printf("%s[%d] (°%d) end L%03d\n",
83 indent, iln->depth, iln->debugnr,
84 blocknr + iln->cumul_basicblockcount
85 - ((iln->blockbefore) ? 1 : 0));
90 /* vim:noexpandtab:sw=4:ts=4:ft=c: