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

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

?? dllalib.s

?? vxworks的源代碼
?? S
字號:
/* dllALib.s - ARM assembly language doubly linked list manipulation *//* Copyright 1996-1997 Wind River Systems, Inc. *//*modification history--------------------01e,17oct01,t_m  convert to FUNC_LABEL:01d,11oct01,jb  Enabling removal of pre-pended underscores for new compilers                 (Diab/Gnu elf)01c,27oct97,kkk  took out "***EOF***" line from end of file.01b,23may97,jpd  Amalgamated into VxWorks.01a,10jul96,apl  Written.*//*DESCRIPTIONThis subroutine library supports the creation and maintenance of adoubly linked list.  The user supplies a list descriptor (type DL_LIST)that will contain pointers to the first and last nodes in the list.The nodes in the list can be any user-defined structure, but they must reservespace for a pointer as their first element.  The forward chain is terminatedwith a NULL pointer.This library in conjunction with dllLib.c, and the macros defined in dllLib.h,provide a reduced version of the routines offered in lstLib(1).  Forefficiency, the count field has been eliminated, and enqueueing and dequeueingfunctions have been hand optimized..ne 16NON-EMPTY LIST:.CS   ---------		 --------	   --------   | head--------------->| next----------->| next---------   |	   |		 |	|	   |	  |	 |   |	   |	    ------ prev |<---------- prev |	 |   |	   |	   |	 |	|	   |	  |	 |   | tail------    |	 | ...	|    ----->| ...  |	 |   |-------|  |    v		     |			 v	      |  -----		     |		       -----	      |   ---		     |			---	      |    -		     |			 -	      ------------------------.CE.ne 12EMPTY LIST:.CS	-----------	|  head------------------	|	  |		|	|  tail----------	|	|	  |	|	v	|	  |   -----   -----	-----------    ---     ---			-	-.CE*/#define _ASMLANGUAGE#include "vxWorks.h"#include "asm.h"	.data	.globl	FUNC(copyright_wind_river)	.long	FUNC(copyright_wind_river)#if (defined(PORTABLE))#define dllALib_PORTABLE#endif#ifndef dllALib_PORTABLE	/* externals */	.globl	FUNC(dllInsert)	.globl	FUNC(dllAdd)	.globl	FUNC(dllRemove)	.globl	FUNC(dllGet)	.text	.balign	4/********************************************************************************* dllInsert - insert node in list after specified node** This routine inserts the specified node in the specified list.* The new node is placed following the specified 'previous' node in the list.* If the specified previous node is NULL, the node is inserted at the head* of the list.** RETURNS: N/A** NOMANUAL** void dllInsert*    (*    FAST DL_LIST *	pList,	/@ pointer to list descriptor @/*    FAST DL_NODE *	pPrev,	/@ pointer to node after which to insert @/*    FAST DL_NODE *	pNode	/@ pointer to node to be inserted @/*    )*/FUNC_LABEL(dllInsert)#ifdef STACK_FRAMES	mov	ip, sp	stmdb	sp!, {fp, ip, lr, pc}	sub	fp, ip, #4#endif /* STACK_FRAMES */	cmp	r1, #NULL	/* Check pPrev for NULL	*/	ldreq	r3, [r0]	/* pNext = pList->head */	streq	r2, [r0]	/* pList->head = pNode */	ldrne	r3, [r1]	/* pNext = pPrev->next */		strne	r2, [r1]	/* pPrev->next = pNode */	cmp	r3, #NULL	/* Check pNext for NULL */	streq	r2, [r0, #4]	/* pList->tail = pNode */	strne	r2, [r3, #4]	/* pNext->previous = pNode */	str	r3, [r2]	/* pNode->next = pNext */	str	r1, [r2, #4]	/* pNode->previous = pPrev */#ifdef STACK_FRAMES	ldmdb	fp, {fp, sp, pc}#else /* !STACK_FRAMES */	mov	pc, lr		/* And exit			*/#endif /* STACK_FRAMES *//********************************************************************************* dllAdd - add node to end of list** This routine adds the specified node to the end of the specified list.** RETURNS: N/A** NOMANUAL** void dllAdd*    (*    DL_LIST *	pList,	/@ pointer to list descriptor @/*    DL_NODE *	pNode	/@ pointer to node to be added @/*    )**/FUNC_LABEL(dllAdd)#ifdef STACK_FRAMES	mov	ip, sp	stmdb	sp!, {fp, ip, lr, pc}	sub	fp, ip, #4#endif /* STACK_FRAMES */	ldr	r2, [r0, #4]	/* Get pPrev */	/* This is FUNC(dllInsert) inlined. */	cmp	r2, #NULL	/* Check pPrev for NULL */	ldreq	r3, [r0]	/* pNext = pList->head */	streq	r1, [r0]	/* pList->head = pNode */	ldrne	r3, [r2]	/* pNext = pPrev->next */	strne	r1, [r2]	/* pPrev->next = pNode */	cmp	r3, #NULL	/* Check pNext for NULL */	streq	r1, [r0, #4]	/* pList->tail = pNode */	strne	r1, [r3, #4]	/* pNext->previous = pNode */	str	r3, [r1]	/* pNode->next = pNext */	str	r2, [r1, #4]	/* pNode->previous = pPrev */	/* End FUNC(dllInsert) inlined. */#ifdef STACK_FRAMES	ldmdb	fp, {fp, sp, pc}#else /* !STACK_FRAMES */	mov	pc, lr		/* And exit */#endif /* STACK_FRAMES *//********************************************************************************* dllRemove - remove specified node in list** Remove the specified node in the doubly linked list.** RETURNS: N/A** NOMANUAL** void dllRemove*    (*    DL_LIST *	pList	/@ pointer to list descriptor @/*    DL_NODE *	pNode	/@ pointer to node to be deleted @/*    )*/FUNC_LABEL(dllRemove)#ifdef STACK_FRAMES	mov	ip, sp	stmdb	sp!, {fp, ip, lr, pc}	sub	fp, ip, #4#endif /* STACK_FRAMES */	ldmia	r1, {r2, r3}	/* Load pNode->next, pNode->previous */	cmp	r3, #NULL	/* Check for pNode->previous for NULL */	streq	r2, [r0]	/* Set pListHead = pNodeNext */	strne	r2, [r3]	/* Set pNode->previous->next */	cmp	r2, #NULL	/* Check pNode->next for NULL */	streq	r3, [r0, #4]	/* Set pList->tail */	strne	r3, [r2, #4]	/* Set pNode->next->previous */#ifdef STACK_FRAMES	ldmdb	fp, {fp, sp, pc}#else /* !STACK_FRAMES */	mov	pc, lr		/* And exit */#endif /* STACK_FRAMES *//********************************************************************************* dllGet - get (delete and return) first node from list** This routine gets the first node from the specified list, deletes the node* from the list, and returns a pointer to the node gotten.** RETURNS*	Pointer to the node gotten, or*	NULL if the list is empty.** NOMANUAL*** DL_NODE * dllGet*    (*    FAST DL_LIST *	pList	/@ pointer to list from which to get node @/*    )*/FUNC_LABEL(dllGet)#ifdef STACK_FRAMES	mov	ip, sp	stmdb	sp!, {fp, ip, lr, pc}	sub	fp, ip, #4#endif /* STACK_FRAMES */	ldr	r1, [r0]	/* Get pNode */	cmp	r1, #NULL	/* Check for null */	moveq	r0, r1		/* Load return value for quick exit */#ifdef STACK_FRAMES	ldmeqdb	fp, {fp, sp, pc}#else /* !STACK_FRAMES */	moveq	pc, lr		/* And get out fast */#endif /* STACK_FRAMES */	/* Inlined FUNC(dllRemove) */	ldr	r3, [r1]	str	r3, [r0]	ldr	r2, [r1]	cmp	r2, #0	streq	r2, [r0, #4]	movne	r3, #0	strne	r3, [r2, #4]	/* End inline FUNC(dllRemove) */	mov	r0, r1		/* Load return value */#ifdef STACK_FRAMES	ldmdb	fp, {fp, sp, pc}#else /* !STACK_FRAMES */	mov	pc, lr		/* And exit */#endif /* STACK_FRAMES */#endif /* (!PORTABLE) */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人爱爱电影网址| 成人高清免费观看| 亚洲尤物视频在线| 亚洲日本电影在线| 亚洲人成网站色在线观看| 国产精品日韩精品欧美在线| 国产日本欧洲亚洲| 国产无一区二区| 国产精品每日更新在线播放网址| 国产日产亚洲精品系列| 中文字幕日韩欧美一区二区三区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 韩国毛片一区二区三区| 精品一区二区三区影院在线午夜| 精品影视av免费| 成人高清在线视频| 欧美写真视频网站| 精品成人佐山爱一区二区| 国产网红主播福利一区二区| 成人欧美一区二区三区| 午夜影院久久久| 国产麻豆成人精品| 色一情一乱一乱一91av| 日韩丝袜美女视频| 最新国产精品久久精品| 亚洲电影第三页| 国产一区 二区| 欧美三片在线视频观看| 久久午夜色播影院免费高清| 亚洲天堂网中文字| 免费成人av在线| 不卡高清视频专区| 91精品国产综合久久国产大片| 国产午夜精品福利| 视频一区欧美精品| 成人视屏免费看| 欧美一区二区三区人| 国产精品成人午夜| 久久99精品久久久久| 日本福利一区二区| 国产午夜三级一区二区三| 亚洲一区二区黄色| eeuss影院一区二区三区| 91精品视频网| 亚洲欧美日韩国产一区二区三区 | 丰满白嫩尤物一区二区| 69av一区二区三区| 亚洲女爱视频在线| 韩国欧美一区二区| 91精品国产手机| 亚洲美女视频一区| 国产成人精品亚洲777人妖| 欧美精品亚洲一区二区在线播放| 日本一区二区三区四区| 日本成人在线看| 在线观看免费视频综合| 国产拍揄自揄精品视频麻豆| 免费三级欧美电影| 欧美三日本三级三级在线播放| 中文字幕一区二区三区在线观看 | 国产欧美日韩不卡| 日本不卡一二三| 91福利国产精品| 亚洲丝袜精品丝袜在线| 成人精品一区二区三区四区| 91精品国产综合久久小美女| 一区二区三区精品久久久| 99精品视频在线观看| 国产精品欧美综合在线| 国产风韵犹存在线视精品| 精品国产乱码久久| 国内精品视频一区二区三区八戒 | 高清不卡在线观看av| 日韩你懂的电影在线观看| 天堂一区二区在线| 欧美日韩一区二区三区高清| 亚洲精品日韩专区silk| 色综合色综合色综合色综合色综合| 国产精品二区一区二区aⅴ污介绍| 国产91精品久久久久久久网曝门| 日本一区二区三区电影| 成人激情视频网站| 国产精品高潮呻吟| 色伊人久久综合中文字幕| 亚洲午夜精品在线| 欧美一区二区三区在线观看 | 亚洲另类一区二区| 在线视频欧美精品| 亚洲福利视频一区| 欧美一二三区在线观看| 国产伦精品一区二区三区视频青涩 | 国产精品亚洲第一| 国产精品福利av| 欧美日韩亚洲综合在线| 美女视频免费一区| 国产精品私人影院| 在线免费亚洲电影| 美女网站在线免费欧美精品| 久久精品日产第一区二区三区高清版| www.66久久| 日韩电影在线看| 国产网站一区二区三区| 欧洲一区二区三区免费视频| 蜜桃视频在线观看一区| 一色桃子久久精品亚洲| 91精品国产综合久久福利软件| 国产精品1区2区| 亚洲午夜成aⅴ人片| 久久久九九九九| 欧美日韩一区不卡| 国产成人综合精品三级| 亚洲午夜在线观看视频在线| 久久老女人爱爱| 欧美精品欧美精品系列| 成人久久视频在线观看| 久久国产精品一区二区| 亚洲一区二区三区四区的| 久久久久久久性| 制服.丝袜.亚洲.中文.综合| 99国产精品久久久久| 久久精品国产77777蜜臀| 亚洲一二三级电影| 亚洲欧美综合网| 欧美不卡一区二区三区| 欧美日韩一区二区在线观看 | 久久久久久**毛片大全| 欧美日韩国产高清一区二区三区| 国产成人精品一区二区三区网站观看| 天天综合网天天综合色| 亚洲色图第一区| 国产无一区二区| 亚洲精品一区二区三区99| 欧美日韩在线电影| 91欧美一区二区| 99久久国产综合精品女不卡| 国产一区二区伦理| 麻豆91免费观看| 青青草精品视频| 亚洲成人1区2区| 一区二区三区在线观看动漫| 中文字幕第一区| 国产精品色呦呦| 国产精品色哟哟网站| 欧美国产乱子伦| 国产日韩欧美不卡| 国产欧美一区二区精品性色超碰 | 欧美性高清videossexo| 色婷婷久久99综合精品jk白丝| 高清国产一区二区三区| 国产白丝精品91爽爽久久| 国产精品一品视频| 粉嫩av一区二区三区粉嫩 | 亚洲三级在线看| 国产精品初高中害羞小美女文| 欧美激情一区二区三区蜜桃视频| 国产欧美日本一区视频| 成人欧美一区二区三区视频网页 | 岛国精品在线播放| 国产成人亚洲综合a∨猫咪| 国产电影一区二区三区| av中文字幕不卡| 色婷婷久久综合| 9191久久久久久久久久久| 宅男在线国产精品| 欧美成人一区二区三区在线观看 | 欧美一区二区私人影院日本| 欧美一区二区三区免费在线看| 91麻豆精品国产91久久久资源速度 | 日日骚欧美日韩| 美腿丝袜亚洲色图| 国产盗摄精品一区二区三区在线| 成人一区二区视频| 97久久精品人人做人人爽50路| 色国产综合视频| 欧美一区二区视频网站| 国产日韩欧美精品在线| 亚洲精品欧美专区| 日本午夜精品一区二区三区电影 | 日韩av不卡在线观看| 国产精品自在在线| 91蝌蚪porny| 91麻豆精品国产| 国产精品久久午夜夜伦鲁鲁| 亚洲成a人v欧美综合天堂| 国产老妇另类xxxxx| 在线免费亚洲电影| 久久你懂得1024| 亚洲综合成人在线视频| 国产一区美女在线| 91麻豆成人久久精品二区三区| 欧美片网站yy| 中文字幕日韩一区| 久99久精品视频免费观看| 91香蕉视频污| 久久久午夜精品| 日韩不卡在线观看日韩不卡视频| 成人av网站在线观看| 欧美一区二区免费视频| 亚洲综合久久久久| 大美女一区二区三区|