shut up gcc
diff --git a/src/libmp/port/mptouv.c b/src/libmp/port/mptouv.c
index eb663f3..9cb74ea 100644
--- a/src/libmp/port/mptouv.c
+++ b/src/libmp/port/mptouv.c
@@ -22,10 +22,16 @@
 		return b;
 	for(s = 0; s < VLDIGITS && v != 0; s++){
 		b->p[s] = v;
+	/* !@*$&!@$ gcc gives warnings about the >> here
+	 * when running on 64-bit machines, even though 
+	 * it's in dead code.  fake it out with two shifts.
 		if(sizeof(mpdigit) == sizeof(uvlong))
 			v = 0;
 		else
 			v >>= sizeof(mpdigit)*8;
+	*/
+		v >>= sizeof(mpdigit)*4;
+		v >>= sizeof(mpdigit)*4;
 	}
 	b->top = s;
 	return b;
diff --git a/src/libmp/port/mptov.c b/src/libmp/port/mptov.c
index 86da994..b24b8e3 100644
--- a/src/libmp/port/mptov.c
+++ b/src/libmp/port/mptov.c
@@ -28,10 +28,16 @@
 		uv = v;
 	for(s = 0; s < VLDIGITS && uv != 0; s++){
 		b->p[s] = uv;
+	/* !@*$&!@$ gcc gives warnings about the >> here
+	 * when running on 64-bit machines, even though 
+	 * it's in dead code.  fake it out with two shifts.
 		if(sizeof(mpdigit) == sizeof(uvlong))
 			uv = 0;
 		else
 			uv >>= sizeof(mpdigit)*8;
+	*/
+		uv >>= sizeof(mpdigit)*4;
+		uv >>= sizeof(mpdigit)*4;
 	}
 	b->top = s;
 	return b;