[all-commits] [llvm/llvm-project] 75f884: Revert "[SandboxIR][SandboxVec] Remove score track...
Vitaly Buka via All-commits
all-commits at lists.llvm.org
Mon May 4 13:15:45 PDT 2026
Branch: refs/heads/users/vitalybuka/spr/nfcasan-use-asan_interfaceh-in-contiguous_container_crashcpp
Home: https://github.com/llvm/llvm-project
Commit: 75f884b96dfa082227fb730435c68353cd3376c5
https://github.com/llvm/llvm-project/commit/75f884b96dfa082227fb730435c68353cd3376c5
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M llvm/include/llvm/SandboxIR/Region.h
R llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.h
M llvm/lib/SandboxIR/Region.cpp
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.cpp
R llvm/lib/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.cpp
M llvm/unittests/SandboxIR/PassTest.cpp
M llvm/unittests/SandboxIR/RegionTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
R llvm/unittests/Transforms/Vectorize/SandboxVectorizer/RegionWithScoreTest.cpp
Log Message:
-----------
Revert "[SandboxIR][SandboxVec] Remove score tracking from Region, add RegionWithScore" (#195708)
Reverts llvm/llvm-project#190293
Commit: e6d16760b0feef180ba44aaebe2e128dbcec88c1
https://github.com/llvm/llvm-project/commit/e6d16760b0feef180ba44aaebe2e128dbcec88c1
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M lldb/bindings/python/get-python-config.py
Log Message:
-----------
[lldb] Use (_d).pyd as Python extension suffix on Windows (#195262)
The current Windows x86_x64 installer ships a `_lldb.abi3None` in
`lib\site-packages\lldb\native`. This will cause errors when trying to
import LLDB in Python.
We always use `.abi3{SHLIB_SUFFIX}` as the Python extension suffix in
`get-python-config.py`. On Windows(-msvc), this won't result in the
correct path. `SHLIB_SUFFIX` is not defined there.
The recognized extensions are:
```console
> python -c "import importlib.machinery;print(importlib.machinery.EXTENSION_SUFFIXES)"
['.cp314-win_amd64.pyd', '.pyd']
> python_d -c "import importlib.machinery;print(importlib.machinery.EXTENSION_SUFFIXES)"
['_d.cp314-win_amd64.pyd', '_d.pyd']
```
The first one is equal to `sysconfig.get_config_var("EXT_SUFFIX")`.
I changed `get-python-config.py` to use `.pyd` if `SHLIB_SUFFIX` is
undefined. This is currently hardcoded. It seems like cpython has some
contract that the last suffix in `EXTENSION_SUFFIXES` is the untagged
one ([from this
test](https://github.com/python/cpython/blob/f2c7c0d2b799c927d9a78e87e4a640d3f9b0356c/Lib/test/test_traceback.py#L5225-L5232)).
But I haven't found any documentation on that.
Commit: 8e341130d9c740a17e6321810204438f25963429
https://github.com/llvm/llvm-project/commit/8e341130d9c740a17e6321810204438f25963429
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M compiler-rt/test/asan/TestCases/use-after-poison-history-size-partial-granule.cpp
Log Message:
-----------
[NFC][asan] Cleanup use-after-poison-history-size-partial-granule.cpp test (#195667)
Update the test to use more robust argument passing for offsets and
sizes.
Commit: 7a7efa27f315e78ed9cadf3e967b1fc576b34b95
https://github.com/llvm/llvm-project/commit/7a7efa27f315e78ed9cadf3e967b1fc576b34b95
Author: Wanyi <wanyi at meta.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ConfigurationDoneRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Fix core file stop reason overridden to "entry" (#195352)
# Summary:
There's a behavior change on core file stop reason
It used to report the actual crash (stop) reason:
- reason: "exception" (reflecting the actual crash signal/exception)
- description: crash signals, eg."signal SIGSEGV"
However, the stopped event now always reports:
- reason: "entry"
- The crash reason is lost
## Root Cause
1. `bd0efcaa34b1` (Oct 31, 2025) — "[lldb-dap] Correctly trigger 'entry'
stop reasons"
This commit changed CreateThreadStopped in `JSONUtils.cpp`:
Changed `body.try_emplace("reason", "entry")` to `body["reason"] =
"entry"`, and this will overwrites it unconditionally.
2. `51e5b6c6acc0` (Feb 3, 2026) — "Migrating 'stopped' event to
structured types"
Rewrote the stopped event with an if/else that completely skips the stop
reason switch when on_entry=true:
```
if (on_entry) {
body.reason = eStoppedReasonEntry; // thread stop reason never inspected
} else { ... }
```
## The Underlying Design Issue
`stop_at_entry` serves double duty in AttachRequestHandler.cpp:40-41:
```
if (!args.coreFile.empty())
dap.stop_at_entry = true;
```
This flag both (a) `prevents process.Continue()` from being called
(correct for core files) and (b) tells `SendThreadStoppedEvent` to use
reason "entry" (wrong for core files — should report the actual crash
reason).
# Test Plan:
Added DAP test to check for stop reasons
Launch a coredump debug session with local build lldb-dap and observe
the stop reason
<img width="262" height="181" alt="image"
src="https://github.com/user-attachments/assets/077dced9-2f0a-477a-825f-3b60483a69d3"
/>
Commit: 7c9717848851f3a71908becab4312ddc2d8482b8
https://github.com/llvm/llvm-project/commit/7c9717848851f3a71908becab4312ddc2d8482b8
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/test/Sema/warn-lifetime-safety-invalidations.cpp
Log Message:
-----------
Revert "[LifetimeSafety] Detect iterator invalidation through container aliases" (#195702)
This introduces unintended side effects and causes downstream crashes,
so reverting for now.
Reverts llvm/llvm-project#195231
Commit: d7693e331ce97193e8ae9c3a2b2ee1302bc6ae63
https://github.com/llvm/llvm-project/commit/d7693e331ce97193e8ae9c3a2b2ee1302bc6ae63
Author: jiel-nv <37816794+jiel-nv at users.noreply.github.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialectBytecode.td
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/LLVMIR/types-invalid.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[MLIR][LLVM] Add variant part debug info support (#195321)
#### Summary
This PR extends the MLIR LLVM dialect debug-info attributes to represent
DWARF variant parts, discriminators, and per-alternative discriminator
values.
The change adds `identifier` and `discriminator` support to
`DICompositeTypeAttr`, allowing MLIR to model `DW_TAG_variant_part`
metadata that LLVM IR already supports. It also broadens
`DIDerivedTypeAttr`'s `extraData` field from `DINodeAttr` to a verified
polymorphic `Attribute`, supporting both debug-info nodes and integer
constants used by variant alternatives.
#### Details
- Add `identifier` and `discriminator` fields to `DICompositeTypeAttr`,
bytecode serialization, LLVM IR import/export, C API bindings, and Flang
call sites.
- Change `DIDerivedTypeAttr.extraData` to accept either `DINodeAttr` or
`IntegerAttr`, with verifier coverage for invalid attribute kinds.
- Preserve integer bit width when importing
`ConstantAsMetadata(ConstantInt)` into MLIR.
- Add parse/print, verifier, LLVM IR import/export, and C API test
coverage for variant-part debug info.
---------
Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>
Commit: 90e17d269ee7454453a225faa050eefdfe709c5d
https://github.com/llvm/llvm-project/commit/90e17d269ee7454453a225faa050eefdfe709c5d
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_stat.h
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/chmod.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/fchmod.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/fchmodat.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/mkdir.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/mkdirat.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/statx.h
M libc/src/sys/stat/chmod.h
M libc/src/sys/stat/fchmod.h
M libc/src/sys/stat/fchmodat.h
M libc/src/sys/stat/fstat.h
M libc/src/sys/stat/linux/CMakeLists.txt
M libc/src/sys/stat/linux/chmod.cpp
M libc/src/sys/stat/linux/fchmod.cpp
M libc/src/sys/stat/linux/fchmodat.cpp
M libc/src/sys/stat/linux/fstat.cpp
M libc/src/sys/stat/linux/kernel_statx.h
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/mkdir.cpp
M libc/src/sys/stat/linux/mkdirat.cpp
M libc/src/sys/stat/linux/stat.cpp
M libc/src/sys/stat/lstat.h
M libc/src/sys/stat/mkdir.h
M libc/src/sys/stat/mkdirat.h
M libc/src/sys/stat/stat.h
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/sys/stat/CMakeLists.txt
M libc/test/src/sys/stat/mkdirat_test.cpp
M libc/test/src/sys/statvfs/linux/CMakeLists.txt
M libc/test/src/sys/statvfs/linux/fstatvfs_test.cpp
M libc/test/src/sys/statvfs/linux/statvfs_test.cpp
M libc/test/src/unistd/CMakeLists.txt
M libc/test/src/unistd/rmdir_test.cpp
Log Message:
-----------
[libc] Add sys/stat syscall wrappers (#195295)
Added ErrorOr-returning syscall wrappers for chmod, fchmod, fchmodat,
mkdir, mkdirat, and statx in
src/__support/OSUtil/linux/syscall_wrappers/. Migrated the sys/stat
Linux entrypoints to use them.
Added hdr/types/struct_stat.h proxy header. Updated stat, lstat, fstat
to use it, and kernel_statx to use the new statx wrapper.
Fixed fchmodat CMakeLists.txt to reference fchmodat.h (was fchmod.h).
Updated test dependencies to use hdr/sys_stat_macros.
Commit: 3a02cca3a351e5b040cd2f29e5a0519cc2175d30
https://github.com/llvm/llvm-project/commit/3a02cca3a351e5b040cd2f29e5a0519cc2175d30
Author: Henry Jiang <henry_jiang2 at apple.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/test/Driver/cspgo-lto.c
M llvm/lib/LTO/LTOCodeGenerator.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
A llvm/test/tools/llvm-lto/Inputs/cspgo-cs.proftext
A llvm/test/tools/llvm-lto/Inputs/cspgo-noncs.proftext
A llvm/test/tools/llvm-lto/cspgo-generate.ll
A llvm/test/tools/llvm-lto/cspgo-thinlto-generate.ll
A llvm/test/tools/llvm-lto/cspgo-thinlto-use.ll
A llvm/test/tools/llvm-lto/cspgo-use.ll
Log Message:
-----------
[Darwin][Clang][PGO] Pass CSPGO related flags to ld when using libLTO.dylib (#195020)
Context-sensitive PGO is currently broken when using libLTO.dylib with
ld on Darwin.
1. `Config.RunCSIRInstr` was not set, and was always false.
2. `ThinLTOCodeGenerator::optimizeModule` always passes an empty
PGOOptions.
3. CSPGO flags were only passed for LLD. Now pass to the linker with
`-mllvm` prefix.
Commit: dc516152188fd0b9c482fab752d178232e2b9488
https://github.com/llvm/llvm-project/commit/dc516152188fd0b9c482fab752d178232e2b9488
Author: Kevin Boyette <KevinBoyette at users.noreply.github.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M mlir/include/mlir/IR/DialectRegistry.h
Log Message:
-----------
[mlir] Fix typo in doc string (indepently => independently) (#195689)
Commit: 98419d22153932cceb7808a0d00e347571de500c
https://github.com/llvm/llvm-project/commit/98419d22153932cceb7808a0d00e347571de500c
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M compiler-rt/lib/asan/asan_poisoning.cpp
Log Message:
-----------
[NFC][asan] Extract out RecordPoison helper function (#195672)
Commit: 5b3fb5a319a4826b568a763b2a7aa826ad3ed2b7
https://github.com/llvm/llvm-project/commit/5b3fb5a319a4826b568a763b2a7aa826ad3ed2b7
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M llvm/test/CodeGen/X86/machinesink-debug-inv-0.mir
Log Message:
-----------
[CodeGen][test][NFC] Quote the llc `-passes` arg (#195707)
The arg
`-passes=mir-debugify,function(machine-function(machine-sink)),mir-strip-debug`
only works w/ the lit built in shell, it causes problems when using a
shell to evaluate this command (e.g. `syntax error near unexpected token
'('`)
Commit: b4321dc0f7827dfa2a2c4dd16243a32a6070250f
https://github.com/llvm/llvm-project/commit/b4321dc0f7827dfa2a2c4dd16243a32a6070250f
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 90e17d2 (#195718)
This fixes 90e17d269ee7454453a225faa050eefdfe709c5d.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 5bf5c6b9ef3c02ad1a7984ea72e4b54f018f84a8
https://github.com/llvm/llvm-project/commit/5bf5c6b9ef3c02ad1a7984ea72e4b54f018f84a8
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
Log Message:
-----------
[MLIR][DebugInfo][test] Add missing DISubprogram type (#195720)
Needed after #194556, and #195321 missed out on the cleanup since it was
still in review.
Commit: 33a4c4940c66dd2bf34ec24aa0c26c59b4c8eead
https://github.com/llvm/llvm-project/commit/33a4c4940c66dd2bf34ec24aa0c26c59b4c8eead
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M compiler-rt/lib/asan/asan_errors.cpp
M compiler-rt/test/asan/TestCases/use-after-poison-history-size-partial-granule.cpp
Log Message:
-----------
[asan] Print standalone partial granules in poison_history_size (#195723)
Currently, `poison_history_size` only reports the poisoning stack trace
if the shadow value is exactly `kAsanUserPoisonedMemoryMagic`.
Unlike heap or stack poisoning, where red-zones
guaranteed, user poisoning more likely end-up with
single standalong granule. Printing history could be helpful.
Merge https://github.com/llvm/llvm-project/pull/195670 into main.
Commit: a9810adef607381ddf5cafc1fd87ae619b8655d2
https://github.com/llvm/llvm-project/commit/a9810adef607381ddf5cafc1fd87ae619b8655d2
Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
A clang/test/CIR/CodeGen/devirtualize.cpp
M clang/test/CIR/CodeGen/vbase.cpp
M clang/test/CIR/CodeGen/virtual-fn-calls-eh.cpp
M clang/test/CIR/CodeGen/virtual-function-calls.cpp
Log Message:
-----------
[CIR] Implement devirtualized member function calls (#195106)
Implement the devirtualization logic in
emitCXXMemberOrOperatorMemberCallExpr that was previously guarded by
MissingFeatures::devirtualizeMemberFunction(). This enables the compiler
to emit direct calls instead of virtual dispatch when the dynamic type
can be statically resolved (e.g., final classes, local variables of
known type).
This fixes the 'devirtualized destructor call' errorNYI in
CIRGenExprCXX.cpp, which is point 5 of #192330.
The implementation follows OGCG: use getDevirtualizedMethod() to check
if devirtualization is possible, then getCorrespondingMethodInClass() to
find the target method. For destructors, use getAddrOfFunction() instead
of getAddrOfCXXStructor() since the devirtualized callee may differ from
the original.
Fixes point 5 of #192330.
Supported by : Claude Opus4.6 High
Commit: 14912ccf3e9148b5333409fe9abea0ee3fa28bd8
https://github.com/llvm/llvm-project/commit/14912ccf3e9148b5333409fe9abea0ee3fa28bd8
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
A clang/test/CIR/IR/construct-catch-param.cir
A clang/test/CIR/IR/invalid-construct-catch-param.cir
Log Message:
-----------
[CIR] Introduce cir.construct_catch_param (#195283)
Add a new CIR operation, `cir.construct_catch_param`, which abstractly
represents the target-specific operations that must performed before
`cir.begin_catch` to bind an in-flight exception object to the local
alloca for a catch parameter.
Generation and lowering of this operation is deferred to follow-up
changes.
Assisted-by: Cursor / claude-opus-4.7-thinking-xhigh
Commit: 00ff3df6e8fdb29a46371842b1b41a33dc6c40db
https://github.com/llvm/llvm-project/commit/00ff3df6e8fdb29a46371842b1b41a33dc6c40db
Author: Michael Jones <michaelrj at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M libc/src/__support/File/CMakeLists.txt
M libc/src/__support/File/file.cpp
M libc/src/__support/File/file.h
M libc/test/src/__support/File/CMakeLists.txt
M libc/test/src/__support/File/file_test.cpp
Log Message:
-----------
[libc] Add wchar support to File (#189504)
This PR adds support for wide character operations such as read, write,
and ungetwc to the File class. It also adds tests but does not yet add
entrypoints, that will be done in a followup.
Assisted by Gemini
Commit: 2b8c1178ddc4e0e524c14ff4d7fb39a9e502fe9f
https://github.com/llvm/llvm-project/commit/2b8c1178ddc4e0e524c14ff4d7fb39a9e502fe9f
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
M flang/test/Lower/CUDA/cuda-device-proc.cuf
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Conversion/GPUToNVVM/CMakeLists.txt
R mlir/lib/Conversion/GPUToNVVM/GPUToNVVM.td
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
M mlir/test/python/dialects/nvvm.py
Log Message:
-----------
[MLIR][NVVM] Remove the `nvvm.barrier0` op (#195608)
This PR removes `nvvm.barrier0` because it is a duplicate op.
`nvvm.barrier` can cover its functionality and more.
`nvvm.barrier0` was added historically. It is confusing to maintain it
right now.
Commit: 06ecfa10b8b37b256122564784dcb9cb267e64fc
https://github.com/llvm/llvm-project/commit/06ecfa10b8b37b256122564784dcb9cb267e64fc
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M libc/include/unistd.yaml
Log Message:
-----------
[libc] add missing pathconf header definitions (#195688)
Commit: fb3e804064c40ca950b709dbf6e9ad28a5364217
https://github.com/llvm/llvm-project/commit/fb3e804064c40ca950b709dbf6e9ad28a5364217
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 00ff3df (#195726)
This fixes 00ff3df6e8fdb29a46371842b1b41a33dc6c40db.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 8af8a60d544afaeac4834bb78f6b55bc890fb5fd
https://github.com/llvm/llvm-project/commit/8af8a60d544afaeac4834bb78f6b55bc890fb5fd
Author: Christopher Di Bella <cjdb at google.com>
Date: 2026-05-05 (Tue, 05 May 2026)
Changed paths:
M libcxx/include/__hash_table
M libcxx/include/__node_handle
M libcxx/include/__thread/thread.h
M libcxx/include/__utility/exchange.h
M libcxx/include/__vector/vector_bool.h
M libcxx/include/forward_list
M libcxx/include/string
M libcxx/test/std/ranges/range.adaptors/range.chunk.by/begin.pass.cpp
Log Message:
-----------
[libc++] Add `__exchange` as a C++11 utility (#187953)
`std::exchange` is helpful for simplifying move operations because we
can couple the resetting component with the move operation. This both
halves the number of necessary lines for each move, and also ensures we
haven't forgotten to reset the moved-from object. Since `std::exchange`
is a C++14 feature, we'll need to use `__exchange` for anything that's
from C++11.
This commit also applies `std::__exchange` to a some trivial use-cases
to show its utility. Applying this project-wide requires a census over
all of our types. It's hoped that this will start a community-wide
clean-up that happens over time.
Commit: 38f153c7a7f1dd060d3afabc05f0fcb0585a10cb
https://github.com/llvm/llvm-project/commit/38f153c7a7f1dd060d3afabc05f0fcb0585a10cb
Author: Prerona Chaudhuri <pchaudhuri at nvidia.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M llvm/lib/TableGen/Record.cpp
A llvm/test/TableGen/incompatible-field-override.td
Log Message:
-----------
[TableGen] Fix null-pointer assert in RecordVal::setValue on failed cast (#195492)
When setValue's getCastTo failed, Value was overwritten with nullptr
instead of being left untouched.
The "no value set" sentinel is UnsetInit, not nullptr, so a downstream
RecordResolver::resolve that called isa<UnsetInit>(RV->getValue()) would
assert on the null pointer when a later def tried to resolve an
expression referring to that field.
Compute the cast into a local and only commit to Value on success, so a
type-incompatible override (e.g. redeclaring an int field as string in a
subclass) reports the existing "is incompatible" error and exits cleanly
instead of aborting.
Fixes issue : https://github.com/llvm/llvm-project/issues/184879
Assisted by Claude.
Commit: 099245af4e70268acbeea72064b755b4e6e025be
https://github.com/llvm/llvm-project/commit/099245af4e70268acbeea72064b755b4e6e025be
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
M clang/test/Driver/openmp-offload.c
Log Message:
-----------
clang: Use Triple::isCompatibleWith to match OpenMP arguments (#195724)
Previously this was performing an exact string comparison
of the triple. Use the triple predicate so that in the future
amdgpu triples without a subarch will be considered compatible
with triples that do. This preserves compatibility with existing
uses without a subarch.
Note that if you swap the triples, there's an assert in
buildCompilerRTBasename but this appears to be a pre-existing
issue I can reproduce without the patch (but I can't reproduce
on godbolt for some reason).
Commit: 07afe7c4efa574e96afcbfa61c7b1b458220d129
https://github.com/llvm/llvm-project/commit/07afe7c4efa574e96afcbfa61c7b1b458220d129
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-05-04 (Mon, 04 May 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
A clang/test/CIR/CodeGen/devirtualize.cpp
M clang/test/CIR/CodeGen/vbase.cpp
M clang/test/CIR/CodeGen/virtual-fn-calls-eh.cpp
M clang/test/CIR/CodeGen/virtual-function-calls.cpp
A clang/test/CIR/IR/construct-catch-param.cir
A clang/test/CIR/IR/invalid-construct-catch-param.cir
M clang/test/Driver/cspgo-lto.c
M clang/test/Driver/openmp-offload.c
M clang/test/Sema/warn-lifetime-safety-invalidations.cpp
M compiler-rt/lib/asan/asan_errors.cpp
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/test/asan/TestCases/use-after-poison-history-size-partial-granule.cpp
M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/test/Lower/CUDA/cuda-device-proc.cuf
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_stat.h
M libc/include/unistd.yaml
M libc/src/__support/File/CMakeLists.txt
M libc/src/__support/File/file.cpp
M libc/src/__support/File/file.h
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/chmod.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/fchmod.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/fchmodat.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/mkdir.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/mkdirat.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/statx.h
M libc/src/sys/stat/chmod.h
M libc/src/sys/stat/fchmod.h
M libc/src/sys/stat/fchmodat.h
M libc/src/sys/stat/fstat.h
M libc/src/sys/stat/linux/CMakeLists.txt
M libc/src/sys/stat/linux/chmod.cpp
M libc/src/sys/stat/linux/fchmod.cpp
M libc/src/sys/stat/linux/fchmodat.cpp
M libc/src/sys/stat/linux/fstat.cpp
M libc/src/sys/stat/linux/kernel_statx.h
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/mkdir.cpp
M libc/src/sys/stat/linux/mkdirat.cpp
M libc/src/sys/stat/linux/stat.cpp
M libc/src/sys/stat/lstat.h
M libc/src/sys/stat/mkdir.h
M libc/src/sys/stat/mkdirat.h
M libc/src/sys/stat/stat.h
M libc/test/src/__support/File/CMakeLists.txt
M libc/test/src/__support/File/file_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/sys/stat/CMakeLists.txt
M libc/test/src/sys/stat/mkdirat_test.cpp
M libc/test/src/sys/statvfs/linux/CMakeLists.txt
M libc/test/src/sys/statvfs/linux/fstatvfs_test.cpp
M libc/test/src/sys/statvfs/linux/statvfs_test.cpp
M libc/test/src/unistd/CMakeLists.txt
M libc/test/src/unistd/rmdir_test.cpp
M libcxx/include/__hash_table
M libcxx/include/__node_handle
M libcxx/include/__thread/thread.h
M libcxx/include/__utility/exchange.h
M libcxx/include/__vector/vector_bool.h
M libcxx/include/forward_list
M libcxx/include/string
M libcxx/test/std/ranges/range.adaptors/range.chunk.by/begin.pass.cpp
M lldb/bindings/python/get-python-config.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ConfigurationDoneRequestHandler.cpp
M llvm/include/llvm/SandboxIR/Region.h
R llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.h
M llvm/lib/LTO/LTOCodeGenerator.cpp
M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
M llvm/lib/SandboxIR/Region.cpp
M llvm/lib/TableGen/Record.cpp
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.cpp
R llvm/lib/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.cpp
M llvm/test/CodeGen/X86/machinesink-debug-inv-0.mir
A llvm/test/TableGen/incompatible-field-override.td
A llvm/test/tools/llvm-lto/Inputs/cspgo-cs.proftext
A llvm/test/tools/llvm-lto/Inputs/cspgo-noncs.proftext
A llvm/test/tools/llvm-lto/cspgo-generate.ll
A llvm/test/tools/llvm-lto/cspgo-thinlto-generate.ll
A llvm/test/tools/llvm-lto/cspgo-thinlto-use.ll
A llvm/test/tools/llvm-lto/cspgo-use.ll
M llvm/unittests/SandboxIR/PassTest.cpp
M llvm/unittests/SandboxIR/RegionTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
R llvm/unittests/Transforms/Vectorize/SandboxVectorizer/RegionWithScoreTest.cpp
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialectBytecode.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/IR/DialectRegistry.h
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Conversion/GPUToNVVM/CMakeLists.txt
R mlir/lib/Conversion/GPUToNVVM/GPUToNVVM.td
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
M mlir/test/CAPI/llvm.c
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Dialect/LLVMIR/types-invalid.mlir
M mlir/test/Target/LLVMIR/Import/debug-info.ll
M mlir/test/Target/LLVMIR/llvmir-debug.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
M mlir/test/python/dialects/nvvm.py
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
Log Message:
-----------
rebase
Created using spr 1.3.7
Compare: https://github.com/llvm/llvm-project/compare/9e642237e82a...07afe7c4efa5
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