Avoid "unreachable code" warning
diff --git a/library/bignum.c b/library/bignum.c
index cb55586..a73bf76 100644
--- a/library/bignum.c
+++ b/library/bignum.c
@@ -1441,14 +1441,13 @@
 static void mpi_montg_init( t_uint *mm, const mpi *N )
 {
     t_uint x, m0 = N->p[0];
+    unsigned int i;
 
     x  = m0;
     x += ( ( m0 + 2 ) & 4 ) << 1;
-    x *= ( 2 - ( m0 * x ) );
 
-    if( biL >= 16 ) x *= ( 2 - ( m0 * x ) );
-    if( biL >= 32 ) x *= ( 2 - ( m0 * x ) );
-    if( biL >= 64 ) x *= ( 2 - ( m0 * x ) );
+    for( i = biL; i >= 8; i /= 2 )
+        x *= ( 2 - ( m0 * x ) );
 
     *mm = ~x + 1;
 }