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

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

?? balib.s

?? vxworks的源代碼
?? S
?? 第 1 頁 / 共 2 頁
字號:
/* bALib.s - buffer manipulation library assembly language routines *//* Copyright 1984-1995 Wind River Systems, Inc. *//*modification history--------------------01d,25sep01,yvp  Fix SPR62760: Use _WRS_TEXT_SEG_START macro instead of .align01c,08may01,pch  Add assembler abstractions (FUNC_EXPORT, FUNC_BEGIN, etc.)01b,17apr01,dtr  Making bfill etc into funtions fot linking.01a,27apr95,caf  made bcopy() use cr6 instead of nonvolatile cr2.01a,30jan95,caf  created.*//*DESCRIPTIONThis library contains optimized versions of the routines in bLib.cfor manipulating buffers of variable-length byte arrays.NOMANUALSEE ALSO: bLib, ansiString*/#define _ASMLANGUAGE#include "vxWorks.h"#include "asm.h"#ifndef	PORTABLE	/* functions */	FUNC_EXPORT(bcopy)	FUNC_EXPORT(bcopyBytes)	FUNC_EXPORT(bcopyWords)	FUNC_EXPORT(bcopyLongs)	FUNC_EXPORT(bfill)	FUNC_EXPORT(bfillBytes)	FUNC_EXPORT(swab)	_WRS_TEXT_SEG_START	/********************************************************************************* bcopy - copy one buffer to another** This routine copies the first <nbytes> characters from <source> to* <destination>.  Overlapping buffers are handled correctly.  Copying is done* in the most efficient way possible, which may include long-word, or even* multiple-long-word moves on some architectures.  In general, the copy* will be significantly faster if both buffers are long-word aligned.* (For copying that is restricted to byte, word, or long-word moves, see* the manual entries for bcopyBytes(), bcopyWords(), and bcopyLongs().)** RETURNS: N/A** SEE ALSO: bcopyBytes(), bcopyWords(), bcopyLongs()** NOMANUAL - manual entry in bLib* void bcopy*     (*     const char *source,         /@ pointer to source buffer      @/*     char *destination,          /@ pointer to destination buffer @/*     int nbytes                  /@ number of bytes to copy       @/*     )*/FUNC_LABEL(bcopy)	cmpwi	p2,0	beqlr			/* if (<nbytes> == 0) we're done            */	cmplw	p0,p1	beqlr			/* if (<dst> == <src>) we're done           */      	cmpwi	cr6,p2,8	bgt	bcfwd		/* if (<src> > <dst>) copy forward          */	/* copy reverse */	add	p0,p0,p2	/* <src> += <nbytes>                        */	add	p1,p1,p2	/* <dst> += <nbytes>                        */      	blt	cr6,bcrBCopy	/* if (<nbytes> < 8) byte copy reverse   */	andi.	r11,p0,3	andi.	r12,p1,3	xor.	p5,r11,r12	/* p5 = ((<src> & 3) ^ (<dst> & 3)) */	/* p5 reflects relative alignment of <src> and <drv> (0 - 3) */	beq	bcrL1		/* if (p5 == 0) then reverse longword copy  */      	cmpwi	p5,2	beq	bcrH1		/* if (p5 == 2) then reverse halfword copy  */      	b	bcrBCopy	/* ...otherwise reverse byte copy           */	/* longword reverse copy */bcrL1:	cmpwi	r11,0		/* already longword aligned?                */	beq	bcrL3	/* copy 1 - 3 bytes to align on longword boundary */	mtctr	r11bcrL2:  lbzu    p4,-1(p0)	/* load...                                  */	addi	p2,p2,-1	/* -- <nbytes>                              */        stbu    p4,-1(p1)	/* ...store                                 */        bdnz    bcrL2           /* decrement CTR and branch if != 0         */bcrL3:  andi.	p3,p2,3		/* p3 = (<nbytes> & 3)                      */        srwi	p2,p2,2		/* <nbytes> = (<nbytes> / 4)                */bcrLCopy:	/*         * Entry point from bcopyLongs()         *         *   p0 = source pointer         *   p1 = destination pointer         *   p2 = number of longwords (1 or more)         *   p3 = number of trailing bytes (0 to 3)	 */        mtctr   p2		/* CTR = <nlongs>                           */bcrLGO: lwzu    p4,-4(p0)	/* load...                                  */        stwu    p4,-4(p1)	/* ...store                                 */        bdnz    bcrLGO          /* decrement CTR and branch if != 0         */       	or.	p2,p3,p3	beqlr			/* if (p3 == 0) we're done                  */bcrBCopy:	/*         * Entry point from bcopyBytes()         *         *   p0 = source pointer         *   p1 = destination pointer         *   p2 = number of bytes (1 or more)	 */        mtctr   p2		/* CTR = <nbytes>                           */bcrBGO: lbzu    p4,-1(p0)	/* load...                                  */        stbu    p4,-1(p1)	/* ...store                                 */        bdnz    bcrBGO          /* decrement CTR and branch if != 0         */	blr			/* return                                   */	/* halfword reverse copy */bcrH1:	andi.	r11,r11,1	/* already halfword aligned?                */	beq	bcrH2	/* copy one byte to align on halfword boundary */	lbzu    p4,-1(p0)	/* load...                                  */	addi	p2,p2,-1	/* -- <nbytes>                              */        stbu    p4,-1(p1)	/* ...store                                 */	bcrH2:  andi.	p3,p2,1		/* p3 = (<nbytes> & 1)                      */        srwi	p2,p2,1		/* <nbytes> = (<nbytes> / 2)                */bcrHCopy:	/*         * Entry point from bcopyWords()         *         *   p0 = source pointer         *   p1 = destination pointer         *   p2 = number of halfwords (1 or more)         *   p3 = number of trailing bytes (0 to 1)	 */        mtctr   p2		/* CTR = <nwords>                           */bcrHGO:	lhzu    p4,-2(p0)	/* load...                                  */        sthu    p4,-2(p1)	/* ...store                                 */        bdnz    bcrHGO          /* decrement CTR and branch if != 0         */       	cmplwi	p3,0	beqlr			/* if (p3 == 0) we're done                  */	/* copy last byte */	lbz     p4,-1(p0)	/* load...                                  */        stb     p4,-1(p1)	/* ...store                                 */	blr			/* finally done                             */	/* copy forward */bcfwd:	blt	cr6,bcfBCopy	/* if (<nbytes> < 8) byte copy forward   */	andi.	r11,p0,3	andi.	r12,p1,3	xor.	p5,r11,r12	/* p5 = ((<src> & 3) ^ (<dst> & 3)) */	/* p5 reflects relative alignment of <src> and <drv> (0 - 3) */	beq	bcfL1		/* if (p5 == 0) then forward longword copy  */      	cmpwi	p5,2	beq	bcfH1		/* if (p5 == 2) then forward halfword copy  */      	b	bcfBCopy	/* ...otherwise forward byte copy           */	/* forward longword copy */bcfL1:	cmpwi	r11,0		/* already longword aligned?                */	beq	bcfL3	/* copy 1 - 3 bytes to align on longword boundary */bcfL2:  lbzu    p4,0(p0)	/* load...                                  */	addi	p2,p2,-1	/* -- <nbytes>                              */	addi	r11,r11,1	/* ++ r11                                   */        stbu    p4,0(p1)	/* ...store                                 */	addi	p0,p0,1		/* ++ <src>                                 */	addi	p1,p1,1		/* ++ <dst>                                 */      	cmpwi	r11,4		/* longword aligned?                        */        bne     bcfL2	bcfL3:  andi.	p3,p2,3		/* p3 = (<nbytes> & 3)                      */        srwi	p2,p2,2		/* p2 = (<nbytes> / 4)                      */bcfLCopy:	/*         * Entry point from bcopyLongs()         *         *   p0 = source pointer         *   p1 = destination pointer         *   p2 = number of longwords (1 or more)         *   p3 = number of trailing bytes (0 to 3)	 */	addi    p0,p0,-4	/* <src> -= 4                               */	addi    p1,p1,-4	/* <dst> -= 4                               */	mtctr   p2		/* CTR = <nlongs>                           */bcfLGO: lwzu    p4,4(p0)	/* load...                                  */	stwu    p4,4(p1)	/* ...store                                 */	bdnz    bcfLGO          /* decrement CTR and branch if != 0         */	or.	p2,p3,p3	beqlr			/* if (p3 == 0) we're done                  */	addi    p0,p0,4		/* <src> += 4                               */	addi    p1,p1,4		/* <dst> += 4                               */bcfBCopy:	/*         * Entry point from bcopyBytes()         *         *   p0 = source pointer         *   p1 = destination pointer         *   p2 = number of bytes (1 or more)	 */	addi    p0,p0,-1	/* <src> -= 1                               */	addi    p1,p1,-1	/* <dst> -= 1                               */        mtctr   p2		/* CTR = <nbytes>                           */bcfBGO: lbzu    p4,1(p0)	/* load...                                  */        stbu    p4,1(p1)	/* ...store                                 */        bdnz    bcfBGO          /* decrement CTR and branch if != 0         */	blr			/* return                                   */	/* halfword forward copy */bcfH1:	andi.	r11,r11,1	/* already halfword aligned?                */	beq	bcfH2	/* copy one byte to align on halfword boundary */	lbzu    p4,0(p0)	/* load...                                  */	addi	p2,p2,-1	/* -- <nbytes>                              */        stbu    p4,0(p1)	/* ...store                                 */	addi    p0,p0,1		/* <src> += 1                               */	addi    p1,p1,1		/* <dst> += 1                               */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩美女视频在线| 久久精品日韩一区二区三区| 欧美va亚洲va在线观看蝴蝶网| 中文字幕欧美区| 免费一级欧美片在线观看| 91在线丨porny丨国产| 91精品一区二区三区久久久久久 | 久久婷婷色综合| 亚洲图片有声小说| 成人av在线一区二区三区| 91精品免费观看| 亚洲午夜电影网| 色成年激情久久综合| 国产亚洲午夜高清国产拍精品| 午夜影院在线观看欧美| 色狠狠综合天天综合综合| 欧美极品aⅴ影院| 国产在线观看免费一区| 日韩欧美色综合网站| 亚洲精品国产第一综合99久久 | 日本精品一区二区三区高清 | 国模一区二区三区白浆| 日韩一区二区三区视频在线| 肉色丝袜一区二区| 欧美人成免费网站| 婷婷夜色潮精品综合在线| 欧洲国产伦久久久久久久| 亚洲美女电影在线| 91麻豆swag| 一区二区三区欧美视频| 中文字幕一区二区三区在线不卡| 欧美日本一区二区三区| 国产精品蜜臀在线观看| 国产成人自拍网| 国产欧美日韩麻豆91| 丁香另类激情小说| 成人精品亚洲人成在线| 国产精品久久久久久久久免费相片| 国产成人a级片| 国产欧美日韩在线观看| 国产91富婆露脸刺激对白| 欧美激情一区二区三区不卡| 福利一区福利二区| 国产精品电影一区二区| 色婷婷综合久久久久中文一区二区| 樱花草国产18久久久久| 欧美另类久久久品| 国产自产高清不卡| 亚洲天堂免费看| 91黄色激情网站| 男人的天堂亚洲一区| 国产欧美1区2区3区| 91丝袜美腿高跟国产极品老师 | 国产乱码精品一区二区三区忘忧草| 久久女同精品一区二区| www.欧美日韩| 亚洲va在线va天堂| 久久一日本道色综合| 91一区一区三区| 蜜桃av一区二区在线观看| 国产欧美精品在线观看| 色婷婷综合久久| 久久福利资源站| 亚洲色图清纯唯美| 91麻豆精品久久久久蜜臀| 国产iv一区二区三区| 亚洲综合在线免费观看| 欧美xxxxxxxxx| 在线观看日韩电影| 国产专区综合网| 婷婷夜色潮精品综合在线| 国产欧美日韩在线| 日韩一区二区三区电影| www.成人在线| 精品一区二区三区免费视频| 中文字幕亚洲电影| 欧美成人a在线| 欧美亚洲一区三区| 国产v综合v亚洲欧| 日本亚洲免费观看| 亚洲柠檬福利资源导航| 久久新电视剧免费观看| 欧美日韩国产一区二区三区地区| 国产一二精品视频| 日本中文一区二区三区| 亚洲免费高清视频在线| 久久精品人人做人人综合| 欧美日韩国产综合草草| 99re这里只有精品视频首页| 麻豆成人久久精品二区三区红| 亚洲精品国产精华液| 日本一区二区动态图| 日韩精品一区二区三区视频在线观看| 日本精品视频一区二区| 99久久婷婷国产精品综合| 国产精品一区二区免费不卡| 蜜桃久久精品一区二区| 视频一区中文字幕国产| 一区二区三区日本| 亚洲男人都懂的| 最新不卡av在线| 国产精品免费网站在线观看| 久久久久久**毛片大全| 精品久久久久久久久久久院品网| 欧美日韩国产bt| 欧美日韩亚洲高清一区二区| 在线免费一区三区| 欧美中文一区二区三区| 91美女在线观看| 91国产视频在线观看| 欧美亚洲高清一区二区三区不卡| 91亚洲男人天堂| 一本到三区不卡视频| 一本到不卡精品视频在线观看| 99久久综合国产精品| 97久久人人超碰| 91免费视频观看| 色88888久久久久久影院按摩| 91成人网在线| 欧美久久久久久久久中文字幕| 欧美色图天堂网| 欧美日韩中文国产| 正在播放一区二区| 欧美成人国产一区二区| 久久免费午夜影院| 国产精品每日更新| 亚洲精品欧美专区| 日韩精品亚洲一区二区三区免费| 日韩高清一级片| 国产在线不卡一区| 成人福利电影精品一区二区在线观看| av电影在线观看一区| 91丨九色丨黑人外教| 欧美日韩美少妇| 日韩欧美成人激情| 中国色在线观看另类| 夜夜夜精品看看| 精品一区二区av| 成人国产在线观看| 欧美精品日韩一区| 久久网这里都是精品| 亚洲精品乱码久久久久久久久| 亚洲第一福利一区| 国产成a人亚洲精品| 91国产免费观看| 久久久久久久综合狠狠综合| 亚洲欧洲制服丝袜| 狂野欧美性猛交blacked| 成人手机电影网| 7777精品伊人久久久大香线蕉| 欧美激情一区二区在线| 亚洲国产美女搞黄色| 国产精品一线二线三线| 91久久人澡人人添人人爽欧美| 精品国产一区二区亚洲人成毛片| 国产精品久久久久婷婷| 午夜不卡av免费| 99久久精品免费看国产免费软件| 91精品一区二区三区久久久久久 | 午夜精品一区二区三区三上悠亚| 麻豆91免费观看| 91日韩在线专区| 久久婷婷一区二区三区| 亚洲成av人片在线观看无码| 成人毛片视频在线观看| 日韩精品专区在线| 亚洲一区二区精品久久av| 国产麻豆成人传媒免费观看| 宅男噜噜噜66一区二区66| 国产精品国产三级国产普通话99 | 奇米影视7777精品一区二区| 97国产精品videossex| 久久精品夜色噜噜亚洲aⅴ| 偷拍一区二区三区四区| av午夜精品一区二区三区| 精品国产一区二区三区久久影院| 亚洲一级二级在线| 91丝袜美女网| 国产精品久久久久久久久免费相片| 九九九久久久精品| 欧美高清一级片在线| 一区二区三区产品免费精品久久75| 国产精品一区二区男女羞羞无遮挡| 欧美一级在线视频| 亚洲午夜久久久久久久久电影院| 99精品一区二区| 国产精品伦一区二区三级视频| 国产精品456| 国产清纯美女被跳蛋高潮一区二区久久w| 日韩国产成人精品| 欧美精品三级在线观看| 五月婷婷综合网| 在线观看91精品国产麻豆| 天涯成人国产亚洲精品一区av| 91小视频在线免费看| 亚洲激情男女视频| 色综合色狠狠综合色| 综合亚洲深深色噜噜狠狠网站| www.性欧美| 亚洲日本青草视频在线怡红院|