Fix a new compilation warning with broken-mulodi i386 clang builds. :(

This commit is contained in:
Nick Mathewson 2016-10-11 10:29:43 -04:00
parent 7026b607a0
commit 5a9696fad8

View File

@ -17,6 +17,7 @@
#else #else
#define COMPILER_RT_ABI #define COMPILER_RT_ABI
#define di_int int64_t #define di_int int64_t
#define di_uint uint64_t
#include "torint.h" #include "torint.h"
di_int __mulodi4(di_int a, di_int b, int* overflow); di_int __mulodi4(di_int a, di_int b, int* overflow);
@ -30,9 +31,9 @@ COMPILER_RT_ABI di_int
__mulodi4(di_int a, di_int b, int* overflow) __mulodi4(di_int a, di_int b, int* overflow)
{ {
const int N = (int)(sizeof(di_int) * CHAR_BIT); const int N = (int)(sizeof(di_int) * CHAR_BIT);
const di_int MIN = (di_int)1 << (N-1); const di_int MIN = (di_int) ((di_uint)1 << (N-1));
const di_int MAX = ~MIN; const di_int MAX = ~MIN;
*overflow = 0; *overflow = 0;
di_int result = a * b; di_int result = a * b;
if (a == MIN) if (a == MIN)
{ {