1. 25 Aug, 2022 10 commits
  2. 23 Aug, 2022 5 commits
    • Nemanja Ivanovic's avatar
      [GTest] Change detection of libpthread · 4e4252f9
      Nemanja Ivanovic authored
      We currently use CMake's find_library function to detect whether
      libpthread exists on the system to determine if pthread should
      be added on the link step. However, there are configurations in
      which CMake's path checking fails to find the library even though
      the toolchain has it.
      
      One such case is with Clang 14.0.0 on PowerPC. Due to a recent
      change, the build puts libc++ and related libraries in a
      subdirectory that appears to depend on the default target triple.
      CMake then uses that subdirectory to determine the architecture
      and adds that name to its search paths. However, the triple for
      the system GNU toolchain is different so CMake fails to find it.
      Namely, Clang 14.0.0's default target triple and the subdirectory
      name is powerpc64le-unknown-linux-gnu whereas the system GNU
      toolchain has powerpc64le-linux-gnu. Clang's driver has no trouble
      finding either the GNU includes/libraries or Clang's own. But
      CMake seems to get this wrong.
      
      The net result of this is that we can't do a shared libraries
      build of ToT with Clang 14.0.0.
      
      This patch proposes using HAVE_LIBPTHREAD which CMake seems to
      determine by compiling a test file with -lpthread (or perhaps
      -pthread, I can't really get CMake to tell me how it is figuring
      this out). If that variable tells CMake that the build compiler
      accepts the pthread option, it seems reasonable to depend on
      that variable to determine if we should add it to the link step
      when building the llvm_gtest library.
      
      (cherry picked from commit 8537a99b)
      4e4252f9
    • Joseph Huber's avatar
      [CUDA] Fix output name being replaced in device-only mode · bcb8d21f
      Joseph Huber authored
      When performing device only compilation, there was an issue where
      `cubin` outputs were being renamed to `cubin` despite the user's name.
      This is required in a normal compilation flow as the Nvidia tools only
      understand specific filenames instead of checking magic bytes for some
      unknown reason. We do not want to perform this transformation when the
      user is performing device only compilation.
      
      Reviewed By: tra
      
      Differential Revision: https://reviews.llvm.org/D131278
      
      (cherry picked from commit 3b523411)
      bcb8d21f
    • Kadir Cetinkaya's avatar
      [clangd] Support for standard type hierarchy · 99b62546
      Kadir Cetinkaya authored
      This is mostly a mechanical change to adapt standard type hierarchy
      support proposed in LSP 3.17 on top of clangd's existing extension support.
      
      This does mainly two things:
      - Incorporate symbolids for all the parents inside resolution parameters, so
        that they can be retrieved from index later on. This is a new code path, as
        extension always resolved them eagerly.
      - Propogate parent information when resolving children, so that at least one
        branch of parents is always preserved. This is to address a shortcoming in the
        extension.
      
      This doesn't drop support for the extension, but it's deprecated from now on and
      will be deleted in upcoming releases. Currently we use the same struct
      internally but don't serialize extra fields.
      
      Fixes https://github.com/clangd/clangd/issues/826.
      
      Differential Revision: https://reviews.llvm.org/D131385
      
      (cherry picked from commit 83411bf0)
      99b62546
    • Alexander Shaposhnikov's avatar
      [InstCombine] Refactor foldICmpMulConstant · 07773645
      Alexander Shaposhnikov authored
      This is a follow-up to 2ebfda24
      (replace "if" with "else if" since the cases nuw/nsw
      were meant to be handled separately).
      
      Test plan:
      1/ ninja check-llvm check-clang check-lld
      2/ Bootstrapped LLVM/Clang pass tests
      
      (cherry picked from commit d982f1e0)
      07773645
    • Jonas Hahnfeld's avatar
      [RISCV] Re-enable JIT support · 69c35fa2
      Jonas Hahnfeld authored
      Commit 8922adf6 recently made JITTargetMachineBuilder honor the
      hasJIT property of the target. LLVM supports just-in-time compilation
      on RISC-V, so set the flag.
      
      Differential Revision: https://reviews.llvm.org/D131617
      
      (cherry picked from commit 940733d6)
      69c35fa2
  3. 22 Aug, 2022 9 commits
  4. 20 Aug, 2022 2 commits
  5. 18 Aug, 2022 2 commits
  6. 17 Aug, 2022 4 commits
  7. 16 Aug, 2022 8 commits