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.

98 lines
6.3 KiB

digraph iCFG {
25 [label="25: Return Stmt \n n$0=_fun_main1(4:int ) [line 51]\n *&return:int =n$0 [line 51]\n REMOVE_TEMPS(n$0); [line 51]\n APPLY_ABSTRACTION; [line 51]\n " shape="box"]
25 -> 24 ;
24 [label="24: Exit main \n " color=yellow style=filled]
23 [label="23: Start main\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 50]\n " color=yellow style=filled]
23 -> 25 ;
22 [label="22: DeclStmt \n *&#GB$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 19]\n n$25=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_main1______2 ):unsigned long ) [line 19]\n *&__objc_anonymous_block_main1______2:class __objc_anonymous_block_main1______2 =n$25 [line 19]\n n$26=*&x:int [line 19]\n *n$25.x:int =n$26 [line 19]\n n$10=*&x:int [line 19]\n *&addblock:_fn_ (*)=(_fun___objc_anonymous_block_main1______2,n$10) [line 19]\n REMOVE_TEMPS(n$25,n$26,n$10); [line 19]\n " shape="box"]
20 -> 10 ;
19 [label="19: DeclStmt \n *&bla:int =3 [line 23]\n " shape="box"]
19 -> 18 ;
18 [label="18: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block___objc_anonymous_block_main1______2______3); [line 25]\n n$22=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block___objc_anonymous_block_main1______2______3 ):unsigned long ) [line 25]\n *&__objc_anonymous_block___objc_anonymous_block_main1______2______3:class __objc_anonymous_block___objc_anonymous_block_main1______2______3 =n$22 [line 25]\n n$23=*&x:int [line 25]\n n$24=*&bla:int [line 25]\n *n$22.bla:int =n$23 [line 25]\n *n$22.x:int =n$24 [line 25]\n n$16=*&x:int [line 25]\n n$17=*&bla:int [line 25]\n *&addblock2:_fn_ (*)=(_fun___objc_anonymous_block___objc_anonymous_block_main1______2______3,n$16,n$17) [line 25]\n REMOVE_TEMPS(n$22,n$23,n$24,n$16,n$17); [line 25]\n " shape="box"]
18 -> 14 ;
17 [label="17: Return Stmt \n n$18=*&z:int [line 26]\n n$19=*&#GB$main1_s:int [line 26]\n n$20=*&x:int [line 26]\n n$21=*&bla:int [line 26]\n *&return:int =(((n$18 + n$19) + n$20) + n$21) [line 26]\n REMOVE_TEMPS(n$18,n$19,n$20,n$21); [line 26]\n NULLIFY(&z,false); [line 26]\n APPLY_ABSTRACTION; [line 26]\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 25]\n " color=yellow style=filled]
15 -> 17 ;
14 [label="14: BinaryOperatorStmt: Assign \n n$14=*&addblock2:_fn_ (*) [line 29]\n n$15=n$14(1:int ) [line 29]\n *&add2:int =n$15 [line 29]\n REMOVE_TEMPS(n$14,n$15); [line 29]\n NULLIFY(&addblock2,false); [line 29]\n " shape="box"]
14 -> 13 ;
13 [label="13: Return Stmt \n n$11=*&c:int [line 30]\n n$12=*&add2:int [line 30]\n n$13=*&bla:int [line 30]\n *&return:int =((n$11 + n$12) + n$13) [line 30]\n REMOVE_TEMPS(n$11,n$12,n$13); [line 30]\n NULLIFY(&__objc_anonymous_block___objc_anonymous_block_main1______2______3,true); [line 30]\n NULLIFY(&add2,false); [line 30]\n NULLIFY(&c,false); [line 30]\n APPLY_ABSTRACTION; [line 30]\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: addblock2:_fn_ (*) add2:int bla:int \nCaptured: x:int \n DECLARE_LOCALS(&return,&addblock2,&add2,&bla); [line 19]\n NULLIFY(&add2,false); [line 19]\n NULLIFY(&addblock2,false); [line 19]\n NULLIFY(&d,false); [line 19]\n " color=yellow style=filled]
11 -> 19 ;
10 [label="10: BinaryOperatorStmt: Assign \n n$8=*&addblock:_fn_ (*) [line 33]\n n$9=n$8(1:int ,2:int ) [line 33]\n *&add1:int =n$9 [line 33]\n REMOVE_TEMPS(n$8,n$9); [line 33]\n NULLIFY(&addblock,false); [line 33]\n " shape="box"]
10 -> 9 ;
9 [label="9: BinaryOperatorStmt: Assign \n DECLARE_LOCALS(&__objc_anonymous_block_main1______1); [line 36]\n n$7=_fun___objc_alloc_no_fail(sizeof(class __objc_anonymous_block_main1______1 ):unsigned long ) [line 36]\n *&__objc_anonymous_block_main1______1:class __objc_anonymous_block_main1______1 =n$7 [line 36]\n *&addblock:_fn_ (*)=(_fun___objc_anonymous_block_main1______1) [line 36]\n REMOVE_TEMPS(n$7); [line 36]\n " shape="box"]
9 -> 5 ;
8 [label="8: Return Stmt \n n$5=*&e:int [line 37]\n n$6=*&#GB$main1_s:int [line 37]\n *&return:int =(n$5 - n$6) [line 37]\n REMOVE_TEMPS(n$5,n$6); [line 37]\n NULLIFY(&e,false); [line 37]\n APPLY_ABSTRACTION; [line 37]\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 36]\n NULLIFY(&f,false); [line 36]\n " color=yellow style=filled]
6 -> 8 ;
5 [label="5: BinaryOperatorStmt: Assign \n n$3=*&addblock:_fn_ (*) [line 41]\n n$4=n$3(3:int ,2:int ) [line 41]\n *&add2:int =n$4 [line 41]\n REMOVE_TEMPS(n$3,n$4); [line 41]\n NULLIFY(&addblock,false); [line 41]\n " shape="box"]
5 -> 4 ;
4 [label="4: BinaryOperatorStmt: Assign \n n$1=*&add1:int [line 44]\n n$2=*&add2:int [line 44]\n *&y:int =(n$1 / n$2) [line 44]\n REMOVE_TEMPS(n$1,n$2); [line 44]\n NULLIFY(&add1,false); [line 44]\n NULLIFY(&add2,false); [line 44]\n " shape="box"]
4 -> 3 ;
3 [label="3: Return Stmt \n n$0=*&y:int [line 46]\n *&return:int =n$0 [line 46]\n REMOVE_TEMPS(n$0); [line 46]\n NULLIFY(&__objc_anonymous_block_main1______1,true); [line 46]\n NULLIFY(&__objc_anonymous_block_main1______2,true); [line 46]\n NULLIFY(&y,false); [line 46]\n APPLY_ABSTRACTION; [line 46]\n " shape="box"]
3 -> 2 ;
2 [label="2: Exit main1 \n " color=yellow style=filled]
1 [label="1: Start main1\nFormals: y:int \nLocals: x:int add1:int add2:int addblock:_fn_ (*) \n DECLARE_LOCALS(&return,&x,&add1,&add2,&addblock); [line 10]\n NULLIFY(&add1,false); [line 10]\n NULLIFY(&add2,false); [line 10]\n NULLIFY(&addblock,false); [line 10]\n NULLIFY(&y,false); [line 10]\n " color=yellow style=filled]
1 -> 22 ;
}