1. Aug 19, 2016
  2. Aug 18, 2016
    • Rui Ueyama's avatar
      Update release notes. · 648212d3
      Rui Ueyama authored
      llvm-svn: 279018
      648212d3
    • Hans Wennborg's avatar
      Merging r279008: · 1256b9e0
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r279008 | marshall | 2016-08-17 16:24:02 -0700 (Wed, 17 Aug 2016) | 1 line
      
      make the associative containers do the right thing for propogate_on_container_assignment. Fixes bug #29001. Tests are only for <map> right now - more complete tests will come when we revamp our allocator testing structure.
      ------------------------------------------------------------------------
      
      llvm-svn: 279017
      1256b9e0
    • Hans Wennborg's avatar
      Merging r278904: · bd5a61f9
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278904 | marshall | 2016-08-16 22:58:40 -0700 (Tue, 16 Aug 2016) | 1 line
      
      Support allocators with explicit conversion constructors. Fixes bug #29000
      ------------------------------------------------------------------------
      
      llvm-svn: 279015
      bd5a61f9
    • Hans Wennborg's avatar
      Merging r278949: (excluding the clang-include-fixer.el part) · c400b144
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278949 | eugenezelenko | 2016-08-17 10:27:56 -0700 (Wed, 17 Aug 2016) | 4 lines
      
      [Include-fixer] Install executables and support scripts
      
      Differential revision: https://reviews.llvm.org/D23045
      
      ------------------------------------------------------------------------
      
      llvm-svn: 278997
      c400b144
    • Hans Wennborg's avatar
      Merging r278938: · a1f6fd32
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278938 | mcrosier | 2016-08-17 08:54:39 -0700 (Wed, 17 Aug 2016) | 5 lines
      
      Revert "Reassociate: Reprocess RedoInsts after each inst".
      
      This reverts commit r258830, which introduced a bug described in PR28367.
      
      PR28367
      ------------------------------------------------------------------------
      
      llvm-svn: 278993
      a1f6fd32
    • Hans Wennborg's avatar
      Merging r278900: · 4c27d269
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278900 | cycheng | 2016-08-16 20:17:44 -0700 (Tue, 16 Aug 2016) | 12 lines
      
      [ppc64] Don't apply sibling call optimization if callee has any byval arg
      
      This is a quick work around, because in some cases, e.g. caller's stack
      size > callee's stack size, we are still able to apply sibling call
      optimization even callee has any byval arg.
      
      This patch fix: https://llvm.org/bugs/show_bug.cgi?id=28328
      
      Reviewers: hfinkel kbarton nemanjai amehsan
      Subscribers: hans, tjablin
      
      https://reviews.llvm.org/D23441
      ------------------------------------------------------------------------
      
      llvm-svn: 278990
      4c27d269
    • Hans Wennborg's avatar
      Merging r278786: · 178a30f3
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278786 | jamesm | 2016-08-16 02:45:36 -0700 (Tue, 16 Aug 2016) | 4 lines
      
      Left shifts of negative values are defined if -fwrapv is set
      
      This means we shouldn't emit ubsan detection code or warn.
      Fixes PR25552.
      ------------------------------------------------------------------------
      
      llvm-svn: 278989
      178a30f3
  3. Aug 17, 2016
    • Hans Wennborg's avatar
      Merging r277852: · d8f682e8
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r277852 | dblaikie | 2016-08-05 12:03:01 -0700 (Fri, 05 Aug 2016) | 7 lines
      
      PR26423: Assert on valid use of using declaration of a function with an undeduced auto return type
      
      For now just disregard the using declaration in this case. Suboptimal,
      but wiring up the ability to have declarations of functions that are
      separate from their definition (we currently only do that for member
      functions) and have differing return types (we don't have any support
      for that) is more work than seems reasonable to at least fix this crash.
      ------------------------------------------------------------------------
      
      llvm-svn: 278877
      d8f682e8
    • Hans Wennborg's avatar
      ReleaseNotes: mention new /imsvc flag · 6993bdae
      Hans Wennborg authored
      llvm-svn: 278876
      6993bdae
    • Hans Wennborg's avatar
      Merging r278841: · 74361889
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278841 | haicheng | 2016-08-16 13:06:25 -0700 (Tue, 16 Aug 2016) | 3 lines
      
      [BranchFolding] Change a test case of r278575.
      
      Rename the operands to make the test less brittle.
      ------------------------------------------------------------------------
      
      llvm-svn: 278874
      74361889
    • Hans Wennborg's avatar
      Merging r278571: · de5499dc
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278571 | rnk | 2016-08-12 15:23:04 -0700 (Fri, 12 Aug 2016) | 6 lines
      
      [Inliner] Don't treat inalloca allocas as static
      
      They aren't static, and moving them to the entry block across something
      else will only result in tears.
      
      Root cause of http://crbug.com/636558.
      ------------------------------------------------------------------------
      
      llvm-svn: 278831
      de5499dc
    • Hans Wennborg's avatar
      Merging r278575 (with changes to the test): · fcfc07ab
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278575 | haicheng | 2016-08-12 16:13:38 -0700 (Fri, 12 Aug 2016) | 6 lines
      
      Reapply [BranchFolding] Restrict tail merging loop blocks after MBP
      
      Fixed a bug in the test case.
      
      To fix PR28104, this patch restricts tail merging to blocks that belong to the
      same loop after MBP.
      ------------------------------------------------------------------------
      
      I had to adjust the test as it wasn't passing on the branch, presumably
      due to different machine block placement.
      
      llvm-svn: 278827
      fcfc07ab
    • Hans Wennborg's avatar
      Merging r278763: · ef5d170f
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278763 | rsmith | 2016-08-15 17:13:47 -0700 (Mon, 15 Aug 2016) | 5 lines
      
      PR28978: If we need overload resolution for the move constructor of an
      anonymous union member of a class, we need overload resolution for the move
      constructor of the class itself too; we can't rely on Sema to do the right
      thing for us for anonymous union types.
      
      ------------------------------------------------------------------------
      
      llvm-svn: 278817
      ef5d170f
  4. Aug 16, 2016
    • Faisal Vali's avatar
      [Branch 3.9] Remove any traces of partial constexpr lambda implementation · 6bfcc10d
      Faisal Vali authored
      This patch essentially reverses all the changes from the following commit: https://reviews.llvm.org/rL264513 for branch 3.9.
      
      Requested by Richard and Approved by Hans here: https://reviews.llvm.org/D23485
      
      llvm-svn: 278771
      6bfcc10d
    • Hans Wennborg's avatar
      Merging r278558: · 723dfb5d
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278558 | cbieneman | 2016-08-12 13:11:03 -0700 (Fri, 12 Aug 2016) | 3 lines
      
      Remove autoconf references from LICENSE.TXT
      
      Since we don't actually have the autoconf subdirectories anymore, we don't need this reference here.
      ------------------------------------------------------------------------
      
      llvm-svn: 278688
      723dfb5d
    • Hans Wennborg's avatar
      Merging r278584: · cb0913a2
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278584 | sanjoy | 2016-08-12 17:58:31 -0700 (Fri, 12 Aug 2016) | 15 lines
      
      [IndVars] Ignore (s|z)exts that don't extend the induction variable
      
      `IVVisitor::visitCast` used to have the invariant that if the
      instruction it was passed was a sext or zext instruction, the result of
      the instruction would be wider than the induction variable.  This is no
      longer true after rL275037, so this change teaches `IndVarSimplify` s
      implementation of `IVVisitor::visitCast` to work with the relaxed
      invariant.
      
      A corresponding change to SimplifyIndVar to preserve the said invariant
      after rL275037 would also work, but given how `IVVisitor::visitCast` is
      spelled (no indication of said invariant), I figured the current fix is
      cleaner.
      
      Fixes PR28935.
      ------------------------------------------------------------------------
      
      llvm-svn: 278685
      cb0913a2
    • Hans Wennborg's avatar
      Merging r278454: · c0c7d6c2
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278454 | cbieneman | 2016-08-11 18:29:26 -0700 (Thu, 11 Aug 2016) | 3 lines
      
      [CMake] If the compiler supports _Atomic include atomic.c in builtins libraries
      
      This fixes a long-standing TODO by implementing a compiler check for supporting the _Atomic keyword. If the _Atomic keyword is supported by the compiler we should include it in the builtin library sources.
      ------------------------------------------------------------------------
      
      llvm-svn: 278679
      c0c7d6c2
    • Hans Wennborg's avatar
      Merging r277783 and r278156 to unbreak Clang on the branch after r278674 · d8147e7b
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r277783 | timshen | 2016-08-04 16:03:44 -0700 (Thu, 04 Aug 2016) | 9 lines
      
      [ADT] Migrate DepthFirstIterator to use NodeRef
      
      Summary: The corresponding LLVM change is D23146.
      
      Reviewers: dblaikie, chandlerc
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D23147
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r278156 | timshen | 2016-08-09 13:22:55 -0700 (Tue, 09 Aug 2016) | 16 lines
      
      [ADT] Change iterator_adaptor_base's default template arguments to forward more underlying typedefs
      
      Summary:
      The corresponding LLVM change: D23217.
      
      LazyVector::iterator breaks, because int isn't an iterator type.
      Since iterator_adaptor_base shouldn't be blamed to break at the call to
      iterator_traits<int>::xxx, I'd rather "fix" LazyVector::iterator.
      
      The perfect solution is to model "relative pointer", but it's beyond the goal of this patch.
      
      Reviewers: chandlerc, bkramer
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D23218
      ------------------------------------------------------------------------
      
      llvm-svn: 278678
      d8147e7b
    • Anastasia Stulova's avatar
      OpenCL release notes · 2e8edcaa
      Anastasia Stulova authored
      llvm-svn: 278677
      2e8edcaa
    • Hans Wennborg's avatar
      Merging r278579: · 0777ee9f
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278579 | mehdi_amini | 2016-08-12 17:02:33 -0700 (Fri, 12 Aug 2016) | 3 lines
      
      Fix ASAN failures in the demangler
      
      These were found fuzzing with ASAN.
      ------------------------------------------------------------------------
      
      llvm-svn: 278675
      0777ee9f
    • Hans Wennborg's avatar
      Merging r278573 (and r277399, r278157, r278569): · e7fedbcd
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278573 | timshen | 2016-08-12 15:47:13 -0700 (Fri, 12 Aug 2016) | 8 lines
      
      [LoopVectorize] Detect loops in the innermost loop before creating InnerLoopVectorizer
      
      InnerLoopVectorizer shouldn't handle a loop with cycles inside the loop
      body, even if that cycle isn't a natural loop.
      
      Fixes PR28541.
      
      Differential Revision: https://reviews.llvm.org/D22952
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r277399 | timshen | 2016-08-01 15:32:20 -0700 (Mon, 01 Aug 2016) | 9 lines
      
      [ADT] NFC: Generalize GraphTraits requirement of "NodeType *" in interfaces to "NodeRef", and migrate SCCIterator.h to use NodeRef
      
      Summary: By generalize the interface, users are able to inject more flexible Node token into the algorithm, for example, a pair of vector<Node>* and index integer. Currently I only migrated SCCIterator to use NodeRef, but more is coming. It's a NFC.
      
      Reviewers: dblaikie, chandlerc
      
      Subscribers: llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D22937
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r278157 | timshen | 2016-08-09 13:23:13 -0700 (Tue, 09 Aug 2016) | 7 lines
      
      [ADT] Change iterator_adaptor_base's default template arguments to forward more underlying typedefs
      
      Reviewers: chandlerc
      
      Subscribers: llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D23217
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r278569 | timshen | 2016-08-12 15:03:28 -0700 (Fri, 12 Aug 2016) | 3 lines
      
      [ADT] Add filter_iterator for filtering elements
      
      Differential Revision: https://reviews.llvm.org/D22951
      ------------------------------------------------------------------------
      
      llvm-svn: 278674
      e7fedbcd
  5. Aug 14, 2016
    • Ed Schouten's avatar
      Merge r278393 and r278395. · fd4ed8ea
      Ed Schouten authored
      LLVM/Clang 3.8 is directly usable as a cross compiler for CloudABI/i686.
      In 3.9rc1 there are a couple of regressions in the driver that cause it
      to be less usable:
      
      - PIE was enabled unconditionally, even though it's only available for
        x86-64 and aarch64.
      - Some inline assembly fails to build, due to a shortage of registers,
        as frame pointers are not omitted.
      
      Both these changes are fairly low risk (read: they don't affect other
      targets), so go ahead and merge them into 3.9, so we can use an
      unmodified compiler on all architectures.
      
      llvm-svn: 278605
      fd4ed8ea
  6. Aug 13, 2016
    • Hans Wennborg's avatar
      Merging r277997, r277999 and r278001: · d26597b4
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r277997 | labath | 2016-08-08 05:26:57 -0700 (Mon, 08 Aug 2016) | 3 lines
      
      Remove _isatty from Android.h
      
      it is just #defined to isatty anyway, which lldb already knows how to use.
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r277999 | labath | 2016-08-08 05:40:11 -0700 (Mon, 08 Aug 2016) | 3 lines
      
      Remove SYS_tgkill from Android.h
      
      instead, use __NR_tgkill directly, which seems to be the preferred form in the codebase anyway.
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r278001 | labath | 2016-08-08 06:13:03 -0700 (Mon, 08 Aug 2016) | 5 lines
      
      Clean up linux/Ptrace.h
      
      This removes references to PT_XXX macros from the file, as they were not used anyway. It also
      changes the macro used to check for the definition of __ptrace_request, as there are other C
      libraries which do not define this type.
      ------------------------------------------------------------------------
      
      llvm-svn: 278540
      d26597b4
    • Hans Wennborg's avatar
      Merging r278357: · b6c05cc7
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r278357 | compnerd | 2016-08-11 09:58:12 -0700 (Thu, 11 Aug 2016) | 6 lines
      
      test: relax the FS test a slight bit to be more reliable
      
      Some filesystems track atime always.  This relaxes the test to accept either a
      filesystem which does not accurately track atime or does track the atime
      accurately.  This allows the test to pass on filesystems mounted with
      `strictatime` on Linux or on macOS.
      ------------------------------------------------------------------------
      
      llvm-svn: 278538
      b6c05cc7
  7. Aug 12, 2016
    • George Burgess IV's avatar
      Merging r278471: · a972a1c5
      George Burgess IV authored
      ------------------------------------------------------------------------
      r278471 | gbiv | 2016-08-11 21:12:31 -0700 (Thu, 11 Aug 2016) | 11 lines
      
      [Sema] Fix a crash on variadic enable_if functions.
      
      Currently, when trying to evaluate an enable_if condition, we try to
      evaluate all arguments a user passes to a function. Given that we can't
      use variadic arguments from said condition anyway, not converting them
      is a reasonable thing to do. So, this patch makes us ignore any varargs
      when attempting to check an enable_if condition.
      
      We'd crash because, in order to convert an argument, we need its
      ParmVarDecl. Variadic arguments don't have ParmVarDecls.
      
      ------------------------------------------------------------------------
      
      llvm-svn: 278479
      a972a1c5