You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
2.2 KiB

digraph iCFG {
15 [label="15: DeclStmt \n *&x:double =1.000000 [line 7]\n " shape="box"]
15 -> 14 ;
14 [label="14: ComppoundAssignStmt \n n$9=*&x:double [line 8]\n *&x:double =(n$9 + 1.000000) [line 8]\n REMOVE_TEMPS(n$9); [line 8]\n " shape="box"]
14 -> 13 ;
13 [label="13: ComppoundAssignStmt \n n$8=*&x:double [line 9]\n *&x:double =(n$8 - 1.000000) [line 9]\n REMOVE_TEMPS(n$8); [line 9]\n " shape="box"]
13 -> 12 ;
12 [label="12: ComppoundAssignStmt \n n$7=*&x:double [line 10]\n *&x:double =(n$7 / 1.000000) [line 10]\n REMOVE_TEMPS(n$7); [line 10]\n " shape="box"]
12 -> 11 ;
11 [label="11: ComppoundAssignStmt \n n$6=*&x:double [line 11]\n *&x:double =(n$6 * 1.000000) [line 11]\n REMOVE_TEMPS(n$6); [line 11]\n NULLIFY(&x,false); [line 11]\n " shape="box"]
11 -> 10 ;
10 [label="10: DeclStmt \n *&b:int =1 [line 12]\n " shape="box"]
10 -> 9 ;
9 [label="9: ComppoundAssignStmt \n n$5=*&b:int [line 13]\n *&b:int =(n$5 << 1) [line 13]\n REMOVE_TEMPS(n$5); [line 13]\n " shape="box"]
9 -> 8 ;
8 [label="8: ComppoundAssignStmt \n n$4=*&b:int [line 14]\n *&b:int =(n$4 >> 1) [line 14]\n REMOVE_TEMPS(n$4); [line 14]\n " shape="box"]
8 -> 7 ;
7 [label="7: ComppoundAssignStmt \n n$3=*&b:int [line 15]\n *&b:int =(n$3 % 1) [line 15]\n REMOVE_TEMPS(n$3); [line 15]\n " shape="box"]
7 -> 6 ;
6 [label="6: ComppoundAssignStmt \n n$2=*&b:int [line 16]\n *&b:int =(n$2 & 1) [line 16]\n REMOVE_TEMPS(n$2); [line 16]\n " shape="box"]
6 -> 5 ;
5 [label="5: ComppoundAssignStmt \n n$1=*&b:int [line 17]\n *&b:int =(n$1 | 1) [line 17]\n REMOVE_TEMPS(n$1); [line 17]\n " shape="box"]
5 -> 4 ;
4 [label="4: ComppoundAssignStmt \n n$0=*&b:int [line 18]\n *&b:int =(n$0 ^ 1) [line 18]\n REMOVE_TEMPS(n$0); [line 18]\n NULLIFY(&b,false); [line 18]\n " shape="box"]
4 -> 3 ;
3 [label="3: Return Stmt \n *&return:int =0 [line 19]\n APPLY_ABSTRACTION; [line 19]\n " shape="box"]
3 -> 2 ;
2 [label="2: Exit main \n " color=yellow style=filled]
1 [label="1: Start main\nFormals: \nLocals: x:double b:int \n DECLARE_LOCALS(&return,&x,&b); [line 6]\n NULLIFY(&b,false); [line 6]\n NULLIFY(&x,false); [line 6]\n " color=yellow style=filled]
1 -> 15 ;
}