|
|
|
/* @generated */
|
|
|
|
digraph iCFG {
|
|
|
|
"getValue3" [label="3: Return Stmt \n *&return:int =2 [line 12]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"getValue3" -> "getValue2" ;
|
|
|
|
"getValue2" [label="2: Exit getValue \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"getValue1" [label="1: Start getValue\nFormals: \nLocals: \n DECLARE_LOCALS(&return); [line 12]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"getValue1" -> "getValue3" ;
|
|
|
|
"g012" [label="12: DeclStmt \n *&a:int =0 [line 15]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g012" -> "g09" ;
|
|
|
|
"g011" [label="11: Prune (false branch) \n PRUNE(((n$0 > 1) == 0), false); [line 16]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g011" -> "g08" ;
|
|
|
|
"g010" [label="10: Prune (true branch) \n PRUNE(((n$0 > 1) != 0), true); [line 16]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g010" -> "g06" ;
|
|
|
|
"g09" [label="9: BinaryOperatorStmt: GT \n n$0=_fun_getValue() [line 16]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g09" -> "g010" ;
|
|
|
|
"g09" -> "g011" ;
|
|
|
|
"g08" [label="8: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g08" -> "g07" ;
|
|
|
|
"g07" [label="7: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g07" -> "g06" ;
|
|
|
|
"g06" [label="6: Skip GotoLabel_stepC \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g06" -> "g05" ;
|
|
|
|
"g05" [label="5: Skip GotoLabel_stepD \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g05" -> "g04" ;
|
|
|
|
"g04" [label="4: BinaryOperatorStmt: Assign \n *&a:int =1 [line 22]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g04" -> "g03" ;
|
|
|
|
"g03" [label="3: Return Stmt \n *&return:int =1 [line 23]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g03" -> "g02" ;
|
|
|
|
"g02" [label="2: Exit g0 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g01" [label="1: Start g0\nFormals: \nLocals: a:int \n DECLARE_LOCALS(&return,&a); [line 14]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g01" -> "g012" ;
|
|
|
|
"g234" [label="34: DeclStmt \n *&a:int =0 [line 38]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g234" -> "g214" ;
|
|
|
|
"g233" [label="33: BinaryOperatorStmt: Assign \n *&a:int =1 [line 40]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g233" -> "g226" ;
|
|
|
|
"g232" [label="32: Prune (false branch) \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 42]\n PRUNE((n$6 == 0), false); [line 42]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g232" -> "g224" ;
|
|
|
|
"g231" [label="31: Prune (true branch) \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 42]\n PRUNE((n$6 != 0), true); [line 42]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g231" -> "g25" ;
|
|
|
|
"g230" [label="30: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int =1 [line 42]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g230" -> "g225" ;
|
|
|
|
"g229" [label="29: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int =0 [line 42]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g229" -> "g225" ;
|
|
|
|
"g228" [label="28: Prune (false branch) \n PRUNE((n$5 == 0), false); [line 42]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g228" -> "g230" ;
|
|
|
|
"g227" [label="27: Prune (true branch) \n PRUNE((n$5 != 0), true); [line 42]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g227" -> "g229" ;
|
|
|
|
"g226" [label="26: Call _fun_getValue \n n$5=_fun_getValue() [line 42]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g226" -> "g227" ;
|
|
|
|
"g226" -> "g228" ;
|
|
|
|
"g225" [label="25: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g225" -> "g231" ;
|
|
|
|
"g225" -> "g232" ;
|
|
|
|
"g224" [label="24: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g224" -> "g217" ;
|
|
|
|
"g223" [label="23: Prune (false branch) \n n$3=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 44]\n PRUNE((n$3 == 0), false); [line 44]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g223" -> "g215" ;
|
|
|
|
"g222" [label="22: Prune (true branch) \n n$3=*&0$?%__sil_tmpSIL_temp_conditional___n$1:int [line 44]\n PRUNE((n$3 != 0), true); [line 44]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g222" -> "g28" ;
|
|
|
|
"g221" [label="21: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int =1 [line 44]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g221" -> "g216" ;
|
|
|
|
"g220" [label="20: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$1:int =0 [line 44]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g220" -> "g216" ;
|
|
|
|
"g219" [label="19: Prune (false branch) \n PRUNE((n$2 == 0), false); [line 44]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g219" -> "g221" ;
|
|
|
|
"g218" [label="18: Prune (true branch) \n PRUNE((n$2 != 0), true); [line 44]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g218" -> "g220" ;
|
|
|
|
"g217" [label="17: Call _fun_getValue \n n$2=_fun_getValue() [line 44]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g217" -> "g218" ;
|
|
|
|
"g217" -> "g219" ;
|
|
|
|
"g216" [label="16: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g216" -> "g222" ;
|
|
|
|
"g216" -> "g223" ;
|
|
|
|
"g215" [label="15: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g215" -> "g211" ;
|
|
|
|
"g214" [label="14: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g214" -> "g233" ;
|
|
|
|
"g213" [label="13: Prune (false branch) \n PRUNE(((n$0 > 1) == 0), false); [line 46]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g213" -> "g210" ;
|
|
|
|
"g212" [label="12: Prune (true branch) \n PRUNE(((n$0 > 1) != 0), true); [line 46]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g212" -> "g214" ;
|
|
|
|
"g211" [label="11: BinaryOperatorStmt: GT \n n$0=_fun_getValue() [line 46]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g211" -> "g212" ;
|
|
|
|
"g211" -> "g213" ;
|
|
|
|
"g210" [label="10: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g210" -> "g29" ;
|
|
|
|
"g29" [label="9: Return Stmt \n *&return:int =0 [line 48]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g29" -> "g22" ;
|
|
|
|
"g28" [label="8: Skip GotoLabel_stepA \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g28" -> "g27" ;
|
|
|
|
"g27" [label="7: BinaryOperatorStmt: Assign \n *&a:int =2 [line 51]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g27" -> "g26" ;
|
|
|
|
"g26" [label="6: Return Stmt \n *&return:int =2 [line 52]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g26" -> "g22" ;
|
|
|
|
"g25" [label="5: Skip GotoLabel_exit_step \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g25" -> "g24" ;
|
|
|
|
"g24" [label="4: BinaryOperatorStmt: Assign \n *&a:int =3 [line 55]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g24" -> "g23" ;
|
|
|
|
"g23" [label="3: Return Stmt \n *&return:int =1 [line 56]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g23" -> "g22" ;
|
|
|
|
"g22" [label="2: Exit g2 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g21" [label="1: Start g2\nFormals: \nLocals: 0$?%__sil_tmpSIL_temp_conditional___n$1:int 0$?%__sil_tmpSIL_temp_conditional___n$4:int a:int \n DECLARE_LOCALS(&return,&0$?%__sil_tmpSIL_temp_conditional___n$1,&0$?%__sil_tmpSIL_temp_conditional___n$4,&a); [line 37]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g21" -> "g234" ;
|
|
|
|
"g334" [label="34: Call _fun_printf \n n$10=_fun_printf(\"B\\n\":char *) [line 61]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g334" -> "g327" ;
|
|
|
|
"g333" [label="33: Prune (false branch) \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$7:int [line 63]\n PRUNE((n$9 == 0), false); [line 63]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g333" -> "g325" ;
|
|
|
|
"g332" [label="32: Prune (true branch) \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$7:int [line 63]\n PRUNE((n$9 != 0), true); [line 63]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g332" -> "g35" ;
|
|
|
|
"g331" [label="31: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$7:int =1 [line 63]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g331" -> "g326" ;
|
|
|
|
"g330" [label="30: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$7:int =0 [line 63]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g330" -> "g326" ;
|
|
|
|
"g329" [label="29: Prune (false branch) \n PRUNE((n$8 == 0), false); [line 63]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g329" -> "g331" ;
|
|
|
|
"g328" [label="28: Prune (true branch) \n PRUNE((n$8 != 0), true); [line 63]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g328" -> "g330" ;
|
|
|
|
"g327" [label="27: Call _fun_getValue \n n$8=_fun_getValue() [line 63]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g327" -> "g328" ;
|
|
|
|
"g327" -> "g329" ;
|
|
|
|
"g326" [label="26: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g326" -> "g332" ;
|
|
|
|
"g326" -> "g333" ;
|
|
|
|
"g325" [label="25: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g325" -> "g318" ;
|
|
|
|
"g324" [label="24: Prune (false branch) \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 65]\n PRUNE((n$6 == 0), false); [line 65]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g324" -> "g316" ;
|
|
|
|
"g323" [label="23: Prune (true branch) \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 65]\n PRUNE((n$6 != 0), true); [line 65]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g323" -> "g38" ;
|
|
|
|
"g322" [label="22: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int =1 [line 65]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g322" -> "g317" ;
|
|
|
|
"g321" [label="21: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int =0 [line 65]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g321" -> "g317" ;
|
|
|
|
"g320" [label="20: Prune (false branch) \n PRUNE((n$5 == 0), false); [line 65]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g320" -> "g322" ;
|
|
|
|
"g319" [label="19: Prune (true branch) \n PRUNE((n$5 != 0), true); [line 65]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g319" -> "g321" ;
|
|
|
|
"g318" [label="18: Call _fun_getValue \n n$5=_fun_getValue() [line 65]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g318" -> "g319" ;
|
|
|
|
"g318" -> "g320" ;
|
|
|
|
"g317" [label="17: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g317" -> "g323" ;
|
|
|
|
"g317" -> "g324" ;
|
|
|
|
"g316" [label="16: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g316" -> "g312" ;
|
|
|
|
"g315" [label="15: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g315" -> "g334" ;
|
|
|
|
"g314" [label="14: Prune (false branch) \n PRUNE(((n$3 > 1) == 0), false); [line 67]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g314" -> "g311" ;
|
|
|
|
"g313" [label="13: Prune (true branch) \n PRUNE(((n$3 > 1) != 0), true); [line 67]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g313" -> "g315" ;
|
|
|
|
"g312" [label="12: BinaryOperatorStmt: GT \n n$3=_fun_getValue() [line 67]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g312" -> "g313" ;
|
|
|
|
"g312" -> "g314" ;
|
|
|
|
"g311" [label="11: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g311" -> "g310" ;
|
|
|
|
"g310" [label="10: Call _fun_printf \n n$2=_fun_printf(\"g3\\n\":char *) [line 69]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g310" -> "g39" ;
|
|
|
|
"g39" [label="9: Return Stmt \n *&return:int =0 [line 70]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g39" -> "g32" ;
|
|
|
|
"g38" [label="8: Skip GotoLabel_stepA \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g38" -> "g37" ;
|
|
|
|
"g37" [label="7: DeclStmt \n *&a:int =2 [line 73]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g37" -> "g36" ;
|
|
|
|
"g36" [label="6: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char *) [line 74]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g36" -> "g35" ;
|
|
|
|
"g35" [label="5: Skip GotoLabel_exit_step \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g35" -> "g34" ;
|
|
|
|
"g34" [label="4: Call _fun_printf \n n$0=_fun_printf(\"exit\\n\":char *) [line 77]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g34" -> "g33" ;
|
|
|
|
"g33" [label="3: Return Stmt \n *&return:int =1 [line 78]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g33" -> "g32" ;
|
|
|
|
"g32" [label="2: Exit g3 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g31" [label="1: Start g3\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$4:int 0$?%__sil_tmpSIL_temp_conditional___n$7:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$4,&0$?%__sil_tmpSIL_temp_conditional___n$7); [line 59]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g31" -> "g315" ;
|
|
|
|
"g111" [label="11: DeclStmt \n *&a:int =0 [line 27]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g111" -> "g18" ;
|
|
|
|
"g110" [label="10: Prune (false branch) \n PRUNE(((n$0 > 1) == 0), false); [line 28]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g110" -> "g17" ;
|
|
|
|
"g19" [label="9: Prune (true branch) \n PRUNE(((n$0 > 1) != 0), true); [line 28]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g19" -> "g15" ;
|
|
|
|
"g18" [label="8: BinaryOperatorStmt: GT \n n$0=_fun_getValue() [line 28]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g18" -> "g19" ;
|
|
|
|
"g18" -> "g110" ;
|
|
|
|
"g17" [label="7: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g17" -> "g16" ;
|
|
|
|
"g16" [label="6: Return Stmt \n *&return:int =0 [line 30]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g16" -> "g12" ;
|
|
|
|
"g15" [label="5: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g15" -> "g14" ;
|
|
|
|
"g14" [label="4: BinaryOperatorStmt: Assign \n *&a:int =1 [line 33]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g14" -> "g13" ;
|
|
|
|
"g13" [label="3: Return Stmt \n *&return:int =1 [line 34]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g13" -> "g12" ;
|
|
|
|
"g12" [label="2: Exit g1 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g11" [label="1: Start g1\nFormals: \nLocals: a:int \n DECLARE_LOCALS(&return,&a); [line 26]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g11" -> "g111" ;
|
|
|
|
"g632" [label="32: Call _fun_printf \n n$9=_fun_printf(\"B\\n\":char *) [line 126]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g632" -> "g625" ;
|
|
|
|
"g631" [label="31: Prune (false branch) \n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 128]\n PRUNE((n$8 == 0), false); [line 128]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g631" -> "g623" ;
|
|
|
|
"g630" [label="30: Prune (true branch) \n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 128]\n PRUNE((n$8 != 0), true); [line 128]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g630" -> "g65" ;
|
|
|
|
"g629" [label="29: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int =1 [line 128]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g629" -> "g624" ;
|
|
|
|
"g628" [label="28: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int =0 [line 128]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g628" -> "g624" ;
|
|
|
|
"g627" [label="27: Prune (false branch) \n PRUNE((n$7 == 0), false); [line 128]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g627" -> "g629" ;
|
|
|
|
"g626" [label="26: Prune (true branch) \n PRUNE((n$7 != 0), true); [line 128]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g626" -> "g628" ;
|
|
|
|
"g625" [label="25: Call _fun_getValue \n n$7=_fun_getValue() [line 128]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g625" -> "g626" ;
|
|
|
|
"g625" -> "g627" ;
|
|
|
|
"g624" [label="24: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g624" -> "g630" ;
|
|
|
|
"g624" -> "g631" ;
|
|
|
|
"g623" [label="23: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g623" -> "g616" ;
|
|
|
|
"g622" [label="22: Prune (false branch) \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 130]\n PRUNE((n$5 == 0), false); [line 130]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g622" -> "g614" ;
|
|
|
|
"g621" [label="21: Prune (true branch) \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 130]\n PRUNE((n$5 != 0), true); [line 130]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g621" -> "g63" ;
|
|
|
|
"g620" [label="20: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int =1 [line 130]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g620" -> "g615" ;
|
|
|
|
"g619" [label="19: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int =0 [line 130]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g619" -> "g615" ;
|
|
|
|
"g618" [label="18: Prune (false branch) \n PRUNE((n$4 == 0), false); [line 130]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g618" -> "g620" ;
|
|
|
|
"g617" [label="17: Prune (true branch) \n PRUNE((n$4 != 0), true); [line 130]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g617" -> "g619" ;
|
|
|
|
"g616" [label="16: Call _fun_getValue \n n$4=_fun_getValue() [line 130]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g616" -> "g617" ;
|
|
|
|
"g616" -> "g618" ;
|
|
|
|
"g615" [label="15: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g615" -> "g621" ;
|
|
|
|
"g615" -> "g622" ;
|
|
|
|
"g614" [label="14: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g614" -> "g610" ;
|
|
|
|
"g613" [label="13: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g613" -> "g632" ;
|
|
|
|
"g612" [label="12: Prune (false branch) \n PRUNE(((n$2 > 1) == 0), false); [line 132]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g612" -> "g69" ;
|
|
|
|
"g611" [label="11: Prune (true branch) \n PRUNE(((n$2 > 1) != 0), true); [line 132]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g611" -> "g613" ;
|
|
|
|
"g610" [label="10: BinaryOperatorStmt: GT \n n$2=_fun_getValue() [line 132]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g610" -> "g611" ;
|
|
|
|
"g610" -> "g612" ;
|
|
|
|
"g69" [label="9: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g69" -> "g65" ;
|
|
|
|
"g68" [label="8: DeclStmt \n *&a:int =2 [line 137]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g68" -> "g67" ;
|
|
|
|
"g67" [label="7: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char *) [line 138]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g67" -> "g66" ;
|
|
|
|
"g66" [label="6: Return Stmt \n *&return:int =1 [line 140]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g66" -> "g62" ;
|
|
|
|
"g65" [label="5: Skip GotoLabel_exit_step \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g65" -> "g64" ;
|
|
|
|
"g64" [label="4: Call _fun_printf \n n$0=_fun_printf(\"exit\\n\":char *) [line 142]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g64" -> "g63" ;
|
|
|
|
"g63" [label="3: Skip GotoLabel_stepA \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g63" -> "g68" ;
|
|
|
|
"g62" [label="2: Exit g6 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g61" [label="1: Start g6\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$3:int 0$?%__sil_tmpSIL_temp_conditional___n$6:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$3,&0$?%__sil_tmpSIL_temp_conditional___n$6); [line 124]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g61" -> "g613" ;
|
|
|
|
"g532" [label="32: Call _fun_printf \n n$9=_fun_printf(\"B\\n\":char *) [line 104]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g532" -> "g525" ;
|
|
|
|
"g531" [label="31: Prune (false branch) \n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 106]\n PRUNE((n$8 == 0), false); [line 106]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g531" -> "g523" ;
|
|
|
|
"g530" [label="30: Prune (true branch) \n n$8=*&0$?%__sil_tmpSIL_temp_conditional___n$6:int [line 106]\n PRUNE((n$8 != 0), true); [line 106]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g530" -> "g55" ;
|
|
|
|
"g529" [label="29: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int =1 [line 106]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g529" -> "g524" ;
|
|
|
|
"g528" [label="28: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$6:int =0 [line 106]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g528" -> "g524" ;
|
|
|
|
"g527" [label="27: Prune (false branch) \n PRUNE((n$7 == 0), false); [line 106]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g527" -> "g529" ;
|
|
|
|
"g526" [label="26: Prune (true branch) \n PRUNE((n$7 != 0), true); [line 106]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g526" -> "g528" ;
|
|
|
|
"g525" [label="25: Call _fun_getValue \n n$7=_fun_getValue() [line 106]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g525" -> "g526" ;
|
|
|
|
"g525" -> "g527" ;
|
|
|
|
"g524" [label="24: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g524" -> "g530" ;
|
|
|
|
"g524" -> "g531" ;
|
|
|
|
"g523" [label="23: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g523" -> "g516" ;
|
|
|
|
"g522" [label="22: Prune (false branch) \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 108]\n PRUNE((n$5 == 0), false); [line 108]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g522" -> "g514" ;
|
|
|
|
"g521" [label="21: Prune (true branch) \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$3:int [line 108]\n PRUNE((n$5 != 0), true); [line 108]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g521" -> "g53" ;
|
|
|
|
"g520" [label="20: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int =1 [line 108]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g520" -> "g515" ;
|
|
|
|
"g519" [label="19: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$3:int =0 [line 108]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g519" -> "g515" ;
|
|
|
|
"g518" [label="18: Prune (false branch) \n PRUNE((n$4 == 0), false); [line 108]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g518" -> "g520" ;
|
|
|
|
"g517" [label="17: Prune (true branch) \n PRUNE((n$4 != 0), true); [line 108]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g517" -> "g519" ;
|
|
|
|
"g516" [label="16: Call _fun_getValue \n n$4=_fun_getValue() [line 108]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g516" -> "g517" ;
|
|
|
|
"g516" -> "g518" ;
|
|
|
|
"g515" [label="15: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g515" -> "g521" ;
|
|
|
|
"g515" -> "g522" ;
|
|
|
|
"g514" [label="14: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g514" -> "g510" ;
|
|
|
|
"g513" [label="13: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g513" -> "g532" ;
|
|
|
|
"g512" [label="12: Prune (false branch) \n PRUNE(((n$2 > 1) == 0), false); [line 110]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g512" -> "g59" ;
|
|
|
|
"g511" [label="11: Prune (true branch) \n PRUNE(((n$2 > 1) != 0), true); [line 110]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g511" -> "g513" ;
|
|
|
|
"g510" [label="10: BinaryOperatorStmt: GT \n n$2=_fun_getValue() [line 110]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g510" -> "g511" ;
|
|
|
|
"g510" -> "g512" ;
|
|
|
|
"g59" [label="9: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g59" -> "g55" ;
|
|
|
|
"g58" [label="8: DeclStmt \n *&a:int =2 [line 115]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g58" -> "g57" ;
|
|
|
|
"g57" [label="7: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char *) [line 116]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g57" -> "g56" ;
|
|
|
|
"g56" [label="6: Return Stmt \n *&return:int =1 [line 117]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g56" -> "g52" ;
|
|
|
|
"g55" [label="5: Skip GotoLabel_exit_step \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g55" -> "g54" ;
|
|
|
|
"g54" [label="4: Call _fun_printf \n n$0=_fun_printf(\"exit\\n\":char *) [line 120]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g54" -> "g53" ;
|
|
|
|
"g53" [label="3: Skip GotoLabel_stepA \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g53" -> "g58" ;
|
|
|
|
"g52" [label="2: Exit g5 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g51" [label="1: Start g5\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$3:int 0$?%__sil_tmpSIL_temp_conditional___n$6:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$3,&0$?%__sil_tmpSIL_temp_conditional___n$6); [line 102]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g51" -> "g513" ;
|
|
|
|
"g433" [label="33: Call _fun_printf \n n$10=_fun_printf(\"B\\n\":char *) [line 83]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g433" -> "g426" ;
|
|
|
|
"g432" [label="32: Prune (false branch) \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$7:int [line 85]\n PRUNE((n$9 == 0), false); [line 85]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g432" -> "g424" ;
|
|
|
|
"g431" [label="31: Prune (true branch) \n n$9=*&0$?%__sil_tmpSIL_temp_conditional___n$7:int [line 85]\n PRUNE((n$9 != 0), true); [line 85]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g431" -> "g45" ;
|
|
|
|
"g430" [label="30: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$7:int =1 [line 85]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g430" -> "g425" ;
|
|
|
|
"g429" [label="29: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$7:int =0 [line 85]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g429" -> "g425" ;
|
|
|
|
"g428" [label="28: Prune (false branch) \n PRUNE((n$8 == 0), false); [line 85]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g428" -> "g430" ;
|
|
|
|
"g427" [label="27: Prune (true branch) \n PRUNE((n$8 != 0), true); [line 85]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g427" -> "g429" ;
|
|
|
|
"g426" [label="26: Call _fun_getValue \n n$8=_fun_getValue() [line 85]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g426" -> "g427" ;
|
|
|
|
"g426" -> "g428" ;
|
|
|
|
"g425" [label="25: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g425" -> "g431" ;
|
|
|
|
"g425" -> "g432" ;
|
|
|
|
"g424" [label="24: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g424" -> "g417" ;
|
|
|
|
"g423" [label="23: Prune (false branch) \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 87]\n PRUNE((n$6 == 0), false); [line 87]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g423" -> "g415" ;
|
|
|
|
"g422" [label="22: Prune (true branch) \n n$6=*&0$?%__sil_tmpSIL_temp_conditional___n$4:int [line 87]\n PRUNE((n$6 != 0), true); [line 87]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g422" -> "g48" ;
|
|
|
|
"g421" [label="21: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int =1 [line 87]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g421" -> "g416" ;
|
|
|
|
"g420" [label="20: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_temp_conditional___n$4:int =0 [line 87]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g420" -> "g416" ;
|
|
|
|
"g419" [label="19: Prune (false branch) \n PRUNE((n$5 == 0), false); [line 87]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g419" -> "g421" ;
|
|
|
|
"g418" [label="18: Prune (true branch) \n PRUNE((n$5 != 0), true); [line 87]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g418" -> "g420" ;
|
|
|
|
"g417" [label="17: Call _fun_getValue \n n$5=_fun_getValue() [line 87]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g417" -> "g418" ;
|
|
|
|
"g417" -> "g419" ;
|
|
|
|
"g416" [label="16: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g416" -> "g422" ;
|
|
|
|
"g416" -> "g423" ;
|
|
|
|
"g415" [label="15: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g415" -> "g411" ;
|
|
|
|
"g414" [label="14: Skip GotoLabel_stepB \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g414" -> "g433" ;
|
|
|
|
"g413" [label="13: Prune (false branch) \n PRUNE(((n$3 > 1) == 0), false); [line 89]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g413" -> "g410" ;
|
|
|
|
"g412" [label="12: Prune (true branch) \n PRUNE(((n$3 > 1) != 0), true); [line 89]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g412" -> "g414" ;
|
|
|
|
"g411" [label="11: BinaryOperatorStmt: GT \n n$3=_fun_getValue() [line 89]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g411" -> "g412" ;
|
|
|
|
"g411" -> "g413" ;
|
|
|
|
"g410" [label="10: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g410" -> "g49" ;
|
|
|
|
"g49" [label="9: Call _fun_printf \n n$2=_fun_printf(\"g4\\n\":char *) [line 91]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g49" -> "g48" ;
|
|
|
|
"g48" [label="8: Skip GotoLabel_stepA \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g48" -> "g47" ;
|
|
|
|
"g47" [label="7: DeclStmt \n *&a:int =2 [line 94]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g47" -> "g46" ;
|
|
|
|
"g46" [label="6: Call _fun_printf \n n$1=_fun_printf(\"A\\n\":char *) [line 95]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g46" -> "g45" ;
|
|
|
|
"g45" [label="5: Skip GotoLabel_exit_step \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g45" -> "g44" ;
|
|
|
|
"g44" [label="4: Call _fun_printf \n n$0=_fun_printf(\"exit\\n\":char *) [line 98]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g44" -> "g43" ;
|
|
|
|
"g43" [label="3: Return Stmt \n *&return:int =1 [line 99]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g43" -> "g42" ;
|
|
|
|
"g42" [label="2: Exit g4 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g41" [label="1: Start g4\nFormals: \nLocals: a:int 0$?%__sil_tmpSIL_temp_conditional___n$4:int 0$?%__sil_tmpSIL_temp_conditional___n$7:int \n DECLARE_LOCALS(&return,&a,&0$?%__sil_tmpSIL_temp_conditional___n$4,&0$?%__sil_tmpSIL_temp_conditional___n$7); [line 81]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g41" -> "g414" ;
|
|
|
|
"g729" [label="29: DeclStmt \n *&i:int =0 [line 147]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g729" -> "g728" ;
|
|
|
|
"g728" [label="28: DeclStmt \n *&j:int =0 [line 147]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g728" -> "g727" ;
|
|
|
|
"g727" [label="27: DeclStmt \n *&k:int =0 [line 147]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g727" -> "g79" ;
|
|
|
|
"g726" [label="26: DeclStmt \n n$7=*&i:int [line 151]\n n$8=*&j:int [line 151]\n n$9=*&k:int [line 151]\n *&v:int =((n$7 + n$8) + n$9) [line 151]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g726" -> "g722" ;
|
|
|
|
"g725" [label="25: Call _fun_printf \n n$6=_fun_printf(\"wow\\n\":char *) [line 155]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g725" -> "g75" ;
|
|
|
|
"g724" [label="24: Prune (false branch) \n PRUNE(((n$5 >= 15) == 0), false); [line 152]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g724" -> "g721" ;
|
|
|
|
"g723" [label="23: Prune (true branch) \n PRUNE(((n$5 >= 15) != 0), true); [line 152]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g723" -> "g78" ;
|
|
|
|
"g722" [label="22: BinaryOperatorStmt: GE \n n$5=*&v:int [line 152]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g722" -> "g723" ;
|
|
|
|
"g722" -> "g724" ;
|
|
|
|
"g721" [label="21: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g721" -> "g717" ;
|
|
|
|
"g720" [label="20: Prune (false branch) \n PRUNE(((n$4 < 10) == 0), false); [line 150]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g720" -> "g713" ;
|
|
|
|
"g719" [label="19: Prune (true branch) \n PRUNE(((n$4 < 10) != 0), true); [line 150]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g719" -> "g726" ;
|
|
|
|
"g718" [label="18: BinaryOperatorStmt: LT \n n$4=*&k:int [line 150]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g718" -> "g719" ;
|
|
|
|
"g718" -> "g720" ;
|
|
|
|
"g717" [label="17: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g717" -> "g718" ;
|
|
|
|
"g716" [label="16: Prune (false branch) \n PRUNE(((n$3 < 10) == 0), false); [line 149]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g716" -> "g79" ;
|
|
|
|
"g715" [label="15: Prune (true branch) \n PRUNE(((n$3 < 10) != 0), true); [line 149]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g715" -> "g717" ;
|
|
|
|
"g714" [label="14: BinaryOperatorStmt: LT \n n$3=*&j:int [line 149]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g714" -> "g715" ;
|
|
|
|
"g714" -> "g716" ;
|
|
|
|
"g713" [label="13: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g713" -> "g714" ;
|
|
|
|
"g712" [label="12: Prune (false branch) \n PRUNE(((n$2 < 10) == 0), false); [line 148]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g712" -> "g78" ;
|
|
|
|
"g711" [label="11: Prune (true branch) \n PRUNE(((n$2 < 10) != 0), true); [line 148]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g711" -> "g713" ;
|
|
|
|
"g710" [label="10: BinaryOperatorStmt: LT \n n$2=*&i:int [line 148]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g710" -> "g711" ;
|
|
|
|
"g710" -> "g712" ;
|
|
|
|
"g79" [label="9: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g79" -> "g710" ;
|
|
|
|
"g78" [label="8: Skip GotoLabel_out \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g78" -> "g77" ;
|
|
|
|
"g77" [label="7: Call _fun_printf \n n$1=_fun_printf(\"out!\\n\":char *) [line 162]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g77" -> "g76" ;
|
|
|
|
"g76" [label="6: Skip GotoLabel_print \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g76" -> "g725" ;
|
|
|
|
"g75" [label="5: Skip GotoLabel_terminate \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g75" -> "g74" ;
|
|
|
|
"g74" [label="4: Call _fun_printf \n n$0=_fun_printf(\"terminating!\\n\":char *) [line 165]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g74" -> "g73" ;
|
|
|
|
"g73" [label="3: Return Stmt \n *&return:int =2 [line 166]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g73" -> "g72" ;
|
|
|
|
"g72" [label="2: Exit g7 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g71" [label="1: Start g7\nFormals: \nLocals: v:int k:int j:int i:int \n DECLARE_LOCALS(&return,&v,&k,&j,&i); [line 146]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g71" -> "g729" ;
|
|
|
|
"g832" [label="32: DeclStmt \n *&i:int =0 [line 170]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g832" -> "g831" ;
|
|
|
|
"g831" [label="31: DeclStmt \n *&j:int =0 [line 170]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g831" -> "g830" ;
|
|
|
|
"g830" [label="30: DeclStmt \n *&k:int =0 [line 170]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g830" -> "g828" ;
|
|
|
|
"g830" -> "g829" ;
|
|
|
|
"g829" [label="29: Prune (false branch) \n n$10=*&q:int [line 171]\n PRUNE((n$10 == 0), false); [line 171]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g829" -> "g827" ;
|
|
|
|
"g828" [label="28: Prune (true branch) \n n$10=*&q:int [line 171]\n PRUNE((n$10 != 0), true); [line 171]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g828" -> "g825" ;
|
|
|
|
"g827" [label="27: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g827" -> "g88" ;
|
|
|
|
"g826" [label="26: DeclStmt \n n$7=*&i:int [line 176]\n n$8=*&j:int [line 176]\n n$9=*&k:int [line 176]\n *&v:int =((n$7 + n$8) + n$9) [line 176]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g826" -> "g821" ;
|
|
|
|
"g825" [label="25: Skip GotoLabel_print \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g825" -> "g824" ;
|
|
|
|
"g824" [label="24: Call _fun_printf \n n$6=_fun_printf(\"wow\\n\":char *) [line 179]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g824" -> "g820" ;
|
|
|
|
"g823" [label="23: Prune (false branch) \n PRUNE(((n$5 >= 15) == 0), false); [line 177]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g823" -> "g820" ;
|
|
|
|
"g822" [label="22: Prune (true branch) \n PRUNE(((n$5 >= 15) != 0), true); [line 177]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g822" -> "g825" ;
|
|
|
|
"g821" [label="21: BinaryOperatorStmt: GE \n n$5=*&v:int [line 177]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g821" -> "g822" ;
|
|
|
|
"g821" -> "g823" ;
|
|
|
|
"g820" [label="20: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g820" -> "g816" ;
|
|
|
|
"g819" [label="19: Prune (false branch) \n PRUNE(((n$4 < 10) == 0), false); [line 175]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g819" -> "g812" ;
|
|
|
|
"g818" [label="18: Prune (true branch) \n PRUNE(((n$4 < 10) != 0), true); [line 175]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g818" -> "g826" ;
|
|
|
|
"g817" [label="17: BinaryOperatorStmt: LT \n n$4=*&k:int [line 175]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g817" -> "g818" ;
|
|
|
|
"g817" -> "g819" ;
|
|
|
|
"g816" [label="16: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g816" -> "g817" ;
|
|
|
|
"g815" [label="15: Prune (false branch) \n PRUNE(((n$3 < 10) == 0), false); [line 174]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g815" -> "g88" ;
|
|
|
|
"g814" [label="14: Prune (true branch) \n PRUNE(((n$3 < 10) != 0), true); [line 174]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g814" -> "g816" ;
|
|
|
|
"g813" [label="13: BinaryOperatorStmt: LT \n n$3=*&j:int [line 174]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g813" -> "g814" ;
|
|
|
|
"g813" -> "g815" ;
|
|
|
|
"g812" [label="12: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g812" -> "g813" ;
|
|
|
|
"g811" [label="11: Prune (false branch) \n PRUNE(((n$2 < 10) == 0), false); [line 173]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g811" -> "g87" ;
|
|
|
|
"g810" [label="10: Prune (true branch) \n PRUNE(((n$2 < 10) != 0), true); [line 173]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"g810" -> "g812" ;
|
|
|
|
"g89" [label="9: BinaryOperatorStmt: LT \n n$2=*&i:int [line 173]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g89" -> "g810" ;
|
|
|
|
"g89" -> "g811" ;
|
|
|
|
"g88" [label="8: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"g88" -> "g89" ;
|
|
|
|
"g87" [label="7: Skip GotoLabel_out \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g87" -> "g86" ;
|
|
|
|
"g86" [label="6: Call _fun_printf \n n$1=_fun_printf(\"out!\\n\":char *) [line 186]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g86" -> "g85" ;
|
|
|
|
"g85" [label="5: Skip GotoLabel_terminate \n " color="gray"]
|
|
|
|
|
|
|
|
|
|
|
|
"g85" -> "g84" ;
|
|
|
|
"g84" [label="4: Call _fun_printf \n n$0=_fun_printf(\"terminating!\\n\":char *) [line 188]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g84" -> "g83" ;
|
|
|
|
"g83" [label="3: Return Stmt \n *&return:int =2 [line 189]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"g83" -> "g82" ;
|
|
|
|
"g82" [label="2: Exit g8 \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g81" [label="1: Start g8\nFormals: q:int \nLocals: v:int k:int j:int i:int \n DECLARE_LOCALS(&return,&v,&k,&j,&i); [line 169]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"g81" -> "g832" ;
|
|
|
|
}
|