[all-commits] [llvm/llvm-project] eb9574: [ADT] Add `SmallVector::assign` overload for `Arra...

Florian Mayer via All-commits all-commits at lists.llvm.org
Wed Oct 22 16:21:06 PDT 2025


  Branch: refs/heads/users/fmayer/spr/flowsensitive-statusor-6n-support-pointer-comparison
  Home:   https://github.com/llvm/llvm-project
  Commit: eb9574d0512bae1f08caad4aef324d61778ac3c7
      https://github.com/llvm/llvm-project/commit/eb9574d0512bae1f08caad4aef324d61778ac3c7
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M llvm/include/llvm/ADT/SmallVector.h
    M llvm/unittests/ADT/SmallVectorTest.cpp

  Log Message:
  -----------
  [ADT] Add `SmallVector::assign` overload for `ArrayRef` (#164680)

We already have a matching constructor from ArrayRef, so add support for
assigning from ArrayRef as well.


  Commit: 18085561a9a522692c7e6b057fb906bf38e86c12
      https://github.com/llvm/llvm-project/commit/18085561a9a522692c7e6b057fb906bf38e86c12
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-10-23 (Thu, 23 Oct 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h

  Log Message:
  -----------
  [ORC] Remove an unused member variable.


  Commit: f2c235a892fc36a82cb8c55790eeaca7bd693ebf
      https://github.com/llvm/llvm-project/commit/f2c235a892fc36a82cb8c55790eeaca7bd693ebf
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    A clang/test/CodeGen/allow-ubsan-check-divergence.c

  Log Message:
  -----------
  [ubsan][test] Add allow-ubsan-check-divergence.c (#164673)

This testcase shows that adding a ubsan check and then removing it
during the LowerAllowCheck pass does not entirely undo the effects of
adding the check.


  Commit: bfc322dd724735bedf763705f373749dd1b7ed65
      https://github.com/llvm/llvm-project/commit/bfc322dd724735bedf763705f373749dd1b7ed65
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-constant-ops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll

  Log Message:
  -----------
  Revert "[VPlan] Run narrowInterleaveGroups during general VPlan optimizations. (#149706)"

This reverts commit 8d29d09309654541fb2861524276ada6a3ebf84c.

There have been reports of mis-compiles
in https://github.com/llvm/llvm-project/pull/149706.

Revert while I investigate.


  Commit: c1678e52f956f75f62d3240cf89d69c90b6505a4
      https://github.com/llvm/llvm-project/commit/c1678e52f956f75f62d3240cf89d69c90b6505a4
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M compiler-rt/lib/builtins/gcc_personality_v0.c
    M libunwind/include/__libunwind_config.h
    M libunwind/src/UnwindRegistersRestore.S
    M libunwind/src/UnwindRegistersSave.S

  Log Message:
  -----------
  [PAC][libunwind] Fix gcc build of libunwind and compiler-rt (#164535)

This adds guards on the ptrauth feature checks so that they are only
performed if __has_feature is actually available.


  Commit: 81a9d7528679b82625d27e4618b2388cab14cf79
      https://github.com/llvm/llvm-project/commit/81a9d7528679b82625d27e4618b2388cab14cf79
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  [mlir][acc] Add mapping operation for firstprivate without counter (#164677)

The OpenACC data clause operation `acc.copyin` used for mapping
variables to device memory includes bookkeeping required by the OpenACC
spec for updating present counters. However, for firstprivate variables,
no counters should be updated since this clause creates a private copy
on the device initialized with the original value from the host (as
described in OpenACC 3.4 section 2.5.14: "the copy will be initialized
with the value of that item on the local thread").

This PR introduces the `acc.firstprivate_map` operation to capture these
mapping semantics without counter updates. A test is included
demonstrating how this operation can be used to initialize a
materialized private variable (represented by `memref.alloca` inside an
`acc.parallel` region).


  Commit: 07ed101f8dab6e7080aa8e89ba03ad61be3ce93c
      https://github.com/llvm/llvm-project/commit/07ed101f8dab6e7080aa8e89ba03ad61be3ce93c
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda] Support logical(4) in syncthread_and|count|or functions (#164706)


  Commit: a7672fee0fba5fd673bd17f91d421fc0a896cebc
      https://github.com/llvm/llvm-project/commit/a7672fee0fba5fd673bd17f91d421fc0a896cebc
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll

  Log Message:
  -----------
  [WebAssembly] Fixup test after bfc322dd724735.

Test update was missed in bfc322dd724735 due a codegen test running
loop-vectorize directly. The loop does not get vectorized any longer.


  Commit: f5fdd43b16192bb85beb43e6cfe8d5e12a3ba976
      https://github.com/llvm/llvm-project/commit/f5fdd43b16192bb85beb43e6cfe8d5e12a3ba976
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Serialization/ASTReader.cpp

  Log Message:
  -----------
  [clang] Refactor `ASTUnit::LoadFromASTFile()` (#164265)

This PR refactors `ASTUnit::LoadFromASTFile()` to be easier to follow.
Conceptually, it tries to read an AST file, adopt the serialized
options, and set up `Sema` and `ASTContext` to deserialize the AST file
contents on-demand.

The implementation of this used to be spread across an
`ASTReaderListener` and the function in question. Figuring out what
listener method gets called when and how it's supposed to interact with
the rest of the functionality was very unclear. The `FileManager`'s VFS
was being swapped-out during deserialization, the options were being
adopted by `Preprocessor` and others just-in-time to pass `ASTReader`'s
validation checks, and the target was being initialized somewhere in
between all of this. This lead to a very muddy semantics.

This PR splits `ASTUnit::LoadFromASTFile()` into three distinct steps:
1. Read out the options from the AST file.
2. Initialize objects from the VFS to the `ASTContext`.
3. Load the AST file and hook it up with the compiler objects.

This should be much easier to understand, and I've done my best to
clearly document the remaining gotchas.

(This was originally motivated by the desire to remove
`FileManager::setVirtualFileSystem()` and make it impossible to swap out
VFSs from underneath `FileManager` mid-compile.)


  Commit: 764acd81de99859c595842b40a12f496decb2bad
      https://github.com/llvm/llvm-project/commit/764acd81de99859c595842b40a12f496decb2bad
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp

  Log Message:
  -----------
  [FlowSensitive] [StatusOr] [5/N] Support absl::OkStatus et al (#163872)

This allows comparison which these status codes


  Commit: f4af1664b7339e0a587de8be5b9a5aecc95b3dcd
      https://github.com/llvm/llvm-project/commit/f4af1664b7339e0a587de8be5b9a5aecc95b3dcd
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/CodeGen/allow-ubsan-check-divergence.c
    M compiler-rt/lib/builtins/gcc_personality_v0.c
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M libunwind/include/__libunwind_config.h
    M libunwind/src/UnwindRegistersRestore.S
    M libunwind/src/UnwindRegistersSave.S
    M llvm/include/llvm/ADT/SmallVector.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-constant-ops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
    M llvm/unittests/ADT/SmallVectorTest.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]


  Commit: d122cde142547579e079606d6286651319e30d10
      https://github.com/llvm/llvm-project/commit/d122cde142547579e079606d6286651319e30d10
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-10-22 (Wed, 22 Oct 2025)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/CodeGen/allow-ubsan-check-divergence.c
    M compiler-rt/lib/builtins/gcc_personality_v0.c
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M libunwind/include/__libunwind_config.h
    M libunwind/src/UnwindRegistersRestore.S
    M libunwind/src/UnwindRegistersSave.S
    M llvm/include/llvm/ADT/SmallVector.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-constant-ops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
    M llvm/unittests/ADT/SmallVectorTest.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  simlify matcher

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/ca53f731b41f...d122cde14254

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