|
|
|
/* @generated */
|
|
|
|
digraph iCFG {
|
|
|
|
"binary_conditional::X_operator_bool3" [label="3: Return Stmt \n *&return:_Bool =1 [line 13]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_operator_bool3" -> "binary_conditional::X_operator_bool2" ;
|
|
|
|
"binary_conditional::X_operator_bool2" [label="2: Exit binary_conditional::X_operator_bool \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_operator_bool1" [label="1: Start binary_conditional::X_operator_bool\nFormals: this:class binary_conditional::X *\nLocals: \n DECLARE_LOCALS(&return); [line 13]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_operator_bool1" -> "binary_conditional::X_operator_bool3" ;
|
|
|
|
"binary_conditional::X_X2" [label="2: Exit binary_conditional::X_X \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_X1" [label="1: Start binary_conditional::X_X\nFormals: this:class binary_conditional::X * __param_0:class binary_conditional::X &\nLocals: \n DECLARE_LOCALS(&return); [line 12]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_X1" -> "binary_conditional::X_X2" ;
|
|
|
|
"binary_conditional::getX4" [label="4: DeclStmt \n _fun_binary_conditional::X_X(&x:class binary_conditional::X *) [line 17]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::getX4" -> "binary_conditional::getX3" ;
|
|
|
|
"binary_conditional::getX3" [label="3: Return Stmt \n n$0=*&__return_param:class binary_conditional::X * [line 18]\n _fun_binary_conditional::X_X(n$0:class binary_conditional::X *,&x:class binary_conditional::X &) [line 18]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::getX3" -> "binary_conditional::getX2" ;
|
|
|
|
"binary_conditional::getX2" [label="2: Exit binary_conditional::getX \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::getX1" [label="1: Start binary_conditional::getX\nFormals: __return_param:class binary_conditional::X *\nLocals: x:class binary_conditional::X \n DECLARE_LOCALS(&return,&x); [line 16]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::getX1" -> "binary_conditional::getX4" ;
|
|
|
|
"binary_conditional::X_X2" [label="2: Exit binary_conditional::X_X \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_X1" [label="1: Start binary_conditional::X_X\nFormals: this:class binary_conditional::X *\nLocals: \n DECLARE_LOCALS(&return); [line 12]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_X1" -> "binary_conditional::X_X2" ;
|
|
|
|
"binary_conditional::conditional10" [label="10: DeclStmt \n _fun_binary_conditional::X_X(&a:class binary_conditional::X *) [line 28]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional10" -> "binary_conditional::conditional4" ;
|
|
|
|
"binary_conditional::conditional9" [label="9: DeclStmt \n n$7=*&0$?%__sil_tmpSIL_temp_conditional___n$1:class binary_conditional::X [line 29]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X =n$7 [line 29]\n _fun_binary_conditional::X_X(&x:class binary_conditional::X *,&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X &) [line 29]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional9" -> "binary_conditional::conditional2" ;
|
|
|
|
"binary_conditional::conditional8" [label="8: ConditinalStmt Branch \n _fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X *,&a:class binary_conditional::X &) [line 29]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:class binary_conditional::X =&0$?%__sil_tmpSIL_materialize_temp__n$0 [line 29]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional8" -> "binary_conditional::conditional3" ;
|
|
|
|
"binary_conditional::conditional7" [label="7: ConditinalStmt Branch \n _fun_binary_conditional::getX(&0$?%__sil_tmpSIL_materialize_temp__n$5:class binary_conditional::X *) [line 29]\n _fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X *,&0$?%__sil_tmpSIL_materialize_temp__n$5:class binary_conditional::X &) [line 29]\n *&0$?%__sil_tmpSIL_temp_conditional___n$1:class binary_conditional::X =&0$?%__sil_tmpSIL_materialize_temp__n$0 [line 29]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional7" -> "binary_conditional::conditional3" ;
|
|
|
|
"binary_conditional::conditional6" [label="6: Prune (false branch) \n PRUNE((n$4 == 0), false); [line 29]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional6" -> "binary_conditional::conditional8" ;
|
|
|
|
"binary_conditional::conditional5" [label="5: Prune (true branch) \n PRUNE((n$4 != 0), true); [line 29]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional5" -> "binary_conditional::conditional7" ;
|
|
|
|
"binary_conditional::conditional4" [label="4: Call _fun_binary_conditional::X_operator_bool \n _fun_binary_conditional::getX(&0$?%__sil_tmp__temp_return_n$3:class binary_conditional::X *) [line 29]\n n$4=_fun_binary_conditional::X_operator_bool(&0$?%__sil_tmp__temp_return_n$3:class binary_conditional::X &) [line 29]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional4" -> "binary_conditional::conditional5" ;
|
|
|
|
"binary_conditional::conditional4" -> "binary_conditional::conditional6" ;
|
|
|
|
"binary_conditional::conditional3" [label="3: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional3" -> "binary_conditional::conditional9" ;
|
|
|
|
"binary_conditional::conditional2" [label="2: Exit binary_conditional::conditional \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional1" [label="1: Start binary_conditional::conditional\nFormals: \nLocals: x:class binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X 0$?%__sil_tmpSIL_temp_conditional___n$1:class binary_conditional::X 0$?%__sil_tmp__temp_return_n$3:class binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$5:class binary_conditional::X a:class binary_conditional::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$0,&0$?%__sil_tmpSIL_temp_conditional___n$1,&0$?%__sil_tmp__temp_return_n$3,&0$?%__sil_tmpSIL_materialize_temp__n$5,&a); [line 27]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::conditional1" -> "binary_conditional::conditional10" ;
|
|
|
|
"binary_conditional::binaryConditional11" [label="11: DeclStmt \n _fun_binary_conditional::X_X(&a:class binary_conditional::X *) [line 23]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional11" -> "binary_conditional::binaryConditional9" ;
|
|
|
|
"binary_conditional::binaryConditional10" [label="10: DeclStmt \n n$5=*&0$?%__sil_tmpSIL_temp_conditional___n$2:class binary_conditional::X [line 24]\n *&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X =n$5 [line 24]\n _fun_binary_conditional::X_X(&x:class binary_conditional::X *,&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X &) [line 24]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional10" -> "binary_conditional::binaryConditional2" ;
|
|
|
|
"binary_conditional::binaryConditional9" [label="9: BinaryConditinalStmt Init \n _fun_binary_conditional::getX(&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X *) [line 24]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional9" -> "binary_conditional::binaryConditional4" ;
|
|
|
|
"binary_conditional::binaryConditional8" [label="8: ConditinalStmt Branch \n _fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X *,&a:class binary_conditional::X &) [line 24]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:class binary_conditional::X =&0$?%__sil_tmpSIL_materialize_temp__n$0 [line 24]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional8" -> "binary_conditional::binaryConditional3" ;
|
|
|
|
"binary_conditional::binaryConditional7" [label="7: ConditinalStmt Branch \n *&0$?%__sil_tmpSIL_materialize_temp__n$4:class binary_conditional::X =&0$?%__sil_tmpSIL_materialize_temp__n$0 [line 24]\n _fun_binary_conditional::X_X(&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X *,&0$?%__sil_tmpSIL_materialize_temp__n$4:class binary_conditional::X &) [line 24]\n *&0$?%__sil_tmpSIL_temp_conditional___n$2:class binary_conditional::X =&0$?%__sil_tmpSIL_materialize_temp__n$0 [line 24]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional7" -> "binary_conditional::binaryConditional3" ;
|
|
|
|
"binary_conditional::binaryConditional6" [label="6: Prune (false branch) \n PRUNE((n$3 == 0), false); [line 24]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional6" -> "binary_conditional::binaryConditional8" ;
|
|
|
|
"binary_conditional::binaryConditional5" [label="5: Prune (true branch) \n PRUNE((n$3 != 0), true); [line 24]\n " shape="invhouse"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional5" -> "binary_conditional::binaryConditional7" ;
|
|
|
|
"binary_conditional::binaryConditional4" [label="4: Call _fun_binary_conditional::X_operator_bool \n n$3=_fun_binary_conditional::X_operator_bool(&0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X &) [line 24]\n " shape="box"]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional4" -> "binary_conditional::binaryConditional5" ;
|
|
|
|
"binary_conditional::binaryConditional4" -> "binary_conditional::binaryConditional6" ;
|
|
|
|
"binary_conditional::binaryConditional3" [label="3: + \n " ]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional3" -> "binary_conditional::binaryConditional10" ;
|
|
|
|
"binary_conditional::binaryConditional2" [label="2: Exit binary_conditional::binaryConditional \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional1" [label="1: Start binary_conditional::binaryConditional\nFormals: \nLocals: x:class binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$0:class binary_conditional::X 0$?%__sil_tmpSIL_temp_conditional___n$2:class binary_conditional::X 0$?%__sil_tmpSIL_materialize_temp__n$4:class binary_conditional::X a:class binary_conditional::X \n DECLARE_LOCALS(&return,&x,&0$?%__sil_tmpSIL_materialize_temp__n$0,&0$?%__sil_tmpSIL_temp_conditional___n$2,&0$?%__sil_tmpSIL_materialize_temp__n$4,&a); [line 22]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::binaryConditional1" -> "binary_conditional::binaryConditional11" ;
|
|
|
|
"binary_conditional::X_X2" [label="2: Exit binary_conditional::X_X \n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_X1" [label="1: Start binary_conditional::X_X\nFormals: this:class binary_conditional::X * __param_0:class binary_conditional::X &\nLocals: \n DECLARE_LOCALS(&return); [line 12]\n " color=yellow style=filled]
|
|
|
|
|
|
|
|
|
|
|
|
"binary_conditional::X_X1" -> "binary_conditional::X_X2" ;
|
|
|
|
}
|