diff --git a/library/gcm.c b/library/gcm.c
index 7d79f1a..64e4929 100644
--- a/library/gcm.c
+++ b/library/gcm.c
@@ -80,7 +80,7 @@
 
     for( i = 4; i > 0; i >>= 1 )
     {
-        uint32_t T = ( vl & 1 ) ? 0xe1000000U : 0;
+        uint32_t T = ( vl & 1 ) * 0xe1000000U;
         vl  = ( vh << 63 ) | ( vl >> 1 );
         vh  = ( vh >> 1 ) ^ ( (uint64_t) T << 32);
 
@@ -128,12 +128,10 @@
 {
     int i = 0;
     unsigned char z[16];
-    unsigned char v[16];
     unsigned char lo, hi, rem;
     uint64_t zh, zl;
 
     memset( z, 0x00, 16 );
-    memcpy( v, x, 16 );
 
     lo = x[15] & 0xf;
     hi = x[15] >> 4;
@@ -191,8 +189,8 @@
     const unsigned char *p;
     unsigned char *out_p = output;
     size_t use_len;
-    size_t orig_len = length * 8;
-    size_t orig_add_len = add_len * 8;
+    uint64_t orig_len = length * 8;
+    uint64_t orig_add_len = add_len * 8;
 
     memset( y, 0x00, 16 );
     memset( work_buf, 0x00, 16 );
@@ -280,8 +278,10 @@
     {
         memset( work_buf, 0x00, 16 );
 
-        PUT_UINT32_BE( orig_add_len , work_buf, 4 );
-        PUT_UINT32_BE( orig_len , work_buf, 12 );
+        PUT_UINT32_BE( ( orig_add_len >> 32 ), work_buf, 0  );
+        PUT_UINT32_BE( ( orig_add_len       ), work_buf, 4  );
+        PUT_UINT32_BE( ( orig_len     >> 32 ), work_buf, 8  );
+        PUT_UINT32_BE( ( orig_len           ), work_buf, 12 );
 
         for( i = 0; i < 16; i++ )
             buf[i] ^= work_buf[i];
