diff options
Diffstat (limited to 'llvm/lib/Support')
| -rw-r--r-- | llvm/lib/Support/APFloat.cpp | 284 | ||||
| -rw-r--r-- | llvm/lib/Support/APInt.cpp | 75 | ||||
| -rw-r--r-- | llvm/lib/Support/CommandLine.cpp | 4 | ||||
| -rw-r--r-- | llvm/lib/Support/Debug.cpp | 3 | ||||
| -rw-r--r-- | llvm/lib/Support/ErrorHandling.cpp | 5 | ||||
| -rw-r--r-- | llvm/lib/Support/raw_ostream.cpp | 46 | 
6 files changed, 206 insertions, 211 deletions
diff --git a/llvm/lib/Support/APFloat.cpp b/llvm/lib/Support/APFloat.cpp index 8f860a64672..485bf4d6c9d 100644 --- a/llvm/lib/Support/APFloat.cpp +++ b/llvm/lib/Support/APFloat.cpp @@ -65,7 +65,7 @@ namespace llvm {       pow(5, power) is         power * 815 / (351 * integerPartWidth) + 1 -        +       However, whilst the result may require only this many parts,       because we are multiplying two values to get it, the       multiplication may require an extra part with the excess part @@ -100,15 +100,15 @@ hexDigitValue(unsigned int c)    unsigned int r;    r = c - '0'; -  if(r <= 9) +  if (r <= 9)      return r;    r = c - 'A'; -  if(r <= 5) +  if (r <= 5)      return r + 10;    r = c - 'a'; -  if(r <= 5) +  if (r <= 5)      return r + 10;    return -1U; @@ -116,8 +116,8 @@ hexDigitValue(unsigned int c)  static inline void  assertArithmeticOK(const llvm::fltSemantics &semantics) { -  assert(semantics.arithmeticOK -         && "Compile-time arithmetic does not support these semantics"); +  assert(semantics.arithmeticOK && +         "Compile-time arithmetic does not support these semantics");  }  /* Return the value of a decimal exponent of the form @@ -179,37 +179,37 @@ totalExponent(StringRef::iterator p, StringRef::iterator end,    assert(p != end && "Exponent has no digits");    negative = *p == '-'; -  if(*p == '-' || *p == '+') { +  if (*p == '-' || *p == '+') {      p++;      assert(p != end && "Exponent has no digits");    }    unsignedExponent = 0;    overflow = false; -  for(; p != end; ++p) { +  for (; p != end; ++p) {      unsigned int value;      value = decDigitValue(*p);      assert(value < 10U && "Invalid character in exponent");      unsignedExponent = unsignedExponent * 10 + value; -    if(unsignedExponent > 65535) +    if (unsignedExponent > 65535)        overflow = true;    } -  if(exponentAdjustment > 65535 || exponentAdjustment < -65536) +  if (exponentAdjustment > 65535 || exponentAdjustment < -65536)      overflow = true; -  if(!overflow) { +  if (!overflow) {      exponent = unsignedExponent; -    if(negative) +    if (negative)        exponent = -exponent;      exponent += exponentAdjustment; -    if(exponent > 65535 || exponent < -65536) +    if (exponent > 65535 || exponent < -65536)        overflow = true;    } -  if(overflow) +  if (overflow)      exponent = negative ? -65536: 65535;    return exponent; @@ -221,15 +221,15 @@ skipLeadingZeroesAndAnyDot(StringRef::iterator begin, StringRef::iterator end,  {    StringRef::iterator p = begin;    *dot = end; -  while(*p == '0' && p != end) +  while (*p == '0' && p != end)      p++; -  if(*p == '.') { +  if (*p == '.') {      *dot = p++;      assert(end - begin != 1 && "Significand has no digits"); -    while(*p == '0' && p != end) +    while (*p == '0' && p != end)        p++;    } @@ -323,13 +323,13 @@ trailingHexadecimalFraction(StringRef::iterator p, StringRef::iterator end,    /* If the first trailing digit isn't 0 or 8 we can work out the       fraction immediately.  */ -  if(digitValue > 8) +  if (digitValue > 8)      return lfMoreThanHalf; -  else if(digitValue < 8 && digitValue > 0) +  else if (digitValue < 8 && digitValue > 0)      return lfLessThanHalf;    /* Otherwise we need to find the first non-zero digit.  */ -  while(*p == '0') +  while (*p == '0')      p++;    assert(p != end && "Invalid trailing hexadecimal fraction!"); @@ -338,7 +338,7 @@ trailingHexadecimalFraction(StringRef::iterator p, StringRef::iterator end,    /* If we ran off the end it is exactly zero or one-half, otherwise       a little more.  */ -  if(hexDigit == -1U) +  if (hexDigit == -1U)      return digitValue == 0 ? lfExactlyZero: lfExactlyHalf;    else      return digitValue == 0 ? lfLessThanHalf: lfMoreThanHalf; @@ -356,12 +356,12 @@ lostFractionThroughTruncation(const integerPart *parts,    lsb = APInt::tcLSB(parts, partCount);    /* Note this is guaranteed true if bits == 0, or LSB == -1U.  */ -  if(bits <= lsb) +  if (bits <= lsb)      return lfExactlyZero; -  if(bits == lsb + 1) +  if (bits == lsb + 1)      return lfExactlyHalf; -  if(bits <= partCount * integerPartWidth -     && APInt::tcExtractBit(parts, bits - 1)) +  if (bits <= partCount * integerPartWidth && +      APInt::tcExtractBit(parts, bits - 1))      return lfMoreThanHalf;    return lfLessThanHalf; @@ -385,10 +385,10 @@ static lostFraction  combineLostFractions(lostFraction moreSignificant,                       lostFraction lessSignificant)  { -  if(lessSignificant != lfExactlyZero) { -    if(moreSignificant == lfExactlyZero) +  if (lessSignificant != lfExactlyZero) { +    if (moreSignificant == lfExactlyZero)        moreSignificant = lfLessThanHalf; -    else if(moreSignificant == lfExactlyHalf) +    else if (moreSignificant == lfExactlyHalf)        moreSignificant = lfMoreThanHalf;    } @@ -468,7 +468,7 @@ powerOf5(integerPart *dst, unsigned int power)                                                    15625, 78125 };    integerPart pow5s[maxPowerOfFiveParts * 2 + 5];    pow5s[0] = 78125 * 5; -   +    unsigned int partsCount[16] = { 1 };    integerPart scratch[maxPowerOfFiveParts], *p1, *p2, *pow5;    unsigned int result; @@ -588,14 +588,14 @@ APFloat::initialize(const fltSemantics *ourSemantics)    semantics = ourSemantics;    count = partCount(); -  if(count > 1) +  if (count > 1)      significand.parts = new integerPart[count];  }  void  APFloat::freeSignificand()  { -  if(partCount() > 1) +  if (partCount() > 1)      delete [] significand.parts;  } @@ -609,7 +609,7 @@ APFloat::assign(const APFloat &rhs)    exponent = rhs.exponent;    sign2 = rhs.sign2;    exponent2 = rhs.exponent2; -  if(category == fcNormal || category == fcNaN) +  if (category == fcNormal || category == fcNaN)      copySignificand(rhs);  } @@ -683,8 +683,8 @@ APFloat APFloat::makeNaN(const fltSemantics &Sem, bool SNaN, bool Negative,  APFloat &  APFloat::operator=(const APFloat &rhs)  { -  if(this != &rhs) { -    if(semantics != rhs.semantics) { +  if (this != &rhs) { +    if (semantics != rhs.semantics) {        freeSignificand();        initialize(rhs.semantics);      } @@ -881,7 +881,7 @@ APFloat::multiplySignificand(const APFloat &rhs, const APFloat *addend)    precision = semantics->precision;    newPartsCount = partCountForBits(precision * 2); -  if(newPartsCount > 4) +  if (newPartsCount > 4)      fullSignificand = new integerPart[newPartsCount];    else      fullSignificand = scratch; @@ -896,7 +896,7 @@ APFloat::multiplySignificand(const APFloat &rhs, const APFloat *addend)    omsb = APInt::tcMSB(fullSignificand, newPartsCount) + 1;    exponent += rhs.exponent; -  if(addend) { +  if (addend) {      Significand savedSignificand = significand;      const fltSemantics *savedSemantics = semantics;      fltSemantics extendedSemantics; @@ -905,18 +905,17 @@ APFloat::multiplySignificand(const APFloat &rhs, const APFloat *addend)      /* Normalize our MSB.  */      extendedPrecision = precision + precision - 1; -    if(omsb != extendedPrecision) -      { -        APInt::tcShiftLeft(fullSignificand, newPartsCount, -                           extendedPrecision - omsb); -        exponent -= extendedPrecision - omsb; -      } +    if (omsb != extendedPrecision) { +      APInt::tcShiftLeft(fullSignificand, newPartsCount, +                         extendedPrecision - omsb); +      exponent -= extendedPrecision - omsb; +    }      /* Create new semantics.  */      extendedSemantics = *semantics;      extendedSemantics.precision = extendedPrecision; -    if(newPartsCount == 1) +    if (newPartsCount == 1)        significand.part = fullSignificand[0];      else        significand.parts = fullSignificand; @@ -928,7 +927,7 @@ APFloat::multiplySignificand(const APFloat &rhs, const APFloat *addend)      lost_fraction = addOrSubtractSignificand(extendedAddend, false);      /* Restore our state.  */ -    if(newPartsCount == 1) +    if (newPartsCount == 1)        fullSignificand[0] = significand.part;      significand = savedSignificand;      semantics = savedSemantics; @@ -938,7 +937,7 @@ APFloat::multiplySignificand(const APFloat &rhs, const APFloat *addend)    exponent -= (precision - 1); -  if(omsb > precision) { +  if (omsb > precision) {      unsigned int bits, significantParts;      lostFraction lf; @@ -951,7 +950,7 @@ APFloat::multiplySignificand(const APFloat &rhs, const APFloat *addend)    APInt::tcAssign(lhsSignificand, fullSignificand, partsCount); -  if(newPartsCount > 4) +  if (newPartsCount > 4)      delete [] fullSignificand;    return lost_fraction; @@ -973,7 +972,7 @@ APFloat::divideSignificand(const APFloat &rhs)    rhsSignificand = rhs.significandParts();    partsCount = partCount(); -  if(partsCount > 2) +  if (partsCount > 2)      dividend = new integerPart[partsCount * 2];    else      dividend = scratch; @@ -981,7 +980,7 @@ APFloat::divideSignificand(const APFloat &rhs)    divisor = dividend + partsCount;    /* Copy the dividend and divisor as they will be modified in-place.  */ -  for(i = 0; i < partsCount; i++) { +  for (i = 0; i < partsCount; i++) {      dividend[i] = lhsSignificand[i];      divisor[i] = rhsSignificand[i];      lhsSignificand[i] = 0; @@ -993,14 +992,14 @@ APFloat::divideSignificand(const APFloat &rhs)    /* Normalize the divisor.  */    bit = precision - APInt::tcMSB(divisor, partsCount) - 1; -  if(bit) { +  if (bit) {      exponent += bit;      APInt::tcShiftLeft(divisor, partsCount, bit);    }    /* Normalize the dividend.  */    bit = precision - APInt::tcMSB(dividend, partsCount) - 1; -  if(bit) { +  if (bit) {      exponent -= bit;      APInt::tcShiftLeft(dividend, partsCount, bit);    } @@ -1008,15 +1007,15 @@ APFloat::divideSignificand(const APFloat &rhs)    /* Ensure the dividend >= divisor initially for the loop below.       Incidentally, this means that the division loop below is       guaranteed to set the integer bit to one.  */ -  if(APInt::tcCompare(dividend, divisor, partsCount) < 0) { +  if (APInt::tcCompare(dividend, divisor, partsCount) < 0) {      exponent--;      APInt::tcShiftLeft(dividend, partsCount, 1);      assert(APInt::tcCompare(dividend, divisor, partsCount) >= 0);    }    /* Long division.  */ -  for(bit = precision; bit; bit -= 1) { -    if(APInt::tcCompare(dividend, divisor, partsCount) >= 0) { +  for (bit = precision; bit; bit -= 1) { +    if (APInt::tcCompare(dividend, divisor, partsCount) >= 0) {        APInt::tcSubtract(dividend, divisor, 0, partsCount);        APInt::tcSetBit(lhsSignificand, bit - 1);      } @@ -1027,16 +1026,16 @@ APFloat::divideSignificand(const APFloat &rhs)    /* Figure out the lost fraction.  */    int cmp = APInt::tcCompare(dividend, divisor, partsCount); -  if(cmp > 0) +  if (cmp > 0)      lost_fraction = lfMoreThanHalf; -  else if(cmp == 0) +  else if (cmp == 0)      lost_fraction = lfExactlyHalf; -  else if(APInt::tcIsZero(dividend, partsCount)) +  else if (APInt::tcIsZero(dividend, partsCount))      lost_fraction = lfExactlyZero;    else      lost_fraction = lfLessThanHalf; -  if(partsCount > 2) +  if (partsCount > 2)      delete [] dividend;    return lost_fraction; @@ -1072,7 +1071,7 @@ APFloat::shiftSignificandLeft(unsigned int bits)  {    assert(bits < semantics->precision); -  if(bits) { +  if (bits) {      unsigned int partsCount = partCount();      APInt::tcShiftLeft(significandParts(), partsCount, bits); @@ -1095,13 +1094,13 @@ APFloat::compareAbsoluteValue(const APFloat &rhs) const    /* If exponents are equal, do an unsigned bignum comparison of the       significands.  */ -  if(compare == 0) +  if (compare == 0)      compare = APInt::tcCompare(significandParts(), rhs.significandParts(),                                 partCount()); -  if(compare > 0) +  if (compare > 0)      return cmpGreaterThan; -  else if(compare < 0) +  else if (compare < 0)      return cmpLessThan;    else      return cmpEqual; @@ -1113,14 +1112,13 @@ APFloat::opStatus  APFloat::handleOverflow(roundingMode rounding_mode)  {    /* Infinity?  */ -  if(rounding_mode == rmNearestTiesToEven -     || rounding_mode == rmNearestTiesToAway -     || (rounding_mode == rmTowardPositive && !sign) -     || (rounding_mode == rmTowardNegative && sign)) -    { -      category = fcInfinity; -      return (opStatus) (opOverflow | opInexact); -    } +  if (rounding_mode == rmNearestTiesToEven || +      rounding_mode == rmNearestTiesToAway || +      (rounding_mode == rmTowardPositive && !sign) || +      (rounding_mode == rmTowardNegative && sign)) { +    category = fcInfinity; +    return (opStatus) (opOverflow | opInexact); +  }    /* Otherwise we become the largest finite number.  */    category = fcNormal; @@ -1155,11 +1153,11 @@ APFloat::roundAwayFromZero(roundingMode rounding_mode,      return lost_fraction == lfExactlyHalf || lost_fraction == lfMoreThanHalf;    case rmNearestTiesToEven: -    if(lost_fraction == lfMoreThanHalf) +    if (lost_fraction == lfMoreThanHalf)        return true;      /* Our zeroes don't have a significand to test.  */ -    if(lost_fraction == lfExactlyHalf && category != fcZero) +    if (lost_fraction == lfExactlyHalf && category != fcZero)        return APInt::tcExtractBit(significandParts(), bit);      return false; @@ -1182,13 +1180,13 @@ APFloat::normalize(roundingMode rounding_mode,    unsigned int omsb;                /* One, not zero, based MSB.  */    int exponentChange; -  if(category != fcNormal) +  if (category != fcNormal)      return opOK;    /* Before rounding normalize the exponent of fcNormal numbers.  */    omsb = significandMSB() + 1; -  if(omsb) { +  if (omsb) {      /* OMSB is numbered from 1.  We want to place it in the integer         bit numbered PRECISON if possible, with a compensating change in         the exponent.  */ @@ -1196,16 +1194,16 @@ APFloat::normalize(roundingMode rounding_mode,      /* If the resulting exponent is too high, overflow according to         the rounding mode.  */ -    if(exponent + exponentChange > semantics->maxExponent) +    if (exponent + exponentChange > semantics->maxExponent)        return handleOverflow(rounding_mode);      /* Subnormal numbers have exponent minExponent, and their MSB         is forced based on that.  */ -    if(exponent + exponentChange < semantics->minExponent) +    if (exponent + exponentChange < semantics->minExponent)        exponentChange = semantics->minExponent - exponent;      /* Shifting left is easy as we don't lose precision.  */ -    if(exponentChange < 0) { +    if (exponentChange < 0) {        assert(lost_fraction == lfExactlyZero);        shiftSignificandLeft(-exponentChange); @@ -1213,7 +1211,7 @@ APFloat::normalize(roundingMode rounding_mode,        return opOK;      } -    if(exponentChange > 0) { +    if (exponentChange > 0) {        lostFraction lf;        /* Shift right and capture any new lost fraction.  */ @@ -1222,7 +1220,7 @@ APFloat::normalize(roundingMode rounding_mode,        lost_fraction = combineLostFractions(lf, lost_fraction);        /* Keep OMSB up-to-date.  */ -      if(omsb > (unsigned) exponentChange) +      if (omsb > (unsigned) exponentChange)          omsb -= exponentChange;        else          omsb = 0; @@ -1234,28 +1232,28 @@ APFloat::normalize(roundingMode rounding_mode,    /* As specified in IEEE 754, since we do not trap we do not report       underflow for exact results.  */ -  if(lost_fraction == lfExactlyZero) { +  if (lost_fraction == lfExactlyZero) {      /* Canonicalize zeroes.  */ -    if(omsb == 0) +    if (omsb == 0)        category = fcZero;      return opOK;    }    /* Increment the significand if we're rounding away from zero.  */ -  if(roundAwayFromZero(rounding_mode, lost_fraction, 0)) { -    if(omsb == 0) +  if (roundAwayFromZero(rounding_mode, lost_fraction, 0)) { +    if (omsb == 0)        exponent = semantics->minExponent;      incrementSignificand();      omsb = significandMSB() + 1;      /* Did the significand increment overflow?  */ -    if(omsb == (unsigned) semantics->precision + 1) { +    if (omsb == (unsigned) semantics->precision + 1) {        /* Renormalize by incrementing the exponent and shifting our           significand right one.  However if we already have the           maximum exponent we overflow to infinity.  */ -      if(exponent == semantics->maxExponent) { +      if (exponent == semantics->maxExponent) {          category = fcInfinity;          return (opStatus) (opOverflow | opInexact); @@ -1269,14 +1267,14 @@ APFloat::normalize(roundingMode rounding_mode,    /* The normal case - we were and are not denormal, and any       significand increment above didn't overflow.  */ -  if(omsb == semantics->precision) +  if (omsb == semantics->precision)      return opInexact;    /* We have a non-zero denormal.  */    assert(omsb < semantics->precision);    /* Canonicalize zeroes.  */ -  if(omsb == 0) +  if (omsb == 0)      category = fcZero;    /* The fcZero case is a denormal that underflowed to zero.  */ @@ -1324,7 +1322,7 @@ APFloat::addOrSubtractSpecials(const APFloat &rhs, bool subtract)    case convolve(fcInfinity, fcInfinity):      /* Differently signed infinities can only be validly         subtracted.  */ -    if(((sign ^ rhs.sign)!=0) != subtract) { +    if (((sign ^ rhs.sign)!=0) != subtract) {        makeNaN();        return opInvalidOp;      } @@ -1352,7 +1350,7 @@ APFloat::addOrSubtractSignificand(const APFloat &rhs, bool subtract)    bits = exponent - rhs.exponent;    /* Subtraction is more subtle than one might naively expect.  */ -  if(subtract) { +  if (subtract) {      APFloat temp_rhs(rhs);      bool reverse; @@ -1381,16 +1379,16 @@ APFloat::addOrSubtractSignificand(const APFloat &rhs, bool subtract)      /* Invert the lost fraction - it was on the RHS and         subtracted.  */ -    if(lost_fraction == lfLessThanHalf) +    if (lost_fraction == lfLessThanHalf)        lost_fraction = lfMoreThanHalf; -    else if(lost_fraction == lfMoreThanHalf) +    else if (lost_fraction == lfMoreThanHalf)        lost_fraction = lfLessThanHalf;      /* The code above is intended to ensure that no borrow is         necessary.  */      assert(!carry);    } else { -    if(bits > 0) { +    if (bits > 0) {        APFloat temp_rhs(rhs);        lost_fraction = temp_rhs.shiftSignificandRight(bits); @@ -1561,7 +1559,7 @@ APFloat::addOrSubtract(const APFloat &rhs, roundingMode rounding_mode,    fs = addOrSubtractSpecials(rhs, subtract);    /* This return code means it was not a simple case.  */ -  if(fs == opDivByZero) { +  if (fs == opDivByZero) {      lostFraction lost_fraction;      lost_fraction = addOrSubtractSignificand(rhs, subtract); @@ -1574,8 +1572,8 @@ APFloat::addOrSubtract(const APFloat &rhs, roundingMode rounding_mode,    /* If two numbers add (exactly) to zero, IEEE 754 decrees it is a       positive zero unless rounding to minus infinity, except that       adding two like-signed zeroes gives that zero.  */ -  if(category == fcZero) { -    if(rhs.category != fcZero || (sign == rhs.sign) == subtract) +  if (category == fcZero) { +    if (rhs.category != fcZero || (sign == rhs.sign) == subtract)        sign = (rounding_mode == rmTowardNegative);    } @@ -1606,10 +1604,10 @@ APFloat::multiply(const APFloat &rhs, roundingMode rounding_mode)    sign ^= rhs.sign;    fs = multiplySpecials(rhs); -  if(category == fcNormal) { +  if (category == fcNormal) {      lostFraction lost_fraction = multiplySignificand(rhs, 0);      fs = normalize(rounding_mode, lost_fraction); -    if(lost_fraction != lfExactlyZero) +    if (lost_fraction != lfExactlyZero)        fs = (opStatus) (fs | opInexact);    } @@ -1626,10 +1624,10 @@ APFloat::divide(const APFloat &rhs, roundingMode rounding_mode)    sign ^= rhs.sign;    fs = divideSpecials(rhs); -  if(category == fcNormal) { +  if (category == fcNormal) {      lostFraction lost_fraction = divideSignificand(rhs);      fs = normalize(rounding_mode, lost_fraction); -    if(lost_fraction != lfExactlyZero) +    if (lost_fraction != lfExactlyZero)        fs = (opStatus) (fs | opInexact);    } @@ -1673,7 +1671,7 @@ APFloat::remainder(const APFloat &rhs)    return fs;  } -/* Normalized llvm frem (C fmod).   +/* Normalized llvm frem (C fmod).     This is not currently correct in all cases.  */  APFloat::opStatus  APFloat::mod(const APFloat &rhs, roundingMode rounding_mode) @@ -1730,20 +1728,20 @@ APFloat::fusedMultiplyAdd(const APFloat &multiplicand,    /* If and only if all arguments are normal do we need to do an       extended-precision calculation.  */ -  if(category == fcNormal -     && multiplicand.category == fcNormal -     && addend.category == fcNormal) { +  if (category == fcNormal && +      multiplicand.category == fcNormal && +      addend.category == fcNormal) {      lostFraction lost_fraction;      lost_fraction = multiplySignificand(multiplicand, &addend);      fs = normalize(rounding_mode, lost_fraction); -    if(lost_fraction != lfExactlyZero) +    if (lost_fraction != lfExactlyZero)        fs = (opStatus) (fs | opInexact);      /* If two numbers add (exactly) to zero, IEEE 754 decrees it is a         positive zero unless rounding to minus infinity, except that         adding two like-signed zeroes gives that zero.  */ -    if(category == fcZero && sign != addend.sign) +    if (category == fcZero && sign != addend.sign)        sign = (rounding_mode == rmTowardNegative);    } else {      fs = multiplySpecials(multiplicand); @@ -1755,7 +1753,7 @@ APFloat::fusedMultiplyAdd(const APFloat &multiplicand,         If we need to do the addition we can do so with normal         precision.  */ -    if(fs == opOK) +    if (fs == opOK)        fs = addOrSubtract(addend, rounding_mode, false);    } @@ -1787,7 +1785,7 @@ APFloat::compare(const APFloat &rhs) const    case convolve(fcInfinity, fcNormal):    case convolve(fcInfinity, fcZero):    case convolve(fcNormal, fcZero): -    if(sign) +    if (sign)        return cmpLessThan;      else        return cmpGreaterThan; @@ -1795,15 +1793,15 @@ APFloat::compare(const APFloat &rhs) const    case convolve(fcNormal, fcInfinity):    case convolve(fcZero, fcInfinity):    case convolve(fcZero, fcNormal): -    if(rhs.sign) +    if (rhs.sign)        return cmpGreaterThan;      else        return cmpLessThan;    case convolve(fcInfinity, fcInfinity): -    if(sign == rhs.sign) +    if (sign == rhs.sign)        return cmpEqual; -    else if(sign) +    else if (sign)        return cmpLessThan;      else        return cmpGreaterThan; @@ -1816,8 +1814,8 @@ APFloat::compare(const APFloat &rhs) const    }    /* Two normal numbers.  Do they have the same sign?  */ -  if(sign != rhs.sign) { -    if(sign) +  if (sign != rhs.sign) { +    if (sign)        result = cmpLessThan;      else        result = cmpGreaterThan; @@ -1825,10 +1823,10 @@ APFloat::compare(const APFloat &rhs) const      /* Compare absolute values; invert result if negative.  */      result = compareAbsoluteValue(rhs); -    if(sign) { -      if(result == cmpLessThan) +    if (sign) { +      if (result == cmpLessThan)          result = cmpGreaterThan; -      else if(result == cmpGreaterThan) +      else if (result == cmpGreaterThan)          result = cmpLessThan;      }    } @@ -1886,7 +1884,7 @@ APFloat::convert(const fltSemantics &toSemantics,      }    } -  if(category == fcNormal) { +  if (category == fcNormal) {      /* Re-interpret our bit-pattern.  */      exponent += toSemantics.precision - semantics->precision;      semantics = &toSemantics; @@ -1911,7 +1909,7 @@ APFloat::convert(const fltSemantics &toSemantics,        // x87 long double).        if (APInt::tcLSB(significandParts(), newPartCount) < ushift)          *losesInfo = true; -      if (oldSemantics == &APFloat::x87DoubleExtended &&  +      if (oldSemantics == &APFloat::x87DoubleExtended &&            (!(*significandParts() & 0x8000000000000000ULL) ||             !(*significandParts() & 0x4000000000000000ULL)))          *losesInfo = true; @@ -1956,12 +1954,12 @@ APFloat::convertToSignExtendedInteger(integerPart *parts, unsigned int width,    *isExact = false;    /* Handle the three special cases first.  */ -  if(category == fcInfinity || category == fcNaN) +  if (category == fcInfinity || category == fcNaN)      return opInvalidOp;    dstPartsCount = partCountForBits(width); -  if(category == fcZero) { +  if (category == fcZero) {      APInt::tcSet(parts, 0, dstPartsCount);      // Negative zero can't be represented as an int.      *isExact = !sign; @@ -2004,8 +2002,8 @@ APFloat::convertToSignExtendedInteger(integerPart *parts, unsigned int width,    if (truncatedBits) {      lost_fraction = lostFractionThroughTruncation(src, partCount(),                                                    truncatedBits); -    if (lost_fraction != lfExactlyZero -        && roundAwayFromZero(rounding_mode, lost_fraction, truncatedBits)) { +    if (lost_fraction != lfExactlyZero && +        roundAwayFromZero(rounding_mode, lost_fraction, truncatedBits)) {        if (APInt::tcIncrement(parts, dstPartsCount))          return opInvalidOp;     /* Overflow.  */      } @@ -2062,7 +2060,7 @@ APFloat::convertToInteger(integerPart *parts, unsigned int width,  {    opStatus fs; -  fs = convertToSignExtendedInteger(parts, width, isSigned, rounding_mode,  +  fs = convertToSignExtendedInteger(parts, width, isSigned, rounding_mode,                                      isExact);    if (fs == opInvalidOp) { @@ -2149,8 +2147,8 @@ APFloat::convertFromSignExtendedInteger(const integerPart *src,    opStatus status;    assertArithmeticOK(*semantics); -  if (isSigned -      && APInt::tcExtractBit(src, srcCount * integerPartWidth - 1)) { +  if (isSigned && +      APInt::tcExtractBit(src, srcCount * integerPartWidth - 1)) {      integerPart *copy;      /* If we're signed and negative negate a copy.  */ @@ -2178,7 +2176,7 @@ APFloat::convertFromZeroExtendedInteger(const integerPart *parts,    APInt api = APInt(width, partCount, parts);    sign = false; -  if(isSigned && APInt::tcExtractBit(parts, width - 1)) { +  if (isSigned && APInt::tcExtractBit(parts, width - 1)) {      sign = true;      api = -api;    } @@ -2209,10 +2207,10 @@ APFloat::convertFromHexadecimalString(const StringRef &s,    StringRef::iterator p = skipLeadingZeroesAndAnyDot(begin, end, &dot);    firstSignificantDigit = p; -  for(; p != end;) { +  for (; p != end;) {      integerPart hex_value; -    if(*p == '.') { +    if (*p == '.') {        assert(dot == end && "String contains multiple dots");        dot = p++;        if (p == end) { @@ -2221,7 +2219,7 @@ APFloat::convertFromHexadecimalString(const StringRef &s,      }      hex_value = hexDigitValue(*p); -    if(hex_value == -1U) { +    if (hex_value == -1U) {        break;      } @@ -2231,13 +2229,13 @@ APFloat::convertFromHexadecimalString(const StringRef &s,        break;      } else {        /* Store the number whilst 4-bit nibbles remain.  */ -      if(bitPos) { +      if (bitPos) {          bitPos -= 4;          hex_value <<= bitPos % integerPartWidth;          significand[bitPos / integerPartWidth] |= hex_value;        } else {          lost_fraction = trailingHexadecimalFraction(p, end, hex_value); -        while(p != end && hexDigitValue(*p) != -1U) +        while (p != end && hexDigitValue(*p) != -1U)            p++;          break;        } @@ -2251,7 +2249,7 @@ APFloat::convertFromHexadecimalString(const StringRef &s,    assert((dot == end || p - begin != 1) && "Significand has no digits");    /* Ignore the exponent if we are zero.  */ -  if(p != firstSignificantDigit) { +  if (p != firstSignificantDigit) {      int expAdjustment;      /* Implicit hexadecimal point?  */ @@ -2261,7 +2259,7 @@ APFloat::convertFromHexadecimalString(const StringRef &s,      /* Calculate the exponent adjustment implicit in the number of         significant digits.  */      expAdjustment = static_cast<int>(dot - firstSignificantDigit); -    if(expAdjustment < 0) +    if (expAdjustment < 0)        expAdjustment++;      expAdjustment = expAdjustment * 4 - 1; @@ -2287,8 +2285,8 @@ APFloat::roundSignificandWithExponent(const integerPart *decSigParts,    integerPart pow5Parts[maxPowerOfFiveParts];    bool isNearest; -  isNearest = (rounding_mode == rmNearestTiesToEven -               || rounding_mode == rmNearestTiesToAway); +  isNearest = (rounding_mode == rmNearestTiesToEven || +               rounding_mode == rmNearestTiesToAway);    parts = partCountForBits(semantics->precision + 11); @@ -2482,13 +2480,13 @@ APFloat::convertFromString(const StringRef &str, roundingMode rounding_mode)    StringRef::iterator p = str.begin();    size_t slen = str.size();    sign = *p == '-' ? 1 : 0; -  if(*p == '-' || *p == '+') { +  if (*p == '-' || *p == '+') {      p++;      slen--;      assert(slen && "String has no digits");    } -  if(slen >= 2 && p[0] == '0' && (p[1] == 'x' || p[1] == 'X')) { +  if (slen >= 2 && p[0] == '0' && (p[1] == 'x' || p[1] == 'X')) {      assert(slen - 2 && "Invalid string");      return convertFromHexadecimalString(StringRef(p + 2, slen - 2),                                          rounding_mode); @@ -3013,7 +3011,7 @@ APFloat::initFromPPCDoubleDoubleAPInt(const APInt &api)      // exponent2 and significand2 are required to be 0; we don't check      category = fcInfinity;    } else if (myexponent==0x7ff && mysignificand!=0) { -    // exponent meaningless.  So is the whole second word, but keep it  +    // exponent meaningless.  So is the whole second word, but keep it      // for determinism.      category = fcNaN;      exponent2 = myexponent2; @@ -3031,7 +3029,7 @@ APFloat::initFromPPCDoubleDoubleAPInt(const APInt &api)        exponent = -1022;      else        significandParts()[0] |= 0x10000000000000LL;  // integer bit -    if (myexponent2==0)  +    if (myexponent2==0)        exponent2 = -1022;      else        significandParts()[1] |= 0x10000000000000LL;  // integer bit @@ -3217,8 +3215,8 @@ APFloat APFloat::getLargest(const fltSemantics &Sem, bool Negative) {      significand[i] = ~((integerPart) 0);    // ...and then clear the top bits for internal consistency. -  significand[N-1] -    &= (((integerPart) 1) << ((Sem.precision % integerPartWidth) - 1)) - 1; +  significand[N-1] &= +    (((integerPart) 1) << ((Sem.precision % integerPartWidth) - 1)) - 1;    return Val;  } @@ -3247,8 +3245,8 @@ APFloat APFloat::getSmallestNormalized(const fltSemantics &Sem, bool Negative) {    Val.exponent = Sem.minExponent;    Val.zeroSignificand(); -  Val.significandParts()[partCountForBits(Sem.precision)-1] -    |= (((integerPart) 1) << ((Sem.precision % integerPartWidth) - 1)); +  Val.significandParts()[partCountForBits(Sem.precision)-1] |= +    (((integerPart) 1) << ((Sem.precision % integerPartWidth) - 1));    return Val;  } @@ -3433,7 +3431,7 @@ void APFloat::toString(SmallVectorImpl<char> &Str,      //   log2(N * 5^e) == log2(N) + e * log2(5)      //                 <= semantics->precision + e * 137 / 59      //   (log_2(5) ~ 2.321928 < 2.322034 ~ 137/59) -     +      unsigned precision = semantics->precision + 137 * texp / 59;      // Multiply significand by 5^e. @@ -3442,7 +3440,7 @@ void APFloat::toString(SmallVectorImpl<char> &Str,      APInt five_to_the_i(precision, 5);      while (true) {        if (texp & 1) significand *= five_to_the_i; -       +        texp >>= 1;        if (!texp) break;        five_to_the_i *= five_to_the_i; diff --git a/llvm/lib/Support/APInt.cpp b/llvm/lib/Support/APInt.cpp index 6a6384aa3f4..e4e3296a000 100644 --- a/llvm/lib/Support/APInt.cpp +++ b/llvm/lib/Support/APInt.cpp @@ -702,15 +702,14 @@ static inline uint32_t hashword(const uint64_t *k64, size_t length)    a = b = c = 0xdeadbeef + (((uint32_t)length)<<2);    /*------------------------------------------------- handle most of the key */ -  while (length > 3) -    { -      a += k[0]; -      b += k[1]; -      c += k[2]; -      mix(a,b,c); -      length -= 3; -      k += 3; -    } +  while (length > 3) { +    a += k[0]; +    b += k[1]; +    c += k[2]; +    mix(a,b,c); +    length -= 3; +    k += 3; +  }    /*------------------------------------------- handle the last 3 uint32_t's */    switch (length) {                  /* all the case statements fall through */ @@ -2065,8 +2064,8 @@ void APInt::fromString(unsigned numbits, const StringRef& str, uint8_t radix) {    assert((slen <= numbits || radix != 2) && "Insufficient bit width");    assert(((slen-1)*3 <= numbits || radix != 8) && "Insufficient bit width");    assert(((slen-1)*4 <= numbits || radix != 16) && "Insufficient bit width"); -  assert((((slen-1)*64)/22 <= numbits || radix != 10) -         && "Insufficient bit width"); +  assert((((slen-1)*64)/22 <= numbits || radix != 10) && +         "Insufficient bit width");    // Allocate memory    if (!isSingleWord()) @@ -2229,7 +2228,7 @@ namespace {    static inline integerPart    lowBitMask(unsigned int bits)    { -    assert (bits != 0 && bits <= integerPartWidth); +    assert(bits != 0 && bits <= integerPartWidth);      return ~(integerPart) 0 >> (integerPartWidth - bits);    } @@ -2306,10 +2305,10 @@ APInt::tcSet(integerPart *dst, integerPart part, unsigned int parts)  {    unsigned int i; -  assert (parts > 0); +  assert(parts > 0);    dst[0] = part; -  for(i = 1; i < parts; i++) +  for (i = 1; i < parts; i++)      dst[i] = 0;  } @@ -2319,7 +2318,7 @@ APInt::tcAssign(integerPart *dst, const integerPart *src, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      dst[i] = src[i];  } @@ -2329,7 +2328,7 @@ APInt::tcIsZero(const integerPart *src, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      if (src[i])        return false; @@ -2340,8 +2339,8 @@ APInt::tcIsZero(const integerPart *src, unsigned int parts)  int  APInt::tcExtractBit(const integerPart *parts, unsigned int bit)  { -  return(parts[bit / integerPartWidth] -         & ((integerPart) 1 << bit % integerPartWidth)) != 0; +  return (parts[bit / integerPartWidth] & +          ((integerPart) 1 << bit % integerPartWidth)) != 0;  }  /* Set the given bit of a bignum. */ @@ -2366,7 +2365,7 @@ APInt::tcLSB(const integerPart *parts, unsigned int n)  {    unsigned int i, lsb; -  for(i = 0; i < n; i++) { +  for (i = 0; i < n; i++) {        if (parts[i] != 0) {            lsb = partLSB(parts[i]); @@ -2385,13 +2384,13 @@ APInt::tcMSB(const integerPart *parts, unsigned int n)    unsigned int msb;    do { -      --n; +    --n; -      if (parts[n] != 0) { -          msb = partMSB(parts[n]); +    if (parts[n] != 0) { +      msb = partMSB(parts[n]); -          return msb + n * integerPartWidth; -      } +      return msb + n * integerPartWidth; +    }    } while (n);    return -1U; @@ -2408,7 +2407,7 @@ APInt::tcExtract(integerPart *dst, unsigned int dstCount,const integerPart *src,    unsigned int firstSrcPart, dstParts, shift, n;    dstParts = (srcBits + integerPartWidth - 1) / integerPartWidth; -  assert (dstParts <= dstCount); +  assert(dstParts <= dstCount);    firstSrcPart = srcLSB / integerPartWidth;    tcAssign (dst, src + firstSrcPart, dstParts); @@ -2443,7 +2442,7 @@ APInt::tcAdd(integerPart *dst, const integerPart *rhs,    assert(c <= 1); -  for(i = 0; i < parts; i++) { +  for (i = 0; i < parts; i++) {      integerPart l;      l = dst[i]; @@ -2468,7 +2467,7 @@ APInt::tcSubtract(integerPart *dst, const integerPart *rhs,    assert(c <= 1); -  for(i = 0; i < parts; i++) { +  for (i = 0; i < parts; i++) {      integerPart l;      l = dst[i]; @@ -2518,7 +2517,7 @@ APInt::tcMultiplyPart(integerPart *dst, const integerPart *src,    /* N loops; minimum of dstParts and srcParts.  */    n = dstParts < srcParts ? dstParts: srcParts; -  for(i = 0; i < n; i++) { +  for (i = 0; i < n; i++) {      integerPart low, mid, high, srcPart;        /* [ LOW, HIGH ] = MULTIPLIER * SRC[i] + DST[i] + CARRY. @@ -2583,7 +2582,7 @@ APInt::tcMultiplyPart(integerPart *dst, const integerPart *src,         non-zero.  This is true if any remaining src parts are non-zero         and the multiplier is non-zero.  */      if (multiplier) -      for(; i < srcParts; i++) +      for (; i < srcParts; i++)          if (src[i])            return 1; @@ -2608,7 +2607,7 @@ APInt::tcMultiply(integerPart *dst, const integerPart *lhs,    overflow = 0;    tcSet(dst, 0, parts); -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      overflow |= tcMultiplyPart(&dst[i], lhs, rhs[i], 0, parts,                                 parts - i, true); @@ -2634,7 +2633,7 @@ APInt::tcFullMultiply(integerPart *dst, const integerPart *lhs,      tcSet(dst, 0, rhsParts); -    for(n = 0; n < lhsParts; n++) +    for (n = 0; n < lhsParts; n++)        tcMultiplyPart(&dst[n], rhs, lhs[n], 0, rhsParts, rhsParts + 1, true);      n = lhsParts + rhsParts; @@ -2678,7 +2677,7 @@ APInt::tcDivide(integerPart *lhs, const integerPart *rhs,    /* Loop, subtracting SRHS if REMAINDER is greater and adding that to       the total.  */ -  for(;;) { +  for (;;) {        int compare;        compare = tcCompare(remainder, srhs, parts); @@ -2746,7 +2745,7 @@ APInt::tcShiftRight(integerPart *dst, unsigned int parts, unsigned int count)      /* Perform the shift.  This leaves the most significant COUNT bits         of the result at zero.  */ -    for(i = 0; i < parts; i++) { +    for (i = 0; i < parts; i++) {        integerPart part;        if (i + jump >= parts) { @@ -2771,7 +2770,7 @@ APInt::tcAnd(integerPart *dst, const integerPart *rhs, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      dst[i] &= rhs[i];  } @@ -2781,7 +2780,7 @@ APInt::tcOr(integerPart *dst, const integerPart *rhs, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      dst[i] |= rhs[i];  } @@ -2791,7 +2790,7 @@ APInt::tcXor(integerPart *dst, const integerPart *rhs, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      dst[i] ^= rhs[i];  } @@ -2801,7 +2800,7 @@ APInt::tcComplement(integerPart *dst, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      dst[i] = ~dst[i];  } @@ -2830,7 +2829,7 @@ APInt::tcIncrement(integerPart *dst, unsigned int parts)  {    unsigned int i; -  for(i = 0; i < parts; i++) +  for (i = 0; i < parts; i++)      if (++dst[i] != 0)        break; diff --git a/llvm/lib/Support/CommandLine.cpp b/llvm/lib/Support/CommandLine.cpp index 2ab4103de2e..d31f34ed661 100644 --- a/llvm/lib/Support/CommandLine.cpp +++ b/llvm/lib/Support/CommandLine.cpp @@ -676,8 +676,8 @@ void cl::ParseCommandLineOptions(int argc, char **argv,           << " positional arguments: See: " << argv[0] << " -help\n";      ErrorParsing = true; -  } else if (!HasUnlimitedPositionals -             && PositionalVals.size() > PositionalOpts.size()) { +  } else if (!HasUnlimitedPositionals && +             PositionalVals.size() > PositionalOpts.size()) {      errs() << ProgramName           << ": Too many positional arguments specified!\n"           << "Can specify at most " << PositionalOpts.size() diff --git a/llvm/lib/Support/Debug.cpp b/llvm/lib/Support/Debug.cpp index 82b4b8ce163..eccfa0bd072 100644 --- a/llvm/lib/Support/Debug.cpp +++ b/llvm/lib/Support/Debug.cpp @@ -64,8 +64,7 @@ DebugOnly("debug-only", cl::desc("Enable a specific type of debug output"),            cl::location(DebugOnlyOptLoc), cl::ValueRequired);  // Signal handlers - dump debug output on termination. -static void debug_user_sig_handler(void *Cookie) -{ +static void debug_user_sig_handler(void *Cookie) {    // This is a bit sneaky.  Since this is under #ifndef NDEBUG, we    // know that debug mode is enabled and dbgs() really is a    // circular_raw_ostream.  If NDEBUG is defined, then dbgs() == diff --git a/llvm/lib/Support/ErrorHandling.cpp b/llvm/lib/Support/ErrorHandling.cpp index 8bb156653a7..4412cb2dd0d 100644 --- a/llvm/lib/Support/ErrorHandling.cpp +++ b/llvm/lib/Support/ErrorHandling.cpp @@ -7,7 +7,7 @@  //  //===----------------------------------------------------------------------===//  // -// This file defines an API for error handling, it supersedes cerr+abort(), and  +// This file defines an API for error handling, it supersedes cerr+abort(), and  // cerr+exit() style error handling.  // Callbacks can be registered for these errors through this API.  //===----------------------------------------------------------------------===// @@ -57,7 +57,7 @@ void llvm_report_error(const Twine &reason) {    exit(1);  } -void llvm_unreachable_internal(const char *msg, const char *file,  +void llvm_unreachable_internal(const char *msg, const char *file,                                 unsigned line) {    // This code intentionally doesn't call the ErrorHandler callback, because    // llvm_unreachable is intended to be used to indicate "impossible" @@ -71,4 +71,3 @@ void llvm_unreachable_internal(const char *msg, const char *file,    abort();  }  } - diff --git a/llvm/lib/Support/raw_ostream.cpp b/llvm/lib/Support/raw_ostream.cpp index 071c924d919..f59bd0d9030 100644 --- a/llvm/lib/Support/raw_ostream.cpp +++ b/llvm/lib/Support/raw_ostream.cpp @@ -81,9 +81,9 @@ void raw_ostream::SetBuffered() {      SetUnbuffered();  } -void raw_ostream::SetBufferAndMode(char *BufferStart, size_t Size,  +void raw_ostream::SetBufferAndMode(char *BufferStart, size_t Size,                                      BufferKind Mode) { -  assert(((Mode == Unbuffered && BufferStart == 0 && Size == 0) ||  +  assert(((Mode == Unbuffered && BufferStart == 0 && Size == 0) ||            (Mode != Unbuffered && BufferStart && Size)) &&           "stream must be unbuffered or have at least one byte");    // Make sure the current buffer is free of content (we can't flush here; the @@ -104,11 +104,11 @@ raw_ostream &raw_ostream::operator<<(unsigned long N) {    // Zero is a special case.    if (N == 0)      return *this << '0'; -   +    char NumberBuffer[20];    char *EndPtr = NumberBuffer+sizeof(NumberBuffer);    char *CurPtr = EndPtr; -   +    while (N) {      *--CurPtr = '0' + char(N % 10);      N /= 10; @@ -121,7 +121,7 @@ raw_ostream &raw_ostream::operator<<(long N) {      *this << '-';      N = -N;    } -   +    return this->operator<<(static_cast<unsigned long>(N));  } @@ -133,7 +133,7 @@ raw_ostream &raw_ostream::operator<<(unsigned long long N) {    char NumberBuffer[20];    char *EndPtr = NumberBuffer+sizeof(NumberBuffer);    char *CurPtr = EndPtr; -   +    while (N) {      *--CurPtr = '0' + char(N % 10);      N /= 10; @@ -146,7 +146,7 @@ raw_ostream &raw_ostream::operator<<(long long N) {      *this << '-';      N = -N;    } -   +    return this->operator<<(static_cast<unsigned long long>(N));  } @@ -297,33 +297,33 @@ raw_ostream &raw_ostream::operator<<(const format_object_base &Fmt) {    size_t BufferBytesLeft = OutBufEnd - OutBufCur;    if (BufferBytesLeft > 3) {      size_t BytesUsed = Fmt.print(OutBufCur, BufferBytesLeft); -     +      // Common case is that we have plenty of space.      if (BytesUsed <= BufferBytesLeft) {        OutBufCur += BytesUsed;        return *this;      } -     +      // Otherwise, we overflowed and the return value tells us the size to try      // again with.      NextBufferSize = BytesUsed;    } -   +    // If we got here, we didn't have enough space in the output buffer for the    // string.  Try printing into a SmallVector that is resized to have enough    // space.  Iterate until we win.    SmallVector<char, 128> V; -   +    while (1) {      V.resize(NextBufferSize); -     +      // Try formatting into the SmallVector.      size_t BytesUsed = Fmt.print(V.data(), NextBufferSize); -     +      // If BytesUsed fit into the vector, we win.      if (BytesUsed <= NextBufferSize)        return write(V.data(), BytesUsed); -     +      // Otherwise, try again with a new size.      assert(BytesUsed > NextBufferSize && "Didn't grow buffer!?");      NextBufferSize = BytesUsed; @@ -339,7 +339,7 @@ raw_ostream &raw_ostream::indent(unsigned NumSpaces) {    // Usually the indentation is small, handle it with a fastpath.    if (NumSpaces < array_lengthof(Spaces))      return write(Spaces, NumSpaces); -   +    while (NumSpaces) {      unsigned NumToWrite = std::min(NumSpaces,                                     (unsigned)array_lengthof(Spaces)-1); @@ -372,7 +372,7 @@ raw_fd_ostream::raw_fd_ostream(const char *Filename, std::string &ErrorInfo,    // Verify that we don't have both "append" and "excl".    assert((!(Flags & F_Excl) || !(Flags & F_Append)) &&           "Cannot specify both 'excl' and 'append' file creation flags!"); -   +    ErrorInfo.clear();    // Handle "-" as stdout. @@ -385,20 +385,20 @@ raw_fd_ostream::raw_fd_ostream(const char *Filename, std::string &ErrorInfo,      ShouldClose = false;      return;    } -   +    int OpenFlags = O_WRONLY|O_CREAT;  #ifdef O_BINARY    if (Flags & F_Binary)      OpenFlags |= O_BINARY;  #endif -   +    if (Flags & F_Append)      OpenFlags |= O_APPEND;    else      OpenFlags |= O_TRUNC;    if (Flags & F_Excl)      OpenFlags |= O_EXCL; -   +    FD = open(Filename, OpenFlags, 0664);    if (FD < 0) {      ErrorInfo = "Error opening output file '" + std::string(Filename) + "'"; @@ -418,14 +418,14 @@ raw_fd_ostream::~raw_fd_ostream() {  void raw_fd_ostream::write_impl(const char *Ptr, size_t Size) { -  assert (FD >= 0 && "File already closed."); +  assert(FD >= 0 && "File already closed.");    pos += Size;    if (::write(FD, Ptr, Size) != (ssize_t) Size)      error_detected();  }  void raw_fd_ostream::close() { -  assert (ShouldClose); +  assert(ShouldClose);    ShouldClose = false;    flush();    if (::close(FD) != 0) @@ -438,7 +438,7 @@ uint64_t raw_fd_ostream::seek(uint64_t off) {    pos = ::lseek(FD, off, SEEK_SET);    if (pos != off)      error_detected(); -  return pos;   +  return pos;  }  size_t raw_fd_ostream::preferred_buffer_size() const { @@ -447,7 +447,7 @@ size_t raw_fd_ostream::preferred_buffer_size() const {    struct stat statbuf;    if (fstat(FD, &statbuf) != 0)      return 0; -   +    // If this is a terminal, don't use buffering. Line buffering    // would be a more traditional thing to do, but it's not worth    // the complexity.  | 

