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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? windalib.s

?? vxworks的源代碼
?? S
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
/* windALib.s - internal VxWorks kernel assembly library *//* Copyright 1984-2001 Wind River Systems, Inc. */	.data	.globl	copyright_wind_river/* * This file has been developed or significantly modified by the * MIPS Center of Excellence Dedicated Engineering Staff. * This notice is as per the MIPS Center of Excellence Master Partner * Agreement, do not remove this notice without checking first with * WR/Platforms MIPS Center of Excellence engineering management. *//*modification history--------------------03i,16jan02,agf  SPR 28519: use eret to start a task after context is loaded                 so ll/sc internal bit gets cleared03h,01aug01,mem  Diab integration.03g,16jul01,ros  add CofE comment03f,12jun01,mem  Update for new coding standard.03e,13feb01,tlc  Perform HAZARD review.03d,03jan01,mem  Fix load of SR register from TCB in portable version.03c,19dec00,pes  Adapt to MIPS32/MIPS64 CPU architectures03b,19jun00,dra  work around 5432 branch bug03a,11may00,tpw  Make it work for CW4000 again.02z,10sep99,myz  added CW4000_16 support.02x,19jan99,dra  addwd CW4000, CW4011, VR4100, VR5000 and VR5400 support.02w,01apr99,nps  removed inclusion of obsolete evtBufferLib.h02v,30jul98,am   registers change in trgCheckInst402u,08jul98,cjtc bug fix - priority inheritance stipple never appears in                 WindView log (SPR 21672)02t,16may98,pr   replaced lhu with lw for evtAction. 02s,16apr98,pr   added WindView 20 support.02r,14oct96,kkk  added R4650 support.02q,30jul96,kkk  did too much in 02p.02p,30jul96,kkk  fixed windExitInit to unlock int in branch delay correctly.02o,23jul96,pr   added windview instrumentation.02n,12oct94,caf  corrected size of .extern readyQHead (now 16, was 4).02m,19oct93,cd   added R4000 support02l,29sep92,ajm  made taskSrDefault accessible through the gp, 		  expanded stacks past minimum allowed.02k,04jul92,jcf  scalable/ANSI/cleanup effort.02j,05jun92,ajm  5.0.5 merge, note mod history changes02i,26may92,rrr  the tree shuffle02h,28apr92,ajm   now use taskSrDefault for SR instead of macro02g,05nov91,ajm   now use areWeNested for interrupt nesting, this allows		   intCnt to be used for watchDogs02f,29oct91,ajm   fixed switch/swap hook parameters02e,15oct91,ajm   pulled in optimizations02d,14oct91,ajm   reordered .set noreorder section for kernelState bug02c,09oct91,ajm   put save of errno to tcb in saveIntContext02b,01aug91,ajm   removed assembler .set noreorder macros. They tend to screw 		   up assembler02a,18jun91,jcf	  SPECIAL VERSION FOR 5.0.2 RELEASE.  windExitInt empties work q01b,28may91,ajm   now use esf.h defines for passed stack01a,26feb91,ajm   written from 68k v5.0 and mips v4.02 source*//*DESCRIPTIONThis module contains internals to the VxWorks kernel.These routines have been coded in assembler because they are eitherspecific to this processor, or they have been optimized for performance.*/#define _ASMLANGUAGE#include "vxWorks.h"#include "asm.h"#include "private/eventP.h"#include "private/taskLibP.h"#include "private/workQLibP.h"#include "esf.h"	.text	.set	reorder	.globl	windExit		/* routine to exit mutual exclusion */	.globl	vxTaskEntry		/* task entry wrapper */#if FALSE /* no longer required */	.globl	intEnt			/* interrupt entrance routine */#endif	.globl	intExit			/* interrupt exit routine */	.globl	windIntStackSet		/* interrupt stack set routine */#ifdef PORTABLE		.globl	windLoadContext		/* needed by portable reschedule () */#else	.globl	reschedule		/* optimized reschedule () routine */#endif /* PORTABLE */	/* external */	.extern	intCnt			/* interrupt depth */	.extern	areWeNested		/* nesting boolean */	.extern	errno			/* unix like errno */	.extern	workQIsEmpty		/* work to do ? */	.extern	kernelState		/* in kernel ? */	.extern	taskIdCurrent		/* running task */	.extern	readyQHead		/* head of ready Q */	.extern	kernelIsIdle		/* are we idle ? */	.extern	taskSrDefault		/* default task status reg. */#ifdef WV_INSTRUMENTATION	.extern _func_evtLogTSched	/* timestamp function pointer */	.extern _func_trgCheck		/* timestamp function pointer */	.extern _func_evtLogT0		/* timestamp function pointer */	.extern evtAction	    	.extern wvEvtClass	    	.extern trgEvtClass	    #endif /* WV_INSTRUMENTATION */#ifndef PORTABLE    /* This !(PORTABLE) section is the optimized windExit () *//********************************************************************************* windExitInt - exit kernel routine from interrupt level** windExit branches here if exiting kernel routine from int level* No rescheduling is necessary because the ISR will exit via intExit, and* intExit does the necessary rescheduling.*/windExitIntWork:	SETFRAME(windExitIntWork,0)	subu	sp, FRAMESZ(windExitIntWork)	/* need some stack */	SW	ra, FRAMERA(windExitIntWork)(sp) /* save ra */	HAZARD_VR5400	mtc0    t2, C0_SR        		/* UNLOCK INTS in BD slot */	jal	workQDoWork			/* empty the work queue */	LW	ra, FRAMERA(windExitIntWork)(sp) /* restore ra */	addu	sp, FRAMESZ(windExitIntWork)	/* restore stack */	.ent 	windExitIntwindExitInt:	HAZARD_VR5400	mfc0	t2, C0_SR	li	t1, ~SR_INT_ENABLE	and	t1, t1, t2	mtc0	t1, C0_SR			/* LOCK INTERRUPTS */	HAZARD_INTERRUPT	lw	t0, workQIsEmpty		/* test for work to do */	beq	zero, t0, windExitIntWork	/* workQueue is not empty */#ifdef WV_INSTRUMENTATION        /*         * windview instrumentation - BEGIN         * exit windExit with no dispatch; point 1 in the windExit diagram.         */        lw      t0, evtAction                   /* is instrumentation on? */        beqz    t0, noInst1        lw      t0, wvEvtClass                   /* is instrumentation on? */        li      t4, WV_CLASS_1_ON                   /* is instrumentation on? */	and     t0, t0, t4        bne     t4, t0, trgCheckInst1        SETFRAME(windExitInt,1)        subu    sp, FRAMESZ(windExitInt)        /* need some stack */        SW      ra, FRAMERA(windExitInt)(sp)    /* save ra */        SW      t2, FRAMER0(windExitInt)(sp)    /* save old sr */        lw      a1, taskIdCurrent        lw      a2, WIND_TCB_PRIORITY(a1)        /*         * Determine if the task is running at an inherited priority         */        lw      t4, WIND_TCB_PRI_NORMAL(a1)        li      a0, EVENT_WIND_EXIT_NODISPATCH        bge     a2, t4, noInst1Inheritance      /* no inheritance */        li      a0, EVENT_WIND_EXIT_NODISPATCH_PInoInst1Inheritance:        lw      t1, _func_evtLogTSched        jal     t1                              /* call evtsched routine */        LW      t2, FRAMER0(windExitInt)(sp)    /* restore sr */        LW      ra, FRAMERA(windExitInt)(sp)    /* restore ra */        addu    sp, FRAMESZ(windExitInt)        /* restore stack */trgCheckInst1:        lw      t0, trgEvtClass                           li      t4, TRG_CLASS_1_ON                	and     t0, t0, t4        bne     t4, t0, noInst1        SETFRAME(windExitInt,1)        subu    sp, FRAMESZ(windExitInt)        /* need some stack */        SW      ra, FRAMERA(windExitInt)(sp)    /* save ra */        SW      t2, FRAMER0(windExitInt)(sp)    /* save old sr */        lw      a3, taskIdCurrent        lw      s0, WIND_TCB_PRIORITY(a3)        /*         * Determine if the task is running at an inherited priority         */        lw      t4, WIND_TCB_PRI_NORMAL(a3)        li      a0, EVENT_WIND_EXIT_NODISPATCH        bge     s0, t4, trgNoInst1Inheritance   /* no inheritance */        li      a0, EVENT_WIND_EXIT_NODISPATCH_PItrgNoInst1Inheritance:        li      a1, TRG_CLASS1_INDEX        li      a2, 0x0        lw      t1, _func_trgCheck        jal     t1                              /* call trgCheck routine */        LW      t2, FRAMER0(windExitInt)(sp)    /* restore sr */        LW      ra, FRAMERA(windExitInt)(sp)    /* restore ra */        addu    sp, FRAMESZ(windExitInt)        /* restore stack */noInst1:        /* windview instrumentation - END */#endif /* WV_INSTRUMENTATION */	HAZARD_VR5400	sw      zero, kernelState 		/* else release exclusion */	move	v0, zero			/* return OK */	mtc0    t2, C0_SR        		/* UNLOCK INTERRUPTS */	j       ra		 		/* back to calling task */	.end	windExitInt/********************************************************************************* checkTaskReady - check that taskIdCurrent is ready to run** This code branched to by windExit when it finds preemption is disabled.* It is possible that even though preemption is disabled, a context switch* must occur.  This situation arrises when a task blocks during a preemption* lock.  So this routine checks if taskIdCurrent is ready to run, if not it* branches to save the context of taskIdCurrent, otherwise it falls thru to* check the work queue for any pending work.*/checkTaskReady:	/* taskIdCurrent in t0  */	lw	t1, WIND_TCB_STATUS(t0)	/* is task ready to run */	bne	zero,t1,saveTaskContext /* if no, we blocked with preempt off */	/* FALL THRU TO CHECK WORK QUEUE *//********************************************************************************* checkWorkQ -	check the work queue for any work to do** This code is branched to by windExit.  Currently taskIdCurrent is highest* priority ready task, but before we can return to it we must check the work* queue.  If there is work we empty it via doWorkPreSave, otherwise we unlock* interrupts, clear v0, and return to taskIdCurrent.*/checkWorkQ:	HAZARD_VR5400	mfc0	t2, C0_SR	li	t1, ~SR_INT_ENABLE	and	t1, t1, t2	mtc0	t1, C0_SR		/* LOCK INTERRUPTS */	HAZARD_INTERRUPT	lw	t0, workQIsEmpty	/* test for work to do */	beq	zero, t0, doWorkPreSave	/* workQueue is not empty */#ifdef WV_INSTRUMENTATION        /*         * windview instrumentation - BEGIN         * exit windExit with no dispatch; point 4 in the windExit diagram.         */        lw      t0, evtAction                   /* is instrumentation on? */        beqz    t0, noInst4        lw      t0, wvEvtClass                   /* is instrumentation on? */        li      t4, WV_CLASS_1_ON                   /* is instrumentation on? */        and     t0, t0, t4        bne     t4, t0, trgCheckInst4        SETFRAME(checkWorkQ,1)        subu    sp, FRAMESZ(checkWorkQ)         /* need some stack */        SW      ra, FRAMERA(checkWorkQ)(sp)     /* save ra */        SW      t2, FRAMER0(checkWorkQ)(sp)     /* save old sr */        lw      a1, taskIdCurrent        lw      a2, WIND_TCB_PRIORITY(a1)        /*         * Determine if the task is running at an inherited priority         */        lw      t4, WIND_TCB_PRI_NORMAL(a1)        li      a0, EVENT_WIND_EXIT_NODISPATCH        bge     a2, t4, noInst4Inheritance      /* no inheritance */        li      a0, EVENT_WIND_EXIT_NODISPATCH_PInoInst4Inheritance:        lw      t1, _func_evtLogTSched        jal     t1                              /* call evtsched routine */restoreInst4:        LW      t2, FRAMER0(checkWorkQ)(sp)        LW      ra, FRAMERA(checkWorkQ)(sp)        addu    sp, FRAMESZ(checkWorkQ)trgCheckInst4:        lw      t0, trgEvtClass        li      t4, TRG_CLASS_1_ON        and     t0, t0, t4        bne     t4, t0, noInst4        SETFRAME(checkWorkQ,1)        subu    sp, FRAMESZ(checkWorkQ)         /* need some stack */        SW      ra, FRAMERA(checkWorkQ)(sp)     /* save ra */        SW      t2, FRAMER0(checkWorkQ)(sp)     /* save old sr */        lw      a1, taskIdCurrent        lw      a2, WIND_TCB_PRIORITY(a1)        /*         * Determine if the task is running at an inherited priority         */        lw      t4, WIND_TCB_PRI_NORMAL(a1)        li      a0, EVENT_WIND_EXIT_NODISPATCH        bge     a2, t4, trgNoInst4Inheritance   /* no inheritance */        li      a0, EVENT_WIND_EXIT_NODISPATCH_PItrgNoInst4Inheritance:        li      a1, TRG_CLASS1_INDEX        li      a2, 0x0        lw      t1, _func_trgCheck        jal     t1                              /* call trgCheck routine */        LW      t2, FRAMER0(checkWorkQ)(sp)        LW      ra, FRAMERA(checkWorkQ)(sp)        addu    sp, FRAMESZ(checkWorkQ)noInst4:        /* windview instrumentation - END */

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
高清国产午夜精品久久久久久| 一区二区三区久久久| 成人黄色国产精品网站大全在线免费观看| 国产精品国产三级国产aⅴ原创| 欧美美女黄视频| gogogo免费视频观看亚洲一| 美女视频免费一区| 一区二区三区四区在线播放| 国产女主播一区| 日韩美女一区二区三区四区| 欧美色欧美亚洲另类二区| 国产制服丝袜一区| 欧美a一区二区| 亚洲一区二区三区三| 中文字幕视频一区二区三区久| 日韩午夜在线观看视频| 欧美日韩一区不卡| 一本久道中文字幕精品亚洲嫩| 粉嫩绯色av一区二区在线观看| 免费看精品久久片| 午夜精品一区二区三区免费视频| 亚洲天堂免费在线观看视频| 久久亚洲精华国产精华液| 91精品国产福利| 欧美自拍偷拍午夜视频| 91欧美激情一区二区三区成人| 4438x成人网最大色成网站| 欧美性猛片xxxx免费看久爱| 97精品电影院| 91小视频免费观看| 99re在线视频这里只有精品| 国产成人午夜视频| 国产福利精品导航| 国产精品亚洲一区二区三区妖精| 国产一区视频导航| 国产一区二区精品久久91| 国产一区二区三区四区五区美女 | 一本大道综合伊人精品热热 | 欧美成人a∨高清免费观看| 欧美无乱码久久久免费午夜一区| 色综合一区二区三区| 色婷婷激情一区二区三区| 色婷婷亚洲精品| 欧美在线观看一二区| 欧美日韩一区成人| 91精品国产91久久久久久一区二区| 在线不卡免费av| 欧美一级夜夜爽| 精品国产第一区二区三区观看体验| av电影一区二区| 成人网页在线观看| 91麻豆免费观看| 在线视频一区二区三| 欧美夫妻性生活| 精品裸体舞一区二区三区| 久久久91精品国产一区二区三区| 国产网站一区二区| 亚洲免费观看高清| 丝袜美腿成人在线| 国模冰冰炮一区二区| 懂色av噜噜一区二区三区av| 91同城在线观看| 欧美精品一卡两卡| 欧美变态tickling挠脚心| 久久精品亚洲麻豆av一区二区| 久久精品免费在线观看| 亚洲女人****多毛耸耸8| 午夜欧美在线一二页| 国产伦精一区二区三区| 91麻豆国产福利精品| 欧美电影影音先锋| 久久久久久久久久电影| 亚洲免费三区一区二区| 蜜桃视频在线观看一区二区| 国产福利一区在线观看| 欧美午夜电影一区| 久久午夜老司机| 亚洲一区二区在线免费看| 日韩中文字幕区一区有砖一区 | 久久免费美女视频| 亚洲视频一二区| 久久99久久久欧美国产| 不卡的av电影在线观看| 91精品婷婷国产综合久久竹菊| 亚洲国产高清在线观看视频| 午夜视频一区二区三区| 国产激情一区二区三区四区 | 日韩一区二区免费高清| 中文在线免费一区三区高中清不卡| 亚洲精品大片www| 国产精品一区不卡| 精品视频在线免费| 中文一区二区完整视频在线观看| 五月开心婷婷久久| 99久久精品99国产精品| 精品久久久久久久久久久久久久久久久 | 精品国精品国产| 亚洲综合在线第一页| 国产91精品在线观看| 欧美一卡二卡在线观看| 亚洲日本青草视频在线怡红院| 精品在线免费视频| 欧美日韩免费观看一区二区三区| 欧美激情一区二区在线| 另类专区欧美蜜桃臀第一页| 欧美艳星brazzers| 综合激情成人伊人| 国产91富婆露脸刺激对白| 日韩免费视频一区二区| 亚洲自拍偷拍九九九| av一区二区久久| 久久久噜噜噜久久中文字幕色伊伊 | 在线视频国内自拍亚洲视频| 国产精品你懂的在线欣赏| 麻豆精品精品国产自在97香蕉| 欧美日韩一本到| 亚洲精品日日夜夜| 99久久精品久久久久久清纯| 久久日一线二线三线suv| 六月丁香婷婷色狠狠久久| 7777精品伊人久久久大香线蕉的 | 亚洲精品一区二区三区福利| 亚洲成人一区二区在线观看| 91在线看国产| 亚洲婷婷综合久久一本伊一区 | 在线免费精品视频| 一区二区三区在线视频观看58| 99国产一区二区三精品乱码| 国产精品私人影院| 波多野结衣91| 18欧美乱大交hd1984| 成人午夜免费av| 国产精品高清亚洲| 91一区二区三区在线观看| 亚洲日本丝袜连裤袜办公室| 91网站在线观看视频| 亚洲女厕所小便bbb| 91传媒视频在线播放| 亚洲在线免费播放| 欧美日韩亚洲综合一区二区三区| 亚洲va欧美va人人爽午夜| 欧美日韩国产一区二区三区地区| 亚洲电影视频在线| 日韩欧美资源站| 激情久久久久久久久久久久久久久久| 欧美精品一区二区三区很污很色的 | 日韩欧美123| 黄网站免费久久| 亚洲国产激情av| 色婷婷久久一区二区三区麻豆| 亚洲一区在线观看网站| 欧美高清www午色夜在线视频| 麻豆91在线播放| 国产亚洲一二三区| 91网址在线看| 日韩电影在线观看网站| www亚洲一区| 91色综合久久久久婷婷| 午夜精品久久久久影视| 精品99久久久久久| www.亚洲色图.com| 亚洲va欧美va国产va天堂影院| 日韩三级免费观看| 成人高清视频在线观看| 亚洲国产成人av网| 久久综合九色综合97婷婷女人| 99精品久久只有精品| 天堂av在线一区| 日本一区二区三区四区在线视频| 91美女在线看| 久久国产视频网| 亚洲久草在线视频| 精品国产一区二区三区不卡 | 91污片在线观看| 男女性色大片免费观看一区二区 | 国产精品综合视频| 亚洲精品老司机| 欧美精品一区二区三区很污很色的| 波多野结衣中文字幕一区| 视频在线在亚洲| 中文字幕在线视频一区| 欧美久久一区二区| 成人免费毛片高清视频| 午夜国产精品影院在线观看| 国产片一区二区| 日韩一级在线观看| 91蜜桃在线观看| 国产精品影视天天线| 日韩精品乱码免费| 亚洲三级久久久| 久久一夜天堂av一区二区三区| 欧美在线视频日韩| 成人av片在线观看| 久久99国产精品免费| 亚洲成va人在线观看| 中文av一区二区| 久久综合久久99| 日韩一区二区视频| 欧美日韩一区二区三区四区五区| 国产白丝精品91爽爽久久|