fixed again
This commit is contained in:
		
							parent
							
								
									0d45d9da11
								
							
						
					
					
						commit
						0406776361
					
				
					 2 changed files with 4 additions and 2 deletions
				
			
		|  | @ -21,13 +21,14 @@ _float	s1,s2; | ||||||
| 				/* is faster than the code:	*/ | 				/* is faster than the code:	*/ | ||||||
| 				/*		s2 = -s2	*/ | 				/*		s2 = -s2	*/ | ||||||
| 	char unsigned *p; | 	char unsigned *p; | ||||||
|  | 	_float *result = &s1;	/* s1 may not be in a register! */ | ||||||
| 
 | 
 | ||||||
| 	if (s2 == (_float) 0) { | 	if (s2 == (_float) 0) { | ||||||
| 		return s1; | 		return s1; | ||||||
| 	} | 	} | ||||||
| 	p = (char unsigned *) &s2; | 	p = (char unsigned *) &s2; | ||||||
| 	*p ^= 0x80;	/* change sign of s2 */ | 	*p ^= 0x80;	/* change sign of s2 */ | ||||||
| 	s1 = adf4(s2,s1); | 	*result = adf4(s2,s1); | ||||||
| 	return(s1);	/* add and return result */ | 	return(s1);	/* add and return result */ | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -21,12 +21,13 @@ _double	s1,s2; | ||||||
| 				/* is faster than the code line	*/ | 				/* is faster than the code line	*/ | ||||||
| 				/*	s2 = -s2;		*/ | 				/*	s2 = -s2;		*/ | ||||||
| 	char unsigned *p;		/* sufficient to access sign bit */ | 	char unsigned *p;		/* sufficient to access sign bit */ | ||||||
|  | 	_double *result = &s1;	/* s1 may not be in a register! */ | ||||||
| 
 | 
 | ||||||
| 	if (s2.__double[0] == 0 && s2.__double[1] == 0) { | 	if (s2.__double[0] == 0 && s2.__double[1] == 0) { | ||||||
| 		return s1; | 		return s1; | ||||||
| 	} | 	} | ||||||
| 	p = (char unsigned *) &s2; | 	p = (char unsigned *) &s2; | ||||||
| 	*p ^= 0x80;	/* change sign of s2 */ | 	*p ^= 0x80;	/* change sign of s2 */ | ||||||
| 	s1 = adf8(s2,s1);	/* add and return result */ | 	*result = adf8(s2,s1);	/* add and return result */ | ||||||
| 	return(s1); | 	return(s1); | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue