亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wdbcalllib.c

?? vxworks的完整的源代碼
?? C
字號:
/* wdbCallLib.c - Call a function on the target *//* Copyright 1984-1998 Wind River Systems, Inc. *//*modification history--------------------01f,04sep98,cdp enable Thumb support for all ARM CPUs with ARM_THUMB==TRUE.01e,11jul97,cdp added ARM7TDMI_T support (func call in Thumb state).01d,02oct96,elp added casts due to TGT_ADDR_T type change.01c,31aug95,ms  WDB_FUNC_CALL now allows file redirection (SPR #4497)01b,19jun95,ms	removed dependancy on wdbCtxLib01a,02nov94,ms  written.*//*DESCPRIPTIONThis library contains the RPC to call a function on the target.The return value of the function is passed to the host asynchronously.*/#include "wdb/wdb.h"#include "wdb/wdbLibP.h"#include "wdb/wdbSvcLib.h"#include "wdb/wdbRtIfLib.h"#include "wdb/wdbEvtLib.h"#include "errno.h"#include "string.h"/* data types */typedef struct    {    WDB_EVT_NODE	eventNode;    WDB_CALL_RET_INFO	callRetInfo;    int			(*entry)();    int			arg[10];    WDB_CALL_RET_TYPE	returnType;    } WDB_CALL_RET_NODE;/* forward declarations */static UINT32 wdbFuncCall (WDB_CTX_CREATE_DESC *pCtxCreate, UINT32 *pTid);/******************************************************************************** wdbFuncCallLibInit -*/void wdbFuncCallLibInit (void)    {    wdbSvcAdd (WDB_FUNC_CALL, wdbFuncCall, xdr_WDB_CTX_CREATE_DESC, xdr_UINT32);    }/******************************************************************************** callRetEvtDeq - dequeue a function call event node.*/ static void callRetEvtDeq    (    void *      pExitNode    )    {    (*pWdbRtIf->free) (pExitNode);    }/******************************************************************************** callRetEvtGet - get a call return event.*/ static void callRetEvtGet    (    void *              pNode,    WDB_EVT_DATA *      pEvtData    )    {    WDB_CALL_RET_NODE *  pCallRetNode = pNode;    pEvtData->evtType                   = WDB_EVT_CALL_RET;    pEvtData->eventInfo.callRetInfo	= pCallRetNode->callRetInfo;    }/******************************************************************************** funcCallWrapper - wrapper for a function call.*/ static void funcCallWrapper    (    WDB_CALL_RET_NODE * pReturnNode    )    {    if (pReturnNode->callRetInfo.returnType == WDB_CALL_RET_DBL)	{	pReturnNode->callRetInfo.returnVal.returnValDbl =				(*(double (*)())pReturnNode->entry)				(pReturnNode->arg[0],				 pReturnNode->arg[1], pReturnNode->arg[2],				 pReturnNode->arg[3], pReturnNode->arg[4],				 pReturnNode->arg[5], pReturnNode->arg[6],				 pReturnNode->arg[7], pReturnNode->arg[8],				 pReturnNode->arg[9]);	}    else	{	pReturnNode->callRetInfo.returnVal.returnValInt =				(*pReturnNode->entry) (pReturnNode->arg[0],				 pReturnNode->arg[1], pReturnNode->arg[2],				 pReturnNode->arg[3], pReturnNode->arg[4],				 pReturnNode->arg[5], pReturnNode->arg[6],				 pReturnNode->arg[7], pReturnNode->arg[8],				 pReturnNode->arg[9]);	}    pReturnNode->callRetInfo.errnoVal = errno;    wdbEventNodeInit (&pReturnNode->eventNode, callRetEvtGet,                        callRetEvtDeq, pReturnNode);    wdbEventPost (&pReturnNode->eventNode);    }/******************************************************************************** wdbFuncCall - spawn a task execute a routine, then send back the reply.*/ static UINT32 wdbFuncCall    (    WDB_CTX_CREATE_DESC *	pCtxCreate,    UINT32 *		pTid    )    {    WDB_CTX	context;    WDB_CALL_RET_NODE * pReturnNode;    if (!wdbIsNowTasking())	return (WDB_ERR_AGENT_MODE);    if ((pWdbRtIf->taskCreate == NULL) ||	(pWdbRtIf->malloc == NULL) ||	(pWdbRtIf->free == NULL))	return (WDB_ERR_NO_RT_PROC);    pReturnNode = (WDB_CALL_RET_NODE *)(*pWdbRtIf->malloc)					(sizeof(WDB_CALL_RET_NODE));    if (pReturnNode == NULL)	return (WDB_ERR_RT_ERROR);#if ((CPU_FAMILY == ARM) && ARM_THUMB)    pReturnNode->entry = (int (*)())(pCtxCreate->entry | 1);#else /* CPU_FAMILY == ARM */    pReturnNode->entry = (int (*)())pCtxCreate->entry;#endif /* CPU_FAMILY == ARM */    bcopy ((char *)pCtxCreate->args, (char *)pReturnNode->arg,		10 * sizeof (int));    pReturnNode->callRetInfo.returnType =		(pCtxCreate->options & WDB_FP_RETURN ? WDB_CALL_RET_DBL :							   WDB_CALL_RET_INT);    pCtxCreate->args[0] = (int)pReturnNode;    *pTid = (*pWdbRtIf->taskCreate)                (pCtxCreate->name, pCtxCreate->priority,                pCtxCreate->options, (char *)pCtxCreate->stackBase,                pCtxCreate->stackSize, (char *)funcCallWrapper,		pCtxCreate->args, pCtxCreate->redirIn,                pCtxCreate->redirOut, pCtxCreate->redirErr);    if (*pTid == ERROR)	return (WDB_ERR_RT_ERROR);    pReturnNode->callRetInfo.callId = *pTid;    context.contextId = *pTid;    context.contextType = WDB_CTX_TASK;    return (((*pWdbRtIf->taskResume) (&context) == OK ?		OK : WDB_ERR_RT_ERROR));    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕乱码亚洲精品一区| 免费av成人在线| 中文字幕成人网| 精品成人佐山爱一区二区| 欧美巨大另类极品videosbest| 91天堂素人约啪| www.欧美色图| 成人app在线观看| www.日韩在线| 色哟哟国产精品| 91精彩视频在线| 欧美视频你懂的| 69p69国产精品| 欧美成人精精品一区二区频| 精品国产1区2区3区| 国产日韩高清在线| 中文字幕在线不卡| 亚洲综合色丁香婷婷六月图片| 亚洲一二三四区不卡| 丝袜美腿亚洲综合| 韩国中文字幕2020精品| 成人精品免费视频| 91官网在线观看| 欧美乱妇一区二区三区不卡视频| 91精品麻豆日日躁夜夜躁| 精品久久国产老人久久综合| 久久精品无码一区二区三区| 18成人在线观看| 三级一区在线视频先锋| 韩国av一区二区三区四区| 国产91精品免费| 在线看国产一区| 日韩你懂的在线播放| 国产偷国产偷精品高清尤物| 亚洲少妇30p| 日韩制服丝袜先锋影音| 国产精品18久久久久久久久久久久 | eeuss国产一区二区三区| 日本久久一区二区三区| 日韩精品一区二区三区蜜臀| 国产精品网站在线观看| 亚洲一区二区三区四区在线免费观看| 日韩精品一区第一页| 国产麻豆一精品一av一免费| 99国产一区二区三精品乱码| 91精品综合久久久久久| 国产日韩影视精品| 一区二区三区**美女毛片| 看国产成人h片视频| 99精品欧美一区二区三区小说| 欧美精品v国产精品v日韩精品| 久久久久99精品国产片| 亚洲综合色在线| 国产乱子轮精品视频| 欧美视频在线播放| 久久精品一区蜜桃臀影院| 亚洲午夜免费福利视频| 国产精品亚洲一区二区三区在线| 欧美日免费三级在线| 国产午夜精品一区二区| 日韩电影在线观看电影| av不卡在线观看| 精品国产乱码久久久久久浪潮 | 午夜免费欧美电影| 国v精品久久久网| 欧美一区二区视频在线观看2022| 国产精品久久三区| 激情另类小说区图片区视频区| 欧洲人成人精品| 国产精品视频一二三区| 欧美aaa在线| 色妹子一区二区| 亚洲国产精品v| 久久国产剧场电影| 欧美日韩不卡一区| 樱桃国产成人精品视频| 成人一区在线看| 精品成人一区二区三区四区| 日本视频一区二区| 欧美色视频在线观看| 亚洲欧美中日韩| 国产一区不卡精品| 欧美一区二区免费| 亚洲成人午夜影院| 色婷婷亚洲精品| 国产精品国产三级国产| 国产福利视频一区二区三区| 精品久久人人做人人爱| 免费一区二区视频| 日韩一区二区三区视频在线观看| 亚洲一二三专区| 在线观看日产精品| 亚洲精品成人少妇| 91麻豆免费在线观看| 亚洲欧美在线观看| 色综合天天性综合| 中文字幕佐山爱一区二区免费| 成人福利视频在线看| 久久精品日产第一区二区三区高清版| 日本欧美一区二区| 欧美乱妇15p| 日韩国产高清在线| 3d成人动漫网站| 毛片av一区二区三区| 678五月天丁香亚洲综合网| 石原莉奈在线亚洲三区| 欧美日韩精品高清| 视频一区中文字幕国产| 3d动漫精品啪啪1区2区免费| 日本中文字幕一区二区有限公司| 911精品国产一区二区在线| 午夜成人免费电影| 555夜色666亚洲国产免| 免费久久精品视频| 精品久久久久久综合日本欧美 | 91精品办公室少妇高潮对白| 一个色妞综合视频在线观看| 欧洲av在线精品| 婷婷六月综合亚洲| 日韩欧美久久一区| 国产乱人伦精品一区二区在线观看 | 欧美综合色免费| 午夜精品一区二区三区免费视频| 777奇米四色成人影色区| 另类小说视频一区二区| xnxx国产精品| 不卡一区在线观看| 一个色在线综合| 制服视频三区第一页精品| 精品一区二区三区久久久| 欧美激情在线看| 色综合久久综合网欧美综合网 | 91麻豆文化传媒在线观看| 亚洲h动漫在线| 26uuu国产在线精品一区二区| 国产福利一区在线观看| 一区二区欧美国产| 日韩欧美国产精品一区| 风间由美一区二区三区在线观看| 亚洲精品自拍动漫在线| 欧美一级精品在线| 丁香激情综合五月| 亚洲成a人v欧美综合天堂| 2023国产精品自拍| 91免费观看视频| 麻豆91精品91久久久的内涵| 日本一二三不卡| 884aa四虎影成人精品一区| 国产一区二区免费视频| 亚洲欧美日韩国产另类专区| 538在线一区二区精品国产| 大尺度一区二区| 日韩av网站在线观看| 亚洲国产精品v| 日韩一区二区三区电影在线观看| 国产99久久久久久免费看农村| 香蕉久久夜色精品国产使用方法 | 国产视频一区二区三区在线观看 | 久久亚洲免费视频| 日本福利一区二区| 国产经典欧美精品| 亚洲v日本v欧美v久久精品| 国产丝袜在线精品| 91精品国产综合久久久久久久| 成人高清在线视频| 欧美色老头old∨ideo| 欧美日韩三级在线| 亚洲国产精品v| 国产成人午夜视频| 色婷婷亚洲婷婷| 久久久久久**毛片大全| 亚洲欧美另类小说| 九一久久久久久| 91美女视频网站| 欧美变态凌虐bdsm| 亚洲免费观看在线观看| 青娱乐精品视频| 色天天综合色天天久久| 亚洲美女在线国产| k8久久久一区二区三区| 美女视频网站久久| 亚洲一区二区三区自拍| 中文字幕精品综合| 精品成人一区二区| 日韩欧美电影一二三| 欧美高清hd18日本| 欧美在线|欧美| 一本久久a久久免费精品不卡| 不卡一区二区在线| 岛国精品在线观看| 国产风韵犹存在线视精品| 久久99国内精品| 丝袜美腿成人在线| 亚洲成人先锋电影| 亚洲不卡在线观看| 午夜电影一区二区三区| 亚洲午夜影视影院在线观看| 一区二区三区在线观看欧美 | 一区二区三区91| 亚洲日本va在线观看|