Skip to content
  1. Nov 20, 2013
    • Chandler Carruth's avatar
      Give SmallPtrSet move semantics when we have R-value references. · 55758e96
      Chandler Carruth authored
      Somehow, this ADT got missed which is moderately terrifying considering
      the efficiency of move for it.
      
      The code to implement move semantics for it is pretty horrible
      currently but was written to reasonably closely match the rest of the
      code. Unittests that cover both copying and moving (at a basic level)
      added.
      
      llvm-svn: 195239
      55758e96
  2. Nov 19, 2013
  3. Nov 18, 2013
    • Alexey Samsonov's avatar
      Revert r194865 and r194874. · 49109a27
      Alexey Samsonov authored
      This change is incorrect. If you delete virtual destructor of both a base class
      and a subclass, then the following code:
        Base *foo = new Child();
        delete foo;
      will not cause the destructor for members of Child class. As a result, I observe
      plently of memory leaks. Notable examples I investigated are:
      ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl.
      
      llvm-svn: 194997
      49109a27
  4. Nov 15, 2013
  5. Nov 13, 2013
  6. Nov 09, 2013
  7. Oct 30, 2013
  8. Oct 28, 2013
  9. Sep 03, 2013
  10. Aug 30, 2013
    • Eli Friedman's avatar
      Change default # of digits for APFloat::toString · e72f1320
      Eli Friedman authored
      This is a re-commit of r189442; I'll follow up with clang changes.
      
      The previous default was almost, but not quite enough digits to
      represent a floating-point value in a manner which preserves the
      representation when it's read back in.  The larger default is much
      less confusing.
      
      I spent some time looking into printing exactly the right number of
      digits if a precision isn't specified, but it's kind of complicated,
      and I'm not really sure I understand what APFloat::toString is supposed
      to output for FormatPrecision != 0 (or maybe the current API specification
      is just silly, not sure which).  I have a WIP patch if anyone is interested.
      
      llvm-svn: 189624
      e72f1320
  11. Aug 28, 2013
    • Ted Kremenek's avatar
      Revert r189442 "Change default # of digits for APFloat::toString" · b33f944f
      Ted Kremenek authored
      This is breaking numerous Clang tests on the buildbot.
      
      llvm-svn: 189447
      b33f944f
    • Eli Friedman's avatar
      Change default # of digits for APFloat::toString · 14cede28
      Eli Friedman authored
      The previous default was almost, but not quite enough digits to
      represent a floating-point value in a manner which preserves the
      representation when it's read back in.  The larger default is much
      less confusing.
      
      I spent some time looking into printing exactly the right number of
      digits if a precision isn't specified, but it's kind of complicated,
      and I'm not really sure I understand what APFloat::toString is supposed
      to output for FormatPrecision != 0 (or maybe the current API specification
      is just silly, not sure which).  I have a WIP patch if anyone is interested.
      
      llvm-svn: 189442
      14cede28
  12. Aug 21, 2013
  13. Jul 27, 2013
  14. Jul 26, 2013
    • Bill Schmidt's avatar
      [PowerPC] Improve consistency in use of __ppc__, __powerpc__, etc. · 419f7c23
      Bill Schmidt authored
      Both GCC and LLVM will implicitly define __ppc__ and __powerpc__ for
      all PowerPC targets, whether 32- or 64-bit.  They will both implicitly
      define __ppc64__ and __powerpc64__ for 64-bit PowerPC targets, and not
      for 32-bit targets.  We cannot be sure that all other possible
      compilers used to compile Clang/LLVM define both __ppc__ and
      __powerpc__, for example, so it is best to check for both when relying
      on either inside the Clang/LLVM code base.
      
      This patch makes sure we always check for both variants.  In addition,
      it fixes one unnecessary check in lib/Target/PowerPC/PPCJITInfo.cpp.
      (At least one of __ppc__ and __powerpc__ should always be defined when
      compiling for a PowerPC target, no matter which compiler is used, so
      testing for them is unnecessary.)
      
      There are some places in the compiler that check for other variants,
      like __POWERPC__ and _POWER, and I have left those in place.  There is
      no need to add them elsewhere.  This seems to be in Apple-specific
      code, and I won't take a chance on breaking it.
      
      There is no intended change in behavior; thus, no test cases are
      added.
      
      llvm-svn: 187248
      419f7c23
  15. Jul 18, 2013
    • Eli Friedman's avatar
      Handle '.' correctly in hex float literal parsing. · d2eb07ac
      Eli Friedman authored
      There were a couple of different loops that were not handling
      '.' correctly in APFloat::convertFromHexadecimalString; these mistakes
      could lead to assertion failures and incorrect rounding for overlong
      hex float literals.
      
      Fixes PR16643.
      
      llvm-svn: 186539
      d2eb07ac
  16. Jul 11, 2013
  17. Jul 02, 2013
  18. Jun 27, 2013
  19. Jun 26, 2013
  20. Jun 24, 2013
  21. Jun 20, 2013
  22. Jun 19, 2013
    • Michael Gottesman's avatar
      [APFloat] Changed APFloat::isNormal => APFloat::isFiniteNonZero for all tests in unittests. · b5101ab3
      Michael Gottesman authored
      I forgot to to do this in r184356. The only references were in APFloatTest.cpp.
      
      llvm-svn: 184366
      b5101ab3
    • Michael Gottesman's avatar
      [APFloat] Added isFiniteNonZero predicate. · d95d4478
      Michael Gottesman authored
      This is the first patch in a series of patches to rename isNormal =>
      isFiniteNonZero and isIEEENormal => isNormal. In order to prevent careless
      errors on my part the overall plan is:
      
      1. Add the isFiniteNonZero predicate with tests. I can do this in a method
      independent of isNormal. (This step is this patch).
      2. Convert all references to isNormal with isFiniteNonZero. My plan is to
      comment out isNormal locally and continually convert isNormal references =>
      isFiniteNonZero until llvm/clang compiles.
      3. Remove old isNormal and rename isIEEENormal to isNormal.
      4. Look through all of said references from patch 2 and see if we can simplify
      them by using the new isNormal.
      
      llvm-svn: 184350
      d95d4478
  23. Jun 07, 2013
  24. Jun 04, 2013
    • Michael Gottesman's avatar
      IEEE-754R 5.7.2 General Operations is* operations (except for isCanonical). · 3acedb63
      Michael Gottesman authored
      Specifically the following work was done:
      
      1. If the operation was not implemented, I implemented it.
      
      2. If the operation was already implemented, I just moved its location
      in the APFloat header into the IEEE-754R 5.7.2 section. If the name was
      incorrect, I put in a comment giving the true IEEE-754R name.
      
      Also unittests have been added for all of the functions which did not
      already have a unittest.
      
      llvm-svn: 183179
      3acedb63
  25. Jun 02, 2013
Loading