当前位置: 首页>>代码示例>>C++>>正文


C++ IF函数代码示例

本文整理汇总了C++中IF函数的典型用法代码示例。如果您正苦于以下问题:C++ IF函数的具体用法?C++ IF怎么用?C++ IF使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了IF函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: IF

                                        void *P1_0(void *__cs_param_P1_arg)
                                        {
IF(2,0,tP1_0_1)
                                        __CSEQ_atomic_begin();
tP1_0_1: IF(2,1,tP1_0_2)
                                        x$w_buff1 = x$w_buff0;
tP1_0_2: IF(2,2,tP1_0_3)
                                        x$w_buff0 = 2;
tP1_0_3: IF(2,3,tP1_0_4)
                                        x$w_buff1_used = x$w_buff0_used;
tP1_0_4: IF(2,4,tP1_0_5)
                                        x$w_buff0_used = (_Bool) 1;
tP1_0_5: IF(2,5,tP1_0_6)
                                        assert(!(x$w_buff1_used && x$w_buff0_used));
tP1_0_6: IF(2,6,tP1_0_7)
                                        x$r_buff1_thd0 = x$r_buff0_thd0;
tP1_0_7: IF(2,7,tP1_0_8)
                                        x$r_buff1_thd1 = x$r_buff0_thd1;
tP1_0_8: IF(2,8,tP1_0_9)
                                        x$r_buff1_thd2 = x$r_buff0_thd2;
tP1_0_9: IF(2,9,tP1_0_10)
                                        x$r_buff0_thd2 = (_Bool) 1;
                                        __CSEQ_atomic_end();
tP1_0_10: IF(2,10,tP1_0_11)
                                        __CSEQ_atomic_begin();
tP1_0_11: IF(2,11,tP1_0_12)
                                        y = 1;
                                        __CSEQ_atomic_end();
tP1_0_12: IF(2,12,tP1_0_13)
                                        __CSEQ_atomic_begin();
tP1_0_13: IF(2,13,tP1_0_14)
                                        __unbuffered_p1_EAX = y;
                                        __CSEQ_atomic_end();
tP1_0_14: IF(2,14,tP1_0_15)
                                        __CSEQ_atomic_begin();
tP1_0_15: IF(2,15,tP1_0_16)
                                        __unbuffered_p1_EBX = z;
                                        __CSEQ_atomic_end();
tP1_0_16: IF(2,16,tP1_0_17)
                                        __CSEQ_atomic_begin();
tP1_0_17: IF(2,17,tP1_0_18)
                                        x = x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x;
tP1_0_18: IF(2,18,tP1_0_19)
                                        x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool) 0 : x$w_buff0_used;
tP1_0_19: IF(2,19,tP1_0_20)
                                        x$w_buff1_used = (x$w_buff0_used && x$r_buff0_thd2) || (x$w_buff1_used && x$r_buff1_thd2) ? (_Bool) 0 : x$w_buff1_used;
tP1_0_20: IF(2,20,tP1_0_21)
                                        x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool) 0 : x$r_buff0_thd2;
tP1_0_21: IF(2,21,tP1_0_22)
                                        x$r_buff1_thd2 = (x$w_buff0_used && x$r_buff0_thd2) || (x$w_buff1_used && x$r_buff1_thd2) ? (_Bool) 0 : x$r_buff1_thd2;
                                        __CSEQ_atomic_end();
tP1_0_22: IF(2,22,tP1_0_23)
                                        __CSEQ_atomic_begin();
tP1_0_23: IF(2,23,tP1_0_24)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P1;
                                        		;
                                        __exit_P1:
                                        		__CPROVER_assume(__cs_pc_cs[2] >= 24);
                                        		;
                                        		;
tP1_0_24: 
                                        STOP_NONVOID(24);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:65,代码来源:_cs_mix041_pso.opt_false-unreach-call.c

示例2: emit

void
vec4_gs_visitor::gs_emit_vertex(int stream_id)
{
    this->current_annotation = "emit vertex: safety check";

    /* Haswell and later hardware ignores the "Render Stream Select" bits
     * from the 3DSTATE_STREAMOUT packet when the SOL stage is disabled,
     * and instead sends all primitives down the pipeline for rasterization.
     * If the SOL stage is enabled, "Render Stream Select" is honored and
     * primitives bound to non-zero streams are discarded after stream output.
     *
     * Since the only purpose of primives sent to non-zero streams is to
     * be recorded by transform feedback, we can simply discard all geometry
     * bound to these streams when transform feedback is disabled.
     */
    if (stream_id > 0 && !nir->info->has_transform_feedback_varyings)
        return;

    /* If we're outputting 32 control data bits or less, then we can wait
     * until the shader is over to output them all.  Otherwise we need to
     * output them as we go.  Now is the time to do it, since we're about to
     * output the vertex_count'th vertex, so it's guaranteed that the
     * control data bits associated with the (vertex_count - 1)th vertex are
     * correct.
     */
    if (c->control_data_header_size_bits > 32) {
        this->current_annotation = "emit vertex: emit control data bits";
        /* Only emit control data bits if we've finished accumulating a batch
         * of 32 bits.  This is the case when:
         *
         *     (vertex_count * bits_per_vertex) % 32 == 0
         *
         * (in other words, when the last 5 bits of vertex_count *
         * bits_per_vertex are 0).  Assuming bits_per_vertex == 2^n for some
         * integer n (which is always the case, since bits_per_vertex is
         * always 1 or 2), this is equivalent to requiring that the last 5-n
         * bits of vertex_count are 0:
         *
         *     vertex_count & (2^(5-n) - 1) == 0
         *
         * 2^(5-n) == 2^5 / 2^n == 32 / bits_per_vertex, so this is
         * equivalent to:
         *
         *     vertex_count & (32 / bits_per_vertex - 1) == 0
         */
        vec4_instruction *inst =
            emit(AND(dst_null_ud(), this->vertex_count,
                     brw_imm_ud(32 / c->control_data_bits_per_vertex - 1)));
        inst->conditional_mod = BRW_CONDITIONAL_Z;

        emit(IF(BRW_PREDICATE_NORMAL));
        {
            /* If vertex_count is 0, then no control data bits have been
             * accumulated yet, so we skip emitting them.
             */
            emit(CMP(dst_null_ud(), this->vertex_count, brw_imm_ud(0u),
                     BRW_CONDITIONAL_NEQ));
            emit(IF(BRW_PREDICATE_NORMAL));
            emit_control_data_bits();
            emit(BRW_OPCODE_ENDIF);

            /* Reset control_data_bits to 0 so we can start accumulating a new
             * batch.
             *
             * Note: in the case where vertex_count == 0, this neutralizes the
             * effect of any call to EndPrimitive() that the shader may have
             * made before outputting its first vertex.
             */
            inst = emit(MOV(dst_reg(this->control_data_bits), brw_imm_ud(0u)));
            inst->force_writemask_all = true;
        }
        emit(BRW_OPCODE_ENDIF);
    }

    this->current_annotation = "emit vertex: vertex data";
    emit_vertex();

    /* In stream mode we have to set control data bits for all vertices
     * unless we have disabled control data bits completely (which we do
     * do for GL_POINTS outputs that don't use streams).
     */
    if (c->control_data_header_size_bits > 0 &&
            gs_prog_data->control_data_format ==
            GEN7_GS_CONTROL_DATA_FORMAT_GSCTL_SID) {
        this->current_annotation = "emit vertex: Stream control data bits";
        set_stream_control_data_bits(stream_id);
    }

    this->current_annotation = NULL;
}
开发者ID:Echelon9,项目名称:mesa,代码行数:90,代码来源:brw_vec4_gs_visitor.cpp

示例3: IF

                                        void *P2_0(void *__cs_param_P2_arg)
                                        {
IF(3,0,tP2_0_1)
                                        __CSEQ_atomic_begin();
tP2_0_1: IF(3,1,tP2_0_2)
                                        y$w_buff1 = y$w_buff0;
tP2_0_2: IF(3,2,tP2_0_3)
                                        y$w_buff0 = 1;
tP2_0_3: IF(3,3,tP2_0_4)
                                        y$w_buff1_used = y$w_buff0_used;
tP2_0_4: IF(3,4,tP2_0_5)
                                        y$w_buff0_used = (_Bool) 1;
tP2_0_5: IF(3,5,tP2_0_6)
                                        assert(!(y$w_buff1_used && y$w_buff0_used));
tP2_0_6: IF(3,6,tP2_0_7)
                                        y$r_buff1_thd0 = y$r_buff0_thd0;
tP2_0_7: IF(3,7,tP2_0_8)
                                        y$r_buff1_thd1 = y$r_buff0_thd1;
tP2_0_8: IF(3,8,tP2_0_9)
                                        y$r_buff1_thd2 = y$r_buff0_thd2;
tP2_0_9: IF(3,9,tP2_0_10)
                                        y$r_buff1_thd3 = y$r_buff0_thd3;
tP2_0_10: IF(3,10,tP2_0_11)
                                        y$r_buff1_thd4 = y$r_buff0_thd4;
tP2_0_11: IF(3,11,tP2_0_12)
                                        y$r_buff0_thd3 = (_Bool) 1;
                                        __CSEQ_atomic_end();
tP2_0_12: IF(3,12,tP2_0_13)
                                        __CSEQ_atomic_begin();
tP2_0_13: IF(3,13,tP2_0_14)
                                        __unbuffered_p2_EAX = z;
                                        __CSEQ_atomic_end();
tP2_0_14: IF(3,14,tP2_0_15)
                                        __CSEQ_atomic_begin();
tP2_0_15: IF(3,15,tP2_0_16)
                                        y = y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff0 : y$w_buff1_used && y$r_buff1_thd3 ? y$w_buff1 : y;
tP2_0_16: IF(3,16,tP2_0_17)
                                        y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd3 ? (_Bool) 0 : y$w_buff0_used;
tP2_0_17: IF(3,17,tP2_0_18)
                                        y$w_buff1_used = (y$w_buff0_used && y$r_buff0_thd3) || (y$w_buff1_used && y$r_buff1_thd3) ? (_Bool) 0 : y$w_buff1_used;
tP2_0_18: IF(3,18,tP2_0_19)
                                        y$r_buff0_thd3 = y$w_buff0_used && y$r_buff0_thd3 ? (_Bool) 0 : y$r_buff0_thd3;
tP2_0_19: IF(3,19,tP2_0_20)
                                        y$r_buff1_thd3 = (y$w_buff0_used && y$r_buff0_thd3) || (y$w_buff1_used && y$r_buff1_thd3) ? (_Bool) 0 : y$r_buff1_thd3;
                                        __CSEQ_atomic_end();
tP2_0_20: IF(3,20,tP2_0_21)
                                        __CSEQ_atomic_begin();
tP2_0_21: IF(3,21,tP2_0_22)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P2;
                                        		;
                                        __exit_P2:
                                        		__CPROVER_assume(__cs_pc_cs[3] >= 22);
                                        		;
                                        		;
tP2_0_22: 
                                        STOP_NONVOID(22);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:59,代码来源:_cs_mix017_rmo.opt_false-unreach-call.c

示例4: SignalGenerator_Init

void* DLLEXPORT SignalGenerator_Init ( int hParentInstrumentHandle , ViRsrc szRsrcAddress , int *vhInstrumentHandle , int *InstrumentConnectStatus , int *InstrumentChannelsQuantity )
{
	STD_ERROR						StdError										=	{0};
	
	tsHandle						*pLocalHandle									=	{0};
	
	CmtTSVHandle 					handle											=	0;
	
	int								supported										=	0;
	
	tsSTD_CallBackSet				tSTD_CallBackSet								=	{0};
	
	double							lfTimeout										=	0.0,
									lfStateFileDelay								=	1.0,  
									lfStateFileTimeout								=	10.0, 
									lfDefaultTimeout								=	5.0;
									
	IF (( szRsrcAddress == NULL ) , "Address string is empty" );
	
	if ( hParentInstrumentHandle == 0 ) 
	{
		CHK_CMT ( CmtNewTSV ( sizeof(tsHandle) , &handle ));
	}
	else
		handle = hParentInstrumentHandle;
		
	if ( vhInstrumentHandle )
		*vhInstrumentHandle = handle;
	
	CHK_CMT ( CmtGetTSVPtr ( handle , &pLocalHandle ));

	if ( pLocalHandle->defaultRM == 0 )
	{
		CHK_VSA ( viOpenDefaultRM (&(pLocalHandle->defaultRM)));
	}
	
	if ( pLocalHandle->sessionHandle == 0 )
	{
		CHK_VSA ( viOpen ( pLocalHandle->defaultRM , szRsrcAddress , VI_NULL, VI_NULL, &(pLocalHandle->sessionHandle)));
	}
	
	WaitForOperationCompletion( pLocalHandle->sessionHandle , 20.0 , 0.5 );
	
	CHK_VSA ( viSetAttribute ( pLocalHandle->sessionHandle , VI_ATTR_TMO_VALUE , 500 ));
	
	FREE_STDERR_COPY_ERR( Equipment_IsSupported ( pLocalHandle->sessionHandle , NULL , NULL , NULL , &supported , &pLocalHandle )); 

	IF (( supported == 0 ) , "This device has not supported." );

	FREE_STDERR_COPY_ERR( Equipment_Info ( pLocalHandle->sessionHandle , NULL , &pLocalHandle->pVendor , &pLocalHandle->pSerialNumber , &pLocalHandle->pModel , &pLocalHandle->pFirmware ));

	STDF_UPDATE_CALLBACK_DATA(pLocalHandle->ptCallbacks); 
	
	viPrintf( pLocalHandle->sessionHandle ,"*CLS\n" ); 
	
	STDF_CONFIG_VALUE("Timeout", VAL_DOUBLE , 1 , lfTimeout , lfDefaultTimeout );	
	
	if ( lfTimeout == 0.0 )
		lfTimeout = lfDefaultTimeout;
	
	viSetAttribute ( pLocalHandle->sessionHandle , VI_ATTR_TMO_VALUE , (lfTimeout*1E3) );
	
	STDF_CONFIG_VALUE("OPC_Timeout", VAL_DOUBLE , 1 , (pLocalHandle->lfTimeout) , lfDefaultTimeout );	
	
	if ( pLocalHandle->lfTimeout == 0.0 )
		pLocalHandle->lfTimeout = lfDefaultTimeout;
	
	STDF_CONFIG_VALUE("OPC_LowLevel_Timeout", VAL_DOUBLE , 1 , (pLocalHandle->lfOpcLowLevelTimeout) , lfDefaultTimeout );	 
	
	if ( pLocalHandle->lfOpcLowLevelTimeout == 0.0 )
		pLocalHandle->lfOpcLowLevelTimeout = lfDefaultTimeout;
	
		STDF_CONFIG_VALUE("State_File_Timeout", VAL_DOUBLE , 1 , (pLocalHandle->lfStateFileTimeout) , lfStateFileTimeout );	 
	
	if ( pLocalHandle->lfStateFileTimeout == 0.0 )
		pLocalHandle->lfStateFileTimeout = lfStateFileTimeout;
	
	STDF_CONFIG_VALUE("State_File_Delay", VAL_DOUBLE , 1 , (pLocalHandle->lfStateFileDelay) , lfStateFileDelay );	 
	
	if ( pLocalHandle->lfStateFileDelay == 0.0 )
		pLocalHandle->lfStateFileDelay = lfStateFileDelay;   
Error:
	
	if ( InstrumentConnectStatus )
		*InstrumentConnectStatus = supported;
	
	if ( handle )
		CmtReleaseTSVPtr ( handle );
	
	RETURN_STDERR_POINTER;
}
开发者ID:ialexyi,项目名称:ATE,代码行数:91,代码来源:Hittite_HMC_T2100_wrapper.c

示例5: IF

                                        void *P1_0(void *__cs_param_P1_arg)
                                        {
IF(2,0,tP1_0_1)
                                        __CSEQ_atomic_begin();
tP1_0_1: IF(2,1,tP1_0_2)
                                        __unbuffered_p1_EAX = x;
                                        __CSEQ_atomic_end();
tP1_0_2: IF(2,2,tP1_0_3)
                                        __CSEQ_atomic_begin();
tP1_0_3: IF(2,3,tP1_0_4)
                                        y = 1;
                                        __CSEQ_atomic_end();
tP1_0_4: IF(2,4,tP1_0_5)
                                        __CSEQ_atomic_begin();
tP1_0_5: IF(2,5,tP1_0_6)
                                        y = y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y;
tP1_0_6: IF(2,6,tP1_0_7)
                                        y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool) 0 : y$w_buff0_used;
tP1_0_7: IF(2,7,tP1_0_8)
                                        y$w_buff1_used = (y$w_buff0_used && y$r_buff0_thd2) || (y$w_buff1_used && y$r_buff1_thd2) ? (_Bool) 0 : y$w_buff1_used;
tP1_0_8: IF(2,8,tP1_0_9)
                                        y$r_buff0_thd2 = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool) 0 : y$r_buff0_thd2;
tP1_0_9: IF(2,9,tP1_0_10)
                                        y$r_buff1_thd2 = (y$w_buff0_used && y$r_buff0_thd2) || (y$w_buff1_used && y$r_buff1_thd2) ? (_Bool) 0 : y$r_buff1_thd2;
                                        __CSEQ_atomic_end();
tP1_0_10: IF(2,10,tP1_0_11)
                                        __CSEQ_atomic_begin();
tP1_0_11: IF(2,11,tP1_0_12)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P1;
                                        		;
                                        __exit_P1:
                                        		__CPROVER_assume(__cs_pc_cs[2] >= 12);
                                        		;
                                        		;
tP1_0_12: 
                                        STOP_NONVOID(12);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:39,代码来源:_cs_safe009_rmo.oepc_false-unreach-call.c

示例6: LoadBlock

static void LoadBlock(LoadState* S, void* b, size_t size)
{
 size_t r=luaZ_read(S->Z,b,size);
 IF (r!=0, "unexpected end");
}
开发者ID:CSE380Skulls,项目名称:ForceOfReaction,代码行数:5,代码来源:lundump.c

示例7: SignalGenerator_GetErrorTextMessage

void* DLLEXPORT SignalGenerator_GetErrorTextMessage ( int hInstrumentHandle , int iError , char *pErrorMessage )
{
	STD_ERROR		StdError							=	{0};
	
	tsHandle		*pLocalHandle						=	{0};

	int				handle								=	0;
	
	char			szReadBuffer[LOW_STRING]			=	{0},
					szErrorDescription[LOW_STRING]		=	{0};
	
	int				count								=	0;
	
	char			*pTemp								=	NULL;
	
	IF (( hInstrumentHandle == 0 ) , "Handle is empty" );
	
	SetBreakOnLibraryErrors (0); 
	
	handle = hInstrumentHandle;
	
	CHK_CMT ( CmtGetTSVPtr ( handle , &pLocalHandle ));
	
	WaitForOperationCompletion( pLocalHandle->sessionHandle , pLocalHandle->lfTimeout  ,  pLocalHandle->lfOpcLowLevelTimeout );  
	
	viPrintf( pLocalHandle->sessionHandle , ":SYST:ERR?\n" );
	viRead( pLocalHandle->sessionHandle, szReadBuffer , LOW_STRING , &count );
	
	iError = atoi(szReadBuffer);
	
	pTemp = strchr( szReadBuffer , '"' );
	
	if ( pTemp )
	{
		pTemp++;
		
		strcpy( szErrorDescription , pTemp );  
		
		pTemp = strchr( szErrorDescription , '"' );
		
		if ( pTemp )
			*pTemp = 0;
	}
	
	viPrintf( pLocalHandle->sessionHandle , "*CLS\n" );
	
	if ( pErrorMessage )
	{
		strcpy( pErrorMessage , szErrorDescription ); 
	}

	StdError.error = iError;
	
	if ( iError )
	{
		CALLOC_COPY_STRING( StdError.pszErrorDescription , szErrorDescription );
	}
	
Error:

	SetBreakOnLibraryErrors (1);
	
	if ( handle )
		CmtReleaseTSVPtr ( handle );
	
	RETURN_STDERR_POINTER;
}
开发者ID:ialexyi,项目名称:ATE,代码行数:67,代码来源:Hittite_HMC_T2100_wrapper.c

示例8: IF

                                        void *P0_0(void *__cs_param_P0_arg)
                                        {
IF(1,0,tP0_0_1)
                                        __CSEQ_atomic_begin();
tP0_0_1: IF(1,1,tP0_0_2)
                                        __unbuffered_p0_EAX = y;
                                        __CSEQ_atomic_end();
tP0_0_2: IF(1,2,tP0_0_3)
                                        __CSEQ_atomic_begin();
tP0_0_3: IF(1,3,tP0_0_4)
                                        weak$$choice0 = nondet_0();
tP0_0_4: IF(1,4,tP0_0_5)
                                        weak$$choice2 = nondet_0();
tP0_0_5: IF(1,5,tP0_0_6)
                                        x$flush_delayed = weak$$choice2;
tP0_0_6: IF(1,6,tP0_0_7)
                                        x$mem_tmp = x;
tP0_0_7: IF(1,7,tP0_0_8)
                                        x = ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x : x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1;
tP0_0_8: IF(1,8,tP0_0_9)
                                        x$w_buff0 = weak$$choice2 ? x$w_buff0 : ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x$w_buff0 : x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff0;
tP0_0_9: IF(1,9,tP0_0_10)
                                        x$w_buff1 = weak$$choice2 ? x$w_buff1 : ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x$w_buff1 : x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff1 : x$w_buff1;
tP0_0_10: IF(1,10,tP0_0_11)
                                        x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x$w_buff0_used : x$w_buff0_used && x$r_buff0_thd1 ? (_Bool) 0 : x$w_buff0_used;
tP0_0_11: IF(1,11,tP0_0_12)
                                        x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x$w_buff1_used : x$w_buff0_used && x$r_buff0_thd1 ? (_Bool) 0 : (_Bool) 0;
tP0_0_12: IF(1,12,tP0_0_13)
                                        x$r_buff0_thd1 = weak$$choice2 ? x$r_buff0_thd1 : ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x$r_buff0_thd1 : x$w_buff0_used && x$r_buff0_thd1 ? (_Bool) 0 : x$r_buff0_thd1;
tP0_0_13: IF(1,13,tP0_0_14)
                                        x$r_buff1_thd1 = weak$$choice2 ? x$r_buff1_thd1 : ((!x$w_buff0_used) || ((!x$r_buff0_thd1) && (!x$w_buff1_used))) || ((!x$r_buff0_thd1) && (!x$r_buff1_thd1)) ? x$r_buff1_thd1 : x$w_buff0_used && x$r_buff0_thd1 ? (_Bool) 0 : (_Bool) 0;
tP0_0_14: IF(1,14,tP0_0_15)
                                        __unbuffered_p0_EBX = x;
tP0_0_15: IF(1,15,tP0_0_16)
                                        x = x$flush_delayed ? x$mem_tmp : x;
tP0_0_16: IF(1,16,tP0_0_17)
                                        x$flush_delayed = (_Bool) 0;
                                        __CSEQ_atomic_end();
tP0_0_17: IF(1,17,tP0_0_18)
                                        __CSEQ_atomic_begin();
                                        __CSEQ_atomic_end();
tP0_0_18: IF(1,18,tP0_0_19)
                                        __CSEQ_atomic_begin();
tP0_0_19: IF(1,19,tP0_0_20)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P0;
                                        		;
                                        __exit_P0:
                                        		__CPROVER_assume(__cs_pc_cs[1] >= 20);
                                        		;
                                        		;
tP0_0_20: 
                                        STOP_NONVOID(20);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:55,代码来源:_cs_safe014_rmo.opt_false-unreach-call.c

示例9: main_thread

                                        int main_thread(void)
                                        {
                                        		;
IF(0,0,tmain_1)
                                        __cs_create(0, 0, P0_0, 0, 1);
tmain_1: IF(0,1,tmain_2)
                                        __cs_create(0, 0, P1_0, 0, 2);
tmain_2: IF(0,2,tmain_3)
                                        __cs_create(0, 0, P2_0, 0, 3);
tmain_3: IF(0,3,tmain_4)
                                        __CSEQ_atomic_begin();
tmain_4: IF(0,4,tmain_5)
                                        main$tmp_guard0 = __unbuffered_cnt == 3;
                                        __CSEQ_atomic_end();
tmain_5: IF(0,5,tmain_6)
                                        __CPROVER_assume(main$tmp_guard0);
tmain_6: IF(0,6,tmain_7)
                                        __CSEQ_atomic_begin();
tmain_7: IF(0,7,tmain_8)
                                        x = x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x;
tmain_8: IF(0,8,tmain_9)
                                        x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool) 0 : x$w_buff0_used;
tmain_9: IF(0,9,tmain_10)
                                        x$w_buff1_used = (x$w_buff0_used && x$r_buff0_thd0) || (x$w_buff1_used && x$r_buff1_thd0) ? (_Bool) 0 : x$w_buff1_used;
tmain_10: IF(0,10,tmain_11)
                                        x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool) 0 : x$r_buff0_thd0;
tmain_11: IF(0,11,tmain_12)
                                        x$r_buff1_thd0 = (x$w_buff0_used && x$r_buff0_thd0) || (x$w_buff1_used && x$r_buff1_thd0) ? (_Bool) 0 : x$r_buff1_thd0;
                                        __CSEQ_atomic_end();
tmain_12: IF(0,12,tmain_13)
                                        __CSEQ_atomic_begin();
tmain_13: IF(0,13,tmain_14)
                                        weak$$choice0 = nondet_0();
tmain_14: IF(0,14,tmain_15)
                                        weak$$choice2 = nondet_0();
tmain_15: IF(0,15,tmain_16)
                                        x$flush_delayed = weak$$choice2;
tmain_16: IF(0,16,tmain_17)
                                        x$mem_tmp = x;
tmain_17: IF(0,17,tmain_18)
                                        x = ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x : x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1;
tmain_18: IF(0,18,tmain_19)
                                        x$w_buff0 = weak$$choice2 ? x$w_buff0 : ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x$w_buff0 : x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff0;
tmain_19: IF(0,19,tmain_20)
                                        x$w_buff1 = weak$$choice2 ? x$w_buff1 : ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x$w_buff1 : x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff1 : x$w_buff1;
tmain_20: IF(0,20,tmain_21)
                                        x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x$w_buff0_used : x$w_buff0_used && x$r_buff0_thd0 ? (_Bool) 0 : x$w_buff0_used;
tmain_21: IF(0,21,tmain_22)
                                        x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x$w_buff1_used : x$w_buff0_used && x$r_buff0_thd0 ? (_Bool) 0 : (_Bool) 0;
tmain_22: IF(0,22,tmain_23)
                                        x$r_buff0_thd0 = weak$$choice2 ? x$r_buff0_thd0 : ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x$r_buff0_thd0 : x$w_buff0_used && x$r_buff0_thd0 ? (_Bool) 0 : x$r_buff0_thd0;
tmain_23: IF(0,23,tmain_24)
                                        x$r_buff1_thd0 = weak$$choice2 ? x$r_buff1_thd0 : ((!x$w_buff0_used) || ((!x$r_buff0_thd0) && (!x$w_buff1_used))) || ((!x$r_buff0_thd0) && (!x$r_buff1_thd0)) ? x$r_buff1_thd0 : x$w_buff0_used && x$r_buff0_thd0 ? (_Bool) 0 : (_Bool) 0;
tmain_24: IF(0,24,tmain_25)
                                        main$tmp_guard1 = !((((x == 2) && (y == 2)) && (__unbuffered_p0_EAX == 0)) && (__unbuffered_p1_EAX == 1));
tmain_25: IF(0,25,tmain_26)
                                        x = x$flush_delayed ? x$mem_tmp : x;
tmain_26: IF(0,26,tmain_27)
                                        x$flush_delayed = (_Bool) 0;
                                        __CSEQ_atomic_end();
tmain_27: IF(0,27,tmain_28)
                                        assert(main$tmp_guard1);
                                        goto __exit_main;
                                        		;
                                        __exit_main:
                                        		__CPROVER_assume(__cs_pc_cs[0] >= 28);
                                        		;
                                        		;
tmain_28: 
                                        STOP_NONVOID(28);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:71,代码来源:_cs_safe032_rmo.opt_false-unreach-call.c

示例10: get_desc

void get_desc(dungeon* d) {
	room r = *(d->cur_room);

	printf(
		"\t%s"	//journey conclusion
		"%s"	//low health
		"%s"	//visited
		"%s"	//boss room
		"%s"	//chest room
		"%s"	//dark
		"%s"	//cold
		"%s"	//sky view
		"%s"	//trait
		"%s"	//exit north
		"%s"	//exit south
		"%s"	//exit east
		"%s\n",	//exit west
		IF(d->location==d->end_room, " I believe my journey shall soon end."),
		IF(d->player.hp<3, " I feel the wounds of battle taking their toll."),
		IF(r.visited, " This room seems familiar to me."),
		IF(r.boss_room, " This is a boss room."),
		IF(r.chest, " I see a chest... I wonder what's inside."),
		IF(r.dark, " This room is very dark."),
		IF(r.cold, " This room is very cold."),
		IF(r.sky_view, " I can see the stars, they remind me to be strong."),
		IF(d->player.trait==r.trait, " You feel at home in this room."),
		IF(r.n, " I see a passage to the north."),
		IF(r.s, " I see a passage to the south."),
		IF(r.e, " I see a passage to the east."),
		IF(r.w, " I see a passage to the west.")
	);
}
开发者ID:SomeCrazyGuy,项目名称:roguelike,代码行数:32,代码来源:pro.c

示例11: IF

                                        void *P2_0(void *__cs_param_P2_arg)
                                        {
IF(3,0,tP2_0_1)
                                        __CSEQ_atomic_begin();
tP2_0_1: IF(3,1,tP2_0_2)
                                        x$w_buff1 = x$w_buff0;
tP2_0_2: IF(3,2,tP2_0_3)
                                        x$w_buff0 = 2;
tP2_0_3: IF(3,3,tP2_0_4)
                                        x$w_buff1_used = x$w_buff0_used;
tP2_0_4: IF(3,4,tP2_0_5)
                                        x$w_buff0_used = (_Bool) 1;
tP2_0_5: IF(3,5,tP2_0_6)
                                        assert(!(x$w_buff1_used && x$w_buff0_used));
tP2_0_6: IF(3,6,tP2_0_7)
                                        x$r_buff1_thd0 = x$r_buff0_thd0;
tP2_0_7: IF(3,7,tP2_0_8)
                                        x$r_buff1_thd1 = x$r_buff0_thd1;
tP2_0_8: IF(3,8,tP2_0_9)
                                        x$r_buff1_thd2 = x$r_buff0_thd2;
tP2_0_9: IF(3,9,tP2_0_10)
                                        x$r_buff1_thd3 = x$r_buff0_thd3;
tP2_0_10: IF(3,10,tP2_0_11)
                                        x$r_buff0_thd3 = (_Bool) 1;
                                        __CSEQ_atomic_end();
tP2_0_11: IF(3,11,tP2_0_12)
                                        __CSEQ_atomic_begin();
tP2_0_12: IF(3,12,tP2_0_13)
                                        y = 1;
                                        __CSEQ_atomic_end();
tP2_0_13: IF(3,13,tP2_0_14)
                                        __CSEQ_atomic_begin();
tP2_0_14: IF(3,14,tP2_0_15)
                                        x = x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x;
tP2_0_15: IF(3,15,tP2_0_16)
                                        x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool) 0 : x$w_buff0_used;
tP2_0_16: IF(3,16,tP2_0_17)
                                        x$w_buff1_used = (x$w_buff0_used && x$r_buff0_thd3) || (x$w_buff1_used && x$r_buff1_thd3) ? (_Bool) 0 : x$w_buff1_used;
tP2_0_17: IF(3,17,tP2_0_18)
                                        x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool) 0 : x$r_buff0_thd3;
tP2_0_18: IF(3,18,tP2_0_19)
                                        x$r_buff1_thd3 = (x$w_buff0_used && x$r_buff0_thd3) || (x$w_buff1_used && x$r_buff1_thd3) ? (_Bool) 0 : x$r_buff1_thd3;
                                        __CSEQ_atomic_end();
tP2_0_19: IF(3,19,tP2_0_20)
                                        __CSEQ_atomic_begin();
tP2_0_20: IF(3,20,tP2_0_21)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P2;
                                        		;
                                        __exit_P2:
                                        		__CPROVER_assume(__cs_pc_cs[3] >= 21);
                                        		;
                                        		;
tP2_0_21: 
                                        STOP_NONVOID(21);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:57,代码来源:_cs_safe032_rmo.opt_false-unreach-call.c

示例12: IF

                                        void *P3_0(void *__cs_param_P3_arg)
                                        {
IF(4,0,tP3_0_1)
                                        __CSEQ_atomic_begin();
tP3_0_1: IF(4,1,tP3_0_2)
                                        z$w_buff1 = z$w_buff0;
tP3_0_2: IF(4,2,tP3_0_3)
                                        z$w_buff0 = 1;
tP3_0_3: IF(4,3,tP3_0_4)
                                        z$w_buff1_used = z$w_buff0_used;
tP3_0_4: IF(4,4,tP3_0_5)
                                        z$w_buff0_used = (_Bool) 1;
tP3_0_5: IF(4,5,tP3_0_6)
                                        assert(!(z$w_buff1_used && z$w_buff0_used));
tP3_0_6: IF(4,6,tP3_0_7)
                                        z$r_buff1_thd0 = z$r_buff0_thd0;
tP3_0_7: IF(4,7,tP3_0_8)
                                        z$r_buff1_thd1 = z$r_buff0_thd1;
tP3_0_8: IF(4,8,tP3_0_9)
                                        z$r_buff1_thd2 = z$r_buff0_thd2;
tP3_0_9: IF(4,9,tP3_0_10)
                                        z$r_buff1_thd3 = z$r_buff0_thd3;
tP3_0_10: IF(4,10,tP3_0_11)
                                        z$r_buff1_thd4 = z$r_buff0_thd4;
tP3_0_11: IF(4,11,tP3_0_12)
                                        z$r_buff0_thd4 = (_Bool) 1;
                                        __CSEQ_atomic_end();
tP3_0_12: IF(4,12,tP3_0_13)
                                        __CSEQ_atomic_begin();
tP3_0_13: IF(4,13,tP3_0_14)
                                        __unbuffered_p3_EAX = a;
                                        __CSEQ_atomic_end();
tP3_0_14: IF(4,14,tP3_0_15)
                                        __CSEQ_atomic_begin();
tP3_0_15: IF(4,15,tP3_0_16)
                                        z = z$w_buff0_used && z$r_buff0_thd4 ? z$w_buff0 : z$w_buff1_used && z$r_buff1_thd4 ? z$w_buff1 : z;
tP3_0_16: IF(4,16,tP3_0_17)
                                        z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd4 ? (_Bool) 0 : z$w_buff0_used;
tP3_0_17: IF(4,17,tP3_0_18)
                                        z$w_buff1_used = (z$w_buff0_used && z$r_buff0_thd4) || (z$w_buff1_used && z$r_buff1_thd4) ? (_Bool) 0 : z$w_buff1_used;
tP3_0_18: IF(4,18,tP3_0_19)
                                        z$r_buff0_thd4 = z$w_buff0_used && z$r_buff0_thd4 ? (_Bool) 0 : z$r_buff0_thd4;
tP3_0_19: IF(4,19,tP3_0_20)
                                        z$r_buff1_thd4 = (z$w_buff0_used && z$r_buff0_thd4) || (z$w_buff1_used && z$r_buff1_thd4) ? (_Bool) 0 : z$r_buff1_thd4;
                                        __CSEQ_atomic_end();
tP3_0_20: IF(4,20,tP3_0_21)
                                        __CSEQ_atomic_begin();
tP3_0_21: IF(4,21,tP3_0_22)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P3;
                                        		;
                                        __exit_P3:
                                        		__CPROVER_assume(__cs_pc_cs[4] >= 22);
                                        		;
                                        		;
tP3_0_22: 
                                        STOP_NONVOID(22);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:59,代码来源:_cs_mix051_rmo.opt_false-unreach-call.c

示例13: IF

                                        void *P2_0(void *__cs_param_P2_arg)
                                        {
IF(3,0,tP2_0_1)
                                        __CSEQ_atomic_begin();
tP2_0_1: IF(3,1,tP2_0_2)
                                        y = 2;
                                        __CSEQ_atomic_end();
tP2_0_2: IF(3,2,tP2_0_3)
                                        __CSEQ_atomic_begin();
tP2_0_3: IF(3,3,tP2_0_4)
                                        __unbuffered_p2_EAX = y;
                                        __CSEQ_atomic_end();
tP2_0_4: IF(3,4,tP2_0_5)
                                        __CSEQ_atomic_begin();
tP2_0_5: IF(3,5,tP2_0_6)
                                        weak$$choice0 = nondet_1();
tP2_0_6: IF(3,6,tP2_0_7)
                                        weak$$choice2 = nondet_1();
tP2_0_7: IF(3,7,tP2_0_8)
                                        z$flush_delayed = weak$$choice2;
tP2_0_8: IF(3,8,tP2_0_9)
                                        z$mem_tmp = z;
tP2_0_9: IF(3,9,tP2_0_10)
                                        z = ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z : z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff0 : z$w_buff1;
tP2_0_10: IF(3,10,tP2_0_11)
                                        z$w_buff0 = weak$$choice2 ? z$w_buff0 : ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z$w_buff0 : z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff0 : z$w_buff0;
tP2_0_11: IF(3,11,tP2_0_12)
                                        z$w_buff1 = weak$$choice2 ? z$w_buff1 : ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z$w_buff1 : z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff1 : z$w_buff1;
tP2_0_12: IF(3,12,tP2_0_13)
                                        z$w_buff0_used = weak$$choice2 ? z$w_buff0_used : ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z$w_buff0_used : z$w_buff0_used && z$r_buff0_thd3 ? (_Bool) 0 : z$w_buff0_used;
tP2_0_13: IF(3,13,tP2_0_14)
                                        z$w_buff1_used = weak$$choice2 ? z$w_buff1_used : ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z$w_buff1_used : z$w_buff0_used && z$r_buff0_thd3 ? (_Bool) 0 : (_Bool) 0;
tP2_0_14: IF(3,14,tP2_0_15)
                                        z$r_buff0_thd3 = weak$$choice2 ? z$r_buff0_thd3 : ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z$r_buff0_thd3 : z$w_buff0_used && z$r_buff0_thd3 ? (_Bool) 0 : z$r_buff0_thd3;
tP2_0_15: IF(3,15,tP2_0_16)
                                        z$r_buff1_thd3 = weak$$choice2 ? z$r_buff1_thd3 : ((!z$w_buff0_used) || ((!z$r_buff0_thd3) && (!z$w_buff1_used))) || ((!z$r_buff0_thd3) && (!z$r_buff1_thd3)) ? z$r_buff1_thd3 : z$w_buff0_used && z$r_buff0_thd3 ? (_Bool) 0 : (_Bool) 0;
tP2_0_16: IF(3,16,tP2_0_17)
                                        __unbuffered_p2_EBX = z;
tP2_0_17: IF(3,17,tP2_0_18)
                                        z = z$flush_delayed ? z$mem_tmp : z;
tP2_0_18: IF(3,18,tP2_0_19)
                                        z$flush_delayed = (_Bool) 0;
                                        __CSEQ_atomic_end();
tP2_0_19: IF(3,19,tP2_0_20)
                                        __CSEQ_atomic_begin();
tP2_0_20: IF(3,20,tP2_0_21)
                                        z = z$w_buff0_used && z$r_buff0_thd3 ? z$w_buff0 : z$w_buff1_used && z$r_buff1_thd3 ? z$w_buff1 : z;
tP2_0_21: IF(3,21,tP2_0_22)
                                        z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd3 ? (_Bool) 0 : z$w_buff0_used;
tP2_0_22: IF(3,22,tP2_0_23)
                                        z$w_buff1_used = (z$w_buff0_used && z$r_buff0_thd3) || (z$w_buff1_used && z$r_buff1_thd3) ? (_Bool) 0 : z$w_buff1_used;
tP2_0_23: IF(3,23,tP2_0_24)
                                        z$r_buff0_thd3 = z$w_buff0_used && z$r_buff0_thd3 ? (_Bool) 0 : z$r_buff0_thd3;
tP2_0_24: IF(3,24,tP2_0_25)
                                        z$r_buff1_thd3 = (z$w_buff0_used && z$r_buff0_thd3) || (z$w_buff1_used && z$r_buff1_thd3) ? (_Bool) 0 : z$r_buff1_thd3;
                                        __CSEQ_atomic_end();
tP2_0_25: IF(3,25,tP2_0_26)
                                        __CSEQ_atomic_begin();
tP2_0_26: IF(3,26,tP2_0_27)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P2;
                                        		;
                                        __exit_P2:
                                        		__CPROVER_assume(__cs_pc_cs[3] >= 27);
                                        		;
                                        		;
tP2_0_27: 
                                        STOP_NONVOID(27);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:70,代码来源:_cs_mix025_power.opt_false-unreach-call.c

示例14: IF

                                        void *P1_0(void *__cs_param_P1_arg)
                                        {
IF(2,0,tP1_0_1)
                                        __CSEQ_atomic_begin();
tP1_0_1: IF(2,1,tP1_0_2)
                                        x = 2;
                                        __CSEQ_atomic_end();
tP1_0_2: IF(2,2,tP1_0_3)
                                        __CSEQ_atomic_begin();
tP1_0_3: IF(2,3,tP1_0_4)
                                        y = 1;
                                        __CSEQ_atomic_end();
tP1_0_4: IF(2,4,tP1_0_5)
                                        __CSEQ_atomic_begin();
tP1_0_5: IF(2,5,tP1_0_6)
                                        __unbuffered_p1_EAX = y;
                                        __CSEQ_atomic_end();
tP1_0_6: IF(2,6,tP1_0_7)
                                        __CSEQ_atomic_begin();
tP1_0_7: IF(2,7,tP1_0_8)
                                        weak$$choice0 = nondet_1();
tP1_0_8: IF(2,8,tP1_0_9)
                                        weak$$choice2 = nondet_1();
tP1_0_9: IF(2,9,tP1_0_10)
                                        z$flush_delayed = weak$$choice2;
tP1_0_10: IF(2,10,tP1_0_11)
                                        z$mem_tmp = z;
tP1_0_11: IF(2,11,tP1_0_12)
                                        z = ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z : z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff0 : z$w_buff1;
tP1_0_12: IF(2,12,tP1_0_13)
                                        z$w_buff0 = weak$$choice2 ? z$w_buff0 : ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z$w_buff0 : z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff0 : z$w_buff0;
tP1_0_13: IF(2,13,tP1_0_14)
                                        z$w_buff1 = weak$$choice2 ? z$w_buff1 : ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z$w_buff1 : z$w_buff0_used && z$r_buff0_thd2 ? z$w_buff1 : z$w_buff1;
tP1_0_14: IF(2,14,tP1_0_15)
                                        z$w_buff0_used = weak$$choice2 ? z$w_buff0_used : ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z$w_buff0_used : z$w_buff0_used && z$r_buff0_thd2 ? (_Bool) 0 : z$w_buff0_used;
tP1_0_15: IF(2,15,tP1_0_16)
                                        z$w_buff1_used = weak$$choice2 ? z$w_buff1_used : ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z$w_buff1_used : z$w_buff0_used && z$r_buff0_thd2 ? (_Bool) 0 : (_Bool) 0;
tP1_0_16: IF(2,16,tP1_0_17)
                                        z$r_buff0_thd2 = weak$$choice2 ? z$r_buff0_thd2 : ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z$r_buff0_thd2 : z$w_buff0_used && z$r_buff0_thd2 ? (_Bool) 0 : z$r_buff0_thd2;
tP1_0_17: IF(2,17,tP1_0_18)
                                        z$r_buff1_thd2 = weak$$choice2 ? z$r_buff1_thd2 : ((!z$w_buff0_used) || ((!z$r_buff0_thd2) && (!z$w_buff1_used))) || ((!z$r_buff0_thd2) && (!z$r_buff1_thd2)) ? z$r_buff1_thd2 : z$w_buff0_used && z$r_buff0_thd2 ? (_Bool) 0 : (_Bool) 0;
tP1_0_18: IF(2,18,tP1_0_19)
                                        __unbuffered_p1_EBX = z;
tP1_0_19: IF(2,19,tP1_0_20)
                                        z = z$flush_delayed ? z$mem_tmp : z;
tP1_0_20: IF(2,20,tP1_0_21)
                                        z$flush_delayed = (_Bool) 0;
                                        __CSEQ_atomic_end();
tP1_0_21: IF(2,21,tP1_0_22)
                                        __CSEQ_atomic_begin();
                                        __CSEQ_atomic_end();
tP1_0_22: IF(2,22,tP1_0_23)
                                        __CSEQ_atomic_begin();
tP1_0_23: IF(2,23,tP1_0_24)
                                        __unbuffered_cnt = __unbuffered_cnt + 1;
                                        __CSEQ_atomic_end();
                                        goto __exit_P1;
                                        		;
                                        __exit_P1:
                                        		__CPROVER_assume(__cs_pc_cs[2] >= 24);
                                        		;
                                        		;
tP1_0_24: 
                                        STOP_NONVOID(24);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:65,代码来源:_cs_mix033_rmo.opt_false-unreach-call.c

示例15: main_thread

                                        int main_thread(void)
                                        {
                                        		;
IF(0,0,tmain_1)
                                        __cs_create(0, 0, P0_0, 0, 1);
tmain_1: IF(0,1,tmain_2)
                                        __cs_create(0, 0, P1_0, 0, 2);
tmain_2: IF(0,2,tmain_3)
                                        __cs_create(0, 0, P2_0, 0, 3);
tmain_3: IF(0,3,tmain_4)
                                        __CSEQ_atomic_begin();
tmain_4: IF(0,4,tmain_5)
                                        main$tmp_guard0 = __unbuffered_cnt == 3;
                                        __CSEQ_atomic_end();
tmain_5: IF(0,5,tmain_6)
                                        __CPROVER_assume(main$tmp_guard0);
tmain_6: IF(0,6,tmain_7)
                                        __CSEQ_atomic_begin();
tmain_7: IF(0,7,tmain_8)
                                        z = z$w_buff0_used && z$r_buff0_thd0 ? z$w_buff0 : z$w_buff1_used && z$r_buff1_thd0 ? z$w_buff1 : z;
tmain_8: IF(0,8,tmain_9)
                                        z$w_buff0_used = z$w_buff0_used && z$r_buff0_thd0 ? (_Bool) 0 : z$w_buff0_used;
tmain_9: IF(0,9,tmain_10)
                                        z$w_buff1_used = (z$w_buff0_used && z$r_buff0_thd0) || (z$w_buff1_used && z$r_buff1_thd0) ? (_Bool) 0 : z$w_buff1_used;
tmain_10: IF(0,10,tmain_11)
                                        z$r_buff0_thd0 = z$w_buff0_used && z$r_buff0_thd0 ? (_Bool) 0 : z$r_buff0_thd0;
tmain_11: IF(0,11,tmain_12)
                                        z$r_buff1_thd0 = (z$w_buff0_used && z$r_buff0_thd0) || (z$w_buff1_used && z$r_buff1_thd0) ? (_Bool) 0 : z$r_buff1_thd0;
                                        __CSEQ_atomic_end();
tmain_12: IF(0,12,tmain_13)
                                        __CSEQ_atomic_begin();
tmain_13: IF(0,13,tmain_14)
                                        main$tmp_guard1 = !((((y == 2) && (__unbuffered_p0_EAX == 0)) && (__unbuffered_p2_EAX == 2)) && (__unbuffered_p2_EBX == 0));
                                        __CSEQ_atomic_end();
tmain_14: IF(0,14,tmain_15)
                                        assert(main$tmp_guard1);
                                        goto __exit_main;
                                        		;
                                        __exit_main:
                                        		__CPROVER_assume(__cs_pc_cs[0] >= 15);
                                        		;
                                        		;
tmain_15: 
                                        STOP_NONVOID(15);
                                        }
开发者ID:heryxpc,项目名称:prototype,代码行数:45,代码来源:_cs_mix025_power.opt_false-unreach-call.c


注:本文中的IF函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。