|
|
|
/* @generated */
|
|
|
|
digraph iCFG {
|
|
|
|
25 [label="25: Return Stmt \n n$0=_fun_main1(4:int ) [line 46]\n *&return:int =n$0 [line 46]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
25 -> 24 ;
|
|
|
|
24 [label="24: Exit BlockMain \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
23 [label="23: Start BlockMain\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 46]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
23 -> 25 ;
|
|
|
|
22 [label="22: DeclStmt \n *&#GB<shared/block/block.m>$main1_s:int =3 [line 12]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
22 -> 21 ;
|
|
|
|
21 [label="21: DeclStmt \n *&x:int =7 [line 13]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
21 -> 20 ;
|
|
|
|
20 [label="20: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______2); [line 18]\n n$27=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_main1______2 ):unsigned long ) [line 18]\n *&__objc_anonymous_block_main1______2:class __objc_anonymous_block_main1______2 =n$27 [line 18]\n n$28=*&x:int [line 18]\n *n$27.x:int =n$28 [line 18]\n n$11=*&x:int [line 18]\n *&addblock:_fn_ (*)=(_fun___objc_anonymous_block_main1______2,n$11) [line 18]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
20 -> 10 ;
|
|
|
|
19 [label="19: DeclStmt \n *&bla:int =3 [line 22]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
19 -> 18 ;
|
|
|
|
18 [label="18: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block___objc_anonymous_block_main1______2______3); [line 24]\n n$23=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block___objc_anonymous_block_main1______2______3 ):unsigned long ) [line 24]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:class __objc_anonymous_block___objc_anonymous_block_main1______2______3 =n$23 [line 24]\n n$24=*&x:int [line 24]\n n$25=*&bla:int [line 24]\n n$26=*&#GB<shared/block/block.m>$main1_s:int [line 24]\n *n$23.x:int =n$24 [line 24]\n *n$23.bla:int =n$25 [line 24]\n *n$23.main1_s:int =n$26 [line 24]\n n$17=*&x:int [line 24]\n n$18=*&bla:int [line 24]\n *&addblock2:_fn_ (*)=(_fun___objc_anonymous_block___objc_anonymous_block_main1______2______3,n$17,n$18) [line 24]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
18 -> 14 ;
|
|
|
|
17 [label="17: Return Stmt \n n$19=*&z:int [line 25]\n n$20=*&#GB<shared/block/block.m>$main1_s:int [line 25]\n n$21=*&x:int [line 25]\n n$22=*&bla:int [line 25]\n *&return:int =(((n$19 + n$20) + n$21) + n$22) [line 25]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
17 -> 16 ;
|
|
|
|
16 [label="16: Exit __objc_anonymous_block___objc_anonymous_block_main1______2______3 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
15 [label="15: Start __objc_anonymous_block___objc_anonymous_block_main1______2______3\nFormals: x:int bla:int z:int \nLocals: \nCaptured: x:int bla:int \n DECLARE_LOCALS(&return); [line 24]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
15 -> 17 ;
|
|
|
|
14 [label="14: BinaryOperatorStmt: Assign \n n$15=*&addblock2:_fn_ (*) [line 28]\n n$16=n$15(1:int ) [line 28]\n *&add2:int =n$16 [line 28]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
14 -> 13 ;
|
|
|
|
13 [label="13: Return Stmt \n n$12=*&c:int [line 29]\n n$13=*&add2:int [line 29]\n n$14=*&bla:int [line 29]\n *&return:int =((n$12 + n$13) + n$14) [line 29]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
13 -> 12 ;
|
|
|
|
12 [label="12: Exit __objc_anonymous_block_main1______2 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
11 [label="11: Start __objc_anonymous_block_main1______2\nFormals: x:int c:int d:int \nLocals: bla:int add2:int addblock2:_fn_ (*)\nCaptured: x:int \n DECLARE_LOCALS(&return,&bla,&add2,&addblock2); [line 18]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
11 -> 19 ;
|
|
|
|
10 [label="10: BinaryOperatorStmt: Assign \n n$9=*&addblock:_fn_ (*) [line 32]\n n$10=n$9(1:int ,2:int ) [line 32]\n *&add1:int =n$10 [line 32]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
10 -> 9 ;
|
|
|
|
9 [label="9: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______1); [line 34]\n n$7=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_main1______1 ):unsigned long ) [line 34]\n *&__objc_anonymous_block_main1______1:class __objc_anonymous_block_main1______1 =n$7 [line 34]\n n$8=*&#GB<shared/block/block.m>$main1_s:int [line 34]\n *n$7.main1_s:int =n$8 [line 34]\n *&addblock:_fn_ (*)=(_fun___objc_anonymous_block_main1______1) [line 34]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
9 -> 5 ;
|
|
|
|
8 [label="8: Return Stmt \n n$5=*&e:int [line 35]\n n$6=*&#GB<shared/block/block.m>$main1_s:int [line 35]\n *&return:int =(n$5 - n$6) [line 35]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
8 -> 7 ;
|
|
|
|
7 [label="7: Exit __objc_anonymous_block_main1______1 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
6 [label="6: Start __objc_anonymous_block_main1______1\nFormals: e:int f:int \nLocals: \n DECLARE_LOCALS(&return); [line 34]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
6 -> 8 ;
|
|
|
|
5 [label="5: BinaryOperatorStmt: Assign \n n$3=*&addblock:_fn_ (*) [line 38]\n n$4=n$3(3:int ,2:int ) [line 38]\n *&add2:int =n$4 [line 38]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
5 -> 4 ;
|
|
|
|
4 [label="4: BinaryOperatorStmt: Assign \n n$1=*&add1:int [line 41]\n n$2=*&add2:int [line 41]\n *&y:int =(n$1 / n$2) [line 41]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
4 -> 3 ;
|
|
|
|
3 [label="3: Return Stmt \n n$0=*&y:int [line 43]\n *&return:int =n$0 [line 43]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
3 -> 2 ;
|
|
|
|
2 [label="2: Exit main1 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
1 [label="1: Start main1\nFormals: y:int \nLocals: addblock:_fn_ (*) add2:int add1:int x:int \n DECLARE_LOCALS(&return,&addblock,&add2,&add1,&x); [line 10]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
1 -> 22 ;
|
|
|
|
}
|