and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

  1. 30 Aug, 2019 5 commits
    • Hans Wennborg's avatar
      Re-generate {Attribute,ClangCommandLine,Diagnostics}Reference.rst · bb081fe6
      Hans Wennborg authored
      $ bin/clang-tblgen -gen-diag-docs -I../cfe.src/include \
            -I../cfe.src/include/clang/Basic/ \
            ../cfe.src/include/clang/Basic/Diagnostic.td -o \
            ../cfe.src/docs/DiagnosticsReference.rst && \
      bin/clang-tblgen -gen-attr-docs -I../cfe.src/include \
              ../cfe.src/include/clang/Basic/Attr.td -o \
              ../cfe.src/docs/AttributeReference.rst && \
      bin/clang-tblgen -gen-opt-docs -I../cfe.src/include \
              -I../cfe.src/include/clang/Driver -I../llvm.src/include \
              ../cfe.src/include/clang/Driver/ClangOptionDocs.td -o \
              ../cfe.src/docs/ClangCommandLineReference.rst
      
      llvm-svn: 370450
      bb081fe6
    • Hans Wennborg's avatar
      Merging r370355: · 892dfd7d
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370355 | joerg | 2019-08-29 15:22:30 +0200 (Thu, 29 Aug 2019) | 5 lines
      
      Allow replaceAndRecursivelySimplify to list unsimplified visitees.
      
      This is part of D65280 and split it to avoid ABI changes on the 9.0
      release branch.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370447
      892dfd7d
    • Hans Wennborg's avatar
      Merging r370404: · 25f22e70
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370404 | rksimon | 2019-08-29 22:22:08 +0200 (Thu, 29 Aug 2019) | 3 lines
      
      [X86][SSE] combinePMULDQ - pmuldq(x, 0) -> zero vector (PR43159)
      
      ISD::isBuildVectorAllZeros permits undef elements to be present, which means we can't return it as a zero vector. PMULDQ/PMULUDQ is an extending multiply so a multiply by zero of the lower 32-bits should result in a zero 64-bit element.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370445
      25f22e70
    • Hans Wennborg's avatar
      ReleaseNotes: pocl and TCE; by Pekka Jääskeläinen · 92734ca8
      Hans Wennborg authored
      llvm-svn: 370439
      92734ca8
    • Hans Wennborg's avatar
      Merging r368164: · 3c8c5570
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r368164 | s.desmalen | 2019-08-07 14:41:38 +0200 (Wed, 07 Aug 2019) | 13 lines
      
      [AArch64][WinCFI] Do not pair callee-save instructions in LoadStoreOptimizer
      
      Prevent the LoadStoreOptimizer from pairing any load/store instructions with
      instructions from the prologue/epilogue if the CFI information has encoded the
      operations as separate instructions.  This would otherwise lead to a mismatch
      of the actual prologue size from the size as recorded in the Windows CFI.
      
      Reviewers: efriedma, mstorsjo, ssijaric
      
      Reviewed By: efriedma
      
      Differential Revision: https://reviews.llvm.org/D65817
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370438
      3c8c5570
  2. 29 Aug, 2019 16 commits
  3. 28 Aug, 2019 7 commits
    • Hans Wennborg's avatar
      Merging r370035: · e7a52d72
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370035 | devnexen | 2019-08-27 12:04:03 +0200 (Tue, 27 Aug 2019) | 7 lines
      
      [ReleaseNotes] MemorySanitizer support of ASLR on FreeBSD
      
      Reviewers: sylvestre.ledru, kcc
      
      Reviewed By: sylvestre.ledru
      
      Differential Revision: https://reviews.llvm.org/D66792
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370213
      e7a52d72
    • Hans Wennborg's avatar
      Merging r370204: · f7a1e484
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370204 | hans | 2019-08-28 15:55:10 +0200 (Wed, 28 Aug 2019) | 6 lines
      
      [SelectionDAG] Don't generate libcalls for wide shifts on Windows (PR42711)
      
      Neither libgcc or compiler-rt are usually used on Windows, so these
      functions can't be called.
      
      Differential revision: https://reviews.llvm.org/D66880
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370205
      f7a1e484
    • Hans Wennborg's avatar
      Merging r369886: · e82a5360
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r369886 | bjope | 2019-08-26 11:29:53 +0200 (Mon, 26 Aug 2019) | 23 lines
      
      [LoopUnroll] Handle certain PHIs in full unrolling properly
      
      Summary:
      When reconstructing the CFG of the loop after unrolling,
      LoopUnroll could in some cases remove the phi operands of
      loop-carried values instead of preserving them, resulting
      in undef phi values after loop unrolling.
      
      When doing this reconstruction, avoid removing incoming
      phi values for phis in the successor blocks if the successor
      is the block we are jumping to anyway.
      
      Patch-by: ebevhan
      
      Reviewers: fhahn, efriedma
      
      Reviewed By: fhahn
      
      Subscribers: bjope, lebedev.ri, zzheng, dmgreen, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D66334
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370182
      e82a5360
    • Hans Wennborg's avatar
      Merging r370073: · 67afb7cb
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370073 | lenary | 2019-08-27 17:41:16 +0200 (Tue, 27 Aug 2019) | 13 lines
      
      [RISCV] Set MaxAtomicInlineWidth and MaxAtomicPromoteWidth for RV32/RV64 targets with atomics
      
      Summary: This ensures that libcalls aren't generated when the target supports atomics. Atomics aren't in the base RV32I/RV64I instruction sets, so MaxAtomicInlineWidth and MaxAtomicPromoteWidth are set only when the atomics extension is being targeted. This must be done in setMaxAtomicWidth, as this should be done after handleTargetFeatures has been called.
      
      Reviewers: jfb, jyknight, wmi, asb
      
      Reviewed By: asb
      
      Subscribers: pzheng, MaskRay, s.egerton, lenary, dexonsmith, psnobl, benna, Jim, JohnLLVM, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, kito-cheng, shiva0217, jrtc27, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, PkmX, jocewei, lewis-revill, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D57450
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370181
      67afb7cb
    • Hans Wennborg's avatar
      Merging r370176: · 845db805
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370176 | hans | 2019-08-28 11:21:56 +0200 (Wed, 28 Aug 2019) | 15 lines
      
      [LLVM-C] Fix ByVal Attribute crashing
      
      With the introduction of the typed byval attribute change there was no
      way that the LLVM-C API could create the correct class Attribute. If a
      program that uses the C API creates a ByVal attribute and annotates a
      function with that attribute LLVM will crash when it assembles or write
      that module containing the function out as bitcode.
      
      This change is a minimal fix to at least allow code to work, this is
      because the byval change is on the 9.0 and I don't want to introduce new
      LLVM-C API this late in the release cycle.
      
      By Jakob Bornecrantz!
      
      Differential revision: https://reviews.llvm.org/D66144
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370178
      845db805
    • Hans Wennborg's avatar
      ReleaseNotes: ORC note, by Lang · 4a240034
      Hans Wennborg authored
      llvm-svn: 370167
      4a240034
    • Hans Wennborg's avatar
      [analyzer] Add 9.0.0. release notes. · caa38191
      Hans Wennborg authored
      By Kristóf Umann!
      
      Differential revision: https://reviews.llvm.org/D66765
      
      llvm-svn: 370166
      caa38191
  4. 27 Aug, 2019 7 commits
    • Hans Wennborg's avatar
      ReleaseNotes: Zig · 8fee65e5
      Hans Wennborg authored
      llvm-svn: 370077
      8fee65e5
    • Hans Wennborg's avatar
      ReleaseNotes: RISCV · 79bfd169
      Hans Wennborg authored
      By Alex Bradbury!
      
      llvm-svn: 370076
      79bfd169
    • Hans Wennborg's avatar
      ReleaseNotes: PowerPC · 7527c119
      Hans Wennborg authored
      By Lei Huang!
      
      llvm-svn: 370065
      7527c119
    • Hans Wennborg's avatar
      Merging r370036: · 244e6c1e
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r370036 | tnorthover | 2019-08-27 12:21:11 +0200 (Tue, 27 Aug 2019) | 8 lines
      
      AArch64: avoid creating cycle in DAG for post-increment NEON ops.
      
      Inserting a value into Visited has the effect of terminating a search for
      predecessors if that node is seen. This is legitimate for the base address, and
      acts as a slight performance optimization, but the vector-building node can be
      paert of a legitimate cycle so we shouldn't stop searching there.
      
      PR43056.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370063
      244e6c1e
    • Hans Wennborg's avatar
      Merging r369834: · d2fb9bb5
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r369834 | rsmith | 2019-08-24 04:30:00 +0200 (Sat, 24 Aug 2019) | 8 lines
      
      PR42513: Enter the proper DeclContext before substituting into an
      default template argument expression.
      
      We already did this for type template parameters and template template
      parameters, but apparently forgot to do so for non-type template
      parameters. This causes the substituted default argument expression to
      be substituted in the proper context, and in particular to properly mark
      its subexpressions as odr-used.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370038
      d2fb9bb5
    • Hans Wennborg's avatar
      Merging r369749: · 263e040c
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r369749 | stulova | 2019-08-23 13:43:49 +0200 (Fri, 23 Aug 2019) | 5 lines
      
      [Docs][OpenCL] Several corrections to C++ for OpenCL
      
      Differential Revision:https://reviews.llvm.org/D64418
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 370031
      263e040c
    • Sam McCall's avatar
      [clangd] Release notes for 9.x · 56003877
      Sam McCall authored
      llvm-svn: 370024
      56003877
  5. 26 Aug, 2019 5 commits
    • Hans Wennborg's avatar
      Merging r369829: · b2b72eca
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r369829 | rsmith | 2019-08-24 03:23:57 +0200 (Sat, 24 Aug 2019) | 3 lines
      
      PR40674: fix assertion failure if a structured binding declaration has a
      tuple-like decomposition that produces value-dependent reference
      bindings.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 369921
      b2b72eca
    • Hans Wennborg's avatar
      Merge 'r369779 - [OpenCL] Renamed value of std flag in C++ mode' · af1c50dd
      Hans Wennborg authored
      llvm-svn: 369913
      af1c50dd
    • Hans Wennborg's avatar
      ReleaseNotes: ARM and AArch64 · eb67eeaf
      Hans Wennborg authored
      From Kristof!
      
      llvm-svn: 369912
      eb67eeaf
    • Hans Wennborg's avatar
      Merging r367115, r367125, r367127, and r367153. · 094e9b46
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367115 | jdevlieghere | 2019-07-26 16:26:33 +0200 (Fri, 26 Jul 2019) | 6 lines
      
      [CMake] Loosen Python version check and ignore patch version
      
      Some versions of macOS report a different patch version for the system
      provided interpreter and libraries.
      
      Differential revision: https://reviews.llvm.org/D65230
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r367125 | jdevlieghere | 2019-07-26 18:15:19 +0200 (Fri, 26 Jul 2019) | 3 lines
      
      [CMake] Print Python version on Windows
      
      Trying to figure out what's causing the Windows bot to fail.
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r367127 | jdevlieghere | 2019-07-26 18:32:49 +0200 (Fri, 26 Jul 2019) | 4 lines
      
      [CMake] Fix find_python_libs_windows
      
      Exporting PYTHON_INCLUDE_DIR to the Python scope somehow got lost in my
      last change. Add it back again. This should fix the Windows bot!
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r367153 | jdevlieghere | 2019-07-26 22:58:10 +0200 (Fri, 26 Jul 2019) | 5 lines
      
      [CMake] Print the correct variables
      
      This didn't get updated after we decided to set PYTHON_MAJOR_VERSION and
      PYTHON_MINOR_VERSION in find_python_libs_windows, instead of parsing the
      variables ourselves.
      ------------------------------------------------------------------------
      
      llvm-svn: 369903
      094e9b46
    • Hans Wennborg's avatar
      Merging r366447: · 23c8505c
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366447 | jdevlieghere | 2019-07-18 17:17:42 +0200 (Thu, 18 Jul 2019) | 19 lines
      
      [CMake] Don't set Python_ADDITIONAL_VERSIONS
      
      Until recently, Python_ADDITIONAL_VERSIONS was used to limit LLVM's
      Python support to 2.7. Now that both LLVM and LLDB both support Python
      3, there's no longer a need to put an arbitrary limit on this.
      
      However, instead of removing the variable, r365692 expanded the list,
      which has the (presumably unintentional) side-effect of expression
      preference for Python 3.
      
      Instead, as Michal proposed in the original code review, we should just
      not set the list at all, and let CMake pick whatever Python interpreter
      you have in your path.
      
      This patch removes the Python_ADDITIONAL_VERSIONS variable in llvm,
      clang and lld. I've also updated the docs with the default behavior and
      how to force a different Python version to be used.
      
      Differential revision: https://reviews.llvm.org/D64894
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 369902
      23c8505c