diff options
-rw-r--r-- | compiler-rt/lib/clzti2.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/cmpti2.c | 8 | ||||
-rw-r--r-- | compiler-rt/lib/ctzti2.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/ffsti2.c | 8 | ||||
-rw-r--r-- | compiler-rt/lib/fixdfti.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/fixunsdfti.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/fixunsxfti.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/fixxfti.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/floattidf.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/floattixf.c | 2 | ||||
-rw-r--r-- | compiler-rt/lib/floatuntidf.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/floatuntixf.c | 2 | ||||
-rw-r--r-- | compiler-rt/lib/multi3.c | 4 | ||||
-rw-r--r-- | compiler-rt/lib/parityti2.c | 2 | ||||
-rw-r--r-- | compiler-rt/lib/ucmpti2.c | 8 |
15 files changed, 33 insertions, 33 deletions
diff --git a/compiler-rt/lib/clzti2.c b/compiler-rt/lib/clzti2.c index eb05e2e23fe..805688fbe22 100644 --- a/compiler-rt/lib/clzti2.c +++ b/compiler-rt/lib/clzti2.c @@ -25,8 +25,8 @@ __clzti2(ti_int a) { twords x; x.all = a; - const di_int f = -(x.high == 0); - return __builtin_clzll((x.high & ~f) | (x.low & f)) + + const di_int f = -(x.s.high == 0); + return __builtin_clzll((x.s.high & ~f) | (x.s.low & f)) + ((si_int)f & ((si_int)(sizeof(di_int) * CHAR_BIT))); } diff --git a/compiler-rt/lib/cmpti2.c b/compiler-rt/lib/cmpti2.c index b6b696d72ef..90b3b75638b 100644 --- a/compiler-rt/lib/cmpti2.c +++ b/compiler-rt/lib/cmpti2.c @@ -28,13 +28,13 @@ __cmpti2(ti_int a, ti_int b) x.all = a; twords y; y.all = b; - if (x.high < y.high) + if (x.s.high < y.s.high) return 0; - if (x.high > y.high) + if (x.s.high > y.s.high) return 2; - if (x.low < y.low) + if (x.s.low < y.s.low) return 0; - if (x.low > y.low) + if (x.s.low > y.s.low) return 2; return 1; } diff --git a/compiler-rt/lib/ctzti2.c b/compiler-rt/lib/ctzti2.c index fdfac0d46fa..f2d41fee1cb 100644 --- a/compiler-rt/lib/ctzti2.c +++ b/compiler-rt/lib/ctzti2.c @@ -25,8 +25,8 @@ __ctzti2(ti_int a) { twords x; x.all = a; - const di_int f = -(x.low == 0); - return __builtin_ctzll((x.high & f) | (x.low & ~f)) + + const di_int f = -(x.s.low == 0); + return __builtin_ctzll((x.s.high & f) | (x.s.low & ~f)) + ((si_int)f & ((si_int)(sizeof(di_int) * CHAR_BIT))); } diff --git a/compiler-rt/lib/ffsti2.c b/compiler-rt/lib/ffsti2.c index 668b54296dd..0139eb1f757 100644 --- a/compiler-rt/lib/ffsti2.c +++ b/compiler-rt/lib/ffsti2.c @@ -25,13 +25,13 @@ __ffsti2(ti_int a) { twords x; x.all = a; - if (x.low == 0) + if (x.s.low == 0) { - if (x.high == 0) + if (x.s.high == 0) return 0; - return __builtin_ctzll(x.high) + (1 + sizeof(di_int) * CHAR_BIT); + return __builtin_ctzll(x.s.high) + (1 + sizeof(di_int) * CHAR_BIT); } - return __builtin_ctzll(x.low) + 1; + return __builtin_ctzll(x.s.low) + 1; } #endif /* __x86_64 */ diff --git a/compiler-rt/lib/fixdfti.c b/compiler-rt/lib/fixdfti.c index 00b6cfc5b9c..359b84eaece 100644 --- a/compiler-rt/lib/fixdfti.c +++ b/compiler-rt/lib/fixdfti.c @@ -30,10 +30,10 @@ __fixdfti(double a) { double_bits fb; fb.f = a; - int e = ((fb.u.high & 0x7FF00000) >> 20) - 1023; + int e = ((fb.u.s.high & 0x7FF00000) >> 20) - 1023; if (e < 0) return 0; - ti_int s = (si_int)(fb.u.high & 0x80000000) >> 31; + ti_int s = (si_int)(fb.u.s.high & 0x80000000) >> 31; ti_int r = 0x0010000000000000uLL | (0x000FFFFFFFFFFFFFuLL & fb.u.all); if (e > 52) r <<= (e - 52); diff --git a/compiler-rt/lib/fixunsdfti.c b/compiler-rt/lib/fixunsdfti.c index f765c00927c..c1cd72deca2 100644 --- a/compiler-rt/lib/fixunsdfti.c +++ b/compiler-rt/lib/fixunsdfti.c @@ -33,8 +33,8 @@ __fixunsdfti(double a) { double_bits fb; fb.f = a; - int e = ((fb.u.high & 0x7FF00000) >> 20) - 1023; - if (e < 0 || (fb.u.high & 0x80000000)) + int e = ((fb.u.s.high & 0x7FF00000) >> 20) - 1023; + if (e < 0 || (fb.u.s.high & 0x80000000)) return 0; tu_int r = 0x0010000000000000uLL | (fb.u.all & 0x000FFFFFFFFFFFFFuLL); if (e > 52) diff --git a/compiler-rt/lib/fixunsxfti.c b/compiler-rt/lib/fixunsxfti.c index 96c7c486353..d0bd512c4d4 100644 --- a/compiler-rt/lib/fixunsxfti.c +++ b/compiler-rt/lib/fixunsxfti.c @@ -35,8 +35,8 @@ __fixunsxfti(long double a) { long_double_bits fb; fb.f = a; - int e = (fb.u.high.low & 0x00007FFF) - 16383; - if (e < 0 || (fb.u.high.low & 0x00008000)) + int e = (fb.u.high.s.low & 0x00007FFF) - 16383; + if (e < 0 || (fb.u.high.s.low & 0x00008000)) return 0; tu_int r = fb.u.low.all; if (e > 63) diff --git a/compiler-rt/lib/fixxfti.c b/compiler-rt/lib/fixxfti.c index 70d0e17b968..c2248016c85 100644 --- a/compiler-rt/lib/fixxfti.c +++ b/compiler-rt/lib/fixxfti.c @@ -32,10 +32,10 @@ __fixxfti(long double a) { long_double_bits fb; fb.f = a; - int e = (fb.u.high.low & 0x00007FFF) - 16383; + int e = (fb.u.high.s.low & 0x00007FFF) - 16383; if (e < 0) return 0; - ti_int s = -(si_int)((fb.u.high.low & 0x00008000) >> 15); + ti_int s = -(si_int)((fb.u.high.s.low & 0x00008000) >> 15); ti_int r = fb.u.low.all; if (e > 63) r <<= (e - 63); diff --git a/compiler-rt/lib/floattidf.c b/compiler-rt/lib/floattidf.c index b74fa5ec88d..274f58517c4 100644 --- a/compiler-rt/lib/floattidf.c +++ b/compiler-rt/lib/floattidf.c @@ -76,10 +76,10 @@ __floattidf(ti_int a) /* a is now rounded to DBL_MANT_DIG bits */ } double_bits fb; - fb.u.high = ((su_int)s & 0x80000000) | /* sign */ + fb.u.s.high = ((su_int)s & 0x80000000) | /* sign */ ((e + 1023) << 20) | /* exponent */ ((su_int)(a >> 32) & 0x000FFFFF); /* mantissa-high */ - fb.u.low = (su_int)a; /* mantissa-low */ + fb.u.s.low = (su_int)a; /* mantissa-low */ return fb.f; } diff --git a/compiler-rt/lib/floattixf.c b/compiler-rt/lib/floattixf.c index d5502967916..77d906049be 100644 --- a/compiler-rt/lib/floattixf.c +++ b/compiler-rt/lib/floattixf.c @@ -78,7 +78,7 @@ __floattixf(ti_int a) /* a is now rounded to LDBL_MANT_DIG bits */ } long_double_bits fb; - fb.u.high.low = ((su_int)s & 0x8000) | /* sign */ + fb.u.high.s.low = ((su_int)s & 0x8000) | /* sign */ (e + 16383); /* exponent */ fb.u.low.all = (du_int)a; /* mantissa */ return fb.f; diff --git a/compiler-rt/lib/floatuntidf.c b/compiler-rt/lib/floatuntidf.c index 2e8369e9ea9..51d8b2827a3 100644 --- a/compiler-rt/lib/floatuntidf.c +++ b/compiler-rt/lib/floatuntidf.c @@ -74,9 +74,9 @@ __floatuntidf(tu_int a) /* a is now rounded to DBL_MANT_DIG bits */ } double_bits fb; - fb.u.high = ((e + 1023) << 20) | /* exponent */ + fb.u.s.high = ((e + 1023) << 20) | /* exponent */ ((su_int)(a >> 32) & 0x000FFFFF); /* mantissa-high */ - fb.u.low = (su_int)a; /* mantissa-low */ + fb.u.s.low = (su_int)a; /* mantissa-low */ return fb.f; } diff --git a/compiler-rt/lib/floatuntixf.c b/compiler-rt/lib/floatuntixf.c index 5a48cafec4c..e82d0c1e6ff 100644 --- a/compiler-rt/lib/floatuntixf.c +++ b/compiler-rt/lib/floatuntixf.c @@ -76,7 +76,7 @@ __floatuntixf(tu_int a) /* a is now rounded to LDBL_MANT_DIG bits */ } long_double_bits fb; - fb.u.high.low = (e + 16383); /* exponent */ + fb.u.high.s.low = (e + 16383); /* exponent */ fb.u.low.all = (du_int)a; /* mantissa */ return fb.f; } diff --git a/compiler-rt/lib/multi3.c b/compiler-rt/lib/multi3.c index 9ba730e485c..13a386781a9 100644 --- a/compiler-rt/lib/multi3.c +++ b/compiler-rt/lib/multi3.c @@ -50,8 +50,8 @@ __multi3(ti_int a, ti_int b) twords y; y.all = b; twords r; - r.all = __mulddi3(x.low, y.low); - r.s.high += x.high * y.low + x.low * y.high; + r.all = __mulddi3(x.s.low, y.s.low); + r.s.high += x.s.high * y.s.low + x.s.low * y.s.high; return r.all; } diff --git a/compiler-rt/lib/parityti2.c b/compiler-rt/lib/parityti2.c index 8ef53685434..650d417936a 100644 --- a/compiler-rt/lib/parityti2.c +++ b/compiler-rt/lib/parityti2.c @@ -25,7 +25,7 @@ __parityti2(ti_int a) { twords x; x.all = a; - return __paritydi2(x.high ^ x.low); + return __paritydi2(x.s.high ^ x.s.low); } #endif diff --git a/compiler-rt/lib/ucmpti2.c b/compiler-rt/lib/ucmpti2.c index ba32b840315..0e7eea3e3d1 100644 --- a/compiler-rt/lib/ucmpti2.c +++ b/compiler-rt/lib/ucmpti2.c @@ -28,13 +28,13 @@ __ucmpti2(tu_int a, tu_int b) x.all = a; utwords y; y.all = b; - if (x.high < y.high) + if (x.s.high < y.s.high) return 0; - if (x.high > y.high) + if (x.s.high > y.s.high) return 2; - if (x.low < y.low) + if (x.s.low < y.s.low) return 0; - if (x.low > y.low) + if (x.s.low > y.s.low) return 2; return 1; } |