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

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

?? qpribmapalib.s

?? 操作系統開發,vxwork操作系統源代碼
?? S
字號:
/* qPriBMapALib.s - i80x86 optimized bit-mapped priority queue internals *//* Copyright 1984-2001 Wind River Systems, Inc. *//*modification history--------------------01d,22aug01,hdn  added FUNC/FUNC_LABEL, replaced .align with .balign01c,01jun93,hdn  updated to 5.1.		  - fixed #else and #endif		  - changed VOID to void		  - changed ASMLANGUAGE to _ASMLANGUAGE		  - changed copyright notice01b,13oct92,hdn  debugged.01a,07apr92,hdn  written based on TRON version.*//*DESCRIPTIONThis module contains internals to the VxWorks kernel.These routines have been coded in assembler because they have been optimizedfor performance.INTERNALThe C code versions of these routines can be found in qPriBMapLib.c.Unlike 68K, Highest priority bit is LSB in the meta-map and bit-map..ne 3668K:.CS    priority = 255 - priority    * is highest priority (255)    $ is lowest priority (0)			31                                0	metaBMap	*------- -------- -------- -------$			7      0	bMap[0]		-------$	  :	  :	bMap[31]	*-------			 	listArray[0]	-----------          ---------    ---------			$  pNext  ---------> | pNext ---> | pNext ---> 0			-----------          ---------    ---------			$  pPrev  --+   0 <--- pPrev | <--- pPrev | <---+			----------- |        ---------    ---------     |				    |                                   |				    +-----------------------------------+	  :	  :	listArray[255]	-----------          ---------			*  pNext  ---------> | pNext ---> 0			-----------          ---------			*  pPrev  --+   0 <--- pPrev | <---+			----------- |        ---------     |				    |                      |				    +----------------------+.CE.ne 36i80x86:.CS    priority = priority    * is highest priority (0)    $ is lowest priority (255)			0                                31	metaBMap	*------- -------- -------- -------$			0      7	bMap[0]		*-------	  :	  :	bMap[31]	-------$			 	listArray[0]	-----------          ---------    ---------			*  pNext  ---------> | pNext ---> | pNext ---> 0			-----------          ---------    ---------			*  pPrev  --+   0 <--- pPrev | <--- pPrev | <---+			----------- |        ---------    ---------     |				    |                                   |				    +-----------------------------------+	  :	  :	listArray[255]	-----------          ---------			$  pNext  ---------> | pNext ---> 0			-----------          ---------			$  pPrev  --+   0 <--- pPrev | <---+			----------- |        ---------     |				    |                      |				    +----------------------+.CE*/#define _ASMLANGUAGE#include "vxWorks.h"#include "asm.h"#include "qPriNode.h"	.data	.globl	FUNC(copyright_wind_river)	.long	FUNC(copyright_wind_river)	#ifndef PORTABLE	/* internals */	.globl	GTEXT(qPriBMapPut)	.globl	GTEXT(qPriBMapGet)	.globl	GTEXT(qPriBMapRemove)	.text	.balign 16/********************************************************************************* qPriBMapPut - insert the specified TCB into the ready queue**void qPriBMapPut (pQPriBMapHead, pQPriNode, key)*    Q_PRI_BMAP_HEAD	*pQPriBMapHead;*    Q_PRI_NODE		*pQPriNode;*    int		key;*/FUNC_LABEL(qPriBMapPut)	pushl	%ebx	pushl	%esi	pushl	%edi	movl	SP_ARG1+12(%esp),%edx	/* %edx = ARG1 (pMHead) */	movl	SP_ARG2+12(%esp),%ecx	/* %ecx = ARG2 (pPriNode) */	movl	SP_ARG3+12(%esp),%eax	/* %eax = ARG3 (key) */	movl	(%edx),%ebx		/* %ebx = highest node ready */	cmpl	$0,%ebx	je	qPriBMap0	cmpl	Q_PRI_NODE_KEY(%ebx),%eax /* is eax higher priority? */	jge	qPriBMap1qPriBMap0:	movl	%ecx,(%edx)		/* pPriNode is highest priority */qPriBMap1:	movl	%eax,Q_PRI_NODE_KEY(%ecx) /* move key into pPriNode *//* qPriBMapMapSet - set the bits in the bit-map for the specified priority * %eax = priority * returns void */	    movl    4(%edx),%esi	/* %esi = pMList (metaMap) */	    btsl    %eax,4(%esi)	/* set %eax bit # in bit-map */	    leal    0x24(%esi,%eax,8),%ebx /* %ebx = pList */	    shrl    $3,%eax		/* %eax = top five bits of %eax */	    btsl    %eax,(%esi)		/* set %eax bit # of meta-map */	movl	4(%ebx),%edi		/* %edi = pList->tail = pPrev *//* dllAdd - add node to end of list * %ebx = pList * %edi = pLastNode * %ecx = pNode * returns void */	    movl    %edi,%esi		/* %esi = pPrev->next */	    cmpl    $0,%edi	    jne	    qPriBMap2	    movl    %ebx,%esi		/* %esi = pList->head */qPriBMap2:	    movl    %ecx,(%esi)		/* (%esi) = pNode */	    movl    %ecx,4(%ebx)	/* pList->tail = pNode */	    movl    $0,(%ecx)		/* pNode->next     = pNext */	    movl    %edi,4(%ecx)	/* pNode->previous = pPrev */	popl	%edi	popl	%esi	popl	%ebx	ret/********************************************************************************* qPriBMapGet -**Q_PRI_NODE *qPriBMapGet (pQPriBMapHead)*    Q_PRI_BMAP_HEAD *pQPriBMapHead;*/	.balign 16,0x90FUNC_LABEL(qPriBMapGet)	movl	SP_ARG1(%esp),%edx	/* %edx = pMHead */	pushl	(%edx)	cmpl	$0,(%edx)	je	qPriBMapG1		/* if highNode is NULL we're done */	pushl	%edx			/* push pMHead */	call	FUNC(qPriBMapRemove)		/* delete the node */	addl	$4,%esp			/* clean up second argument */qPriBMapG1:	popl	%eax			/* return node */	ret	/********************************************************************************* qPriBMapRemove**void qPriBMapRemove (pQPriBMapHead, pQPriNode)*    Q_PRI_BMAP_HEAD *pQPriBMapHead;*    Q_PRI_NODE *pQPriNode;*/	.balign 16,0x90FUNC_LABEL(qPriBMapRemove)	pushl	%ebx	pushl	%esi	pushl	%edi	movl	SP_ARG1+12(%esp),%edx		/* %edx = ARG1 (pMHead) */	movl	SP_ARG2+12(%esp),%ecx		/* %ecx = ARG2 (pPriNode) */	movl	Q_PRI_NODE_KEY(%ecx),%eax	/* %eax = key */	movl	4(%edx),%ebx			/* %ebx = pMList (metaMap) */	leal	0x24(%ebx,%eax,8),%esi		/* %esi = pList *//* dllRemove - delete a node from a doubly linked list * %esi = pList * %ecx = pNode * returns void */	    movl    4(%ecx),%ebx	/* %ebx = pNode->previous */	    movl    %ebx,%edi		/* %edi = pNode->previous */	    cmpl    $0,%ebx	    jne	    qPriBMapR1	    movl    %esi,%edi		/* %edi = pList */qPriBMapR1:	    pushl   (%ecx)	    popl    (%edi)		/* pNode->next into (%edi) */	    movl    (%ecx),%edi		/* %edi = pNode->next */	    cmpl    $0,%edi		/* (pNode->next == NULL)? */	    jne	    qPriBMapR3	    movl    %esi,%edi		/* %edi = pList */qPriBMapR3:	    movl    %ebx,4(%edi)	/* pNode->previous into 4(%edi) */	    	movl	(%esi),%edi	cmpl	$0,%edi			/* if (pList->head == NULL)         */	je	clearMaps		/*     then we clear maps           */	cmpl	(%edx),%ecx		/* if not deleting highest priority */	jne	qPriBMapDExit		/*     then we are done             */	movl	%edi,(%edx)		/* update the highest priority task */	jmp	qPriBMapDExit	.balign 16,0x90clearMaps:/* qPriBMapMapClear - clear the bits in the bit-maps for the specified priority * %eax = priority, * %ebx = &qPriBMapMetaMap, * returns void */	    movl    4(%edx),%ebx	/* %ebx = pMList (meta-map) */	    btrl    %eax,4(%ebx)	/* clear bit in bit-map */	    shrl    $3,%eax		/* %eax = top five bits of %eax */	    cmpb    $0,4(%ebx,%eax,1)	    jne	    qPriBMapNoMeta	/* if not zero, we're done */	    btrl    %eax,(%ebx)		/* clear bit in meta-map too */qPriBMapNoMeta:	cmpl	(%edx),%ecx		/* have we deleted highest priority */	jne	qPriBMapDExit/* qPriBMapMapHigh - return highest priority task * %ebx = &qPriBMapMetaMap, * returns priority in d0 */	    movl    (%ebx),%eax	    bsfl    %eax,%esi		/* find the top meta priority */	    je	    qPriBMapR11		/* if no bit is set, it is ERROR */	    movzbl  4(%ebx,%esi,1),%eax	    bsfl    %eax,%eax		/* find the top bitmap priority */	    je	    qPriBMapR11		/* if no bit is set, it is ERROR */	    shll    $3,%esi		/* multiply meta priority by 8 */	    orl	    %esi,%eax		/* add to the priority */	    andl    $0xff,%eaxqPriBMapR10:	movl	0x24(%ebx,%eax,8),%eax	/* get highest task into highNode */	movl	%eax,(%edx)qPriBMapDExit:	popl	%edi	popl	%esi	popl	%ebx	ret	.balign 16,0x90qPriBMapR11:				/* It should not happen */	xorl	%eax,%eax	jmp	qPriBMapR10#endif	/* !PORTABLE */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品免费看片| 亚洲人成伊人成综合网小说| av在线这里只有精品| 性久久久久久久久久久久| 欧美激情中文不卡| 555www色欧美视频| 91亚洲精品久久久蜜桃| 国产一区二区久久| 日韩电影一二三区| 亚洲精品欧美综合四区| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美精品乱码久久久久久按摩 | 欧美人狂配大交3d怪物一区| 国产成人aaa| 蜜桃在线一区二区三区| 一区二区三区资源| 国产亚洲精品免费| 7777精品伊人久久久大香线蕉 | 色综合色狠狠综合色| 国产成人精品三级麻豆| 加勒比av一区二区| 日韩高清一区二区| 亚洲电影一区二区| 一区二区三区久久久| 国产精品不卡在线| 国产精品女主播在线观看| 久久尤物电影视频在线观看| 日韩欧美综合一区| 91精品国产综合久久香蕉的特点 | 欧美视频三区在线播放| 91麻豆精品视频| av在线播放一区二区三区| 国产白丝精品91爽爽久久| 国产制服丝袜一区| 精品一区二区影视| 精品一区二区三区视频| 免费成人结看片| 蜜桃传媒麻豆第一区在线观看| 亚洲aⅴ怡春院| 午夜精品久久久久久久99水蜜桃| 亚洲综合在线电影| 亚洲影院理伦片| 亚洲国产精品一区二区www| 亚洲精品日日夜夜| 亚洲午夜免费视频| 亚洲成人先锋电影| 日韩专区在线视频| 日本亚洲欧美天堂免费| 精品一区二区三区av| 狠狠色狠狠色综合| 国产激情精品久久久第一区二区| 国产精品亚洲成人| 99国产精品国产精品久久| 97国产一区二区| 欧美午夜理伦三级在线观看| 精品视频资源站| 日韩亚洲欧美一区二区三区| 欧美www视频| 欧美极品另类videosde| 亚洲人成网站色在线观看| 亚洲一级二级三级在线免费观看| 日韩高清不卡一区二区三区| 精品一二三四区| 国产成人亚洲综合色影视| 99精品视频一区| 欧美性淫爽ww久久久久无| 日韩精品一区二区三区中文不卡| 精品国产乱码久久久久久牛牛| 久久精品一区四区| 亚洲欧美日本在线| 日本va欧美va欧美va精品| 国产自产视频一区二区三区| 成人av电影在线| 制服.丝袜.亚洲.另类.中文| 久久这里只有精品首页| 亚洲嫩草精品久久| 麻豆成人免费电影| 99精品久久只有精品| 51精品久久久久久久蜜臀| 国产日韩综合av| 午夜精品视频一区| 国产成人自拍在线| 欧美日韩在线电影| 国产欧美1区2区3区| 亚洲一区二区成人在线观看| 国产一区91精品张津瑜| 日本韩国一区二区三区| 欧美v国产在线一区二区三区| 国产精品美女一区二区| 日韩综合小视频| 91一区二区在线观看| 日韩欧美视频一区| 亚洲一区二区三区四区不卡| 韩国欧美国产1区| 欧美三级韩国三级日本三斤| 久久久久免费观看| 天天综合天天做天天综合| 成人亚洲精品久久久久软件| 欧美一级片在线看| 亚洲欧美日韩人成在线播放| 国产一区二区三区四| 欧美人与性动xxxx| 亚洲男人天堂一区| 国产一区二区美女诱惑| 欧美精品成人一区二区三区四区| 国产精品人妖ts系列视频| 狠狠色丁香久久婷婷综合丁香| 欧美日韩欧美一区二区| 亚洲欧美视频一区| 不卡的av网站| 久久一夜天堂av一区二区三区| 午夜一区二区三区在线观看| 91亚洲精品久久久蜜桃| 欧美激情自拍偷拍| 国产麻豆欧美日韩一区| 日韩精品一区二区在线| 日一区二区三区| 精品视频在线看| 亚洲人成精品久久久久久 | 国产不卡视频在线观看| 欧美mv日韩mv| 蜜臀91精品一区二区三区| 欧美色图免费看| 亚洲国产wwwccc36天堂| 色系网站成人免费| 国产精品免费观看视频| 福利电影一区二区| 国产亚洲欧美色| 国产精品123| 337p日本欧洲亚洲大胆色噜噜| 日本在线不卡一区| 欧美一卡在线观看| 日韩二区三区在线观看| 欧美一区二区三区在线| 日韩高清中文字幕一区| 91精品国产一区二区三区蜜臀 | 国产美女一区二区三区| 精品理论电影在线| 日韩1区2区3区| 91精品在线观看入口| 免费在线观看一区二区三区| 制服丝袜激情欧洲亚洲| 六月丁香婷婷久久| 欧美大片顶级少妇| 国产精品一二三四五| 国产女同互慰高潮91漫画| 99这里只有久久精品视频| 亚洲欧美日韩一区二区三区在线观看| 97国产精品videossex| 一区二区三区在线播放| 欧美区在线观看| 蜜臀av一区二区三区| 精品粉嫩aⅴ一区二区三区四区| 韩国成人在线视频| 国产精品久久久久毛片软件| 日本精品裸体写真集在线观看| 亚洲丶国产丶欧美一区二区三区| 欧美一区二区精美| 国产一区高清在线| 日韩毛片精品高清免费| 91福利国产成人精品照片| 天天综合天天综合色| 精品盗摄一区二区三区| 高清国产一区二区| 亚洲精品视频在线| 日韩色视频在线观看| 国产剧情在线观看一区二区| 日韩一区中文字幕| 欧美男同性恋视频网站| 国产精品一区二区黑丝| 玉足女爽爽91| 精品日韩成人av| 91看片淫黄大片一级在线观看| 亚洲国产美国国产综合一区二区| 精品日韩在线观看| 91浏览器在线视频| 日韩激情av在线| 久久精品人人做人人爽97| 欧美午夜一区二区三区免费大片| 久久国产综合精品| 中文字幕佐山爱一区二区免费| 在线不卡的av| 成人av资源下载| 另类小说视频一区二区| 亚洲天堂网中文字| 精品国产乱码久久久久久牛牛| 一本色道综合亚洲| 捆绑调教一区二区三区| 亚洲欧洲制服丝袜| 欧美成人video| 在线亚洲一区观看| 国产成人av福利| 男女视频一区二区| 亚洲曰韩产成在线| 国产精品区一区二区三| 欧美一区二区久久久| 99久久综合精品| 国内精品伊人久久久久av影院 | 99视频在线精品| 久久国产尿小便嘘嘘尿|