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

  1. 29 Jul, 2019 5 commits
    • Hans Wennborg's avatar
      Merging r367215: · 6aa75a25
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367215 | hans | 2019-07-29 11:49:04 +0200 (Mon, 29 Jul 2019) | 66 lines
      
      Mark test/MC/RISCV/rv{32,64}i-aliases-invalid.s unsupported also on Windows
      
      Because they fail there too.
      
      FAIL: LLVM :: MC/RISCV/rv32i-aliases-invalid.s (24397 of 32659)
      ******************** TEST 'LLVM :: MC/RISCV/rv32i-aliases-invalid.s' FAILED ********************
      Script:
      --
      : 'RUN: at line 2';   not c:\src\llvm.monorepo\build.release2\bin\llvm-mc.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s -triple=riscv32 -riscv-no-aliases 2>&1 | c:\src\llvm.monorepo\build.release2\bin\filecheck.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s
      : 'RUN: at line 3';   not c:\src\llvm.monorepo\build.release2\bin\llvm-mc.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s -triple=riscv32 2>&1 | c:\src\llvm.monorepo\build.release2\bin\filecheck.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s
      --
      Exit Code: 1
      
      Command Output (stdout):
      --
      $ ":" "RUN: at line 2"
      $ "not" "c:\src\llvm.monorepo\build.release2\bin\llvm-mc.exe" "C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s" "-triple=riscv32" "-riscv-no-aliases"
      $ "c:\src\llvm.monorepo\build.release2\bin\filecheck.exe" "C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s"
      C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv32i-aliases-invalid.s:10:21: error: CHECK: expected string not found in input
      li t4, foo # CHECK: :[[@Line]]:8: error: immediate must be an integer in the range [-2147483648, 4294967295]
                          ^
      <stdin>:5:1: note: scanning from here
      li x0, -2147483649 # CHECK: :[[@Line]]:8: error: immediate must be an integer in the range [-2147483648, 4294967295]
      ^
      <stdin>:5:1: note: with "@Line" equal to "10"
      li x0, -2147483649 # CHECK: :[[@Line]]:8: error: immediate must be an integer in the range [-2147483648, 4294967295]
      ^
      <stdin>:5:38: note: possible intended match here
      li x0, -2147483649 # CHECK: :[[@Line]]:8: error: immediate must be an integer in the range [-2147483648, 4294967295]
                                           ^
      
      error: command failed with exit status: 1
      
      --
      
      --
      ********************
      Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70
      FAIL: LLVM :: MC/RISCV/rv64i-aliases-invalid.s (24416 of 32659)
      ******************** TEST 'LLVM :: MC/RISCV/rv64i-aliases-invalid.s' FAILED ********************
      Script:
      --
      : 'RUN: at line 2';   not c:\src\llvm.monorepo\build.release2\bin\llvm-mc.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s -triple=riscv64 -riscv-no-aliases 2>&1 | c:\src\llvm.monorepo\build.release2\bin\filecheck.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s
      : 'RUN: at line 3';   not c:\src\llvm.monorepo\build.release2\bin\llvm-mc.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s -triple=riscv64 2>&1 | c:\src\llvm.monorepo\build.release2\bin\filecheck.exe C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s
      --
      Exit Code: 1
      
      Command Output (stdout):
      --
      $ ":" "RUN: at line 2"
      $ "not" "c:\src\llvm.monorepo\build.release2\bin\llvm-mc.exe" "C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s" "-triple=riscv64" "-riscv-no-aliases"
      $ "c:\src\llvm.monorepo\build.release2\bin\filecheck.exe" "C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s"
      C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s:6:21: error: CHECK: expected string not found in input
      li t4, foo # CHECK: :[[@Line]]:8: error: operand must be a constant 64-bit integer
                          ^
      <stdin>:2:1: note: scanning from here
      li t5, 0x10000000000000000 # CHECK: :[[@Line]]:8: error: unknown operand
      ^
      <stdin>:2:1: note: with "@Line" equal to "6"
      li t5, 0x10000000000000000 # CHECK: :[[@Line]]:8: error: unknown operand
      ^
      <stdin>:13:67: note: possible intended match here
      C:\src\llvm.monorepo\llvm\test\MC\RISCV\rv64i-aliases-invalid.s:12:13: error: immediate must be an integer in the range [0, 63]
                                                                        ^
      
      error: command failed with exit status: 1
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367217
      6aa75a25
    • Hans Wennborg's avatar
      UsersManual.rst: Update clang-cl command reference · a99af82e
      Hans Wennborg authored
      llvm-svn: 367212
      a99af82e
    • Hans Wennborg's avatar
      Merging r367062: · ccddca30
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367062 | yhs | 2019-07-25 23:47:27 +0200 (Thu, 25 Jul 2019) | 30 lines
      
      [BPF] fix typedef issue for offset relocation
      
      Currently, the CO-RE offset relocation does not work
      if any struct/union member or array element is a typedef.
      For example,
        typedef const int arr_t[7];
        struct input {
            arr_t a;
        };
        func(...) {
             struct input *in = ...;
             ... __builtin_preserve_access_index(&in->a[1]) ...
        }
      The BPF backend calculated default offset is 0 while
      4 is the correct answer. Similar issues exist for struct/union
      typedef's.
      
      When getting struct/union member or array element type,
      we should trace down to the type by skipping typedef
      and qualifiers const/volatile as this is what clang did
      to generate getelementptr instructions.
      (const/volatile member type qualifiers are already
      ignored by clang.)
      
      This patch fixed this issue, for each access index,
      skipping typedef and const/volatile/restrict BTF types.
      Signed-off-by: default avatarYonghong Song <yhs@fb.com>
      
      Differential Revision: https://reviews.llvm.org/D65259
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367211
      ccddca30
    • Hans Wennborg's avatar
      Merging r367030: · 556a6ff5
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367030 | yhs | 2019-07-25 18:01:26 +0200 (Thu, 25 Jul 2019) | 38 lines
      
      [BPF] fix CO-RE incorrect index access string
      
      Currently, we expect the CO-RE offset relocation records
      a string encoding the original getelementptr access index,
      so kernel bpf loader can decode it correctly.
      
      For example,
        struct s { int a; int b; };
        struct t { int c; int d; };
        #define _(x) (__builtin_preserve_access_index(x))
        int get_value(const void *addr1, const void *addr2);
        int test(struct s *arg1, struct t *arg2) {
          return get_value(_(&arg1->b), _(&arg2->d));
        }
      
      We expect two offset relocations:
        reloc 1: type s, access index 0, 1
        reloc 2: type t, access index 0, 1
      
      Two globals are created to retain access indexes for the
      above two relocations with global variable names.
      The first global has a name "0:1:". Unfortunately,
      the second global has the name "0:1:.1" as the llvm
      internals automatically add suffix ".1" to a global
      with the same name. Later on, the BPF peels the last
      character and record "0:1" and "0:1:." in the
      relocation table.
      
      This is not desirable. BPF backend could use the global
      variable suffix knowledge to generate correct access str.
      This patch rather took an approach not relying on
      that knowledge. It generates "s:0:1:" and "t:0:1:" to
      avoid global variable suffixes and later on generate
      correct index access string "0:1" for both records.
      Signed-off-by: default avatarYonghong Song <yhs@fb.com>
      
      Differential Revision: https://reviews.llvm.org/D65258
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367210
      556a6ff5
    • Hans Wennborg's avatar
      Merging r367055: · 7dd0d28f
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367055 | compnerd | 2019-07-25 22:59:48 +0200 (Thu, 25 Jul 2019) | 6 lines
      
      Revert "Revert "CodeGen: ensure placeholder instruction for cleanup is created""
      
      This reverts commit fd1274fa78cb0fd32cc1fa2e6f5bb8e62d29df19.
      
      Add an explicit triple for the test which is pattern matching overly
      aggressively.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367209
      7dd0d28f
  2. 26 Jul, 2019 5 commits
    • Hans Wennborg's avatar
      [clang][docs][release notes] mention asm goto support · 1634b4bc
      Hans Wennborg authored
      By Nick Desaulniers!
      
      Differential revision: https://reviews.llvm.org/D65302
      
      llvm-svn: 367158
      1634b4bc
    • Hans Wennborg's avatar
      Merging r367134: · d1b122cb
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367134 | nathan-huckleberry | 2019-07-26 19:29:35 +0200 (Fri, 26 Jul 2019) | 16 lines
      
      [Sema] Fix -Wuninitialized for struct assignment from GNU C statement expression
      
      Summary:
      Do not automatically report self references of structs in statement expression
      as warnings. Instead wait for uninitialized cfg analysis.
      https://bugs.llvm.org/show_bug.cgi?id=42604
      
      Reviewers: aaron.ballman, rsmith, nickdesaulniers
      
      Reviewed By: aaron.ballman, nickdesaulniers
      
      Subscribers: nathanchance, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D64678
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367150
      d1b122cb
    • Hans Wennborg's avatar
      Merging r367112: · e2025880
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367112 | sammccall | 2019-07-26 16:07:11 +0200 (Fri, 26 Jul 2019) | 11 lines
      
      [clangd] Fix background index not triggering on windows due to case mismatch.
      
      Summary:
      This isn't a general fix to all paths where we assume case-sensitivity, it's
      a minimally-invasive fix targeting the llvm 9 branch.
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D65320
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367135
      e2025880
    • Hans Wennborg's avatar
      Merging r367039 and r367103: · d14ea71e
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r367039 | erichkeane | 2019-07-25 19:14:45 +0200 (Thu, 25 Jul 2019) | 6 lines
      
      Remove CallingConvMethodType
      
      This seems to be an old vestage of a previous implementation of getting
      the default calling convention, and everything is now using
      CXXABI/ASTContext's getDefaultCallingConvention.  Remove it, since it
      isn't doing anything.
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r367103 | erichkeane | 2019-07-26 14:36:12 +0200 (Fri, 26 Jul 2019) | 6 lines
      
      Make the CXXABIs respect the target's default calling convention.
      
      SPIR targets need to have all functions be SPIR calling convention,
      however the CXXABIs were just returning CC_C in all non-'this-CC' cases.
      
      https://reviews.llvm.org/D65294
      ------------------------------------------------------------------------
      
      llvm-svn: 367129
      d14ea71e
    • Hans Wennborg's avatar
      Merging r366985: · 8f23294b
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366985 | labath | 2019-07-25 08:38:33 +0200 (Thu, 25 Jul 2019) | 16 lines
      
      LLGS: fix tracking execve on linux
      
      Summary:
      Due to a logic error, lldb-server ended up asserting/crashing every time
      the debugged process attempted an execve(). This fixes the error, and
      extends TestExec to work on other platforms too. The "extension"
      consists of avoiding non-standard posix_spawn extensions and using the
      classic execve() call, which should be available on any platform that
      actually supports re-execing. I change the test decorator from
      @skipUnlessDarwin to @skipIfWindows.
      
      Reviewers: clayborg, jasonmolenda
      
      Subscribers: lldb-commits
      
      Differential Revision: https://reviews.llvm.org/D65207
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 367128
      8f23294b
  3. 25 Jul, 2019 2 commits
    • Hans Wennborg's avatar
      Merging r366811, r366880, r366900, r366991 and r366992: · cb4f3533
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366811 | sammccall | 2019-07-23 16:30:28 +0200 (Tue, 23 Jul 2019) | 9 lines
      
      [clangd] Log version, cwd, args, and transport on startup. NFC
      
      Reviewers: hokein
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D65146
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366880 | sammccall | 2019-07-24 11:33:27 +0200 (Wed, 24 Jul 2019) | 9 lines
      
      [clangd] Reformat use of cl::opt: use unqualified name and don't bin-pack attributes. NFC
      
      Reviewers: kadircet
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D65154
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366900 | sammccall | 2019-07-24 14:41:52 +0200 (Wed, 24 Jul 2019) | 16 lines
      
      [clangd] Add categories to help options, and only show clangd options.
      
      Summary:
      Restricting the categories prevents extra unwanted options from creeping into
      help (D60663), and removes a bunch of noise from --help-hidden.
      
      While here, remove `static` from the opts in favor of an anon namespace, to
      reduce the noise level.
      
      Reviewers: hokein
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D65200
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366991 | sammccall | 2019-07-25 09:54:48 +0200 (Thu, 25 Jul 2019) | 13 lines
      
      [clangd] Also accept flags from CLANGD_FLAGS variable.
      
      This simplifies various workflows, particularly in debugging/development.
      e.g. editors will tend to propagate flags, so you can run
      `env CLANGD_FLAGS=-input-mirror-file=/tmp/mirror vim foo.cc` rather than
      change the configuration in a persistent way.
      (This also gives us a generic lever when we don't know how to customize
      the flags in some particular LSP client).
      
      While here, add a test for this and other startup logging, and fix a
      couple of direct writes to errs() that should have been logs.
      
      Differential Revision: https://reviews.llvm.org/D65153
      ------------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366992 | sammccall | 2019-07-25 10:00:54 +0200 (Thu, 25 Jul 2019) | 9 lines
      
      [clangd] Provide help text to users who run `clangd` in a terminal.
      
      Reviewers: hokein
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D65201
      ------------------------------------------------------------------------
      
      llvm-svn: 367025
      cb4f3533
    • Hans Wennborg's avatar
      Generate {Attribute,ClangCommandLine,Diagnostics}Reference.rst · 7b4b8dc6
      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: 366971
      7b4b8dc6
  4. 24 Jul, 2019 1 commit
    • Hans Wennborg's avatar
      Merging r366925: · 1014eef0
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366925 | xbolva00 | 2019-07-24 19:01:20 +0200 (Wed, 24 Jul 2019) | 13 lines
      
      [InstCombine] Adjusted pow-exp tests for Windows [NFC]
      
      Summary: https://bugs.llvm.org/show_bug.cgi?id=42740
      
      Reviewers: efriedma, hans
      
      Reviewed By: hans
      
      Subscribers: spatel, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D65220
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366940
      1014eef0
  5. 23 Jul, 2019 2 commits
    • Hans Wennborg's avatar
      Merging r366780 and r366784: · 1e6b12dd
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366780 | mstorsjo | 2019-07-23 08:38:04 +0200 (Tue, 23 Jul 2019) | 21 lines
      
      [COFF] Unbreak sorting of mingw comdat .tls sections after SVN r363457
      
      Code built for mingw with -fdata-sections will store each TLS variable
      in a comdat section, named .tls$$<varname>. Normal TLS variables are
      stored in sections named .tls$ with a trailing dollar, which are
      sorted after a starter marker (in a later linked object file) in a
      section named ".tls" (with no dollar suffix), before an ending marker
      in a section named ".tls$ZZZ".
      
      The mingw comdat section suffix stripping introduced in SVN r363457
      broke sorting of such tls sections, ending up sorting the stripped
      .tls$$<varname> sections (stripped to ".tls") before the start marker
      in the section named ".tls".
      
      We could add exceptions to the section name suffix stripping for
      .tls (and .CRT, where suffixes always should be honored), but the
      more conservative option is probably the reverse; to only apply the
      stripping for the normal sections where sorting shouldn't have any
      effect.
      
      Differential Revision: https://reviews.llvm.org/D65018
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366784 | mstorsjo | 2019-07-23 09:28:23 +0200 (Tue, 23 Jul 2019) | 4 lines
      
      [test] Fix the test from the previous commit when run on windows. NFC.
      
      Apparently the escaped dollar sign didn't work the same way in "echo -e"
      on windows buildbots.
      ------------------------------------------------------------------------
      
      llvm-svn: 366816
      1e6b12dd
    • Hans Wennborg's avatar
      Merging r366670 and r366694: · 70adacb1
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366670 | mantognini | 2019-07-22 11:39:13 +0200 (Mon, 22 Jul 2019) | 4 lines
      
      [OpenCL] Improve destructor support in C++ for OpenCL
      
      This re-applies r366422 with a fix for Bug PR42665 and a new regression
      test.
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366694 | mantognini | 2019-07-22 16:47:36 +0200 (Mon, 22 Jul 2019) | 5 lines
      
      [NFC] Relaxed regression tests for PR42665
      
      Following up on the buildbot failures, this commits relaxes some tests:
      instead of checking for specific IR output, it now ensures that the
      underlying issue (the crash), and only that, doesn't happen.
      ------------------------------------------------------------------------
      
      llvm-svn: 366814
      70adacb1
  6. 22 Jul, 2019 18 commits
    • Hans Wennborg's avatar
      Merging r366510: · a57a0379
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366510 | efriedma | 2019-07-19 00:35:45 +0200 (Fri, 19 Jul 2019) | 6 lines
      
      Update polly test for SCEV change.
      
      r366419 adds nsw to more SCEV expressions, which allows polly to
      make more aggressive assumptions about the input expressions.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366767
      a57a0379
    • Hans Wennborg's avatar
      Merging r366527: · 72deb047
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366527 | abrachet | 2019-07-19 04:31:21 +0200 (Fri, 19 Jul 2019) | 13 lines
      
      [test] [llvm-objcopy] Fix broken test case
      
      Summary: The test case added in D62718 did not work unless the user was root because write bits were not set for the output file. This change uses only permissions with user write (0200) to ensure tests pass regardless of the users permissions.
      
      Reviewers: jhenderson, rupprecht, MaskRay, espindola, alexshap
      
      Reviewed By: MaskRay
      
      Subscribers: emaste, arichardson, jakehehrlich, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D64302
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366758
      72deb047
    • Hans Wennborg's avatar
      Merging r366481: · 9e74d6cb
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366481 | teemperor | 2019-07-18 20:33:40 +0200 (Thu, 18 Jul 2019) | 4 lines
      
      Fix C++ modules build
      
      llvm-svn: 366344 missed an include that broke the LLVM_ENABLE_MODULES
      build.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366757
      9e74d6cb
    • Hans Wennborg's avatar
      Merging r366445: · 2493af8f
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366445 | maskray | 2019-07-18 17:07:42 +0200 (Thu, 18 Jul 2019) | 3 lines
      
      [ELF][PPC] Delete ppc64-dynamic-relocations.s
      
      I forgot to delete it in r366424.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366756
      2493af8f
    • Hans Wennborg's avatar
      Merging r366570: · 19e5da4e
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366570 | lkail | 2019-07-19 14:58:16 +0200 (Fri, 19 Jul 2019) | 9 lines
      
      [MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs.
      
      Summary:
      Current PRE hoists common computations into
      CMBB = DT->findNearestCommonDominator(MBB, MBB1).
      However, if CMBB is in a hot loop body, we might get performance
      degradation.
      
      Differential Revision: https://reviews.llvm.org/D64394
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366729
      19e5da4e
    • Hans Wennborg's avatar
      Merging r366455 and r366559: · f042a64d
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366455 | kadircet | 2019-07-18 18:13:23 +0200 (Thu, 18 Jul 2019) | 9 lines
      
      [clangd] Get rid of dots and dotsdots within GlobalCompilationDatabase
      
      Reviewers: sammccall
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D64860
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366559 | kadircet | 2019-07-19 12:18:52 +0200 (Fri, 19 Jul 2019) | 19 lines
      
      Revert "Revert r366458, r366467 and r366468"
      
      This reverts commit 9c377105.
      
      [clangd][BackgroundIndexLoader] Directly store DependentTU while loading shard
      
      Summary:
      We were deferring the population of DependentTU field in LoadedShard
      until BackgroundIndexLoader was consumed. This actually triggers a use after
      free since the shards FileToTU was pointing at could've been moved while
      consuming the Loader.
      
      Reviewers: sammccall
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D64980
      ------------------------------------------------------------------------
      
      llvm-svn: 366718
      f042a64d
    • Hans Wennborg's avatar
      Merging r366448 and r366457: · f3456bb9
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366448 | ibiryukov | 2019-07-18 17:21:34 +0200 (Thu, 18 Jul 2019) | 24 lines
      
      [ASTUnit] Fix a regression in cached completions
      
      Summary:
      After r345152 cached completions started adding namespaces after
      nested name specifiers, e.g. in `some_name::^`
      
      The CCC_Symbol indicates the completed item cannot be a namespace (it is
      described as being "a type, a function or a variable" in the comments).
      
      Therefore, 'nested specifier' completions should only be added from cache
      when the context is CCC_SymbolOrNewName (which roughly seems to indicate
      that a nested name specifier is allowed).
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=42646
      
      Reviewers: kadircet, sammccall
      
      Reviewed By: kadircet, sammccall
      
      Subscribers: arphaman, nik, sammccall, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D64918
      ```
      
      ---------------------------------------------------------------------
      
      ------------------------------------------------------------------------
      r366457 | ibiryukov | 2019-07-18 18:24:09 +0200 (Thu, 18 Jul 2019) | 1 line
      
      [ASTUnit] Attempt to unbreak Windows buildbots after r366448
      ------------------------------------------------------------------------
      
      llvm-svn: 366717
      f3456bb9
    • Hans Wennborg's avatar
      Merging r366451: · 5844a5e9
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366451 | sureyeaah | 2019-07-18 17:38:03 +0200 (Thu, 18 Jul 2019) | 13 lines
      
      [Clangd] Changed ExtractVariable to only work on non empty selections
      
      Summary:
      - For now, we don't trigger in any case if it's an empty selection
      - Fixed unittests
      
      Reviewers: kadircet, sammccall
      
      Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D64912
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366714
      5844a5e9
    • Hans Wennborg's avatar
      Merging r366443: · dc586a6c
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366443 | sammccall | 2019-07-18 17:00:38 +0200 (Thu, 18 Jul 2019) | 1 line
      
      [clangd] Disable DumpRecordLayout by default per https://bugs.llvm.org/show_bug.cgi?id=42670
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366713
      dc586a6c
    • Hans Wennborg's avatar
      Merging r366699: · 0382aa15
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366699 | probinson | 2019-07-22 18:14:09 +0200 (Mon, 22 Jul 2019) | 1 line
      
      [X86] Remove const from some intrinsics that shouldn't have them
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366711
      0382aa15
    • Hans Wennborg's avatar
      Merging r366687: · 0581d619
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366687 | aaronballman | 2019-07-22 15:22:08 +0200 (Mon, 22 Jul 2019) | 3 lines
      
      Update documentation for all CERT checks that correspond to a recommendation.
      
      CERT removed their C++ secure coding recommendations from public view and so the links within that documentation are stale. This updates various pieces of documentation to make this more clear, and to help add substance where our docs deferred to CERT's wiki.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366710
      0581d619
    • Hans Wennborg's avatar
      Merging r366504: · f04c5c0d
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366504 | tlively | 2019-07-18 23:50:24 +0200 (Thu, 18 Jul 2019) | 15 lines
      
      [WebAssembly] Use passive segments by default when memory is shared
      
      Summary:
      This change makes it so that passing --shared-memory is all a user
      needs to do to get proper multithreaded code. This default can still
      be explicitly overridden for any reason using --passive-segments and
      --active-segments.
      
      Reviewers: sbc100, quantum
      
      Subscribers: dschuff, jgravelle-google, aheejin, sunfish, jfb, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D64950
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366709
      f04c5c0d
    • Hans Wennborg's avatar
      Merging r366500: · 6de5254e
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366500 | quantum | 2019-07-18 23:18:24 +0200 (Thu, 18 Jul 2019) | 13 lines
      
      [WebAssembly] fix bug in finding .tdata segment
      
      Summary: Fix bug in `wasm-ld`'s `Writer::createInitTLSFunction` that only finds `.tdata` if it's the first section.
      
      Reviewers: tlively, aheejin, sbc100
      
      Reviewed By: sbc100
      
      Subscribers: dschuff, jgravelle-google, sunfish, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D64947
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366707
      6de5254e
    • Hans Wennborg's avatar
      Merging r366483: · bf93c6e0
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366483 | abataev | 2019-07-18 21:40:24 +0200 (Thu, 18 Jul 2019) | 6 lines
      
      [OPENMP]Fix sharing of threadprivate variables with TLS support.
      
      If the threadprivate variable is used in the copyin clause on inner
      parallel directive with TLS support, we capture this variable in all
      outer OpenMP scopes. It leads to the fact that in all scopes we're
      working with the original variable, not the threadprivate copies.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366706
      bf93c6e0
    • Hans Wennborg's avatar
      Merging r366474: · f8ed38c5
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366474 | abataev | 2019-07-18 19:49:13 +0200 (Thu, 18 Jul 2019) | 8 lines
      
      [OPENMP]Provide correct data sharing attributes for loop control
      variables.
      
      Loop control variables are private in loop-based constructs and we shall
      take this into account when generate the code for inner constructs.
      Currently, those variables are reported as shared in many cases. Moved
      the analysis of the data-sharing attributes of the loop control variable
      to an early semantic stage to correctly handle their attributes.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366705
      f8ed38c5
    • Hans Wennborg's avatar
      Merging r366431: · 1f2d26a7
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366431 | spatel | 2019-07-18 14:48:01 +0200 (Thu, 18 Jul 2019) | 13 lines
      
      [x86] try harder to form LEA from ADD to avoid flag conflicts (PR40483)
      
      LEA doesn't affect flags, so use it more liberally to replace an ADD when
      we know that the ADD operands affect flags.
      
      In the motivating example from PR40483:
      https://bugs.llvm.org/show_bug.cgi?id=40483
      ```
      
      this lets us avoid duplicating a math op just to avoid flag conflict.
      
      As mentioned in the TODO comments, this heuristic can be extended to
      fire more often if that leads to more improvements.
      
      Differential Revision: https://reviews.llvm.org/D64707
      ------------------------------------------------------------------------
      
      llvm-svn: 366704
      1f2d26a7
    • Ulrich Weigand's avatar
      [SystemZ] Add release notes on the LLVM 9 branch · 9488d77b
      Ulrich Weigand authored
      llvm-svn: 366693
      9488d77b
    • Ulrich Weigand's avatar
      Revert r366413 on LLVM 9 branch · 03f9f945
      Ulrich Weigand authored
      This commit caused test suite failures on multiple platforms and
      has been reverted on mainline as r366472/r366482.
      
      llvm-svn: 366690
      03f9f945
  7. 19 Jul, 2019 7 commits
    • Hans Wennborg's avatar
      Merging r366511: · 1931d3cb
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366511 | lhames | 2019-07-19 00:47:18 +0200 (Fri, 19 Jul 2019) | 3 lines
      
      Update the SimpleJIT class in the clang-interpreter example to use ORCv2.
      
      This will remove the ORCv1 deprecation warnings.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366556
      1931d3cb
    • Hans Wennborg's avatar
      Merging r366480: · b51b64e4
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366480 | asb | 2019-07-18 20:29:59 +0200 (Thu, 18 Jul 2019) | 25 lines
      
      [RISCV] Hard float ABI support
      
      The RISC-V hard float calling convention requires the frontend to:
      
      * Detect cases where, once "flattened", a struct can be passed using
      int+fp or fp+fp registers under the hard float ABI and coerce to the
      appropriate type(s)
      * Track usage of GPRs and FPRs in order to gate the above, and to
      determine when signext/zeroext attributes must be added to integer
      scalars
      
      This patch attempts to do this in compliance with the documented ABI,
      and uses ABIArgInfo::CoerceAndExpand in order to do this. @rjmccall, as
      author of that code I've tagged you as reviewer for initial feedback on
      my usage.
      
      Note that a previous version of the ABI indicated that when passing an
      int+fp struct using a GPR+FPR, the int would need to be sign or
      zero-extended appropriately. GCC never did this and the ABI was changed,
      which makes life easier as ABIArgInfo::CoerceAndExpand can't currently
      handle sign/zero-extension attributes.
      
      Re-landed after backing out 366450 due to missed hunks.
      
      Differential Revision: https://reviews.llvm.org/D60456
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366554
      b51b64e4
    • Hans Wennborg's avatar
      Merging r366433: · 7c86e5b0
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366433 | stefan.graenitz | 2019-07-18 15:30:37 +0200 (Thu, 18 Jul 2019) | 19 lines
      
      [CMake] Always build debugserver on Darwin and allow tests to use the system's one
      
      Summary:
      We can always build debugserver, but we can't always sign it to be useable for testing. `LLDB_USE_SYSTEM_DEBUGSERVER` should only tell whether or not the system debugserver should be used for testing.
      The old behavior complicated the logic around debugserver a lot. The new logic sorts out most of it.
      
      Please note that this patch is in early stage and needs some more testing. It should not affect platfroms other than Darwin. It builds on Davide's approach to validate the code-signing identity at configuration time.
      
      What do you think?
      
      Reviewers: xiaobai, JDevlieghere, davide, compnerd, friss, labath, mgorny, jasonmolenda
      
      Reviewed By: JDevlieghere
      
      Subscribers: lldb-commits, #lldb
      
      Tags: #lldb
      
      Differential Revision: https://reviews.llvm.org/D64806
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366553
      7c86e5b0
    • Hans Wennborg's avatar
      Merging r366429: · eb482e5e
      Hans Wennborg authored
      ```---------------------------------------------------------------------
      r366429 | ibiryukov | 2019-07-18 13:55:33 +0200 (Thu, 18 Jul 2019) | 5 lines
      
      Revert r366422: [OpenCL] Improve destructor support in C++ for OpenCL
      
      Reason: this commit causes crashes in the clang compiler when building
      LLVM Support with libc++, see https://bugs.llvm.org/show_bug.cgi?id=42665
      for details.
      ```
      
      ---------------------------------------------------------------------
      
      llvm-svn: 366552
      eb482e5e
    • Hans Wennborg's avatar
      Drop svn version suffix. · 24c2e53e
      Hans Wennborg authored
      llvm-svn: 366550
      24c2e53e
    • Hans Wennborg's avatar
      Drop svn version suffix. · a4f7f724
      Hans Wennborg authored
      llvm-svn: 366549
      a4f7f724
    • Hans Wennborg's avatar
      Drop svn version suffix. · 135370e0
      Hans Wennborg authored
      llvm-svn: 366548
      135370e0