Skip to content

Commit

Permalink
compiler-rt: fix few builtins build warnings. (#88991)
Browse files Browse the repository at this point in the history
  • Loading branch information
devnexen committed Apr 22, 2024
1 parent 83bc7b5 commit 8482dbd
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 8 deletions.
2 changes: 1 addition & 1 deletion compiler-rt/lib/builtins/fp_add_impl.inc
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ static __inline fp_t __addXf3__(fp_t a, fp_t b) {

// Shift the significand of b by the difference in exponents, with a sticky
// bottom bit to get rounding correct.
const unsigned int align = aExponent - bExponent;
const unsigned int align = (unsigned int)(aExponent - bExponent);
if (align) {
if (align < typeWidth) {
const bool sticky = (bSignificand << (typeWidth - align)) != 0;
Expand Down
4 changes: 2 additions & 2 deletions compiler-rt/lib/builtins/fp_fixint_impl.inc
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ static __inline fixint_t __fixint(fp_t a) {
// If 0 <= exponent < significandBits, right shift to get the result.
// Otherwise, shift left.
if (exponent < significandBits)
return sign * (significand >> (significandBits - exponent));
return (fixint_t)(sign * (significand >> (significandBits - exponent)));
else
return sign * ((fixuint_t)significand << (exponent - significandBits));
return (fixint_t)(sign * ((fixuint_t)significand << (exponent - significandBits)));
}
6 changes: 3 additions & 3 deletions compiler-rt/lib/builtins/fp_lib.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ static __inline int rep_clz(rep_t a) { return clzsi(a); }
// 32x32 --> 64 bit multiply
static __inline void wideMultiply(rep_t a, rep_t b, rep_t *hi, rep_t *lo) {
const uint64_t product = (uint64_t)a * b;
*hi = product >> 32;
*lo = product;
*hi = (rep_t)(product >> 32);
*lo = (rep_t)product;
}
COMPILER_RT_ABI fp_t __addsf3(fp_t a, fp_t b);

Expand Down Expand Up @@ -239,7 +239,7 @@ static __inline int normalize(rep_t *significand) {
return 1 - shift;
}

static __inline void wideLeftShift(rep_t *hi, rep_t *lo, int count) {
static __inline void wideLeftShift(rep_t *hi, rep_t *lo, unsigned int count) {
*hi = *hi << count | *lo >> (typeWidth - count);
*lo = *lo << count;
}
Expand Down
4 changes: 2 additions & 2 deletions compiler-rt/lib/builtins/int_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@ typedef union {

static __inline ti_int make_ti(di_int h, di_int l) {
twords r;
r.s.high = h;
r.s.low = l;
r.s.high = (du_int)h;
r.s.low = (du_int)l;
return r.all;
}

Expand Down

0 comments on commit 8482dbd

Please sign in to comment.