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

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

?? reg_ld_str.c

?? freebsd v4.4內核源碼
?? C
?? 第 1 頁 / 共 3 頁
字號:
			((long *) &tll)[0] = 0;		} else			return 0;	} else		if (t.sign)			tll = -tll;	REENTRANT_CHECK(OFF);/*	    verify_area(VERIFY_WRITE, (void *) d, 8); */	suword((unsigned long *) d, ((long *) &tll)[0]);	suword(1 + (unsigned long *) d, ((long *) &tll)[1]);	REENTRANT_CHECK(ON);	return 1;}/* Put a long into user memory */intreg_store_int32(void){	long   *d = (long *) FPU_data_address;	FPU_REG t;	if (FPU_st0_tag == TW_Empty) {		/* Empty register (stack underflow) */		EXCEPTION(EX_StackUnder);		if (control_word & EX_Invalid) {			/* The masked response */			/* Put out the QNaN indefinite */			REENTRANT_CHECK(OFF);/*			    verify_area(VERIFY_WRITE, d, 4);*/			suword((unsigned long *) d, 0x80000000);			REENTRANT_CHECK(ON);			return 1;		} else			return 0;	}	reg_move(FPU_st0_ptr, &t);	round_to_int(&t);	if (t.sigh ||	    ((t.sigl & 0x80000000) &&		!((t.sigl == 0x80000000) && (t.sign == SIGN_NEG)))) {		EXCEPTION(EX_Invalid);		/* This is a special case: see sec 16.2.5.1 of the 80486 book */		if (control_word & EX_Invalid) {			/* Produce "indefinite" */			t.sigl = 0x80000000;		} else			return 0;	} else		if (t.sign)			t.sigl = -(long) t.sigl;	REENTRANT_CHECK(OFF);/*	    verify_area(VERIFY_WRITE, d, 4); */	suword((unsigned long *) d, t.sigl);	REENTRANT_CHECK(ON);	return 1;}/* Put a short into user memory */intreg_store_int16(void){	short  *d = (short *) FPU_data_address;	FPU_REG t;	short   ts;	if (FPU_st0_tag == TW_Empty) {		/* Empty register (stack underflow) */		EXCEPTION(EX_StackUnder);		if (control_word & EX_Invalid) {			/* The masked response */			/* Put out the QNaN indefinite */			REENTRANT_CHECK(OFF);/*			    verify_area(VERIFY_WRITE, d, 2);*/			susword((unsigned short *) d, 0x8000);			REENTRANT_CHECK(ON);			return 1;		} else			return 0;	}	reg_move(FPU_st0_ptr, &t);	round_to_int(&t);	if (t.sigh ||	    ((t.sigl & 0xffff8000) &&		!((t.sigl == 0x8000) && (t.sign == SIGN_NEG)))) {		EXCEPTION(EX_Invalid);		/* This is a special case: see sec 16.2.5.1 of the 80486 book */		if (control_word & EX_Invalid) {			/* Produce "indefinite" */			ts = 0x8000;		} else			return 0;	} else		if (t.sign)			t.sigl = -t.sigl;	REENTRANT_CHECK(OFF);/*	    verify_area(VERIFY_WRITE, d, 2); */	susword((short *) d, (short) t.sigl);	REENTRANT_CHECK(ON);	return 1;}/* Put a packed bcd array into user memory */intreg_store_bcd(void){	char   *d = (char *) FPU_data_address;	FPU_REG t;	long long ll;	unsigned char b;	int     i;	unsigned char sign = (FPU_st0_ptr->sign == SIGN_NEG) ? 0x80 : 0;	if (FPU_st0_tag == TW_Empty) {		/* Empty register (stack underflow) */		EXCEPTION(EX_StackUnder);		if (control_word & EX_Invalid) {			/* The masked response */			/* Put out the QNaN indefinite */			goto put_indefinite;		} else			return 0;	}	reg_move(FPU_st0_ptr, &t);	round_to_int(&t);	ll = *(long long *) (&t.sigl);	/* Check for overflow, by comparing with 999999999999999999 decimal. */	if ((t.sigh > 0x0de0b6b3) ||	    ((t.sigh == 0x0de0b6b3) && (t.sigl > 0xa763ffff))) {		EXCEPTION(EX_Invalid);		/* This is a special case: see sec 16.2.5.1 of the 80486 book */		if (control_word & EX_Invalid) {	put_indefinite:			/* Produce "indefinite" */			REENTRANT_CHECK(OFF);/*			    verify_area(VERIFY_WRITE, d, 10);*/			subyte((unsigned char *) d + 7, 0xff);			subyte((unsigned char *) d + 8, 0xff);			subyte((unsigned char *) d + 9, 0xff);			REENTRANT_CHECK(ON);			return 1;		} else			return 0;	}/*	verify_area(VERIFY_WRITE, d, 10);*/	for (i = 0; i < 9; i++) {		b = div_small(&ll, 10);		b |= (div_small(&ll, 10)) << 4;		REENTRANT_CHECK(OFF);		subyte((unsigned char *) d + i, b);		REENTRANT_CHECK(ON);	}	REENTRANT_CHECK(OFF);	subyte((unsigned char *) d + 9, sign);	REENTRANT_CHECK(ON);	return 1;}/*===========================================================================*//* r gets mangled such that sig is int, sign:   it is NOT normalized *//* The return value (in eax) is zero if the result is exact,   if bits are changed due to rounding, truncation, etc, then   a non-zero value is returned *//* Overflow is signalled by a non-zero return value (in eax).   In the case of overflow, the returned significand always has the   the largest possible value *//* The value returned in eax is never actually needed :-) */intround_to_int(FPU_REG * r){	char    very_big;	unsigned eax;	if (r->tag == TW_Zero) {		/* Make sure that zero is returned */		*(long long *) &r->sigl = 0;		return 0;	/* o.k. */	}	if (r->exp > EXP_BIAS + 63) {		r->sigl = r->sigh = ~0;	/* The largest representable number */		return 1;	/* overflow */	}	eax = shrxs(&r->sigl, EXP_BIAS + 63 - r->exp);	very_big = !(~(r->sigh) | ~(r->sigl));	/* test for 0xfff...fff */#define	half_or_more	(eax & 0x80000000)#define	frac_part	(eax)#define more_than_half  ((eax & 0x80000001) == 0x80000001)	switch (control_word & CW_RC) {	case RC_RND:		if (more_than_half	/* nearest */		    || (half_or_more && (r->sigl & 1))) {	/* odd -> even */			if (very_big)				return 1;	/* overflow */			(*(long long *) (&r->sigl))++;			return LOST_UP;		}		break;	case RC_DOWN:		if (frac_part && r->sign) {			if (very_big)				return 1;	/* overflow */			(*(long long *) (&r->sigl))++;			return LOST_UP;		}		break;	case RC_UP:		if (frac_part && !r->sign) {			if (very_big)				return 1;	/* overflow */			(*(long long *) (&r->sigl))++;			return LOST_UP;		}		break;	case RC_CHOP:		break;	}	return eax ? LOST_DOWN : 0;}/*===========================================================================*/char   *fldenv(void){	char   *s = (char *) FPU_data_address;	unsigned short tag_word = 0;	unsigned char tag;	int     i;	REENTRANT_CHECK(OFF);	control_word = fusword((unsigned short *) s);	status_word = fusword((unsigned short *) (s + 4));	tag_word = fusword((unsigned short *) (s + 8));	ip_offset = fuword((unsigned long *) (s + 0x0c));	cs_selector = fuword((unsigned long *) (s + 0x10));	data_operand_offset = fuword((unsigned long *) (s + 0x14));	operand_selector = fuword((unsigned long *) (s + 0x18));	REENTRANT_CHECK(ON);	top = (status_word >> SW_Top_Shift) & 7;	for (i = 0; i < 8; i++) {		tag = tag_word & 3;		tag_word >>= 2;		switch (tag) {		case 0:			regs[i].tag = TW_Valid;			break;		case 1:			regs[i].tag = TW_Zero;			break;		case 2:			regs[i].tag = TW_NaN;			break;		case 3:			regs[i].tag = TW_Empty;			break;		}	}	FPU_data_address = (void *) data_operand_offset;	/* We want no net effect */	FPU_entry_eip = ip_offset;	/* We want no net effect */	return s + 0x1c;}voidfrstor(void){	int     i, stnr;	unsigned char tag;	unsigned short saved_status, saved_control;	char   *s = (char *) fldenv();	saved_status = status_word;	saved_control = control_word;	control_word = 0x037f;	/* Mask all interrupts while we load. */	for (i = 0; i < 8; i++) {		/* load each register */		FPU_data_address = (void *) (s + i * 10);		reg_load_extended();		stnr = (i + top) & 7;		tag = regs[stnr].tag;	/* derived from the loaded tag word */		reg_move(&FPU_loaded_data, &regs[stnr]);		if (tag == TW_NaN) {			/* The current data is a special, i.e. NaN,			 * unsupported, infinity, or denormal */			unsigned char t = regs[stnr].tag;	/* derived from the new								 * data */			if ( /* (t == TW_Valid) || *** */ (t == TW_Zero))				regs[stnr].tag = TW_NaN;		} else			regs[stnr].tag = tag;	}	control_word = saved_control;	status_word = saved_status;	FPU_data_address = (void *) data_operand_offset;	/* We want no net effect */}unsigned shorttag_word(void){	unsigned short word = 0;	unsigned char tag;	int     i;	for (i = 7; i >= 0; i--) {		switch (tag = regs[i].tag) {#if 0				/* TW_Denormal is not used yet, and probably				 * won't be */		case TW_Denormal:#endif		case TW_Valid:			if (regs[i].exp <= (EXP_BIAS - EXTENDED_Ebias))				tag = 2;			break;		case TW_Infinity:		case TW_NaN:			tag = 2;			break;		case TW_Empty:			tag = 3;			break;			/* TW_Valid and TW_Zero already have the correct value */		}		word <<= 2;		word |= tag;	}	return word;}char   *fstenv(void){	char   *d = (char *) FPU_data_address;/*	verify_area(VERIFY_WRITE, d, 28);*/#if 0				/****/	*(unsigned short *) &cs_selector = fpu_cs;	*(unsigned short *) &operand_selector = fpu_os;#endif				/****/	REENTRANT_CHECK(OFF);	susword((unsigned short *) d, control_word);	susword((unsigned short *) (d + 4), (status_word & ~SW_Top) | ((top & 7) << SW_Top_Shift));	susword((unsigned short *) (d + 8), tag_word());	suword((unsigned long *) (d + 0x0c), ip_offset);	suword((unsigned long *) (d + 0x10), cs_selector);	suword((unsigned long *) (d + 0x14), data_operand_offset);	suword((unsigned long *) (d + 0x18), operand_selector);	REENTRANT_CHECK(ON);	return d + 0x1c;}voidfsave(void){	char   *d;	FPU_REG tmp, *rp;	int     i;	short   e;	d = fstenv();/*	verify_area(VERIFY_WRITE, d, 80);*/	for (i = 0; i < 8; i++) {		/* Store each register in the order: st(0), st(1), ... */		rp = &regs[(top + i) & 7];		e = rp->exp - EXP_BIAS + EXTENDED_Ebias;		if (rp->tag == TW_Valid) {			if (e >= 0x7fff) {				/* Overflow to infinity */				REENTRANT_CHECK(OFF);				suword((unsigned long *) (d + i * 10), 0);				suword((unsigned long *) (d + i * 10 + 4), 0);				REENTRANT_CHECK(ON);				e = 0x7fff;			} else				if (e <= 0) {					if (e > -63) {						/* Make a de-normal */						reg_move(rp, &tmp);						tmp.exp += -EXTENDED_Emin + 63;	/* largest exp to be 62 */						round_to_int(&tmp);						REENTRANT_CHECK(OFF);						suword((unsigned long *) (d + i * 10), tmp.sigl);						suword((unsigned long *) (d + i * 10 + 4), tmp.sigh);						REENTRANT_CHECK(ON);					} else {						/* Underflow to zero */						REENTRANT_CHECK(OFF);						suword((unsigned long *) (d + i * 10), 0);						suword((unsigned long *) (d + i * 10 + 4), 0);						REENTRANT_CHECK(ON);					}					e = 0;				} else {					REENTRANT_CHECK(OFF);					suword((unsigned long *) (d + i * 10), rp->sigl);					suword((unsigned long *) (d + i * 10 + 4), rp->sigh);					REENTRANT_CHECK(ON);				}		} else			if (rp->tag == TW_Zero) {				REENTRANT_CHECK(OFF);				suword((unsigned long *) (d + i * 10), 0);				suword((unsigned long *) (d + i * 10 + 4), 0);				REENTRANT_CHECK(ON);				e = 0;			} else				if (rp->tag == TW_Infinity) {					REENTRANT_CHECK(OFF);					suword((unsigned long *) (d + i * 10), 0);					suword((unsigned long *) (d + i * 10 + 4), 0x80000000);					REENTRANT_CHECK(ON);					e = 0x7fff;				} else					if (rp->tag == TW_NaN) {						REENTRANT_CHECK(OFF);						suword((unsigned long *) (d + i * 10), rp->sigl);						suword((unsigned long *) (d + i * 10 + 4), rp->sigh);						REENTRANT_CHECK(ON);						e = 0x7fff;					} else						if (rp->tag == TW_Empty) {							/* just copy the reg */							REENTRANT_CHECK(OFF);							suword((unsigned long *) (d + i * 10), rp->sigl);							suword((unsigned long *) (d + i * 10 + 4), rp->sigh);							REENTRANT_CHECK(ON);						}		e |= rp->sign == SIGN_POS ? 0 : 0x8000;		REENTRANT_CHECK(OFF);		susword((unsigned short *) (d + i * 10 + 8), e);		REENTRANT_CHECK(ON);	}	finit();}/*===========================================================================*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品影视av免费| 在线播放中文字幕一区| 一本一道综合狠狠老| 51久久夜色精品国产麻豆| 久久久久97国产精华液好用吗| 亚洲色图在线看| 国产精品一级二级三级| 欧美三级中文字幕在线观看| 久久亚洲二区三区| 视频一区二区欧美| 色综合久久久久综合体桃花网| 欧美va亚洲va在线观看蝴蝶网| 亚洲一区二区视频在线观看| 成人黄色片在线观看| 欧美一区2区视频在线观看| 综合久久综合久久| 国产精品99久久久久久久女警| 欧美精品日韩综合在线| 亚洲精品免费电影| 9久草视频在线视频精品| 日韩视频在线永久播放| 日韩综合小视频| 欧美亚洲国产bt| 亚洲美女精品一区| 91亚洲精华国产精华精华液| 国产精品三级久久久久三级| 不卡影院免费观看| 国产欧美一区二区精品婷婷| 精品一区二区三区欧美| 日韩欧美专区在线| 美女网站视频久久| 欧美精品久久99久久在免费线| 中文字幕一区二区三中文字幕| 不卡av在线免费观看| 久久精品免视看| 国产精选一区二区三区| 久久综合久久综合久久综合| 精品影院一区二区久久久| 欧美mv日韩mv亚洲| 国产在线一区观看| 国产日韩欧美a| 成人激情电影免费在线观看| 国产精品第一页第二页第三页| 成人综合婷婷国产精品久久免费| 欧美国产成人在线| 91影院在线观看| 亚洲综合在线观看视频| 欧美视频一区二区在线观看| 日韩激情视频网站| 欧美不卡一区二区三区四区| 国产精品一区二区不卡| 国产精品免费久久| 在线看不卡av| 秋霞电影网一区二区| 欧美精品一区二区三区久久久| 国产精品1024| 亚洲视频电影在线| 欧美精品一卡二卡| 国产美女主播视频一区| 亚洲国产aⅴ成人精品无吗| 91精品麻豆日日躁夜夜躁| 韩国在线一区二区| 最新不卡av在线| 91精品国产欧美一区二区| 国产乱码精品一区二区三区忘忧草 | 日日噜噜夜夜狠狠视频欧美人| 91精品国产福利在线观看 | 亚洲香蕉伊在人在线观| 欧美一级二级在线观看| 国产激情一区二区三区桃花岛亚洲| 国产精品久久三| 欧美日韩精品免费| 国产精品99久久久久久宅男| 亚洲黄色av一区| 久久伊99综合婷婷久久伊| 色婷婷香蕉在线一区二区| 美女视频黄久久| 亚洲日本免费电影| 精品国产区一区| 欧美亚洲图片小说| 国产精品1区2区3区| 亚洲福利一区二区| 国产精品美女久久久久av爽李琼| 色88888久久久久久影院按摩| 日韩二区三区在线观看| 国产精品伦理在线| 欧美成人精品1314www| 在线精品国精品国产尤物884a| 国产在线精品一区二区| 国产激情视频一区二区三区欧美 | 国产成人8x视频一区二区| 亚洲第一二三四区| 国产精品久久久久久久久搜平片 | 成人动漫精品一区二区| 日韩和欧美的一区| 一区二区在线观看av| 久久久久国产精品免费免费搜索| 欧美日韩一区二区三区在线| 高清不卡一区二区| 久久99热这里只有精品| 性久久久久久久| 亚洲婷婷国产精品电影人久久| 久久亚洲一级片| 精品精品国产高清一毛片一天堂| 欧美日韩国产成人在线免费| 99精品热视频| av网站免费线看精品| 高清免费成人av| 国产一区二区不卡老阿姨| 黄一区二区三区| 美日韩一区二区| 免费视频最近日韩| 日本在线不卡视频一二三区| 亚洲国产日韩a在线播放性色| 亚洲欧美日韩国产综合| 欧美激情一区在线| 国产精品看片你懂得| 中文字幕一区二区5566日韩| 中文子幕无线码一区tr| 中文字幕欧美日本乱码一线二线| 久久精品视频一区二区三区| 精品国产免费久久 | 亚洲精品在线观| 日韩精品一区二区三区三区免费| 欧美一个色资源| 精品粉嫩超白一线天av| 精品对白一区国产伦| 国产欧美一区二区在线| 中文字幕av在线一区二区三区| 午夜精品爽啪视频| 日韩不卡一二三区| 麻豆传媒一区二区三区| 国产乱人伦偷精品视频免下载| 国产成人精品免费在线| gogogo免费视频观看亚洲一| 97精品电影院| 日本韩国视频一区二区| 在线视频中文字幕一区二区| 欧美日韩黄视频| 精品日韩在线观看| 国产精品久久久久久久久免费相片 | 亚洲伦在线观看| 天天色天天爱天天射综合| 免费观看久久久4p| 国产白丝网站精品污在线入口| 成人av电影在线| 在线免费精品视频| 日韩欧美久久一区| 久久精品亚洲乱码伦伦中文| 亚洲欧美日韩国产中文在线| 青青草精品视频| 成人h精品动漫一区二区三区| 精品视频在线免费看| 久久久一区二区| 亚洲国产裸拍裸体视频在线观看乱了 | 国产精品久久久久久久久搜平片| 一区二区三区日韩精品视频| 日本欧美一区二区三区| 在线观看日韩一区| www激情久久| 一区二区在线观看免费视频播放 | 7777精品伊人久久久大香线蕉超级流畅| 日韩美女一区二区三区| 亚洲精品欧美激情| 激情五月婷婷综合| 欧美影片第一页| 久久久久国产一区二区三区四区| 亚洲精品成a人| 国产一区二区免费视频| 91久久精品网| 国产精品色在线观看| 日本不卡一二三| 色婷婷一区二区三区四区| 久久品道一品道久久精品| 五月天一区二区三区| 91麻豆成人久久精品二区三区| 精品av综合导航| 日本中文字幕不卡| 在线看不卡av| 亚洲图片另类小说| 成人中文字幕电影| 精品日本一线二线三线不卡| 亚洲国产精品久久久男人的天堂| 成人av先锋影音| 久久免费美女视频| 久久成人免费日本黄色| 欧美日韩视频在线观看一区二区三区 | 色一情一伦一子一伦一区| 久久久亚洲精华液精华液精华液| 婷婷综合另类小说色区| 色先锋资源久久综合| 欧美激情一区二区三区在线| 韩日欧美一区二区三区| 日韩欧美久久久| 免费一级欧美片在线观看| 欧美一区日韩一区| 日本伊人午夜精品| 日韩一区二区三区三四区视频在线观看| 亚洲一区二区在线免费观看视频| 在线欧美一区二区|