[all-commits] [llvm/llvm-project] 4c9b7f: [LLVM] Introduce 'llvm-offload-wrapper' tool (#153...

Oleksandr T. via All-commits all-commits at lists.llvm.org
Tue Aug 19 09:49:14 PDT 2025


  Branch: refs/heads/revert-154018-fix/153745
  Home:   https://github.com/llvm/llvm-project
  Commit: 4c9b7ff04cb4376379a483fcbd2af780a62473d6
      https://github.com/llvm/llvm-project/commit/4c9b7ff04cb4376379a483fcbd2af780a62473d6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M clang/docs/ClangLinkerWrapper.rst
    M llvm/test/CMakeLists.txt
    A llvm/test/Other/offload-wrapper.ll
    A llvm/tools/llvm-offload-wrapper/CMakeLists.txt
    A llvm/tools/llvm-offload-wrapper/llvm-offload-wrapper.cpp

  Log Message:
  -----------
  [LLVM] Introduce 'llvm-offload-wrapper' tool (#153504)

Summary:
This is a standalone tool that does the wrapper stage of the
`clang-linker-wrapper`. We want this to be an external tool because
currently there's no easy way to split apart what the
clang-linker-wrapper is doing under the hood. With this tool, users can
manually extract files with `clang-offload-packager`, feed them through
`clang --target=<triple>` and then use this tool to generate a `.bc`
file they can give to the linker. The goal here is to make reproducing
the linker wrapper steps easier.


  Commit: ccd5ddab9bd966aa7d6a3ca7f36d037992ba7bae
      https://github.com/llvm/llvm-project/commit/ccd5ddab9bd966aa7d6a3ca7f36d037992ba7bae
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/refactor/tweaks/ExtractFunction.cpp

  Log Message:
  -----------
  [clang-tools-extra] Replace SmallSet with SmallPtrSet (NFC) (#154365)

This patch replaces SmallSet<T *, N> with SmallPtrSet<T *, N>.  Note
that SmallSet.h "redirects" SmallSet to SmallPtrSet for pointer
element types:

  template <typename PointeeType, unsigned N>
class SmallSet<PointeeType*, N> : public SmallPtrSet<PointeeType*, N>
{};

We only have 10 instances that rely on this "redirection", with more
than half of them under clang-tools-extra/.  Since the redirection
doesn't improve readability, this patch replaces SmallSet with
SmallPtrSet for pointer element types.

I'm planning to remove the redirection eventually.


  Commit: 67ca5dad16e9271e62987f7c563b109a07dc8788
      https://github.com/llvm/llvm-project/commit/67ca5dad16e9271e62987f7c563b109a07dc8788
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M polly/lib/Analysis/ScopBuilder.cpp

  Log Message:
  -----------
  [polly] Replace SmallSet with SmallPtrSet (NFC) (#154367)

This patch replaces SmallSet<T *, N> with SmallPtrSet<T *, N>.  Note
that SmallSet.h "redirects" SmallSet to SmallPtrSet for pointer
element types:

  template <typename PointeeType, unsigned N>
class SmallSet<PointeeType*, N> : public SmallPtrSet<PointeeType*, N>
{};

We only have 10 instances that rely on this "redirection". Since the
redirection doesn't improve readability, this patch replaces SmallSet
with SmallPtrSet for pointer element types.

I'm planning to remove the redirection eventually.


  Commit: 069ad2353c4bd32b883e2d5ce4a7f191bf6098e1
      https://github.com/llvm/llvm-project/commit/069ad2353c4bd32b883e2d5ce4a7f191bf6098e1
  Author: Drew Kersnar <dkersnar at nvidia.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    A llvm/test/CodeGen/NVPTX/lower-args-alignment.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll

  Log Message:
  -----------
  [NVPTXLowerArgs] Add align attribute to return value of addrspace.wrap intrinsic (#153889)

If alignment inference happens after NVPTXLowerArgs these addrspace wrap
intrinsics can prevent computeKnownBits from deriving alignment of
loads/stores from parameters. To solve this, we can insert an alignment
annotation on the generated intrinsic so that computeKnownBits does not
need to traverse through it to find the alignment.


  Commit: e2777af84b5acce6f95d71653b817011e6f57a02
      https://github.com/llvm/llvm-project/commit/e2777af84b5acce6f95d71653b817011e6f57a02
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M llvm/tools/llvm-offload-wrapper/CMakeLists.txt

  Log Message:
  -----------
  [LLVM] Add missing dependency for offload-wrapper tool


  Commit: e04fedadba5119ef04f45f157eae8243228d45dd
      https://github.com/llvm/llvm-project/commit/e04fedadba5119ef04f45f157eae8243228d45dd
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    A clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-local3.hlsl

  Log Message:
  -----------
  [HLSL] Tests for local resource arrays (#153257)

Add tests for local arrays of resources.

Closes #145425


  Commit: f1e56ac0321a854432f16910eb2203a482b424b6
      https://github.com/llvm/llvm-project/commit/f1e56ac0321a854432f16910eb2203a482b424b6
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Gnu.h
    M clang/lib/Driver/ToolChains/Hurd.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Managarm.cpp
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/10/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/10/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/10/include/c++/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/11/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/11/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/11/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/12/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/12/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/12/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/10/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/10/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/10/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/11/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/11/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/11/include/c++/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/12/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/12/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/12/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/10/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/10/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/10/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/11/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/11/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/11/include/c++/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/12/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/12/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/12/include/c++/.keep
    R clang/test/Driver/gcc-toolchain-libstdcxx.cpp

  Log Message:
  -----------
  Revert "[Clang] Take libstdc++ into account during GCC detection" (#154368)

Reverts llvm/llvm-project#145056


  Commit: f82054eaa214c8b5c33fcae01b212a6b32a135f8
      https://github.com/llvm/llvm-project/commit/f82054eaa214c8b5c33fcae01b212a6b32a135f8
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/redundant-vfmvsf.ll

  Log Message:
  -----------
  [RISCV] Handle more cases when combining (vfmv.s.f (extract_subvector X, 0)) (#154175)

Previously, we fold `(vfmv.s.f (extract_subvector X, 0))` into X when
X's type is the same as `vfmv.s.f`'s result type. This patch generalizes
it by folding it into insert_subvector when X is narrower and
extract_subvector when X is wider.

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 28f2fb24e1668943172cfd7a381c4262d51615b4
      https://github.com/llvm/llvm-project/commit/28f2fb24e1668943172cfd7a381c4262d51615b4
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M lld/test/wasm/pie.s
    M lld/wasm/SyntheticSections.cpp

  Log Message:
  -----------
  Revert "[lld][WebAssembly] Do not relocate ABSOLUTE symbols" (#154371)

Reverts llvm/llvm-project#153763

This caused a bunch of failures on the emscripten waterfall,
specifically most of the lsan tests started failing.


  Commit: eef17cb4dc546d528d5a80d8f681bedd83766891
      https://github.com/llvm/llvm-project/commit/eef17cb4dc546d528d5a80d8f681bedd83766891
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-08-19 (Tue, 19 Aug 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/refactor/tweaks/ExtractFunction.cpp
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Gnu.h
    M clang/lib/Driver/ToolChains/Hurd.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Managarm.cpp
    A clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    A clang/test/CodeGenHLSL/resources/res-array-local3.hlsl
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/10/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/10/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/10/include/c++/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/11/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/11/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/11/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/12/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/12/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc10/usr/lib/gcc/x86_64-linux-gnu/12/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/10/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/10/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/10/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/11/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/11/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/11/include/c++/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/12/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/12/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc11/usr/lib/gcc/x86_64-linux-gnu/12/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/10/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/10/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/10/include/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/11/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/11/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/11/include/c++/.keep
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/12/crtbegin.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/12/crtend.o
    R clang/test/Driver/Inputs/gcc_toolchain_libstdcxx/gcc12/usr/lib/gcc/x86_64-linux-gnu/12/include/c++/.keep
    R clang/test/Driver/gcc-toolchain-libstdcxx.cpp
    M lld/test/wasm/pie.s
    M lld/wasm/SyntheticSections.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CMakeLists.txt
    A llvm/test/CodeGen/NVPTX/lower-args-alignment.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-args.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    A llvm/test/CodeGen/RISCV/rvv/redundant-vfmvsf.ll
    A llvm/test/Other/offload-wrapper.ll
    A llvm/tools/llvm-offload-wrapper/CMakeLists.txt
    A llvm/tools/llvm-offload-wrapper/llvm-offload-wrapper.cpp
    M polly/lib/Analysis/ScopBuilder.cpp

  Log Message:
  -----------
  Merge branch 'main' into revert-154018-fix/153745


Compare: https://github.com/llvm/llvm-project/compare/68f6b7663bee...eef17cb4dc54

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list