Skip to content
  1. Sep 10, 2018
  2. Sep 07, 2018
  3. Sep 06, 2018
  4. Sep 04, 2018
  5. Aug 31, 2018
  6. Aug 29, 2018
  7. Aug 27, 2018
  8. Aug 24, 2018
    • Hans Wennborg's avatar
      Merging r340666: · a5d91b27
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r340666 | hans | 2018-08-25 00:46:33 +0200 (Sat, 25 Aug 2018) | 21 lines
      
      Revert r323281 "Adjust MaxAtomicInlineWidth for i386/i486 targets."
      
      As reported on http://lists.llvm.org/pipermail/cfe-dev/2018-August/058760.html,
      this broke i386-freebsd11 due to its lack of atomic 64 bit primitives.
      
      While that's not really this commit's fault, let's revert back to the old
      behaviour until this can be fixed. This means generating cmpxchg8b etc for i386
      and i486 which don't technically support those, but that's been the behaviour
      for a long time, so a little longer probably doesn't hurt that much.
      
      > Adjust MaxAtomicInlineWidth for i386/i486 targets.
      >
      > This is to fix the bug reported in https://bugs.llvm.org/show_bug.cgi?id=34347#c6.
      > Currently, all  MaxAtomicInlineWidth of x86-32 targets are set to 64. However,
      > i386 doesn't support any cmpxchg related instructions. i486 only supports cmpxchg.
      > So in this patch MaxAtomic...
      a5d91b27
  9. Aug 22, 2018
  10. Aug 21, 2018
    • Hans Wennborg's avatar
      Merging r340181: · 0219d8b6
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r340181 | abataev | 2018-08-20 18:00:22 +0200 (Mon, 20 Aug 2018) | 7 lines
      
      [OPENMP][BLOCKS]Fix PR38923: reference to a global variable is captured
      by a block.
      
      Added checks for capturing of the variable in the block when trying to
      emit correct address for the variable with the reference type. This
      extra check allows correctly identify the variables that are not
      captured in the block context.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@340352 91177308-0d34-0410-b5e6-96231b3b80d8
      0219d8b6
    • Hans Wennborg's avatar
      Merging r340191: · d86f0226
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r340191 | abataev | 2018-08-20 20:03:40 +0200 (Mon, 20 Aug 2018) | 6 lines
      
      [OPENMP] Fix crash on the emission of the weak function declaration.
      
      If the function is actually a weak reference, it should not be marked as
      deferred definition as this is only a declaration. Patch adds checks for
      the definitions if they must be emitted. Otherwise, only declaration is
      emitted.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@340351 91177308-0d34-0410-b5e6-96231b3b80d8
      d86f0226
    • Hans Wennborg's avatar
      Merging r339372, r339373, r339374, and r339379 · a0ca9e9c
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339372 | steveire | 2018-08-09 22:05:03 +0200 (Thu, 09 Aug 2018) | 5 lines
      
      Add getBeginLoc API to replace getLocStart
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50346
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r339373 | steveire | 2018-08-09 22:05:18 +0200 (Thu, 09 Aug 2018) | 7 lines
      
      Add getBeginLoc API to replace getStartLoc
      
      Reviewers: teemperor!
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50347
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r339374 | steveire | 2018-08-09 22:05:47 +0200 (Thu, 09 Aug 2018) | 5 lines
      
      Add getEndLoc API to replace getLocEnd
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50348
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r339379 | steveire | 2018-08-09 22:21:09 +0200 (Thu, 09 Aug 2018) | 1 line
      
      Fix build
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@340332 91177308-0d34-0410-b5e6-96231b3b80d8
      a0ca9e9c
    • Hans Wennborg's avatar
      Merging r340048: · 30dc94c7
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r340048 | nico | 2018-08-17 19:19:06 +0200 (Fri, 17 Aug 2018) | 10 lines
      
      Make __shiftleft128 / __shiftright128 real compiler built-ins.
      
      r337619 added __shiftleft128 / __shiftright128 as functions in intrin.h.
      Microsoft's STL plans on using these functions, and they're using intrin0.h
      which just has declarations of built-ins to not pull in the huge intrin.h
      header in the standard library headers. That requires that these functions are
      real built-ins.
      
      https://reviews.llvm.org/D50907
      
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@340289 91177308-0d34-0410-b5e6-96231b3b80d8
      30dc94c7
  11. Aug 17, 2018
    • Reid Kleckner's avatar
      Merging r340101: · deea4eee
      Reid Kleckner authored
      ------------------------------------------------------------------------
      r340101 | rnk | 2018-08-17 15:11:31 -0700 (Fri, 17 Aug 2018) | 14 lines
      
      Don't warn on returning the address of a label from a statement expression
      
      Summary:
      There isn't anything inherently wrong with returning a label from a
      statement expression. In practice, the Linux kernel uses this pattern to
      materialize PCs.
      
      Fixes PR38569
      
      Reviewers: niravd, rsmith, nickdesaulniers
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50805
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@340103 91177308-0d34-0410-b5e6-96231b3b80d8
      deea4eee
    • Reid Kleckner's avatar
      Merging r340079: · 8901ecd0
      Reid Kleckner authored
      ------------------------------------------------------------------------
      r340079 | rnk | 2018-08-17 13:59:27 -0700 (Fri, 17 Aug 2018) | 20 lines
      
      [MS] Mangle a hash of the main file path into anonymous namespaces
      
      Summary:
      This is needed to avoid conflicts in mangled names for codeview types in
      anonymous namespaces. In CodeView, types refer to each other typically
      through forward declarations, which contain mangled names. These names
      have to be unique, otherwise the debugger will look up the mangled name
      and find the wrong definition.
      
      Furthermore, ThinLTO will deduplicate the types, and debug info
      verification can fail when the types have the wrong sizes. This is
      PR38608.
      
      Fixes PR38609.
      
      Reviewers: majnemer, inglorion, hans
      
      Subscribers: mehdi_amini, aprantl, JDevlieghere, dexonsmith, cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50877
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@340087 91177308-0d34-0410-b5e6-96231b3b80d8
      8901ecd0
    • Hans Wennborg's avatar
      Backport r339704 to 7.0 for PR38598 · 445b8eb6
      Hans Wennborg authored
      > Author: abataev
      > Date: Tue Aug 14 11:31:20 2018
      > New Revision: 339704
      >
      > URL: http://llvm.org/viewvc/llvm-project?rev=339704&view=rev
      > Log:
      > [OPENMP] Fix processing of declare target construct.
      >
      > The attribute marked as inheritable since OpenMP 5.0 supports it +
      > additional fixes to support new functionality.
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339998 91177308-0d34-0410-b5e6-96231b3b80d8
      445b8eb6
  12. Aug 16, 2018
    • Hans Wennborg's avatar
      Merging r339603: · ca319437
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339603 | abataev | 2018-08-13 21:04:24 +0200 (Mon, 13 Aug 2018) | 4 lines
      
      [OPENMP] Fix emission of the loop doacross constructs.
      
      The number of loops associated with the OpenMP loop constructs should
      not be considered as the number loops to collapse.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339851 91177308-0d34-0410-b5e6-96231b3b80d8
      ca319437
  13. Aug 14, 2018
    • Hans Wennborg's avatar
      Merging r339597: · bdb1c367
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339597 | erichkeane | 2018-08-13 20:33:20 +0200 (Mon, 13 Aug 2018) | 7 lines
      
      Enforce instantiation of template multiversion functions
      
      Multiversioned member functions inside of a template type were 
      not properly being emitted.  The solution to this is to simply 
      ensure that their bodies are correctly evaluated/assigned during
      template instantiation.
      
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339663 91177308-0d34-0410-b5e6-96231b3b80d8
      bdb1c367
    • Hans Wennborg's avatar
      Merging r338934: · 2d49a130
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r338934 | vsapsai | 2018-08-04 01:12:37 +0200 (Sat, 04 Aug 2018) | 29 lines
      
      [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.
      
      Libc++ needs to know when aligned allocation is supported by clang, but is
      otherwise unavailable at link time. Otherwise, libc++ will incorrectly end up
      generating calls to `__builtin_operator_new`/`__builtin_operator_delete` with
      alignment arguments.
      
      This patch implements the following changes:
      
      * The `__cpp_aligned_new` feature test macro to no longer be defined when
        aligned allocation is otherwise enabled but unavailable.
      
      * The Darwin driver no longer passes `-faligned-alloc-unavailable` when the
        user manually specifies `-faligned-allocation` or `-fno-aligned-allocation`.
      
      * Instead of a warning Clang now generates a hard error when an aligned
        allocation or deallocation function is referenced but unavailable.
      
      Patch by Eric Fiselier.
      
      Reviewers: rsmith, vsapsai, erik.pilkington, ahatanak, dexonsmith
      
      Reviewed By: rsmith
      
      Subscribers: Quuxplusone, cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D45015
      
      
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339660 91177308-0d34-0410-b5e6-96231b3b80d8
      2d49a130
    • Martin Storsjo's avatar
      5acbb5ed
  14. Aug 13, 2018
    • Hans Wennborg's avatar
      Merging r339264: · 7cdbd490
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339264 | rksimon | 2018-08-08 17:53:14 +0200 (Wed, 08 Aug 2018) | 5 lines
      
      [CGObjCGNU] Rename GetSelector helper method to fix -Woverloaded-virtual warning (PR38210)
      
      As suggested by @theraven on PR38210, this patch fixes the gcc -Woverloaded-virtual warnings by renaming the extra CGObjCGNU::GetSelector method to CGObjCGNU::GetTypedSelector
      
      Differential Revision: https://reviews.llvm.org/D50448
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339555 91177308-0d34-0410-b5e6-96231b3b80d8
      7cdbd490
    • Hans Wennborg's avatar
      Merging r339074: · 2f264a9e
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339074 | stella.stamenova | 2018-08-07 00:37:45 +0200 (Tue, 07 Aug 2018) | 12 lines
      
      [lit, python] Always add quotes around the python path in lit
      
      Summary:
      The issue with the python path is that the path to python on Windows can contain spaces. To make the tests always work, the path to python needs to be surrounded by quotes.
      
      This is a companion change to: https://reviews.llvm.org/D50206
      
      Reviewers: asmith, zturner
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50281
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339554 91177308-0d34-0410-b5e6-96231b3b80d8
      2f264a9e
    • Hans Wennborg's avatar
      Merging r339428 and r339494: · 7ab77355
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339428 | theraven | 2018-08-10 14:53:13 +0200 (Fri, 10 Aug 2018) | 18 lines
      
      Add Windows support for the GNUstep Objective-C ABI V2.
      
      Summary:
      Introduces funclet-based unwinding for Objective-C and fixes an issue
      where global blocks can't have their isa pointers initialised on
      Windows.
      
      After discussion with Dustin, this changes the name mangling of
      Objective-C types to prevent a C++ catch statement of type struct X*
      from catching an Objective-C object of type X*.
      
      Reviewers: rjmccall, DHowett-MSFT
      
      Reviewed By: rjmccall, DHowett-MSFT
      
      Subscribers: mgrang, mstorsjo, smeenai, cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50144
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r339494 | dyung | 2018-08-11 04:46:47 +0200 (Sat, 11 Aug 2018) | 2 lines
      
      Make the section boundary checks on Windows not depend on the order as they are emitted in reverse when the compiler is built by Visual C++.
      
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339538 91177308-0d34-0410-b5e6-96231b3b80d8
      7ab77355
  15. Aug 09, 2018
    • Hans Wennborg's avatar
      Merging r339281: · 5534fc89
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339281 | ctopper | 2018-08-08 21:14:23 +0200 (Wed, 08 Aug 2018) | 5 lines
      
      [CodeGen][Timers] Enable llvm::TimePassesIsEnabled when -ftime-report is specified
      
      r330571 added a new FrontendTimesIsEnabled variable and replaced many usages of llvm::TimePassesIsEnabled. Including the place that set llvm::TimePassesIsEnabled for -ftime-report. The effect of this is that -ftime-report now only contains the timers specifically referenced in CodeGenAction.cpp and none of the timers in the backend.
      
      This commit adds back the assignment, but otherwise leaves everything else unchanged.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339341 91177308-0d34-0410-b5e6-96231b3b80d8
      5534fc89
    • Hans Wennborg's avatar
      Merging r339317: · ddcce557
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339317 | theraven | 2018-08-09 10:02:42 +0200 (Thu, 09 Aug 2018) | 15 lines
      
      Correctly initialise global blocks on Windows.
      
      Summary:
      Windows does not allow globals to be initialised to point to globals in
      another DLL.  Exported globals may be referenced only from code.  Work
      around this by creating an initialiser that runs in early library
      initialisation and sets the isa pointer.
      
      Reviewers: rjmccall
      
      Reviewed By: rjmccall
      
      Subscribers: cfe-commits
      
      Differential Revision: https://reviews.llvm.org/D50436
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339339 91177308-0d34-0410-b5e6-96231b3b80d8
      ddcce557
  16. Aug 08, 2018
    • Hans Wennborg's avatar
      Merging r339210: · 7635f421
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339210 | rsmith | 2018-08-08 02:42:42 +0200 (Wed, 08 Aug 2018) | 2 lines
      
      PR38286: Don't crash when attempting to define a constructor for an
      incomplete class template.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339236 91177308-0d34-0410-b5e6-96231b3b80d8
      7635f421
    • Hans Wennborg's avatar
      Merging r339128: · 4461b686
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339128 | theraven | 2018-08-07 14:02:46 +0200 (Tue, 07 Aug 2018) | 8 lines
      
      [objc-gnustep] Don't emit .guess ivar offset vars.
      
      These were intended to allow non-fragile and fragile ABI code to be
      mixed, as long as the fragile classes were higher up the hierarchy than
      the non-fragile ones.  Unfortunately:
      
       - No one actually wants to do this.
       - Recent versions of Linux's run-time linker break it.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339233 91177308-0d34-0410-b5e6-96231b3b80d8
      4461b686
    • Hans Wennborg's avatar
      Merging r339170: · 4882faae
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r339170 | mstorsjo | 2018-08-07 22:02:40 +0200 (Tue, 07 Aug 2018) | 5 lines
      
      [Headers] Expand _Unwind_Exception for SEH on MinGW/x86_64
      
      This matches how GCC defines this struct.
      
      Differential Revision: https://reviews.llvm.org/D50380
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339220 91177308-0d34-0410-b5e6-96231b3b80d8
      4882faae
  17. Aug 07, 2018
    • Hans Wennborg's avatar
      Merging r338627: · ad0f0132
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r338627 | mgorny | 2018-08-01 22:38:22 +0200 (Wed, 01 Aug 2018) | 7 lines
      
      [test] Fix %hmaptool path for standalone builds
      
      Fix %hmaptool path to refer to clang_tools_dir instead of
      llvm_tools_dir, in order to fix standalone builds.  The tool is built
      as part of clang, so it won't be found in installed LLVM tools.
      
      Differential Revision: https://reviews.llvm.org/D50156
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339102 91177308-0d34-0410-b5e6-96231b3b80d8
      ad0f0132
  18. Aug 06, 2018
  19. Aug 03, 2018
  20. Aug 02, 2018
    • Hans Wennborg's avatar
      Merging r338553: · 48162d10
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r338553 | filcab | 2018-08-01 15:41:42 +0200 (Wed, 01 Aug 2018) | 1 line
      
      Use a dummy target so the test passes when default target is for a toolchain implements useIntegratedAs() -> true
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@338688 91177308-0d34-0410-b5e6-96231b3b80d8
      48162d10
    • Hans Wennborg's avatar
      Merging r338552: · 43b26b5a
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r338552 | filcab | 2018-08-01 15:41:11 +0200 (Wed, 01 Aug 2018) | 1 line
      
      Add REQUIRES: native to a test that assumes it
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@338687 91177308-0d34-0410-b5e6-96231b3b80d8
      43b26b5a
    • Hans Wennborg's avatar
      Merging r338602: · b427c9dd
      Hans Wennborg authored
      ------------------------------------------------------------------------
      r338602 | hans | 2018-08-01 19:51:23 +0200 (Wed, 01 Aug 2018) | 11 lines
      
      Revert r338455 "[constexpr] Support for constant evaluation of __builtin_memcpy and __builtin_memmove (in non-type-punning cases)."
      
      It caused asserts during Chromium builds, see reply on the cfe-commits thread.
      
      > This is intended to permit libc++ to make std::copy etc constexpr
      > without sacrificing the optimization that uses memcpy on
      > trivially-copyable types.
      >
      > __builtin_strcpy and __builtin_wcscpy are not handled by this change.
      > They'd be straightforward to add, but we haven't encountered a need for
      > them just yet.
      ------------------------------------------------------------------------
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@338674 91177308-0d34-0410-b5e6-96231b3b80d8
      b427c9dd