Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37564541
en ru br
ALT Linux repositórios
S:20200916-alt2

Group :: Desenvolvimento/C
RPM: f2c

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: f2c-ALT-MIPS.patch
Download


diff --git a/uninit.c b/uninit.c
index f15fe39..d9be333 100644
--- a/uninit.c
+++ b/uninit.c
@@ -178,63 +178,18 @@ ieee0(Void)
 	}
 #endif /* MSpc */
 
-#ifdef __mips	/* must link with -lfpe */
-#define IEEE0_done
-/* code from Eric Grosse */
-#include <stdlib.h>
-#include <stdio.h>
-#include "/usr/include/sigfpe.h"	/* full pathname for lcc -N */
-#include "/usr/include/sys/fpu.h"
-
- static void
-#ifdef KR_headers
-ieeeuserhand(exception, val) unsigned exception[5]; int val[2];
-#else
-ieeeuserhand(unsigned exception[5], int val[2])
-#endif
-{
-	fflush(stdout);
-	fprintf(stderr,"ieee0() aborting because of ");
-	if(exception[0]==_OVERFL) fprintf(stderr,"overflow\n");
-	else if(exception[0]==_UNDERFL) fprintf(stderr,"underflow\n");
-	else if(exception[0]==_DIVZERO) fprintf(stderr,"divide by 0\n");
-	else if(exception[0]==_INVALID) fprintf(stderr,"invalid operation\n");
-	else fprintf(stderr,"\tunknown reason\n");
-	fflush(stderr);
-	abort();
-}
-
- static void
-#ifdef KR_headers
-ieeeuserhand2(j) unsigned int **j;
-#else
-ieeeuserhand2(unsigned int **j)
-#endif
-{
-	fprintf(stderr,"ieee0() aborting because of confusion\n");
-	abort();
-}
-
- static void
-ieee0(Void)
-{
-	int i;
-	for(i=1; i<=4; i++){
-		sigfpe_[i].count = 1000;
-		sigfpe_[i].trace = 1;
-		sigfpe_[i].repls = _USER_DETERMINED;
-		}
-	sigfpe_[1].repls = _ZERO;	/* underflow */
-	handle_sigfpes( _ON,
-		_EN_UNDERFL|_EN_OVERFL|_EN_DIVZERO|_EN_INVALID,
-		ieeeuserhand,_ABORT_ON_ERROR,ieeeuserhand2);
-	}
-#endif /* mips */
-
 #ifdef __linux__
 #define IEEE0_done
 #include "fpu_control.h"
 
+#ifdef __mips	/* must link with -lfpe */
+#define _FPU_MASK_VM _FPU_MASK_V
+#define _FPU_MASK_ZM _FPU_MASK_Z
+#define _FPU_MASK_OM _FPU_MASK_O
+#define _FPU_MASK_UM _FPU_MASK_U
+#define _FPU_MASK_IM _FPU_MASK_I
+#endif /* mips */
+
 #ifdef __alpha__
 #ifndef USE_setfpucw
 #define __setfpucw(x) __fpu_control = (x)
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009