Skip to content
  1. Dec 31, 2012
    • Chandler Carruth's avatar
      Begin sketching out the process interface. · 97683aa2
      Chandler Carruth authored
      The coding style used here is not LLVM's style because this is modeled
      after a Boost interface and thus done in the style of a candidate C++
      standard library interface. I'll probably end up proposing it as
      a standard C++ library if it proves to be reasonably portable and
      useful.
      
      This is just the most basic parts of the interface -- getting the
      process ID out of it. However, it helps sketch out some of the boiler
      plate such as the base class, derived class, shared code, and static
      factory function. It also introduces a unittest so that I can
      incrementally ensure this stuff works.
      
      However, I've not even compiled this code for Windows yet. I'll try to
      fix any Windows fallout from the bots, and if I can't fix it I'll revert
      and get someone on Windows to help out. There isn't a lot more that is
      mandatory, so soon I'll switch to just stubbing out the Windows side and
      get Michael Spencer to help with implementation as he can test it
      directly.
      
      llvm-svn: 171289
      97683aa2
  2. Dec 17, 2012
  3. Dec 12, 2012
  4. Dec 05, 2012
  5. Dec 04, 2012
  6. Dec 03, 2012
  7. Nov 30, 2012
    • Chandler Carruth's avatar
      Switch LLVM_USE_RVALUE_REFERENCES to LLVM_HAS_RVALUE_REFERENCES. · f12e3a67
      Chandler Carruth authored
      Rationale:
      1) This was the name in the comment block. ;]
      2) It matches Clang's __has_feature naming convention.
      3) It matches other compiler-feature-test conventions.
      
      Sorry for the noise. =]
      
      I've also switch the comment block to use a \brief tag and not duplicate
      the name.
      
      llvm-svn: 168996
      f12e3a67
  8. Nov 28, 2012
    • Eli Bendersky's avatar
      Add backreference matching capabilities to Support/Regex, with · 10f22d70
      Eli Bendersky authored
      appropriate unit tests. This change in itself is not expected to
      affect any functionality at this point, but it will serve as a
      stepping stone to improve FileCheck's variable matching capabilities.
      
      Luckily, our regex implementation already supports backreferences,
      although a bit of hacking is required to enable it. It supports both
      Basic Regular Expressions (BREs) and Extended Regular Expressions
      (EREs), without supporting backrefs for EREs, following POSIX strictly
      in this respect. And EREs is what we actually use (rightly). This is
      contrary to many implementations (including the default on Linux) of
      POSIX regexes, that do allow backrefs in EREs.
      
      Adding backref support to our EREs is a very simple change in the
      regcomp parsing code. I fail to think of significant cases where it
      would clash with existing things, and can bring more versatility to
      the regexes we write. There's always the danger of a backref in a
      specially crafted regex causing exponential matching times, but since
      we mainly use them for testing purposes I don't think it's a big
      problem. [it can also be placed behind a flag specific to FileCheck,
      if needed].
      
      For more details, see:
      
      * http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-November/055840.html
      * http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121126/156878.html
      
      llvm-svn: 168802
      10f22d70
  9. Nov 20, 2012
    • Sean Silva's avatar
      Allow using MemoryBuffers with yaml::Stream directly. · aba8270d
      Sean Silva authored
      The rationale is to get YAML filenames in diagnostics from
      yaml::Stream::printError -- currently the filename is hard-coded as
      "YAML" because there's no buffer information available.
      
      Patch by Kim Gräsman!
      
      llvm-svn: 168341
      aba8270d
  10. Nov 17, 2012
  11. Nov 14, 2012
  12. Nov 10, 2012
  13. Oct 12, 2012
    • Sean Silva's avatar
      Casting.h: Automatically handle isa<Base>(Derived). · 35dd8779
      Sean Silva authored
      Additionally, all such cases are handled with no dynamic check.
      
      All `classof()` of the form
      
          class Foo {
            [...]
            static bool classof(const Bar *) { return true; }
            [...]
          }
      
      where Foo is an ancestor of Bar are no longer necessary.
      Don't write them!
      
      Note: The exact test is `is_base_of<Foo, Bar>`, which is non-strict, so
      that Foo is considered an ancestor of itself.
      
      This leads to the following rule of thumb for LLVM-style RTTI:
      
          The argument type of `classof()` should be a strict ancestor.
      
      For more information about implementing LLVM-style RTTI, see
      docs/HowToSetUpLLVMStyleRTTI.rst
      
      llvm-svn: 165765
      35dd8779
  14. Oct 04, 2012
  15. Sep 19, 2012
  16. Sep 15, 2012
  17. Aug 21, 2012
  18. Aug 20, 2012
  19. Aug 17, 2012
  20. Aug 15, 2012
  21. Aug 13, 2012
  22. Aug 01, 2012
  23. Jul 23, 2012
  24. Jul 16, 2012
  25. Jul 03, 2012
  26. Jul 02, 2012
    • Stepan Dyatkovskiy's avatar
      IntRange: · 8b9ecca4
      Stepan Dyatkovskiy authored
        - Changed isSingleNumber method behaviour. Now this flag is calculated on demand.
      IntegersSubsetMapping
        - Optimized diff operation.
        - Replaced type of Items field from std::list with std::map.
        - Added new methods:
          bool isOverlapped(self &RHS)
          void add(self& RHS, SuccessorClass *S)
          void detachCase(self& NewMapping, SuccessorClass *Succ)
          void removeCase(SuccessorClass *Succ)
          SuccessorClass *findSuccessor(const IntTy& Val)
          const IntTy* getCaseSingleNumber(SuccessorClass *Succ)
      IntegersSubsetTest
        - DiffTest: Added checks for successors.
      SimplifyCFG
        Updated SwitchInst usage (now it is case-ragnes compatible) for
          - SimplifyEqualityComparisonWithOnlyPredecessor
          - FoldValueComparisonIntoPredecessors
      
      llvm-svn: 159527
      8b9ecca4
  27. Jun 29, 2012
    • Chandler Carruth's avatar
      Move llvm/Support/IRBuilder.h -> llvm/IRBuilder.h · aafe0918
      Chandler Carruth authored
      This was always part of the VMCore library out of necessity -- it deals
      entirely in the IR. The .cpp file in fact was already part of the VMCore
      library. This is just a mechanical move.
      
      I've tried to go through and re-apply the coding standard's preferred
      header sort, but at 40-ish files, I may have gotten some wrong. Please
      let me know if so.
      
      I'll be committing the corresponding updates to Clang and Polly, and
      Duncan has DragonEgg.
      
      Thanks to Bill and Eric for giving the green light for this bit of cleanup.
      
      llvm-svn: 159421
      aafe0918
  28. Jun 28, 2012
Loading