[pypy-svn] rev 1548 - pypy/trunk/doc

arigo at codespeak.net arigo at codespeak.net
Fri Oct 3 17:47:47 CEST 2003


Author: arigo
Date: Fri Oct  3 17:47:46 2003
New Revision: 1548

Added:
   pypy/trunk/doc/nested_whiles.dot
Log:
Dot source of the example graph


Added: pypy/trunk/doc/nested_whiles.dot
==============================================================================
--- (empty file)
+++ pypy/trunk/doc/nested_whiles.dot	Fri Oct  3 17:47:46 2003
@@ -0,0 +1,69 @@
+
+digraph test { 
+node [fontname=Times];
+edge [fontname=Times];
+NodeBranch25 [shape=diamond, label="Branch\nargs=[]"];
+edge [style=solid, label="target"]; NodeBranch25 -> NodeBasicBlock26;
+NodeBasicBlock21 [shape=box, label="SpamBlock\noperations=()\ninput_args=[var(v95), var(v96), var(v97), var(v98), var(v99), var(v100)]\nlocals=[var(v95), var(v96), var(v97), var(v98), var(v99), var(v100)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock21 -> NodeBranch22;
+NodeConditionalBranch5 [shape=diamond, label="ConditionalBranch\ncondition=var(v64)"];
+edge [style=dashed, label="elsebranch"]; NodeConditionalBranch5 -> NodeBranch6;
+edge [style=dashed, label="ifbranch"]; NodeConditionalBranch5 -> NodeBranch13;
+NodeBranch8 [shape=diamond, label="Branch\nargs=[var(v59), var(v60), var(v61), var(v62), var(v63), var(v64)]"];
+edge [style=solid, label="target"]; NodeBranch8 -> NodeBasicBlock9;
+NodeBasicBlock2 [shape=box, label="SpamBlock\noperations=()\ninput_args=[var(v17), var(v18)]\ndead=True\nlocals=[var(v17), var(v18)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock2 -> NodeBranch3;
+NodeBasicBlock19 [shape=box, label="EggBlock\noperations=()\nbooloutcome=False\ninput_args=[]\nlocals=[var(v67), var(v68), var(v69), var(v70), var(v71)]"];
+edge [style=dotted, weight=0, label="prevblock"]; NodeBasicBlock19 -> NodeBasicBlock16;
+edge [style=solid, label="branch"]; NodeBasicBlock19 -> NodeBranch20;
+NodeBranch18 [shape=diamond, label="Branch\nargs=[]"];
+edge [style=solid, label="target"]; NodeBranch18 -> NodeBasicBlock19;
+NodeEndBranch12 [shape=circle, label="EndBranch\nreturnvalue=var(v83)"];
+
+NodeBasicBlock7 [shape=box, label="EggBlock\noperations=()\nbooloutcome=False\ninput_args=[]\nlocals=[var(v59), var(v60), var(v61), var(v62), var(v63)]"];
+edge [style=dotted, weight=0, label="prevblock"]; NodeBasicBlock7 -> NodeBasicBlock4;
+edge [style=solid, label="branch"]; NodeBasicBlock7 -> NodeBranch8;
+NodeBasicBlock23 [shape=box, label="SpamBlock\noperations=(add(var(v104), const('!')) -> var(v108),)\ninput_args=[var(v102), var(v103), var(v104), var(v105), var(v106)]\nlocals=[var(v102), var(v103), var(v104), var(v105), var(v106)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock23 -> NodeBranch24;
+NodeBranch27 [shape=diamond, label="Branch\nargs=[var(v67), var(v68), var(v88), var(v87), var(v71)]"];
+edge [style=solid, label="target"]; NodeBranch27 -> NodeBasicBlock16;
+NodeBranch20 [shape=diamond, label="Branch\nargs=[var(v67), var(v68), var(v69), var(v70), var(v71), var(v73)]"];
+edge [style=solid, label="target"]; NodeBranch20 -> NodeBasicBlock21;
+nested_whiles [shape=box, label="FunctionGraph\n\l    def nested_whiles(i, j):\l        s = ''\l        z = 5\l        while z > 0:\l            z = z - 1\l            u = i\l            while u < j:\l                u = u + 1\l                s = s + '.'\l            s = s + '!'\l        return s\l\nfunctionname='nested_whiles'"];
+edge [style=solid, label="startblock"]; nested_whiles -> NodeBasicBlock0;
+NodeBranch13 [shape=diamond, label="Branch\nargs=[]"];
+edge [style=solid, label="target"]; NodeBranch13 -> NodeBasicBlock14;
+NodeBasicBlock9 [shape=box, label="SpamBlock\noperations=()\ninput_args=[var(v75), var(v76), var(v77), var(v78), var(v79), var(v80)]\nlocals=[var(v75), var(v76), var(v77), var(v78), var(v79), var(v80)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock9 -> NodeBranch10;
+NodeBranch6 [shape=diamond, label="Branch\nargs=[]"];
+edge [style=solid, label="target"]; NodeBranch6 -> NodeBasicBlock7;
+NodeBasicBlock16 [shape=box, label="SpamBlock\noperations=(lt(var(v70), var(v68)) -> var(v73),)\ninput_args=[var(v67), var(v68), var(v69), var(v70), var(v71)]\nlocals=[var(v67), var(v68), var(v69), var(v70), var(v71)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock16 -> NodeConditionalBranch17;
+NodeBasicBlock4 [shape=box, label="SpamBlock\noperations=(gt(var(v63), const(0)) -> var(v64),)\ninput_args=[var(v59), var(v60), var(v61), var(v62), var(v63)]\nlocals=[var(v59), var(v60), var(v61), var(v62), var(v63)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock4 -> NodeConditionalBranch5;
+NodeBasicBlock11 [shape=box, label="SpamBlock\noperations=()\ninput_args=[var(v81), var(v82), var(v83), var(v84), var(v85)]\nlocals=[var(v81), var(v82), var(v83), var(v84), var(v85)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock11 -> NodeEndBranch12;
+NodeConditionalBranch17 [shape=diamond, label="ConditionalBranch\ncondition=var(v73)"];
+edge [style=dashed, label="elsebranch"]; NodeConditionalBranch17 -> NodeBranch18;
+edge [style=dashed, label="ifbranch"]; NodeConditionalBranch17 -> NodeBranch25;
+NodeBasicBlock0 [shape=box, label="SpamBlock\noperations=()\ninput_args=[var(v15), var(v16)]\nlocals=[var(v15), var(v16)]"];
+edge [style=solid, label="branch"]; NodeBasicBlock0 -> NodeBranch1;
+NodeBranch3 [shape=diamond, label="Branch\nargs=[var(v17), var(v18), const(''), const(None), const(5)]"];
+edge [style=solid, label="target"]; NodeBranch3 -> NodeBasicBlock4;
+NodeBasicBlock26 [shape=box, label="EggBlock\noperations=(add(var(v70), const(1)) -> var(v87), add(var(v69), const('.')) -> var(v88))\nbooloutcome=True\ninput_args=[]\nlocals=[var(v67), var(v68), var(v69), var(v70), var(v71)]"];
+edge [style=dotted, weight=0, label="prevblock"]; NodeBasicBlock26 -> NodeBasicBlock16;
+edge [style=solid, label="branch"]; NodeBasicBlock26 -> NodeBranch27;
+NodeBranch15 [shape=diamond, label="Branch\nargs=[var(v59), var(v60), var(v61), var(v59), var(v66)]"];
+edge [style=solid, label="target"]; NodeBranch15 -> NodeBasicBlock16;
+NodeBranch24 [shape=diamond, label="Branch\nargs=[var(v102), var(v103), var(v108), var(v105), var(v106)]"];
+edge [style=solid, label="target"]; NodeBranch24 -> NodeBasicBlock4;
+NodeBasicBlock14 [shape=box, label="EggBlock\noperations=(sub(var(v63), const(1)) -> var(v66),)\nbooloutcome=True\ninput_args=[]\nlocals=[var(v59), var(v60), var(v61), var(v62), var(v63)]"];
+edge [style=dotted, weight=0, label="prevblock"]; NodeBasicBlock14 -> NodeBasicBlock4;
+edge [style=solid, label="branch"]; NodeBasicBlock14 -> NodeBranch15;
+NodeBranch1 [shape=diamond, label="Branch\nargs=[var(v15), var(v16)]"];
+edge [style=solid, label="target"]; NodeBranch1 -> NodeBasicBlock2;
+NodeBranch22 [shape=diamond, label="Branch\nargs=[var(v95), var(v96), var(v97), var(v98), var(v99)]"];
+edge [style=solid, label="target"]; NodeBranch22 -> NodeBasicBlock23;
+NodeBranch10 [shape=diamond, label="Branch\nargs=[var(v75), var(v76), var(v77), var(v78), var(v79)]"];
+edge [style=solid, label="target"]; NodeBranch10 -> NodeBasicBlock11;
+}
\ No newline at end of file


More information about the Pypy-commit mailing list