[all-commits] [llvm/llvm-project] 03ab16: [docs] Finish MyST migration for BOLT docs (#210199)
Aiden Grossman via All-commits
all-commits at lists.llvm.org
Sat Jul 18 16:27:28 PDT 2026
Branch: refs/heads/users/boomanaiden154/main.webassembly-port-asmprinter
Home: https://github.com/llvm/llvm-project
Commit: 03ab16cb415ff8dc2cb06332a628b79a718c74d8
https://github.com/llvm/llvm-project/commit/03ab16cb415ff8dc2cb06332a628b79a718c74d8
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M bolt/docs/BOLTAArch64OptimizationStatus.md
M bolt/docs/GettingStarted.md
M bolt/docs/index.md
Log Message:
-----------
[docs] Finish MyST migration for BOLT docs (#210199)
Tracking issue: #201242
See the [migration guide] for more information.
[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
This is a stacked PR based on #210198, which will be a standalone commit
that
renames *.rst -> *.md before this PR lands for history preservation
purposes.
This was prepared with rst2myst plus LLM-assisted cleanup. I paged
through all the generated HTML looking for migration artifacts, and all
of the differences I could find appear to be formatting error
corrections. Please spot check my work and approve if it looks good. You
can use the HTML links below to confirm it renders properly.
-----
Before/after validation links:
| Source file | Before HTML | After HTML |
| --- | --- | --- |
| `bolt/docs/BOLTAArch64OptimizationStatus.md` |
[before](https://llvmdocs.staging.reidkleckner.dev/bolt/docs-old/BOLTAArch64OptimizationStatus.html)
|
[after](https://llvmdocs.staging.reidkleckner.dev/bolt/docs/BOLTAArch64OptimizationStatus.html)
|
| `bolt/docs/GettingStarted.md` |
[before](https://llvmdocs.staging.reidkleckner.dev/bolt/docs-old/GettingStarted.html)
|
[after](https://llvmdocs.staging.reidkleckner.dev/bolt/docs/GettingStarted.html)
|
| `bolt/docs/index.md` |
[before](https://llvmdocs.staging.reidkleckner.dev/bolt/docs-old/index.html)
|
[after](https://llvmdocs.staging.reidkleckner.dev/bolt/docs/index.html)
|
Commit: 611d015f0030e0d4f1b3bd2270205f6f6b6e20eb
https://github.com/llvm/llvm-project/commit/611d015f0030e0d4f1b3bd2270205f6f6b6e20eb
Author: Peter Collingbourne <pcc at google.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M llvm/utils/gn/README.rst
M llvm/utils/gn/build/BUILD.gn
M llvm/utils/gn/build/BUILDCONFIG.gn
M llvm/utils/gn/build/buildflags.gni
M llvm/utils/gn/build/symlink_or_copy.gni
M llvm/utils/gn/build/toolchain/BUILD.gn
M llvm/utils/gn/secondary/BUILD.gn
M llvm/utils/gn/secondary/bolt/tools/driver/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/tool/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clangd/xpc/framework/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
M llvm/utils/gn/secondary/lld/tools/lld/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-ar/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-cxxfilt/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod-find/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-dwp/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-libtool-darwin/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-lipo/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-ml/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-nm/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-rc/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-readobj/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-readtapi/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-size/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-strings/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-symbolizer/BUILD.gn
Log Message:
-----------
gn build: Support building debug binaries from a release build directory.
This change makes it so that all binaries in `bin` have a corresponding
debug binary target `$TARGET.dbg` that will build a debug binary in
`bin.dbg/$TARGET`. This is implemented using a separate toolchain for
the debug builds. This has the following advantages over a separate
debug build directory:
1. Can use release mode tblgen to generate code for the debug build
binaries, which speeds up the build because it can run tblgen faster as
well as being able to reuse the tblgen binary from the release build.
2. Can reuse runtimes built in the release mode clang's resource
directory, avoiding the need to build them again with a slow debug
build of clang.
Assisted-by: gemini
Reviewers: aeubanks, nico
Reviewed By: aeubanks
Pull Request: https://github.com/llvm/llvm-project/pull/197843
Commit: a45ae4cf77776bdae8ab79c3b5b4d4ef7cbd7d99
https://github.com/llvm/llvm-project/commit/a45ae4cf77776bdae8ab79c3b5b4d4ef7cbd7d99
Author: lntue <lntue at google.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M libc/src/__support/FPUtil/Hypot.h
M libc/src/__support/math/hypot.h
M libc/test/src/math/smoke/hypot_test.cpp
Log Message:
-----------
[libc][math] Fix double-rounding errors with denormal inputs for hypot function. (#208247)
The issue was reported by Paul Zimmermann.
Solution: for denormal inputs, we use 1.0 + x trick after proper scaling
to mimick rounding at denormal scale.
Commit: eafc387c1da0620642f469fde70455c554ba3470
https://github.com/llvm/llvm-project/commit/eafc387c1da0620642f469fde70455c554ba3470
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/CCallback.h
A orc-rt/test/unit/CCallbackTest.cpp
M orc-rt/test/unit/CMakeLists.txt
Log Message:
-----------
[orc-rt] Add asCCallback utility -- C callbacks for methods. (#210048)
Adds orc_rt::asCCallback<&Class::method>, which produces a C-ABI
function pointer that forwards to the given member function. The first
parameter of the generated trampoline is an opaque context pointer (
void * for non-const methods, const void * for const methods) that is
cast back to the class type and used as the receiver:
struct Counter {
void inc(int N) { Count += N; }
int Count = 0;
};
Counter C;
void (*CB)(void *, int) = asCCallback<&Counter::inc>;
CB(asCCallbackContext<&Counter::inc>(C), 2); // C.Count == 2
asCCallbackContext produces the matching context pointer via
static_cast, so any base-class offset is applied and const-ness is
preserved; pairing it with asCCallback by the same method keeps things
correct under inheritance and const-qualification. (A raw cast of &C
would give the trampoline the wrong `this` when method's class is a base
at a non-zero offset.)
Specializations cover the const x noexcept combinations. The trampoline
is always noexcept -- a C caller cannot unwind a C++ exception, so an
escaping one terminates -- and return/argument types are restricted to
C-compatible (non-reference, trivially copyable) types via
static_assert.
Commit: 5658411aed0f610380323918ce4b02016f2df6f2
https://github.com/llvm/llvm-project/commit/5658411aed0f610380323918ce4b02016f2df6f2
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/test/CodeGenHLSL/resources/RWBuffer-imageformat.hlsl
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/SPIRV/hlsl-resources/SignedBufferLoadStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/UnsignedBufferLoadStore.ll
Log Message:
-----------
[SPIRV] Pack 64-bit vec2 typed buffers into 4x32-bit images (#208626)
Commit: 6b9929001d0b46d087e871934e50e4783147fa7d
https://github.com/llvm/llvm-project/commit/6b9929001d0b46d087e871934e50e4783147fa7d
Author: Amir Ayupov <aaupov at fb.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M bolt/docs/profiles.md
M bolt/include/bolt/Profile/DataReader.h
M bolt/lib/Profile/DataReader.cpp
A bolt/test/X86/profile-symbols-mode.s
Log Message:
-----------
[BOLT] Add fdata symbols mode (#209932)
Add a new fdata profile mode accepting symbol names as-is.
It addresses the UX gap surfaced by #208313 that all methods of selecting
functions to process (symbolized profile types, `-funcs*` options) expect
disambiguated local symbols.
Introduce fdata mode activated by a `symbols` header line, where each subsequent
line is a (mangled) symbol name. The names are matched against restored function
names (with disambiguation suffix stripped), and every matching function gets an
execution count of 1.
This can be used to drive selective instrumentation (`--instrument-hot-only`) or
basic linker-script style optimizations.
Symbols are stored as branch entry data so matching reuses the existing default
branch profile path.
Test Plan:
Update docs/profiles.md and add profile-symbols-mode.s
Commit: 398f2117379f42764e433d19ea0d0cd65009a4aa
https://github.com/llvm/llvm-project/commit/398f2117379f42764e433d19ea0d0cd65009a4aa
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-explicit-triple.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-namespace-override.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libempty.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libtwo.json
M clang/test/Analysis/Scalable/ssaf-linker/help.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-create.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-help.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-time.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-verbose.test
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.cpp
A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.h
Log Message:
-----------
[clang][ssaf] Add static-library create subcommand (#208799)
This change adds `clang-ssaf-linker static-library create` for bundling
TU summaries into a StaticLibrary archive. The linker has been
refactored to dispatch on `cl::SubCommand`; invocations without a
subcommand still run the existing linker pipeline unchanged for backward
compatibility.
rdar://181930526
Commit: 9f839a4396916283cc28e45d18d7f4742ad5094a
https://github.com/llvm/llvm-project/commit/9f839a4396916283cc28e45d18d7f4742ad5094a
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Fix non-determinism in pointers comparison, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/210216
Commit: a07b91d8243b8a8051dbbe5739eacc7942269c61
https://github.com/llvm/llvm-project/commit/a07b91d8243b8a8051dbbe5739eacc7942269c61
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M lldb/bindings/python/CMakeLists.txt
M lldb/bindings/python/python-wrapper.swig
M lldb/docs/CMakeLists.txt
A lldb/examples/python/templates/scripted_stackframe_recognizer.py
A lldb/include/lldb/Interpreter/Interfaces/ScriptedStackFrameRecognizerInterface.h
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Target/StackFrameRecognizer.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/include/lldb/lldb-forward.h
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
M lldb/source/Target/StackFrameRecognizer.cpp
M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
M lldb/test/API/commands/frame/recognizer/recognizer.py
M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp
Log Message:
-----------
[lldb/script] Migrate frame recognizers onto ScriptedPythonInterface (#209805)
Give `frame recognizer add -l` a formal
ScriptedStackFrameRecognizerInterface, matching the architecture already
used by ScriptedProcess, ScriptedBreakpoint, etc.: a C++ interface
header, a Python-backed implementation built on
ScriptedPythonInterface's CreatePluginObject/Dispatch machinery,
PluginManager registration, and a generatable Python ABC template
(scripted_stackframe_recognizer.py).
get_recognized_arguments' documented contract returns a plain list of
lldb.SBValue (not an lldb.SBValueList), so it bypasses the generic
Dispatch<ValueObjectListSP>() extractor and calls the SWIG bridge
directly, matching the legacy behavior exactly.
ScriptedStackFrameRecognizer now holds a single interface object created
once in its constructor and reused across every RecognizeFrame() call,
same lifecycle as before.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 3e1948e9a528d1bc82f2a671a00c02fa8717f26f
https://github.com/llvm/llvm-project/commit/3e1948e9a528d1bc82f2a671a00c02fa8717f26f
Author: Eric Christopher <echristo at gmail.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M llvm/unittests/IR/MetadataTest.cpp
Log Message:
-----------
Add expression validation tests for DW_OP_swap (#210184)
Add DIExpression validation tests for DW_OP_swap that we noticed were
missing. The tests are based on the existing expression tests for
DW_OP_stack_value.
Tested via make check.
Assisted by AI.
Commit: b9869c8c920a7dfa983e215bc30729b13d8b353b
https://github.com/llvm/llvm-project/commit/b9869c8c920a7dfa983e215bc30729b13d8b353b
Author: Shanzhi Chen <chenshanzhi at huawei.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-loads.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-stores.ll
Log Message:
-----------
[AArch64][SVE] Support lowering masked loads/stores of <4 x bf16> and <8 x bf16> (#208744)
Add support for lowering masked loads/stores of <4 x bf16> and <8 x
bf16> when target features contain "+sve" and "+bf16".
Fixes: #201149
Commit: 464b46a73b7592c95222cf2e64b34ffe6f2cf251
https://github.com/llvm/llvm-project/commit/464b46a73b7592c95222cf2e64b34ffe6f2cf251
Author: Benjamin Luke <benjamin.luke at sony.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/include/clang/Basic/ABIVersions.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/CodeGen/CGFunctionInfo.h
M clang/include/clang/CodeGen/CodeGenABITypes.h
M clang/lib/CodeGen/ABIInfo.h
M clang/lib/CodeGen/CGCUDARuntime.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenABITypes.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenTypes.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/test/CodeGen/sysv_abi.c
A clang/test/CodeGen/target-avx-function-abi.c
A clang/test/CodeGenCXX/target-avx-method-abi.cpp
M clang/unittests/CodeGen/CodeGenExternalTest.cpp
M clang/unittests/CodeGen/TestCompiler.h
Log Message:
-----------
[clang][CodeGen][X86_64] Honor per-function AVX ABI in C/C++ call paths, maintain old psABI for PlayStation. (#193298)
Fixes https://github.com/llvm/llvm-project/issues/64706
Wire per function x86 AVX ABI level into CodeGen arrangement methods so
__attribute(__target("avx"))) / __attribute(__target("avx512f"))) on
methods, ctors, and free-functions affects ABI lowering consistently.
Specifically:
- Added X86AVXABILevel member to CGFunctionInfo.
- Populated X86AVXABILevel member in CGFunctionInfo objects via
arrangement methods declared in CodeGenTypes.h.
- Respect CGFunctionInfo AVX Level in X86_64ABIInfo::computeInfo.
- Add/extend regression tests for:
- free-function target-attribute AVX ABI lowering
- C++ method/ctor target-attribute AVX ABI lowering
- PS4/PS5 legacy ABI behavior (no per-function AVX ABI change)
---------
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Commit: 7fec267c9a44c76604e1135ee0ef694c4eaae784
https://github.com/llvm/llvm-project/commit/7fec267c9a44c76604e1135ee0ef694c4eaae784
Author: sohail <sohailraj.satapathy at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/test/src/stdfix/DiviFxTest.h
Log Message:
-----------
[libc][stdfix] Guard DiviFxTest shift edge cases against narrow IntType (#209970)
Fixes riscv32 buildbot failure from #206115.
Commit: 9d2181c78f4e248069e39ec0e5b899dfbfcf3d6a
https://github.com/llvm/llvm-project/commit/9d2181c78f4e248069e39ec0e5b899dfbfcf3d6a
Author: Eric Christopher <echristo at gmail.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
Log Message:
-----------
[NFC] Reuse DwarfExpression fragment (#210181)
Reuse DwarfExpression fragment information since nothing changes it
between the outside of the loop and the inside of the loop.
Tested via make check.
Assisted by AI.
Commit: 1a3347f608394b12c5a18cb5b3457af4e85449a1
https://github.com/llvm/llvm-project/commit/1a3347f608394b12c5a18cb5b3457af4e85449a1
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel][clang][ssaf] Fix 398f2117379f42764e433d19ea0d0cd65009a4aa (#210222)
Commit: 27d7b61322f1528cc582a62d1b74683d24cc987b
https://github.com/llvm/llvm-project/commit/27d7b61322f1528cc582a62d1b74683d24cc987b
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/GVN.cpp
Log Message:
-----------
[GVN][NFC] Use LoadInst::getProperties() when creating PRE load (#208605)
Use load's properties via getProperties() instead of individually
forwarding isVolatile(), getAlign(), getOrdering() and getSyncScopeID().
Reference: https://github.com/llvm/llvm-project/pull/206470
Commit: 4a75259134c72d8be7fa3ea36c9dc7bfc02640ac
https://github.com/llvm/llvm-project/commit/4a75259134c72d8be7fa3ea36c9dc7bfc02640ac
Author: hev <wangrui at loongson.cn>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
A llvm/test/CodeGen/LoongArch/lasx/issue207316.ll
M llvm/test/CodeGen/LoongArch/lasx/xvexth.ll
M llvm/test/CodeGen/LoongArch/lsx/vexth.ll
Log Message:
-----------
[LoongArch] Fix invalid VEXTH combines for unsupported type extensions (#209725)
`performEXTENDCombine` could form `VEXTH`/`VEXTH_U` nodes for
unsupported type combinations, such as extending `v8i8` to `v8i32` or
`v2i64` to `v2i128`. These illegal nodes would later reach instruction
selection and trigger backend failures:
* `Cannot select: LoongArchISD::VEXTH`
* `Don't know how to legalize this operation`
Prevent these combines from firing by verifying that the destination
type is legal and has exactly twice the total bit width of the source
before forming a `VEXTH`/`VEXTH_U` node.
Apply the same checks to `performSHLCombine` for consistency.
Fixes
https://github.com/llvm/llvm-project/pull/207316#issuecomment-4978234865
Fixes
https://github.com/llvm/llvm-project/pull/207316#issuecomment-4979233899
Commit: 8aaa15e82688177db7c0c3fa06103d10f6799598
https://github.com/llvm/llvm-project/commit/8aaa15e82688177db7c0c3fa06103d10f6799598
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/include/llvm/ObjectYAML/BBAddrMapYAML.h
M llvm/lib/ObjectYAML/BBAddrMapYAML.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
Log Message:
-----------
[ObjectYAML][NFC] Hoist BBAddrMap yaml2obj encoder into a shared helper (#205991)
Preparatory NFC refactor to let the upcoming COFF emitter reuse the
BBAddrMap YAML encoder.
Commit: ddd21a5500bc65354211c0088520d0b331e862d7
https://github.com/llvm/llvm-project/commit/ddd21a5500bc65354211c0088520d0b331e862d7
Author: Vijay Kandiah <vkandiah at nvidia.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M flang/include/flang/Lower/CUDA.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Lower/CUDA/cuda-gpu-unified.cuf
R flang/test/Lower/CUDA/cuda-implicit-managed-alloc.cuf
Log Message:
-----------
[flang][cuda] Managed backing for -gpu=unified allocatables/pointers (#210149)
Under `-gpu=unified`, allocatables and pointers with no explicit CUDA data
attribute must be reachable from the device. Back them with CUDA managed
memory by selecting the unified allocator index at the ALLOCATE site (in
lowering), instead of stamping an implicit `Unified`/`Managed` CUDA data attribute
on the symbol in the frontend — the approach introduced in PR #209292.
This is necessary because attributing the symbol in the frontend routed every
plain allocatable/pointer through the CUDA Fortran managed descriptor
pipeline (constructor registration, `cuf.allocate`/`cuf.free`), which added
per-`ALLOCATE` overhead, forced special-casing for objects that may not legally carry a
CUDA attribute (COMMON members, derived-type components, module globals), and
changed symbol semantics used well beyond allocation. Choosing the allocator
index at the `ALLOCATE` site keeps the object a plain host allocatable/pointer while
the storage still comes from the managed allocator.
Commit: 963e226d9a6b923b10c8e328438838bd42e03d18
https://github.com/llvm/llvm-project/commit/963e226d9a6b923b10c8e328438838bd42e03d18
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M .github/workflows/release-binaries.yml
M .github/workflows/validate-release-version/action.yml
Log Message:
-----------
workflows: Fixes for release-binaries and upload-release-artifact (#209246)
There were some bugs in upload-release-artifact workflow and
release-binaries was not including this action in its checkout.
Commit: fe64fbbafc19e46ef461fac3ec0b4144a1ffc847
https://github.com/llvm/llvm-project/commit/fe64fbbafc19e46ef461fac3ec0b4144a1ffc847
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
Log Message:
-----------
[SLP][modularisation][NFC] Extract mask, shuffle and AA helpers into SLUtils 3/3 (#209973)
Move the mask/shuffle construction and alias-analysis free helpers out
of SLPVectorizer.cpp into SLPVectorizer/SLPUtils.{h,cpp} (namespace
llvm::slpvectorizer).
Moved:
transformScalarShuffleIndiciesToVector
getShufflevectorNumGroups
calculateShufflevectorMask
UseMask (enum)
buildUseMask
isUndefVector
doesInTreeUserNeedToExtract
getLocation
isSimple
addMask
fixupOrderingIndices
getAltInstrMask
replicateMask
RFC: https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922
Commit: 3c6b4870425e7b62a966ff04f51f78920adbedb8
https://github.com/llvm/llvm-project/commit/3c6b4870425e7b62a966ff04f51f78920adbedb8
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/include/orc-rt/TaskGroup.h
M orc-rt/test/unit/SessionTest.cpp
M orc-rt/test/unit/TaskGroupTest.cpp
Log Message:
-----------
[orc-rt] Add TaskGroup::TokenSource; drop raw group accessor (#210240)
Session::managedCodeTaskGroup() returned the raw
std::shared_ptr<TaskGroup> for the managed-code group, exposing the
group's full interface -- including close() and addOnComplete() -- to
callers, even though those operations are reserved for the Session.
Add TaskGroup::TokenSource, a strong handle whose sole role is to serve
as an argument to the TaskGroup::Token constructor. Session now exposes
managedCodeTokenSource() in its place, so clients can acquire tokens (to
keep managed code alive across shutdown) without gaining the ability to
close the group or register completion callbacks.
Commit: f2ef5670cf70371153caeb0ebbeae2323a61f8e0
https://github.com/llvm/llvm-project/commit/f2ef5670cf70371153caeb0ebbeae2323a61f8e0
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_dpp_lds_expected_active_lanes.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
M llvm/test/CodeGen/AMDGPU/global-saddr-atomics-min-max-system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/valu-mask-write-hazard.mir
Log Message:
-----------
[AMDGPU] Refactor GFX11 VALU Mask Hazard Waitcnt Merging (#169213)
Move GFX11 SGPR VALU mask hazard waitcnt merging to the a forward scan
within the AMDGPUWaitSGPRHazard pass.
This simplifies the hazard recognizer code and allows merging of waitcnt
instructions in cases where SGPRs unaffected by pending writes are used.
In turn this greatly decreasing numbers of waits inserted in sequences
of V_CMP instructions writing SGPRs improving VALU pipeline performance.
Commit: 78ed03f555ea75d2337f618930c062f4d881a08b
https://github.com/llvm/llvm-project/commit/78ed03f555ea75d2337f618930c062f4d881a08b
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
A flang/test/Lower/global-initialization-parens.f90
Log Message:
-----------
[flang] Add lowering tests for parenthesized initial values (#209664)
Add a LIT test that baselines the current lowering of parenthesized
initial values in fir.global initializer regions. Today a parenthesized
scalar or derived constant survives constant folding as a Parentheses
node and is lowered to a fir.no_reassoc operation inside the global init
region, while parentheses around characters, array named-constants, and
structure-constructor components are stripped before lowering.
This test pins that behavior so that an upcoming change to the
initializer-lowering path shows its behavior delta explicitly and has a
regression guard.
Assisted-by: AI
Commit: 15ae01dd24261bd70947aab884098e5dcd4096dd
https://github.com/llvm/llvm-project/commit/15ae01dd24261bd70947aab884098e5dcd4096dd
Author: David Zbarsky <dzbarsky at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang-tools-extra/clangd/CMakeLists.txt
A clang-tools-extra/clangd/LSPBinder.cpp
M clang-tools-extra/clangd/LSPBinder.h
M llvm/include/llvm/Support/LSP/Transport.h
M llvm/lib/Support/LSP/Transport.cpp
M llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
M utils/bazel/llvm-project-overlay/clang-tools-extra/clangd/BUILD.bazel
Log Message:
-----------
[clangd][Support] Outline LSP payload decode errors (#203121)
Move failed payload handling from `clangd::LSPBinder::parse<T>` and
`llvm::lsp::MessageHandler::parse<T>` into their non-inline
`handleParseError` functions, while keeping successful payload
conversion specialized in each `parse<T>` instantiation.
For a Darwin arm64 build, stripped clangd decreased by 32,848 bytes and
`__TEXT,__text` decreased by 25,180 bytes.
`ClangdTests --gtest_filter=LSPBinderTest.*` passes, and
`llvm/lib/Support/LSP/Transport.cpp` passes a standalone syntax compile.
Work towards #202616
AI tool disclosure: Co-authored with OpenAI Codex.
Co-authored-by: OpenAI Codex <noreply at openai.com>
Commit: c488b2c2407bf29bb20f67bb8f3cf39c637d231e
https://github.com/llvm/llvm-project/commit/c488b2c2407bf29bb20f67bb8f3cf39c637d231e
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/docs/AMDGPUDMAOperations.md
Log Message:
-----------
[Docs][AMDGPU] Consistent use of "wave-uniform", "per-lane" and "immediate" (#209974)
When documenting DMA operations, use consistent qualifiers
(wave-uniform, per-lane, immediate) instead of referring to SGPRs and
VGPRs.
Assisted-By: Claude Opus 4.6
Commit: a376783e2ed3a44f63991c97513711faad09525b
https://github.com/llvm/llvm-project/commit/a376783e2ed3a44f63991c97513711faad09525b
Author: maflcko <6399679+maflcko at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M compiler-rt/lib/ubsan/ubsan_diag.cpp
M compiler-rt/test/ubsan/TestCases/Integer/suppressions-nested-calls.c
Log Message:
-----------
[compiler-rt][ubsan] Fix suppressions for inlined functions (#206735)
Align suppression PC handling with getCallerLocation(), so function
suppressions identify the inlined function that caused a report.
Intentionally match only the innermost inline frame.
Extend suppressions-nested-calls.c coverage to -O1.
Fixes https://github.com/llvm/llvm-project/issues/209501
---------
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>
Commit: 30bc042395a6cf0aa1e5de4fcc625d5b8c611767
https://github.com/llvm/llvm-project/commit/30bc042395a6cf0aa1e5de4fcc625d5b8c611767
Author: maflcko <6399679+maflcko at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M compiler-rt/test/lit.common.cfg.py
Log Message:
-----------
[compiler-rt][test] Use configured Python for lit page-size probe (#209175)
Use the same Python executable configured for the test suite, rather
than relying on python3 being on PATH.
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>
Commit: c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75
https://github.com/llvm/llvm-project/commit/c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/test/src/sys/socket/linux/connect_accept_test.cpp
M libc/test/src/sys/socket/linux/listen_test.cpp
M libc/test/src/sys/socket/linux/socket_test_support.h
M libc/test/src/sys/socket/linux/sockname_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
Log Message:
-----------
[libc][bazel] Add remaining sys/socket functions and tests (#209798)
This patch adds the following sys/socket functions and syscall wrapper
libraries to BUILD.bazel:
- accept
- accept4
- bind
- connect
- getpeername
- getsockname
- listen
- sockatmark
I'm also enabling the unit tests for these functions. Running AF_UNIX
socket tests under Bazel ran into a problem where the absolute path to
the test sandbox directory exceeds the 108-byte limit of
sockaddr_un::sun_path. To work around that, I added a TestDirectoryScope
helper that temporarily chdirs into the test directory so the tests can
use short relative filenames, and restores the original working
directory on exit.
Assisted by Gemini.
Commit: 9445ad3f91d4331eead867f8b3c9c8a3818edac0
https://github.com/llvm/llvm-project/commit/9445ad3f91d4331eead867f8b3c9c8a3818edac0
Author: Rana Pratap Reddy <RanaPratapReddy.Nimmakayala at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
A clang/test/CIR/CodeGenHIP/amdgcn-buffer-rsrc-type.hip
Log Message:
-----------
[CIR][AMDGPU] Adds `__amdgpu_buffer_rsrc_t` in the buffer-resource address space (#204782)
CIR previously lowering every AMDGPU opaque pointer to
`!cir.ptr<!void>`. Now `__amdgpu_buffer_rsrc_t` lower to
`!cir.ptr<!void, target_address_space(8)>` similar to (`ptr
addrspace(8)` in LLVM IR) matching CodeGen.
This change requires for upcoming raw buffer load/store/atomic builtins.
Those builtins `__builtin_amdgcn_raw_buffer_load/store_b*,
__builtin_amdgcn_raw_ptr_buffer_atomic_*` take a
`__amdgpu_buffer_rsrc_t` as operand, and the corresponding LLVM
intrinsics expect a `ptr addrspace(8)` resource argument.
Commit: 513ac13e7e5037af4b39c8c582dd7927f4c807fc
https://github.com/llvm/llvm-project/commit/513ac13e7e5037af4b39c8c582dd7927f4c807fc
Author: SiHuaN <liyongtai at iscas.ac.cn>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/Headers/riscv_packed_simd.h
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
Log Message:
-----------
[Clang][RISCV] Add P extension reinterpret cast intrinsics (#210241)
Implement the "Reinterpret casts" section of the RISC-V P extension intrinsic
spec in `riscv_packed_simd.h`.
The 82 `__riscv_preinterpret_<from>_<to>` intrinsics provide
bit-pattern-preserving conversions between packed types and equal-width
scalars, and between equal-width packed types. They generate no instructions;
each is a `__builtin_bit_cast`.
Commit: 61fa8d3db491c4a864242f22ce31b730fb78ecb5
https://github.com/llvm/llvm-project/commit/61fa8d3db491c4a864242f22ce31b730fb78ecb5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/DwarfEHPrepare.cpp
M llvm/lib/CodeGen/ExpandIRInsts.cpp
M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/lib/CodeGen/SafeStack.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
Log Message:
-----------
CodeGen: Rename LibcallLoweringModuleAnalysisResult to ModuleLibcallLoweringInfo (#210176)
Commit: 6f2bd9fd1a5e7c61893abf2f1e9246610e6a32f8
https://github.com/llvm/llvm-project/commit/6f2bd9fd1a5e7c61893abf2f1e9246610e6a32f8
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
A flang/test/Fir/CUDA/cuda-device-func-transform-aio.mlir
Log Message:
-----------
[flang][cuda] Add option to flag descriptor I/O as error (#210170)
Descriptor I/O is too expensive in some compilation mode (nordc). Add
ability to emit an error if they are found in device code.
Commit: 02f55a9e5e4775bc17cc23f9d1e7f5ee23cf63cd
https://github.com/llvm/llvm-project/commit/02f55a9e5e4775bc17cc23f9d1e7f5ee23cf63cd
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/headers.txt
Log Message:
-----------
[libc] add net/if.h to the list of installed headers (#210021)
on aarch64, riscv and x86_64.
Commit: c571b0bd7330a4b737ad7dec31e7f2b52edd3953
https://github.com/llvm/llvm-project/commit/c571b0bd7330a4b737ad7dec31e7f2b52edd3953
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/include/llvm-libc-types/struct_sockaddr_storage.h
M libc/test/src/sys/socket/linux/sockaddr_storage_test.cpp
Log Message:
-----------
[libc] Fix size of struct sockaddr_storage (#210037)
My cleverness with the union backfired as it introduced an
(architecture-specific) padding between before it. Drop the union to
avoid that.
This probably wouldn't break much as the structure exists just to
allocate space (and this made it larger), but we should fix it
nonetheless.
Commit: c4903855b64ee801d1b9caeb970921a63475c98b
https://github.com/llvm/llvm-project/commit/c4903855b64ee801d1b9caeb970921a63475c98b
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang-rt/CMakeLists.txt
M flang/test/Driver/fakeflang.F
M flang/tools/fakeflang/fakeflang.cpp
M runtimes/cmake/config-Fortran.cmake
Log Message:
-----------
[fakeflang] Also detect CMakeTestGNU.c (#210175)
Two fixes when using CMake < 3.28 after #209482:
* In addition to `flang`, also recognize `fakeflang` to determine
whether any workaround for CMake not completely supporting Flang is
needed. `fakeflang` is used as a shim in #209482.
* For CMake < 3.24, CMake does not reognize Flang at all and tries other
methods to detect to the compiler, including the file `CMakeTestGNU.c`.
Make `fakeflang` recognize it as a probe attempt.
This should fix the
[openmp-offload-amdgpu-clang-flang](https://lab.llvm.org/buildbot/#/builders/67)
buildbot. The buildbot is currently upgrade to a newer CMake version,
and the minimum required version of CMake will become 3.31 soon.
Commit: 250f791e7002afb308e4a59dc5ef3e1f2e1c10af
https://github.com/llvm/llvm-project/commit/250f791e7002afb308e4a59dc5ef3e1f2e1c10af
Author: Raphael Isemann <rise at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
Log Message:
-----------
[lldb] Fix tsan error in SymbolLocatorDebugSymbols (#209698)
g_dlsym_DBGCopyFullDSYMURLForUUID and g_dlsym_DBGCopyDSYMPropertyLists
are two globals that are lazily initialized when first used. TSan
complains that this lazy init code is not thread-safe as there is no
synchronization mechanism. In practice, the only race that can happen
here is that we initialize the same values concurrently, which should be
'safe' on any platform.
This patch moves the initialization code into a static local that
returns a const object. This makes this code thread-safe by construction
and fixes the TSan error.
It also fixes that we keep calling dlopen if the initialization fails.
That is, the `g_dlsym_DBGCopyFullDSYMURLForUUID == nullptr` will always
be true on systems where the framework doesn't exist, so this code will
try loading it on every function call and fail.
Commit: 89f5334990c5aa853fcbaa361aefe5b999e63dc5
https://github.com/llvm/llvm-project/commit/89f5334990c5aa853fcbaa361aefe5b999e63dc5
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/docs/CMakeLists.txt
R libc/docs/headers/time.rst
A libc/utils/docgen/time.yaml
Log Message:
-----------
[libc][docs] Dynamically generate time.h documentation (#210197)
Removed the static time.rst file.
Added time to docgen_list in libc/docs/CMakeLists.txt. Created
libc/utils/docgen/time.yaml to define the functions.
Assisted-by: Automated tooling, human reviewed.
Commit: d68dc184b1cec0a01876b3f635bce6c25a64edf6
https://github.com/llvm/llvm-project/commit/d68dc184b1cec0a01876b3f635bce6c25a64edf6
Author: Kareem Ergawy <kergawy at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang/lib/Lower/PFTBuilder.cpp
A flang/test/Lower/pre-fir-tree-assigned-goto.f90
Log Message:
-----------
[flang][PFT] record every target of an assigned GO TO (#210065)
Assigned GO TO (`go to v [, (l1, l2, ...)]`) is the third multiway
branch in the language, alongside the computed GO TO and arithmetic IF
that were addressed in PR #210012. Its PFTBuilder handler previously
did:
[&](const parser::AssignedGotoStmt &) {
eval.isUnstructured = true;
markSuccessorAsNewBlock(eval);
},
i.e. it recorded no branch targets at all -- neither `controlSuccessor`
nor `extraControlSuccessors` was populated.
Handle the assigned GO TO the same way PR #210012 handles the computed
GO TO and arithmetic IF: iterate every possible target and call
`markBranchTarget(eval, label)` for each, so that `controlSuccessor`
receives the first and `extraControlSuccessors` receives the rest.
Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>
Commit: d134db0b2b989a2b15f91f24acca43497dfe0919
https://github.com/llvm/llvm-project/commit/d134db0b2b989a2b15f91f24acca43497dfe0919
Author: Sean Clarke <sclarke at tenstorrent.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
M llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check.ll
Log Message:
-----------
[HashRecognize] Remove byte-multiple trip count requirement (#210086)
The newly added carryless-multiply CRC loop optimization (#203405) does
not require a byte-multiple trip count unlike the Sarwate method which
was previously implemented. Loosen this requirement in HashRecognize and
reapply it in `optimizeCRCLoop`.
Commit: cc98c1eb84c690c65fba77b72c269a869978c898
https://github.com/llvm/llvm-project/commit/cc98c1eb84c690c65fba77b72c269a869978c898
Author: Fangrui Song <i at maskray.me>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
M llvm/include/llvm/ADT/GenericUniformityImpl.h
M llvm/include/llvm/ADT/GenericUniformityInfo.h
M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
M llvm/include/llvm/IR/CycleInfo.h
M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
M llvm/lib/Analysis/CFG.cpp
M llvm/lib/Analysis/UniformityAnalysis.cpp
M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
M llvm/lib/IR/CycleInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
Log Message:
-----------
[CycleInfo] Represent cycles by an opaque handle. NFC (#210117)
Consumers refer to a cycle by a GenericCycle pointer into
GenericCycleInfo's storage. Introduce GenericCycleRef, a value handle
wrapping the cycle's preorder index, and route every GenericCycleInfo
query and mutation through it. GenericCycle becomes an internal
implementation detail, so its storage representation can change without
touching callers.
Aided by Claude Opus 4.8, reviewed by Fable 5
Suggested by
https://github.com/llvm/llvm-project/pull/208614#pullrequestreview-4683378136
Commit: 90e31c46d005ae0a7f5968c38a9310bee499923c
https://github.com/llvm/llvm-project/commit/90e31c46d005ae0a7f5968c38a9310bee499923c
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/LTO/LTO.cpp
A llvm/test/ThinLTO/X86/Inputs/cache-defined-globals-order.ll
A llvm/test/ThinLTO/X86/cache-defined-globals-order.ll
Log Message:
-----------
[LTO] Sort DefinedGlobals in LTO cache key (#210025)
Sort the DefindeGlobals by GUID when computing the LTO cache key, to
avoid making the cache key dependent on the insertion order. This fixes
large compile-time regressions in rust incremental builds.
Alternatively one could make collectDefinedGVSummariesPerModule() work
on the sortedRange(), but as that is also used in other places, it
probably makes sense to sort locally.
The issue was introduced in 760bb06cb3cd98832f1e4e7a4eaebd98b66d2bdd.
Commit: b69dd3366863acff56b0b2efdc4c4938097bb43e
https://github.com/llvm/llvm-project/commit/b69dd3366863acff56b0b2efdc4c4938097bb43e
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M mlir/test/Integration/Dialect/Vector/CPU/compress.mlir
M mlir/test/Integration/Dialect/Vector/CPU/expand.mlir
M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
M mlir/test/Integration/Dialect/Vector/CPU/maskedload.mlir
M mlir/test/Integration/Dialect/Vector/CPU/maskedstore.mlir
M mlir/test/Integration/Dialect/Vector/CPU/scatter.mlir
Log Message:
-----------
[mlir][vector][nfc] Update integration tests (#210090)
Add comments, unify naming, remove redundant printing hooks.
Commit: 8b269587981fdc3b487cda5559ef75eeb475e613
https://github.com/llvm/llvm-project/commit/8b269587981fdc3b487cda5559ef75eeb475e613
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll
Log Message:
-----------
[VectorCombine][X86] Add test coverage for #209714 (#210063)
Commit: 981c0f9037fc2e1e5c70ba2cfe61128557b5eeff
https://github.com/llvm/llvm-project/commit/981c0f9037fc2e1e5c70ba2cfe61128557b5eeff
Author: David Spickett <david.spickett at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/test/API/functionalities/thread/finish-from-empty-func/TestEmptyFuncThreadStepOut.py
M lldb/test/API/functionalities/thread/finish-from-empty-func/main.c
Log Message:
-----------
[lldb][test] Handle potential compiler differences in TestEmptyFuncThreadStepOut.py (#210050)
Fixes #195958
It was reported that this test sometimes failed in CI because lldb would
step out to line 6 instead of line 7.
Jim Ingham expained on the issue that both could be valid locations
(https://github.com/llvm/llvm-project/issues/195958#issuecomment-4384269846).
There's no garauntee that "step out" would go to the source line after
the call you step out of. All it does is go to the first location
outside of the call. If the compiler so chose, that could be on the same
line as the call.
I was not able to reproduce this failure mode, but I think it was
happening in CI before, and is possible. So I've made the test accept
line 6 or 7. Anything further than that we've gone too far and the test
will fail.
Commit: 9ee8b18b6c0758e57cedfa57e99ba85dfd247d35
https://github.com/llvm/llvm-project/commit/9ee8b18b6c0758e57cedfa57e99ba85dfd247d35
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
Log Message:
-----------
[mlir][vector] Fix e2e test post #210090 (#210270)
Failing bots:
* https://lab.llvm.org/buildbot/#/builders/177/builds/37626
* https://lab.llvm.org/buildbot/#/builders/116/builds/30570
Commit: 4894d4e87c332af24809b20573d880a4073b738b
https://github.com/llvm/llvm-project/commit/4894d4e87c332af24809b20573d880a4073b738b
Author: Ian Anderson <iana at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/test/Driver/darwin-target-variant-sdk-version.c
Log Message:
-----------
[clang][driver] Add a -target-variant alias for -darwin-target-variant (#208388)
Swift Build uses the `-target-variant` argument which is an alias for
-darwin-target-variant that's only present in the Xcode version of
clang. Upstream it for general support and parity with swiftc.
Co-authored-by: Alex Lorenz <arphaman at gmail.com>
Commit: 12c4c0bf0269218c6ffdddae1c895f892a3e4e75
https://github.com/llvm/llvm-project/commit/12c4c0bf0269218c6ffdddae1c895f892a3e4e75
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.def
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir
Log Message:
-----------
[AMDGPU] Handle expert scheduling VA_VDST WAR hazards (#201619)
Handle WAR hazards where a VALU reading a VGPR is followed by a VMEM
writing the same VGPR. It is possible, though not very common, that the
VMEM will complete first. To guard against this the compiler must insert
a wait on VA_VDST.
Commit: 2580624091e36b85c162439513eef8e752217a1d
https://github.com/llvm/llvm-project/commit/2580624091e36b85c162439513eef8e752217a1d
Author: cqwrteur <oyzawqgcfc at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libcxx/src/support/runtime/exception_pointer_msvc.ipp
Log Message:
-----------
[libcxx] avoid include Uppercase windows headers (#208903)
We should use unknwn.h and windows.h instead of Unknwn.h and Windows.h
because Linux and other non‑Windows systems treat filenames as
case‑sensitive. Windows does not, so mixed‑case includes work there but
break elsewhere. Both mingw‑w64‑crt and windows‑msvc‑sysroot provide all
Windows headers in fully lowercase, so using the lowercase forms ensures
consistent cross‑platform builds.
Fixes #208901
Commit: a3bcc010c7b7d5fa43ab7928a88312841c4322dd
https://github.com/llvm/llvm-project/commit/a3bcc010c7b7d5fa43ab7928a88312841c4322dd
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
A lld/test/COFF/link-dll-arm64x.s
Log Message:
-----------
[LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210080)
In mingw mode, when linking against a DLL, the user can either provide a
regular import library, or provide the actual DLL. When importing ARM64X
image, add both native and EC views to the symbol table on EC targets.
Also getMachine() on such images returns ARM64X, treat it as ARM64
instead.
Commit: f520e7083a12f0642eff8fc19fc4c90ccccc7da5
https://github.com/llvm/llvm-project/commit/f520e7083a12f0642eff8fc19fc4c90ccccc7da5
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRV.h
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
Log Message:
-----------
[SPIR-V][NewPM] Fix SPIRVEmitIntrinsics registration with the new pass manager (#209966)
Commit: 0e1b0935ff6f326ba1b9c2d23ba9fa7b41e6941d
https://github.com/llvm/llvm-project/commit/0e1b0935ff6f326ba1b9c2d23ba9fa7b41e6941d
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll
Log Message:
-----------
[SPIR-V] Preserve signed i1 semantics in sitofp (#209232)
selectIToF hardcoded IsSigned=false when materializing the bool-to-int
conversion, so sitofp i1 true was miscompiled as 1.0 instead of -1.0
Commit: 5fcab35be3b450256e3b02a735900071c0b74a54
https://github.com/llvm/llvm-project/commit/5fcab35be3b450256e3b02a735900071c0b74a54
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
A llvm/test/MC/AMDGPU/amdhsa-kernel-prologue.s
M llvm/test/MC/AMDGPU/hsa-gfx1250-v4.s
M llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s
Log Message:
-----------
[AMDGPU] Add assembler check for GFX1250 unclaused vmem workaround (#209517)
Warn if an entrypoint does not start with the standard workaround
sequence.
Commit: 6cafa889cd398ca70992e0df518b2414a2607327
https://github.com/llvm/llvm-project/commit/6cafa889cd398ca70992e0df518b2414a2607327
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
M lldb/test/Shell/SymbolFile/NativePDB/Inputs/globals-fundamental.lldbinit
M lldb/test/Shell/SymbolFile/NativePDB/globals-fundamental.cpp
A lldb/test/Shell/SymbolFile/NativePDB/static-class-constants.cpp
Log Message:
-----------
[lldb][NativePDB] Use active bits for constant width (#196104)
Static constants with bit widths less than 16 (e.g. char/unsigned char)
in classes were not available. These constants are still encoded with 16
bits
([here](https://github.com/llvm/llvm-project/blob/dd145eb8997878143f648a7601741f6409330963/llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp#L341-L343))
even though they only need less bits. When we tried to create an
initializer for them, we'd check if the bit width (=16) was small enough
to fit into the target (<16). This would fail.
This was a problem in the following code:
```cpp
struct Foo {
// width(unsigned char) = 8, but 255 was encoded and read as 16 bit
static constexpr unsigned char u8_max = 255;
};
```
This PR fixes the issue by using `APSInt::getActiveBits` for unsigned
types and `APSInt::getSignificantBits` for signed types. They get the
number of bits required to encode the value. For example a constant 64
would need 7 bits in unsigned and 8 bits in signed types.
Commit: e8f9589942ecd93d94de2af2e875964693e55129
https://github.com/llvm/llvm-project/commit/e8f9589942ecd93d94de2af2e875964693e55129
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/dxc_debug.hlsl
M llvm/lib/MC/MCDXContainerWriter.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILWriterPass.cpp
M llvm/test/CodeGen/DirectX/ContainerData/ContainerFlags.ll
Log Message:
-----------
[Driver][DirectX] Add `/Qstrip_debug` flag (#204832)
Add the flag that removes ILDB part from the main DXContainer.
Commit: d444e3ebb8ae69cdb628be3b3b0c632f13df9a08
https://github.com/llvm/llvm-project/commit/d444e3ebb8ae69cdb628be3b3b0c632f13df9a08
Author: Chibuoyim (Wilson) Ogbonna <ogbonnachibuoyim12 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/lib/AST/ExprCXX.cpp
M clang/test/SemaCXX/using-decl-templates.cpp
Log Message:
-----------
[Clang][Sema] Fix crash in UnresolvedMemberExpr check (#209792)
This closes https://github.com/llvm/llvm-project/issues/209427
The test currently crashes because while iterating over the candidate
members of an unresolved member expression, `decl` is a `UsingShadowDecl`
with underlying decl as `UnresolvedUsingValueDecl`.
The current `isa<UnresolvedUsingValueDecl>(decl)` guard only checks the
outer `UsingShadowDecl` and misses the unresolved-using decl hidden
inside it, so `getAsFunction()` returns nullptr and
`cast<CXXMethodDecl>(nullptr)` asserts.
This patch checks the `UnresolvedUsingValueDecl` inside by calling
`getUnderlyingDecl()` before the guard.
This used to happen before a2794f9f363361f87a3538b90b78ff13381d5ce1.
Commit: 06effa5b965f68a24dcea8550efc86225b186f54
https://github.com/llvm/llvm-project/commit/06effa5b965f68a24dcea8550efc86225b186f54
Author: mayanksolanki393 <mayanksolanki393 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/test/Verifier/matrix-intrinsics.ll
Log Message:
-----------
[LLVM][Verifier] Remove constant-only matrix stride check (#207665)
Remove the verifier check requiring constant column-major matrix
load/store strides to be greater than or equal to the row count.
The stride operand is not an immarg, so the verifier must not enforce
constraints that only apply when the argument happens to be constant.
Commit: afa73e4ff6db57b0416eb44127105b8092bd01f8
https://github.com/llvm/llvm-project/commit/afa73e4ff6db57b0416eb44127105b8092bd01f8
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/eq.ll
M llvm/test/Transforms/ConstraintElimination/ne.ll
Log Message:
-----------
[ConstraintElimination] Handle equality predicates with signed system (#205331)
Equality predicate solving has been supported for quite a while, eq/ne
facts were extended to the signed constraint system more recently
(7fb97bee9269f0d4239908ac8def70be696991c6). When solving
eq/ne conditions, query the signed system as well on inconclusive
answers from the unsigned one.
Fixes: https://github.com/llvm/llvm-project/issues/205282.
Fixes: https://github.com/llvm/llvm-project/issues/63505.
Commit: 2b2df2677619cb0377d27d8b766b8fc265749345
https://github.com/llvm/llvm-project/commit/2b2df2677619cb0377d27d8b766b8fc265749345
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
R lld/test/COFF/link-dll-arm64x.s
Log Message:
-----------
Revert "[LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210080)" (#210299)
This reverts commit a3bcc010c7b7d5fa43ab7928a88312841c4322dd, which
breaks in asan build.
Commit: 2a006dff821342c1726fd3137f804186851a26bb
https://github.com/llvm/llvm-project/commit/2a006dff821342c1726fd3137f804186851a26bb
Author: Joel Walker <theagingboy05 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-vashr.mir
Log Message:
-----------
[AArch64][GlobalISel] Add sign bits for G_VASHR (#210269)
Ports the `AArch64ISD::VASHR` case from
`ComputeNumSignBitsForTargetNode` to the GlobalISel hook: an arithmetic
right shift by K adds K copies of the sign bit, so the result has
`min(SignBits(Src) + K, ScalarSizeInBits)` sign bits. `G_VASHR`'s shift
amount is always an immediate in `[1, ElementBits]`.
Follow-up to #198314, which added the `G_FCM*` cases.
Assisted by Claude (Anthropic).
Commit: a4cad33430cf5d2d03eb91ce5e41ed1b9ef7cc4d
https://github.com/llvm/llvm-project/commit/a4cad33430cf5d2d03eb91ce5e41ed1b9ef7cc4d
Author: Joel Walker <theagingboy05 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Support/KnownBits.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-urem.mir
M llvm/test/Transforms/InstCombine/known-bits.ll
Log Message:
-----------
[KnownBits] Use X < Y identity and umin(MaxX, MaxY - 1) bound in urem (#210262)
Tightens `KnownBits::urem` with the two facts `ConstantRange::urem`
already uses:
- `L % R == L` when `MaxL < MinR`: return the LHS bits unchanged. This
can propagate known one bits, which the current leading-zeros-only
reasoning never produces.
- `L % R <= umin(MaxL, MaxR - 1)`, since a zero divisor is UB: keep that
bound's leading zeros. This is one bit stronger than the per-operand
leading-zero count when `MaxR` is a power of two, and together with
`remGetLowBits` it subsumes the power-of-two-constant special case,
which is removed.
Soundness is covered by the existing exhaustive unit test (widths 1 and
4; additionally brute-forced at width 5). Across all 6480 valid width-4
KnownBits pairs, non-optimal results drop from 3332 to 2090. The
residual is number-theoretic (e.g. the exact value of `10 % 3`), out of
reach of leading-bit/range reasoning, so `CheckOptimality` stays off for
urem, as for udiv (#209360).
Assisted by Claude (Anthropic).
Commit: 671c0a275a1f304f22855fabb299090233fdbd54
https://github.com/llvm/llvm-project/commit/671c0a275a1f304f22855fabb299090233fdbd54
Author: tyan0 <takashi.yano at nifty.ne.jp>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
A clang/test/Driver/Inputs/resource_dir/lib/cygwin/libclang_rt.builtins-x86_64.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/x86_64-pc-windows-cygnus/libclang_rt.builtins.a
A clang/test/Driver/cygwin-print-file-name.c
Log Message:
-----------
[Clang][Driver] Fix compiler-rt library directory for cygwin (#208925)
If compiler-rt is built with `LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF`,
its search directory is incorrect.
Specifically, `ToolChain::getOSLibName()` returns `windows` instead of
`cygwin` in a Cygwin environment, due to falling back to getOS(). This
results in a link error against compiler-rt.
This patch makes `getOSLibName()` return `cygwin`, ensuring that
compiler-rt is linked correctly.
---------
Signed-off-by: Takashi Yano <takashi.yano at nifty.ne.jp>
Commit: 8377d59dfade3f1a4bf5779ddd90359bd4ddc249
https://github.com/llvm/llvm-project/commit/8377d59dfade3f1a4bf5779ddd90359bd4ddc249
Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libsycl/src/event.cpp
M libsycl/unittests/event/event.cpp
Log Message:
-----------
[libsycl] add explicit instantiations for event::get_profiling_info (#210118)
Assisted by GH Copilot.
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
Commit: 4d37b5bf3099d099302cce447168b3ece4efef5e
https://github.com/llvm/llvm-project/commit/4d37b5bf3099d099302cce447168b3ece4efef5e
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
Log Message:
-----------
[LV] Add additional SCEV expansion tests with AddRecs. (NFC) (#210159)
Add additional test coverage for SCEV expansion of AddRecs, including
cases where extends are needed, different start and steps, as well as
cases where the outer header is not the plan's entry block.
Commit: a9e5bb572703780e3eea4a2759104a141ea73466
https://github.com/llvm/llvm-project/commit/a9e5bb572703780e3eea4a2759104a141ea73466
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-linker/BUILD.gn
Log Message:
-----------
[gn build] Port 398f2117379f (#210308)
Commit: 9a2d9c7fef47c0af321150f75d8f21db06cccb43
https://github.com/llvm/llvm-project/commit/9a2d9c7fef47c0af321150f75d8f21db06cccb43
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
M llvm/test/CodeGen/ARM/select-imm.ll
A llvm/test/Transforms/IndVarSimplify/iv-widen-addrec-flag-inferred-late.ll
Log Message:
-----------
[SCEV] Try to fold ZExt/SExt of AddRec before existing lookup. (#208805)
Move AddRec fold for ZExt & SExt before existing SCEV lookup. This can
improve results, when we constructed SCEV for a ZExt/SExt during earlier
analysis and flags on the operand AddRec have not been
refined/strengthend yet.
This improves results in some cases and fixes a regression here:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/654#discussion_r3554885279.
On a large C/C++ corpus with 32k bitcode files, ~2% more IVs get
widened, removing a large number of ZExt instructions.
Compile-time impact in the noise
https://llvm-compile-time-tracker.com/compare.php?from=167d65906cc3c636221158abe8289ab4a03dfc7d&to=381abca0d5ead4443d86287d754f47c21396a9be&stat=instructions:u
Commit: 62a932ac3e2702a5493934c6362f9e058a204557
https://github.com/llvm/llvm-project/commit/62a932ac3e2702a5493934c6362f9e058a204557
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
A clang/test/CodeGen/SystemZ/systemz-module.flags.c
M llvm/include/llvm/IR/Module.h
M llvm/lib/IR/Module.cpp
Log Message:
-----------
[SystemZ][z/OS] Fix zos_translation_time module flag (#210058)
The zos_translation_time flag needs to be 64-bit to handle the year 2038
problem.
Commit: 23b0281d75a4320a4e6e3d837edf94911d98d252
https://github.com/llvm/llvm-project/commit/23b0281d75a4320a4e6e3d837edf94911d98d252
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
A llvm/test/CodeGen/X86/tailcall-i686-pic.ll
Log Message:
-----------
[X86] Fix assertion failure for tail call on i686+pic (#210302)
The pattern for TCRETURNmi has a IsNotPIC predicate, but the
checkTCRetEnoughRegs() predicate that's part of the X86tcret_enough_regs
PatFrag is evaluated first, so we can't assert that PIC is disabled
here. We should just return false in that case.
Fixes https://github.com/llvm/llvm-project/issues/210300.
Commit: 38104cf836c3903647c917a5b251e938f4eadbb9
https://github.com/llvm/llvm-project/commit/38104cf836c3903647c917a5b251e938f4eadbb9
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
A llvm/lib/Target/AArch64/AArch64PTrueCoalescing.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
A llvm/test/CodeGen/AArch64/sve-ptrue-coalesce.mir
Log Message:
-----------
[LLVM][SVE] Add MachineInst pass to coalesce PTRUE instructions. (#204820)
SVE predicate registers contain a bit for each byte of a data register.
When operating on bigger element types the overlaping predicate bits are
grouped together but typically only the least-significant-bit is read as
part of the operation. This means the value of the other bits does not
affect the operation, making it possible to use the result of PTRUE for
a larger element typed operation, assuming the predicate patterns are
equivalent. For example:
ADD_S (PTRUE_H 31), Z0, Z1 == ADD_S (PTRUE_S 31), Z0, Z1
AArch64PTrueCoalescingPass uses this fact to reduce the number of PTRUE
instructions in a function, with the general trend towards needing a
single PTRUE based on the smallest element type in use.
NOTE: The pass will be enabled by default using a dedicated PR to make
it easier to revert if something goes wrong.
Commit: de4f929700f8d87041e0b050ec6028f0ac5276ad
https://github.com/llvm/llvm-project/commit/de4f929700f8d87041e0b050ec6028f0ac5276ad
Author: David Spickett <david.spickett at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
M lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h
Log Message:
-----------
[lldb][x86] Remove GCC 6 workaround (#210317)
Added by 3bea7306e8669f94bacafae68748a9139cfc0b98.
We now require GCC >= 7.4 so it can be removed.
I tested a standalone reproducer with GCC 7.3 and
clang 5. Neither have the problem.
https://godbolt.org/z/3zKrT9c8s
Standalone reproducer:
```
struct Base {
Base(int) {}
};
struct Derived : virtual Base {
#ifdef WORKAROUND
Derived(int a): Base(a) {}
#endif
virtual void g() = 0;
};
struct Final : Derived {
Final(int n) : Base(n)
#ifdef WORKAROUND
, Derived(n)
#endif
{}
void g() override {}
};
```
Commit: b9f5bcbcfbe6aa4943c808afd3bb82243ecb3193
https://github.com/llvm/llvm-project/commit/b9f5bcbcfbe6aa4943c808afd3bb82243ecb3193
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/include/clang/Basic/ABIVersions.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/CodeGen/CGFunctionInfo.h
M clang/include/clang/CodeGen/CodeGenABITypes.h
M clang/lib/CodeGen/ABIInfo.h
M clang/lib/CodeGen/CGCUDARuntime.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenABITypes.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenTypes.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/test/CodeGen/sysv_abi.c
R clang/test/CodeGen/target-avx-function-abi.c
R clang/test/CodeGenCXX/target-avx-method-abi.cpp
M clang/unittests/CodeGen/CodeGenExternalTest.cpp
M clang/unittests/CodeGen/TestCompiler.h
Log Message:
-----------
Revert "[clang][CodeGen][X86_64] Honor per-function AVX ABI in C/C++ call paths, maintain old psABI for PlayStation." (#210303)
Reverts llvm/llvm-project#193298
Causes a major compile-time regression.
Commit: 75ec1a4e80a9377f8f1e2ff063b094e016787926
https://github.com/llvm/llvm-project/commit/75ec1a4e80a9377f8f1e2ff063b094e016787926
Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-default-address-space.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-init-expr.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-multi-gve.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-backing-var.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-type.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-path-null.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-static-member.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-type-not-in-regs.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-static-member.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable.ll
Log Message:
-----------
[SPIRV] Emit NonSemantic DebugGlobalVariable (#207230)
Add emitDebugGlobalVariable to the NSDI handler, translating each
DIGlobalVariable to a
[DebugGlobalVariable](https://github.khronos.org/SPIRV-Registry/nonsemantic/NonSemantic.Shader.DebugInfo.html#DebugGlobalVariable)
ext inst.
Commit: 4f76a4c5a3f8711fe13b05c0f93ac78349396292
https://github.com/llvm/llvm-project/commit/4f76a4c5a3f8711fe13b05c0f93ac78349396292
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
Log Message:
-----------
[NFC] RelNotes Formatting fix I screwed up in 209893 (#210325)
Commit: 40ae05d4773f5c1b2a84ea7dc908d92671b8daa9
https://github.com/llvm/llvm-project/commit/40ae05d4773f5c1b2a84ea7dc908d92671b8daa9
Author: adams381 <adams at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/unittests/CIR/CMakeLists.txt
A clang/unittests/CIR/IntTypeABIAlignTest.cpp
Log Message:
-----------
[CIR] Return power-of-two ABI alignment for non-fundamental int widths (#210187)
`cir::IntType::getABIAlignment` returns `width / 8` for non-`_BitInt`
integers. For a non-fundamental width such as `i24` it returns 3, which
is
not a power of two, so a consumer that builds an `llvm::Align` from it
would
hit the power-of-two assertion unless it rounds the value up itself.
This rounds the alignment up to a power of two inside `getABIAlignment`,
matching how LLVM's default DataLayout aligns these (an `i24` aligns
like
`i32`). The fundamental widths are unchanged (`i8` -> 1, `i16` -> 2,
`i32` -> 4, `i64` -> 8), `__int128` stays at 16, and a sub-byte width
like
`i1` now reports 1 instead of 0. A unit test pins these cases.
Commit: 1f2772f8e26beb909c2a559f1fb08697e3e06909
https://github.com/llvm/llvm-project/commit/1f2772f8e26beb909c2a559f1fb08697e3e06909
Author: Iliyan Georgiev <Iliyan.Georgiev at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/Tosa/availability.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/invalid_extension.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
M mlir/test/Dialect/Tosa/verifier.mlir
Log Message:
-----------
[mlir][tosa] Add support for MXFP conv2d (#210054)
- Adds profile compliance support for MXFP conv2d
- Relax conv2d accumulator constraits. They are checked as part of
validation pass
and this would allow experimentation with different types.
Signed-off-by: Iliyan Georgiev <iliyan.georgiev at arm.com>
Commit: 6f64e7cf0ad7699a5f1e6b2418d4c2cdcdb26470
https://github.com/llvm/llvm-project/commit/6f64e7cf0ad7699a5f1e6b2418d4c2cdcdb26470
Author: Shreyansh Lodha <lodhashreyansh1603 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/Parser.cpp
M clang/test/AST/ast-dump-decl.cpp
A clang/test/AST/ast-dump-deleted-defaulted-range.cpp
M clang/test/AST/ast-dump-funcs.cpp
M clang/test/AST/ast-dump-record-definition-data-json.cpp
M clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
M clang/test/CoverageMapping/default-method.cpp
M clang/unittests/AST/SourceLocationTest.cpp
M clang/unittests/Tooling/RecursiveASTVisitorTests/CXXMethodDecl.cpp
Log Message:
-----------
[Clang][AST] Add source range for deleted and defaulted functions (#205408)
Earlier wrong ranges for default and deleted functions were reported.
Post this fix all ranges for functions are reported.
Fix: Extended the declarator's source range to include the delete /
default tokens by calling
D.SetRangeEnd(PP.getLocForEndOfToken(KilLoc).getLocWithOffset(-1)) after
consuming each keyword in ParseFunctionDefinition. Previously, the range
ended at the function name, onitting the delete/default specifier
entirely.
Regression tested and no regressions found.
Assisted-by: Claude Code (Anthropic) — used in developing this patch.
Closes #64805
Commit: 7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad
https://github.com/llvm/llvm-project/commit/7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Fix type of SIlds / AMDGPUISD::LDS node (#210340)
iPTR means i64 here, but this node operates on 32-bit LDS addresses.
Commit: 499b69cf07e03a23a420ee773261fcfcfc1c3df9
https://github.com/llvm/llvm-project/commit/499b69cf07e03a23a420ee773261fcfcfc1c3df9
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerUnit.h
Log Message:
-----------
[DWARFLinker] Fix data race on the per-unit file-name cache (#208967)
CompileUnit::getDirAndFilenameFromLineTable reads and mutates the unit's
FileNames DenseMap without synchronization. During the parallel
type-name assignment phase a unit's cache is touched both by its own
worker and, through cross-unit type-name references
(addReferencedODRDies calling addDieNameFromDeclFileAndDeclLine) by
other units' workers.
The concurrent find/insert/grow corrupts the map and trips the
assertion:
```
Assertion failed: (TheBucket), function findBucketForInsertion, DenseMap.h
```
Guard the cache with a mutex. Store each entry in a heap-allocated pair
so the StringRefs handed back to callers stay valid across a concurrent
rehash. Otherwise a short (small-string-optimized) file name would move
when another insertion grows the map, dangling a StringRef already
returned.
Commit: 2a00d50e6012e1ee31904d394c088be907b6aa8b
https://github.com/llvm/llvm-project/commit/2a00d50e6012e1ee31904d394c088be907b6aa8b
Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-acc-structure.h
M flang/test/Semantics/OpenACC/acc-loop-routine-call.f90
Log Message:
-----------
[Flang][OpenACC] Check routine level for function references in loops (#209529)
Extend the loop/routine-level compatibility check to `FunctionReference`
calls. Resolve `!$acc routine` information from procedure pointers and
interface symbols, not only `SubprogramDetails`.
Commit: f1b5b061832610e78d5be7313f0ab3e5e55d790f
https://github.com/llvm/llvm-project/commit/f1b5b061832610e78d5be7313f0ab3e5e55d790f
Author: David Young <davidayoung at meta.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/TestingConfig.py
M llvm/utils/lit/lit/cl_arguments.py
M llvm/utils/lit/lit/main.py
A llvm/utils/lit/tests/Inputs/pass-env/lit.cfg
A llvm/utils/lit/tests/Inputs/pass-env/test.txt
A llvm/utils/lit/tests/pass-env.py
Log Message:
-----------
Modify lit config to allow specify extra env vars to pass through to lit invocation (#208239)
lit's pass-through environment allow-list is hard-coded in
TestingConfig.py. There are cases where a particular test environment
needs an extra variable passed through (e.g. credentials or tooling
paths required to fetch dependencies during a test), but today the only
way to add one is to fork this list downstream.
This adds a --pass-env NAME option (repeatable, and also honored via
LIT_OPTS) that copies the named variable from lit's environment into the
test environment, in addition to the built-in allow-list. Since the
caller chooses exactly which variables to forward, passing through a
wrong or sensitive variable is user error rather than a default. The
default is empty, so existing behavior — only the hard-coded list is
passed through — is unchanged.
test creation help via Claude
Commit: d7aacfc940c3f1553973f1ebf7d11a6513fda1ed
https://github.com/llvm/llvm-project/commit/d7aacfc940c3f1553973f1ebf7d11a6513fda1ed
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/include/lldb/Host/common/DomainSocket.h
M lldb/source/Host/common/DomainSocket.cpp
M lldb/unittests/Host/SocketTest.cpp
M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationServerLLGSTest.cpp
M lldb/unittests/Utility/UriParserTest.cpp
Log Message:
-----------
[lldb] Support Windows paths in AF_UNIX domain-socket URIs (#206985)
On Windows an `AF_UNIX` socket path is a native filesystem path. Placed
directly in a unix-connect:// URI it isn't a valid `host:port`
authority, so `URI::Parse` confuses the drive letter colon as a port
separator and connection setup fails.
This patch converts the path in the [RFC
8089](https://datatracker.ietf.org/doc/html/rfc8089) file-URI form
instead which parses as an ordinary URI with an empty host. DomainSocket
converts between the native path and this URI form at its boundaries.
Both are no-ops on POSIX: behavior is unchanged, and `URI::Parse` and
the GDB-remote consumers are left untouched.
rdar://180736036
Commit: 0b1652db8a18b336f39855fcf9b5137fa0b4b3c9
https://github.com/llvm/llvm-project/commit/0b1652db8a18b336f39855fcf9b5137fa0b4b3c9
Author: Kane Wang <wangqiang1 at kylinos.cn>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/atomicrmw-xchg.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv64.mir
Log Message:
-----------
[RISCV][GlobalISel] Legalize G_ATOMICRMW_XCHG (#209983)
This commit makes `xchg` consistent with `add/and/or/xor` across all
type/extension combinations. Updates `legalizer-info-validation.mir` for
the newly defined rules and adds `atomicrmw-xchg.ll` and
`legalize-atomicrmw-xchg-rv{32,64}.mir` tests.
Commit: d05f7b28b6f7de6e9ca89e1b9e3aca8c8380e322
https://github.com/llvm/llvm-project/commit/d05f7b28b6f7de6e9ca89e1b9e3aca8c8380e322
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Log Message:
-----------
[gn build] Port 38104cf836c3 (#210356)
Commit: 45f76eac198fdee52d61c57e667f48a7f5e9581f
https://github.com/llvm/llvm-project/commit/45f76eac198fdee52d61c57e667f48a7f5e9581f
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn
Log Message:
-----------
[gn build] Port 40ae05d4773f (#210357)
Commit: 30f270edb42c5d37e4c4a413ebfc7a6513565b30
https://github.com/llvm/llvm-project/commit/30f270edb42c5d37e4c4a413ebfc7a6513565b30
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
A lld/test/COFF/link-dll-arm64x.s
Log Message:
-----------
[LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210311)
In mingw mode, when linking against a DLL, the user can either provide a
regular import library, or provide the actual DLL. When linking against
an ARM64X image, add both native and EC views to the symbol table on EC
targets. Also getMachine() on such images returns ARM64X, treat it as
ARM64 instead.
Commit: 4671287932028a32caa4bce6aea35f9de3f1daa8
https://github.com/llvm/llvm-project/commit/4671287932028a32caa4bce6aea35f9de3f1daa8
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
Log Message:
-----------
[lldb][Windows] Reuse preloaded exe module on launch (#210010)
# Brief
Recreating the module everytime causes the path to be canonicalized.
This does not work well with subst drives, because the newly created
module will not have the correct drive path, causing breakpoints to be
unresolved.
# Description
`ProcessWindows::OnDebuggerConnected` derives the executable module from
`GetModuleFileNameExW` on every connect. This returns the process
image's *real* path, so when the target is created via a subst'd or
mapped drive (e.g. `S:\...\a.out`, where `S:` is subst for `C:\S`) it
comes back as `C:\S\...\a.out`. `GetOrCreateModule` then fails to match
the module LLDB had already preloaded and creates a duplicate instead.
The duplicate leaves the original module's breakpoint location orphaned
unresolved while the new module's location is resolved, so a source line
breakpoint reports two locations with only one resolved. Generic tests
that assert exactly one resolved location fail with `"2 != 1"` and
`"Expecting 1 locations, got 2"`.
# Fix
This patch fixes this by first attempting to reuse the existing module
if it exists. In practice, LLDB only looks for the executable during
attach.
This is a problem in Swiftlang where we run our tests with a subst
drive. The impacted tests are:
-
`lang/c/{array_types,function_types,set_values,enum_types,anonymous,forward,local_variables}`
- `lang/cpp/{class_types,inlines}`
- `commands/{apropos/with-process,command/nested_alias,memory/write}`
- `functionalities/{memory/find,dead-strip,memory/holes}`
- `commands/expression/entry-bp`
Commit: e57b9c0761706905e42da3cfa485cebc3629d72a
https://github.com/llvm/llvm-project/commit/e57b9c0761706905e42da3cfa485cebc3629d72a
Author: Prajwal Nadig <pnadig at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
A clang/test/ExtractAPI/availability_typedef_anonymous_record.c
Log Message:
-----------
[ExtractAPI] Include availability attributes for anonymous typedefs (#209187)
When an anonymous type is defined and has availability attributes, the
attributes are attached to the typedef rather than the type being
defined. This patch updates the anonymous type handling logic to merge
the availability from the typedef in order to correctly include it in
the symbol graph.
rdar://125497949
Commit: 06340b81573a6824c0ddd54fcba5ae8ffacacd6f
https://github.com/llvm/llvm-project/commit/06340b81573a6824c0ddd54fcba5ae8ffacacd6f
Author: Prajwal Nadig <pnadig at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/lib/ExtractAPI/DeclarationFragments.cpp
A clang/test/ExtractAPI/objc_nullability.m
Log Message:
-----------
[ExtractAPI] Include nullability attributes (#209221)
Nullability attributes (nullable, nonnull, null_unspecified,
null_resettable) add valuable context about the type, and would be
useful when viewing declarations. This patch updates ExtractAPI to
include these attributes in the symbol graph.
rdar://139097216
Commit: 709b7d1bd4a71e484702d610f81b5cf84303386f
https://github.com/llvm/llvm-project/commit/709b7d1bd4a71e484702d610f81b5cf84303386f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Pull out isFoldableAsShuffle lamdba as helper function. NFC. (#210354)
For future reuse.
Commit: de5cef3127047836fceb416f8083942783834489
https://github.com/llvm/llvm-project/commit/de5cef3127047836fceb416f8083942783834489
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir
Log Message:
-----------
[mlir][vector] Extend `combineContractAndBroadcast` to accept `vector.shape_cast` (#208752)
`combineContractAndBroadcast` is a pattern that matches
`vector.contract` operations whose inputs are defined by
`vector.broadcast`, e.g.:
```mlir
%0 = vector.broadcast %lhs : vector<8x4xi32> to vector<1x8x4xi32>
%1 = vector.broadcast %rhs : vector<8x4xi32> to vector<1x8x4xi32>
%result = vector.contract {
indexing_maps = [#map0, #map1, #map2],
iterator_types = ["reduction", "parallel", "parallel", "reduction"],
kind = #vector.kind<add>
} %0, %1, %acc : vector<1x8x4xi32>, vector<1x8x4xi32> into vector<8x8xi32>
```
The pattern folds away the reduction over a unit dimension introduced by
the defining operations, producing a simplified `vector.contract`:
```mlir
vector.contract {
indexing_maps = [#[[$MAP0]], #[[$MAP1]], #[[$MAP2]]]
iterator_types = ["parallel", "parallel", "reduction"]
} %0, %1, %acc : vector<8x4xi32>, vector<8x4xi32> into vector<8x8xi32>
```
This change extends the pattern to also accept broadcast-like
`vector.shape_cast` operations:
```mlir
%0 = vector.shape_cast %lhs : vector<8x4xi32> to vector<1x8x4xi32>
%1 = vector.shape_cast %rhs : vector<8x4xi32> to vector<1x8x4xi32>
%result = vector.contract {
indexing_maps = [#map0, #map1, #map2],
iterator_types = ["reduction", "parallel", "parallel", "reduction"],
kind = #vector.kind<add>
} %0, %1, %acc : vector<1x8x4xi32>, vector<1x8x4xi32> into vector<8x8xi32>
```
Note that `mlir::vector::isBroadcastableTo` was only moved to make it
available to the newly introduced `ShapeCastOp` helper,
`ShapeCastOp::isBroadcastLike()`.
Commit: bcb459015e12fb03e4ae3d56393883b2974f96fb
https://github.com/llvm/llvm-project/commit/bcb459015e12fb03e4ae3d56393883b2974f96fb
Author: Zachary Henkel <zachary.henkel at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M compiler-rt/test/sanitizer_common/android_commands/android_common.py
M lldb/examples/python/delta.py
M lldb/examples/python/gdbremote.py
Log Message:
-----------
Replace Python's deprecated tempfile.mktemp() with secure temp APIs (#210123)
Python's tempfile.mktemp() is deprecated and insecure: it returns a path
without creating the file, leaving a TOCTOU/symlink window before the
file is opened. Replace every use, choosing the temp API by lifetime:
- compiler-rt android_common.py adb(): tempfile.TemporaryFile
(anonymous, auto-deleted), read back via seek(0); drops manual
close()/unlink().
- compiler-rt android_common.py pull_from_device():
tempfile.TemporaryDirectory so "adb pull" writes into a private,
auto-cleaned directory.
- lldb examples delta.py / gdbremote.py start_gdb_log():
tempfile.NamedTemporaryFile(delete=False); the log must outlive the call
for a later stop_gdb_log, so it is intentionally not auto-deleted.
Reported by internal static analysis and contributed upstream for the
benefit of the wider community.
Assisted-by: GitHub Copilot CLI (Claude Opus 4.8)
I do not have commit access and will need someone to submit on my
behalf.
Commit: 5f7060ce4559c1079e850c96b106f1a43955b828
https://github.com/llvm/llvm-project/commit/5f7060ce4559c1079e850c96b106f1a43955b828
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/docs/ReleaseNotes.md
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Sema/Sema.h
R clang/include/clang/Sema/TemplateInstCallback.h
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Parse/ParseAST.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
R clang/test/Templight/templight-deduced-func.cpp
R clang/test/Templight/templight-default-arg-inst.cpp
R clang/test/Templight/templight-default-func-arg.cpp
R clang/test/Templight/templight-default-template-arg.cpp
R clang/test/Templight/templight-empty-entries-fix.cpp
R clang/test/Templight/templight-exception-spec-func.cpp
R clang/test/Templight/templight-explicit-template-arg.cpp
R clang/test/Templight/templight-memoization.cpp
R clang/test/Templight/templight-nested-memoization.cpp
R clang/test/Templight/templight-nested-template-instantiation.cpp
R clang/test/Templight/templight-one-instantiation.cpp
R clang/test/Templight/templight-prior-template-arg.cpp
Log Message:
-----------
[clang] remove templight support (#210166)
Removed as unmaintained, per discussion in
https://discourse.llvm.org/t/rfc-removing-templight-support/90777
Commit: 60846c8b0c1c47c03c25fe28ecaea00e698a3450
https://github.com/llvm/llvm-project/commit/60846c8b0c1c47c03c25fe28ecaea00e698a3450
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
Log Message:
-----------
[RISCV][P-ext][NFC] Add cross-project tests for packed zip/unzip intrinsics (#209575)
Commit: a55b011dabf8e5761d9955f98aa1138a10bd1a8a
https://github.com/llvm/llvm-project/commit/a55b011dabf8e5761d9955f98aa1138a10bd1a8a
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/test/CodeGen/SystemZ/systemz-module.flags.c
Log Message:
-----------
[SystemZ/[z/OS] Guard source-epoch related testcase to 64-bit clang targets (#210341)
This patch guards the following testcase for 64-bit clang targets Clang :: CodeGen/SystemZ/systemz-module.flags.c
Commit: d63bd842939f22fad4e29660d66b99a9bf94e4b4
https://github.com/llvm/llvm-project/commit/d63bd842939f22fad4e29660d66b99a9bf94e4b4
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/create-box-codegen.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
Log Message:
-----------
[flang] Added fir.create_box operation. (#210220)
This patch adds `fir.create_box` operation that allows
creating `!fir.box<>` values with arbitrary byte strides.
It can be used to recreate boxes describing non-contiguous
arrays from descriptor components (base_addr/lbs/extents/strides)
across offload regions.
This is just initial definition and code generation code.
The folders and passes producing this operation will be added
later.
Commit: fd55bbd6022ccb8d854f580b56c39177e80c256e
https://github.com/llvm/llvm-project/commit/fd55bbd6022ccb8d854f580b56c39177e80c256e
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M compiler-rt/test/profile/Linux/counter_promo_for.c
M compiler-rt/test/profile/Linux/counter_promo_while.c
Log Message:
-----------
[compiler-rt] Fix tests after #205331 (#210370)
New optimizations changed some compiler-rt tests. Update the test
expectations based on this.
Fixes #210355.
Commit: 0b666f74f94fffc2bc3380365704bcb61f2767d2
https://github.com/llvm/llvm-project/commit/0b666f74f94fffc2bc3380365704bcb61f2767d2
Author: David Young <davidayoung at meta.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl
Log Message:
-----------
Add missing BigArchive container plugin to lldb's bazel build (#210304)
Another missing plugin and its libraries in the LLDB bazel build. Based
this one on source/Plugins/ObjectContainer/Big-Archive/CMakeLists.txt
and its dependecies ( {}.cpp & {}.h)
waiting on CI to confirm bazel is correct as cannot build locally.
Can confirm this library will convert to BUCK internally at Meta and
build with buck2 where we do have in the default plugin list.
bazel rule assisted with: claude
Commit: 53c048b3732610c8d2d65c1d41603de26eb6ac4e
https://github.com/llvm/llvm-project/commit/53c048b3732610c8d2d65c1d41603de26eb6ac4e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libcxx/utils/ci/images/libcxx_release_runners.txt
Log Message:
-----------
[libc++] Update release runners to the image that was used on main at the branch point (#210378)
This will allow retaining a stable image for CI throughout the whole
LLVM 23 release.
Commit: a67eac3e141e1044dd98524a010e719b42f51f5e
https://github.com/llvm/llvm-project/commit/a67eac3e141e1044dd98524a010e719b42f51f5e
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SOPInstructions.td
Log Message:
-----------
[NFC][AMDGPU] Cleanup in SOPInstructions.td (#210367)
- Eliminate code which was accidentally merged during a merge-conflict
(https://github.com/llvm/llvm-project/pull/203155/changes#r3560059941)
- Remove comments as they are specific to usubsat.
Commit: db1f902cd6a95c9b80136dfcbe8beb7a58290641
https://github.com/llvm/llvm-project/commit/db1f902cd6a95c9b80136dfcbe8beb7a58290641
Author: Mishal Shah <mishal_shah at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .github/workflows/premerge.yaml
Log Message:
-----------
Add macOS premerge check workflow (#207435)
Added a premerge check workflow for macOS self-hosted runners to build
and test projects.
Commit: f04bf4791ae6d56b822f9bca6eb82ce4adccb989
https://github.com/llvm/llvm-project/commit/f04bf4791ae6d56b822f9bca6eb82ce4adccb989
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/src/__support/File/linux/CMakeLists.txt
M libc/src/__support/File/linux/dir.cpp
M libc/src/__support/File/linux/file.cpp
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/auxv.h
M libc/src/__support/threads/linux/CMakeLists.txt
M libc/src/__support/threads/linux/thread.cpp
M libc/src/sched/linux/CMakeLists.txt
M libc/src/sched/linux/sched_getaffinity.cpp
M libc/src/spawn/linux/CMakeLists.txt
M libc/src/spawn/linux/posix_spawn.cpp
M libc/src/stdio/linux/CMakeLists.txt
M libc/src/stdio/linux/remove.cpp
M libc/src/sys/ipc/linux/CMakeLists.txt
M libc/src/sys/ipc/linux/ftok.cpp
R libc/src/sys/ipc/linux/kernel_statx.h
M libc/src/sys/mman/linux/CMakeLists.txt
M libc/src/sys/mman/linux/shm_unlink.cpp
M libc/src/sys/time/linux/CMakeLists.txt
M libc/src/sys/time/linux/utimes.cpp
M libc/startup/linux/x86_64/CMakeLists.txt
M libc/startup/linux/x86_64/tls.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][NFC] Port raw syscall users to existing syscall_wrappers (#208039)
Several call sites still invoked syscall_impl directly (or carried
their own SYS_* fallback ladders) for syscalls that already have a
wrapper in src/__support/OSUtil/linux/syscall_wrappers.
This PR removes these syscalls in favor of the syscall_wrappers.
Commit: 246c752ef1b6098a7aa222f02ca09db76e17cabe
https://github.com/llvm/llvm-project/commit/246c752ef1b6098a7aa222f02ca09db76e17cabe
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
Log Message:
-----------
[bazel][libc] Add layering deps (#210380)
Not sure why CI didn't catch it, but
c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75 adds some targets that are
broken when layering checks are enabled.
Commit: c42ce32264f94a8800f4250d7b716cca55f77df6
https://github.com/llvm/llvm-project/commit/c42ce32264f94a8800f4250d7b716cca55f77df6
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
A compiler-rt/docs/ASanABI.md
R compiler-rt/docs/ASanABI.rst
A compiler-rt/docs/BuildingCompilerRT.md
R compiler-rt/docs/BuildingCompilerRT.rst
A compiler-rt/docs/TestingGuide.md
R compiler-rt/docs/TestingGuide.rst
M flang/docs/CMakeLists.txt
A flang/docs/CommandGuide/index.md
R flang/docs/CommandGuide/index.rst
A libsycl/docs/CodingGuidelines.md
R libsycl/docs/CodingGuidelines.rst
A libsycl/docs/index.md
R libsycl/docs/index.rst
M libsycl/test/README.md
A libunwind/docs/BuildingLibunwind.md
R libunwind/docs/BuildingLibunwind.rst
M libunwind/docs/conf.py
A libunwind/docs/index.md
R libunwind/docs/index.rst
M lldb/source/Plugins/TraceExporter/common/TraceHTR.h
A lldb/source/Plugins/TraceExporter/docs/htr.md
R lldb/source/Plugins/TraceExporter/docs/htr.rst
A llvm-libgcc/docs/LLVMLibgcc.md
R llvm-libgcc/docs/LLVMLibgcc.rst
M llvm-libgcc/generate_version_script.py
M offload/docs/conf.py
A offload/docs/index.md
R offload/docs/index.rst
Log Message:
-----------
[docs] Rename misc rst docs to md (#210208)
Tracking issue: #201242
See the [migration guide] for more information.
[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
This is the initial straight rename commit.
Many of these miscellaneous .rst files are not actually part of a real
docs build, since docs/conf.py does not exist for many of them.
Commit: 9b096bb7abf7b57182ae8556451aa34dacd535ec
https://github.com/llvm/llvm-project/commit/9b096bb7abf7b57182ae8556451aa34dacd535ec
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/bindings/interfaces.swig
M lldb/include/lldb/API/LLDB.h
M lldb/include/lldb/API/SBDefines.h
A lldb/include/lldb/API/SBProtocolServer.h
M lldb/source/API/CMakeLists.txt
A lldb/source/API/SBProtocolServer.cpp
M lldb/unittests/API/CMakeLists.txt
A lldb/unittests/API/SBProtocolServerTest.cpp
Log Message:
-----------
[lldb] Add SBProtocolServer to start protocol servers programmatically (#209923)
Starting a protocol server (such as MCP, and in the future potentially
DAP) is only possible from the command line today, via `protocol-server
start`. Add an SB API so an embedder can start one in its own process
and learn where to connect.
SBProtocolServer wraps ProtocolServer::GetOrCreate/Start/Stop and
exposes the listening connection URI. This lets a tool host the engine's
protocol server in-process and talk to it as a normal client, reusing
the server's tools rather than reimplementing them.
Assisted-by: Claude
Commit: 2b6e9d261433f5ec8c49502f91d63dd7d07346c3
https://github.com/llvm/llvm-project/commit/2b6e9d261433f5ec8c49502f91d63dd7d07346c3
Author: Artem Belevich <tra at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/atomicrmw-allow-ftz-atomics.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
M llvm/test/CodeGen/NVPTX/atomicrmw.py
M llvm/test/CodeGen/NVPTX/atomics.ll
Log Message:
-----------
[NVPTX] Set default value of nvptx-allow-ftz-atomics to true (#206154)
This is a follow-up to https://github.com/llvm/llvm-project/pull/200732.
Setting the default value of nvptx-allow-ftz-atomics to true preserves
the status quo. It allows the NVPTX backend to emit native
floating-point atomic add instructions by default, rather than falling
back to the CAS loop required for strict FTZ compliance.
Correct FTZ handling forces a lot of existing code to emit CAS loops.
This introduces thread divergence, breaking code that relies on atomic
operations being non-divergent (for example, warp-wide atomic additions
followed by a load of the reduced value without explicit
synchronization).
While FTZ-correct atomic behavior is desirable as a long-term default,
introducing thread divergence into a common operation that previously
"happened to work" without synchronization is highly disruptive.
Defaulting to true makes the FTZ-correct behavior opt-in for now,
allowing users time to audit and adapt their code.
Test cases are updated to verify both enabled and disabled states of the
option, alongside the new default behavior.
Commit: 50c8f07e3eebf1ff5a1d9378d77aef5df9583293
https://github.com/llvm/llvm-project/commit/50c8f07e3eebf1ff5a1d9378d77aef5df9583293
Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
A clang/test/Analysis/std-c-library-functions-non-integral-ssize_t.cpp
Log Message:
-----------
[clang][analyzer] Fix assertion failure in StdLibraryFunctionsChecker with non-integral ssize_t (#209655)
In StdLibraryFunctionsCheckers' `RangeConstraint::checkSpecificValidity`
asserted that the constrained argument type is integral. When user code
typedefs `ssize_t` to a non-integral type (e.g. `float`) even though
this violates POSIX.1-2017, which requires `ssize_t` to be a signed
integer type, the signature still matches (same canonical type) and the
assertion fires during constraint validation. Remove it and let
`validateByConstraints` gracefully reject the summary by returning
false.
Fixes #209436
Commit: 40c4fea67f49b841bd064624219efceab91b65e0
https://github.com/llvm/llvm-project/commit/40c4fea67f49b841bd064624219efceab91b65e0
Author: Krisitan Erik Olsen <kristian.erik at outlook.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Utils/SSAUpdater.cpp
A llvm/test/Transforms/SROA/sroa-self-referential-load.ll
Log Message:
-----------
[SROA] Fix assertion failure when promoting self-referential load/store (#208826)
When LoadAndStorePromoter::run processes a block where a store's value
operand is defined by the load being promoted (a self-referential cycle
in unreachable code), it sets StoredValue to the load instruction. When
it then calls replaceAllUsesWith, the doRAUW assertion fires because the
replacement value contains the value being replaced.
The single-block promotion paths in promoteSingleBlockAlloca already
guard against this with a check for ReplVal == LI, replacing with poison
instead. This patch adds the same guard to the in-block load path in
LoadAndStorePromoter::run, which was missing it. Substituting poison is
correct here since this situation only arises in unreachable code.
The regression was introduced in #135609, which added the
propagateStoredValuesToLoads path in SROA that routes through
LoadAndStorePromoter::run. LoadStoreRewriter handles aggregates and is
unrelated to this path.
Fixes #204799
Commit: 714d124d0aaf3effa3e83d01783fe0ed2cd3eea9
https://github.com/llvm/llvm-project/commit/714d124d0aaf3effa3e83d01783fe0ed2cd3eea9
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
Log Message:
-----------
Revert "[RISCV][P-ext][NFC] Add cross-project tests for packed zip/unzip intrinsics" (#210401)
Reverts llvm/llvm-project#209575
Commit: 93b1240309309d5c2f8f94527ff7c7bd5df359af
https://github.com/llvm/llvm-project/commit/93b1240309309d5c2f8f94527ff7c7bd5df359af
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M compiler-rt/docs/ASanABI.md
M compiler-rt/docs/BuildingCompilerRT.md
M compiler-rt/docs/TestingGuide.md
M flang/docs/CommandGuide/index.md
M libsycl/docs/CodingGuidelines.md
M libsycl/docs/index.md
M libunwind/docs/BuildingLibunwind.md
M libunwind/docs/index.md
M lldb/source/Plugins/TraceExporter/docs/htr.md
M llvm-libgcc/docs/LLVMLibgcc.md
M offload/docs/conf.py
M offload/docs/index.md
Log Message:
-----------
[docs] Finish misc MyST migration (#210209)
Tracking issue: #201242
See the [migration guide] for more information.
[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
This is a stacked PR based on #210208, which is the standalone rename
commit for this miscellaneous Markdown migration batch.
This was prepared with rst2myst plus LLM-assisted cleanup. LLDB man
pages are intentionally left as reStructuredText because LLDB man-page
building should not take on Markdown parser dependencies.
Unfortunately, many of these miscellaneous docs do not have working
standalone doc build targets, so I was not able to render HTML for all
of them. I think the scope is small enough that this is reviewable by
hand.
Commit: 91bb8f4ee8452d3e2bda7544556fa66dba462414
https://github.com/llvm/llvm-project/commit/91bb8f4ee8452d3e2bda7544556fa66dba462414
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll
M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll
Log Message:
-----------
[VPlan] Introduce vputils::doesGeneratePerAllLanes (#199047)
Introduce a query for recipes that produce scalar values for all VF
lanes, returning true for non-single-scalar replicates, non-first-lane
SIVSteps, and a couple of VPInstructions.
Commit: 93bce300db95e4fbb82b1a6ef69fe125c71b77f3
https://github.com/llvm/llvm-project/commit/93bce300db95e4fbb82b1a6ef69fe125c71b77f3
Author: Ayokunle Amodu <ayokunle321 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip
Log Message:
-----------
[CIR][AMDGPU] Add support for AMDGCN log builtins (#198032)
Adds codegen support for the following AMDGCN log builtins:
- __builtin_amdgcn_logf (float)
- __builtin_amdgcn_log_bf16 (bfloat16)
These are lowered to the corresponding `llvm.amdgcn.log` intrinsic.
Commit: 3e55f3c56e8706fa12792b5a4de05f636bf798d0
https://github.com/llvm/llvm-project/commit/3e55f3c56e8706fa12792b5a4de05f636bf798d0
Author: Jackson Stogel <jtstogel at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/test/UnitTest/HermeticTestUtils.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/realpath_test.cpp
Log Message:
-----------
[libc][realpath][test] Create test files/directories (#209369)
Follow-up PRs will add path validation etc to `realpath`, which will
require paths to exist in the filesystem.
This PR bumps the memory limit in `HermeticTestUtils.cpp`. The realpath
unit tests allocate quite a few strings, and since memory in hermetic
tests is never freed, the unit test quickly reaches the limit.
Commit: 4070621c866fb4156f7c7d15039d12a4295f46c2
https://github.com/llvm/llvm-project/commit/4070621c866fb4156f7c7d15039d12a4295f46c2
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-create-box.fir
Log Message:
-----------
[flang][OpenACC] Discover type descriptors referenced by fir.create_box (#210393)
Register the IndirectGlobalAccess interface for fir.create_box so
acc-implicit-declare finds the derived-type type-descriptor global a
create_box of a record array needs on the device, as it already does
for fir.embox and fir.rebox.
Assisted-by: Cursor
Commit: 5c719eeb715632b1afef6508bd6c5ac09369fc91
https://github.com/llvm/llvm-project/commit/5c719eeb715632b1afef6508bd6c5ac09369fc91
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/test/CIR/CodeGen/builtins-x86.c
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
Log Message:
-----------
[CIR] Implement support for builtin FMA (#210365)
Implement support for the _builtin_fma
Commit: 95cc83d45b1b8e4a560efb729bd7e1e16f0b8703
https://github.com/llvm/llvm-project/commit/95cc83d45b1b8e4a560efb729bd7e1e16f0b8703
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
A llvm/docs/AdminTasks.md
R llvm/docs/AdminTasks.rst
Log Message:
-----------
[docs] Rename AdminTasks to markdown to preserve history (#210415)
Tracking issue: #201242
Migrating this before I make changes to it. A follow-up PR will do the
migration.
Commit: fb0547315ecf3f09fb6fc9122e40ff096a643eaa
https://github.com/llvm/llvm-project/commit/fb0547315ecf3f09fb6fc9122e40ff096a643eaa
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/docs/AdminTasks.md
Log Message:
-----------
[docs] Rewrite AdminTasks.md as markdown (#210416)
Tracking issue: #201242
This is a stacked PR based on #210415 , which does a rename for history
preservation purposes. See the [migration guide] for more information.
[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
This was prepared with rst2myst.
Commit: d982e0499b7f780279c435403b8249d7c3812cae
https://github.com/llvm/llvm-project/commit/d982e0499b7f780279c435403b8249d7c3812cae
Author: Diego Novillo <dnovillo at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
Log Message:
-----------
[HLSL] Enable frontend IR generation for SPIR-V in TypedBuffers-constructor.hlsl (#207421)
I found a stale `FIXME` marker while poking at SPIR-V resource lowering.
The test stated that SPIR-V codegen of
`llvm.spv.resource.handlefrombinding` and resource types was not
implemented. That codegen now exists in
`CommonSPIRTargetCodeGenInfo::getHLSLType`.
This change enables the test on SPIR-V and splits the tests to
distinguish DXIL and SPIRV expected IR patterns.
Commit: 9bae0aab8098f99dff47578546eb5bd382f919d0
https://github.com/llvm/llvm-project/commit/9bae0aab8098f99dff47578546eb5bd382f919d0
Author: LU-JOHN <John.Lu at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/div-rem-fast-path.ll
M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
M llvm/test/CodeGen/AMDGPU/sdiv.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
Log Message:
-----------
[AMDGPU] Remove unnecessary and broken sign/zero extension in fastdiv (#210348)
Remove unnecessary and broken sign/zero-extension when using float-point
reciprocal to implement division/remainder. This change is analogous to
the change done in https://github.com/llvm/llvm-project/pull/203436 but
in AMDGPUISelLowering.cpp.
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: dc3b1ed3ccd10995b26fa5278cb80c45419f9457
https://github.com/llvm/llvm-project/commit/dc3b1ed3ccd10995b26fa5278cb80c45419f9457
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
A llvm/test/TableGen/RuntimeLibcallEmitter-predicate-cc-sort.td
M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
Log Message:
-----------
TableGen: Deterministically order predicate groups by calling convention (#210409)
Commit: 6ff0ebea015e3ed984dfff941e7d8a48e4810784
https://github.com/llvm/llvm-project/commit/6ff0ebea015e3ed984dfff941e7d8a48e4810784
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/include/lldb/Core/Diagnostics.h
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Diagnostics.cpp
A lldb/test/Shell/Diagnostics/TestDiagnosticsCollectBinaries.test
Log Message:
-----------
[lldb] Collect the executable, symbol file, and core in diagnostics (#210391)
The diagnostics bundle already gathers logs, statistics, and a snapshot
of the first triage commands, but sometimes the binaries are required to
reproduce an issue. Collect the main executable, its symbol file, and
the core file into the bundle.
Gate this on a new global setting, diagnostics.collect-binaries, which
defaults to false: these files can be large and privacy sensitive, so
including them is opt-in.
Assisted-by: Claude
Commit: 977eced054d9de031423dee9493addd4e1fd5eaf
https://github.com/llvm/llvm-project/commit/977eced054d9de031423dee9493addd4e1fd5eaf
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/source/Expression/IRInterpreter.cpp
Log Message:
-----------
[lldb] Truncate an over-wide symbol address in the IR interpreter (#210372)
IRInterpreter::ResolveConstantValue built a pointer-width APInt directly
from the address returned by FindSymbol. That address can be wider than
a target pointer, because lldb records extra information in the high
bits on some targets, such as the code/memory address-space tag on
WebAssembly.
A 32-bit pointer then cannot hold the tagged address and the APInt
constructor asserts, aborting the debugger when a function-valued
expression is evaluated (for example `expr main`).
Truncate to the pointer width instead of asserting, matching the idiom
already used in DWARFExpression. On targets whose addresses fit in a
pointer this is a no-op.
Commit: 4e0dbfe489dcc0b057303047608cd2a909602a14
https://github.com/llvm/llvm-project/commit/4e0dbfe489dcc0b057303047608cd2a909602a14
Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
Log Message:
-----------
[SCEV][NFC] Precommit test for MatchRangeCheckIdiom tightening (#210386)
Commit: 0e3852f73ab75639b76bad2c8a735d46241768f3
https://github.com/llvm/llvm-project/commit/0e3852f73ab75639b76bad2c8a735d46241768f3
Author: Patryk Stefanski <patryk.stefanski at protonmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Parser/cxx1z-decomposition.cpp
Log Message:
-----------
[clang][sema] Fix crash on decomposition decl missing initializer (#210151)
ActOnUninitializedDecl dereferenced the std::optional<Token> from
Lexer::findNextToken() unconditionally when diagnosing a structured
binding with no initializer. Guard the optional and fall back to the
declaration's location.
Commit: 82134c708f7ec224d86e2096d9b53c76640a490f
https://github.com/llvm/llvm-project/commit/82134c708f7ec224d86e2096d9b53c76640a490f
Author: Akshay K <iit.akshay at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/test/CIR/CodeGen/ternary-throw.cpp
Log Message:
-----------
[CIR] Terminate conditional regions after creation; fix glvalue conditional with a throw arm (#210384)
Follow-up to #208850: @andykaylor's comments about
`CIRGenFunction::emitConditionalBlocks` also have a similar
insertion-point problem.
The PR addresses the two related problems found while looking into the
conditional branch emission path:
**1. Terminate conditional regions after creation instead of patching
yields**
`CIRGenFunction::emitConditionalBlocks` still had the save-and-patch
insertion-point machinery removed from the scalar path in #208850. The
path is unreachable, and its guard is saved only after
`cir.unreachable`, where a patched yield would generate the dead code.
The machinery is removed; regions are closed with
`terminateStructuredRegionBody` after creation.
The aggregate emitter had the reverse problem: an unconditional
cir.yield after each arm lands in the dead block a throw leaves behind
and keeps it in the final CIR:
```
struct test_s { int x; int y; };
void test_throw(bool flag) {
test_s a = flag ? throw 0 : test_s{1, 2};
}
mlir
cir.if %2 {
...
cir.throw %3 : !cir.ptr<!s32i>, @_ZTIi
cir.unreachable
^bb1: // no predecessors <-- dead block kept alive by the yield
cir.yield
} else {
...
}
```
The explicit yields are removed; `emitIfOnBoolExpr` already terminates
each region, adding a yield only where one is missing. Tests pin the
dead block's absence with CIR-NEXT after `cir.unreachable`.
**2. Fix glvalue conditionals with a throw arm using a region-local
pointer**
```
int &ref_cond(bool c, int &x) { return c ? x : throw 0; }
// error: operand #0 does not dominate this use
// fatal error: CIR module verification error
```
With one arm throwing, `emitConditionalOperatorLValue` returned the
surviving arm's LValue directly, valid in OG CodeGen's flat CFG, invalid
in CIR where the pointer is materialized inside the ternary's region:
```
%4 = cir.ternary(%3, true {
%8 = cir.load %1 ... // pointer loaded inside the region
cir.yield %8 : !cir.ptr<!s32i>
}, false { ... cir.unreachable })
cir.store %8, %2 ... // region-local %8 used outside the region
```
Existing tests missed it because a local's pointer is a function-entry
`alloca`, so dominance held by accident. The fix addresses the result
through the ternary's result value, which the yield carries out. New
tests cover a reference parameter, assignment via the conditional, and
member access, all of which previously failed verification.
Assisted-by: Cursor/Codex
Commit: ea863cb2dec8e0f040dfe22a52d3b537e4a25c29
https://github.com/llvm/llvm-project/commit/ea863cb2dec8e0f040dfe22a52d3b537e4a25c29
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/X86/dagcombine-sub-globaladdress.ll
Log Message:
-----------
[DAGCombiner] Fix APInt truncation assertion (#209914)
getConstant() would create an APInt with ImplicitTrunc = false, but the
constant here can really be anything.
Fixes #209884.
Commit: 1e37b629fbd06d922ac1216cf20114ea4ce1c88d
https://github.com/llvm/llvm-project/commit/1e37b629fbd06d922ac1216cf20114ea4ce1c88d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libcxx/utils/libcxx/test/format.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/formats/shtest.py
Log Message:
-----------
[lit] Delete the external shell (#209571)
This was deprecated in LLVM 23 and slated for removal in LLVM 24. Now
that we have branched and everything has been updated to not set
execute_external, we can remove it.
Commit: 466503dcf2ae2e43126c1a6d8a5b204883d5b0c1
https://github.com/llvm/llvm-project/commit/466503dcf2ae2e43126c1a6d8a5b204883d5b0c1
Author: Logan <143111092+Logans-olo at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/X86/X86InstrTBM.td
M llvm/test/CodeGen/X86/tbm_patterns.ll
Log Message:
-----------
X86: Add pattern for optimized BLSIC IR form (#209814)
Add DAG pattern to recognize the optimized IR form of BLSIC: (xor (and
x, -x), -1)
Fixes #209718 - matches the IR form produced after InstCombine
optimizations
Added tests for both 32-bit and 64-bit BLSIC patterns
Assisted by: Claude Code, helped me understand
pattern-matching/intrinsics, and some file structure. As well as how
testing for LLVM works.
Commit: f97dcd05eb4be690dcfd39de9f6de937d5acfa46
https://github.com/llvm/llvm-project/commit/f97dcd05eb4be690dcfd39de9f6de937d5acfa46
Author: stephenduong1004 <stephenduong at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
Log Message:
-----------
[llvm-libtool-darwin] Ensure filelist buffer is null-terminated (#205115)
[llvm-libtool-darwin] Ensure filelist buffer is null-terminated
In llvm-libtool-darwin.cpp, `MemoryBuffer::getFileOrSTDIN` was
previously called to load the filelist with `RequiresNullTerminator` set
to `false`. However, the retrieved buffer is subsequently passed to
`llvm::line_iterator`.
Since `llvm::line_iterator` explicitly requires its underlying buffer to
be null-terminated, omitting this requirement can result in an
out-of-bounds read/buffer overrun when parsing the file list.
This change fixes the issue by requesting a null-terminated buffer
(`RequiresNullTerminator=true`).
Co-authored-by: Alexander Shaposhnikov <ashaposhnikov at google.com>
Commit: 986cdd8618e3e105bde1d52e7d8888325a7c87b1
https://github.com/llvm/llvm-project/commit/986cdd8618e3e105bde1d52e7d8888325a7c87b1
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
A llvm/lib/Transforms/Vectorize/VPlanEVLTailFolding.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
Log Message:
-----------
[VPlan] Move EVL-based transforms to VPlanEVLTransforms.cpp (NFC) (#209883)
VPlanTransforms.cpp has become quite big and is one of the top 20 most
expensive files in terms of compile-time.
https://llvm-compile-time-tracker.com/compare_clang.php?from=b8ba3c2b72cb53268129bbecfeb4ba7ec5b8d831&to=96a722a0ace661626d071166635728def97f6820&stat=instructions%3Au
Split off the mostly self-contained EVL related transforms and move them
to a new VPlanEVLTransforms.cpp.
This moves simplifyKnownEVL, optimizeEVLMasks, addExplicitVectorLength,
convertToVariableLengthStep and convertEVLExitCond together with their
EVL-specific static helpers.
Shared helpers used by the moved code (isDeadRecipe,
collectUsersRecursively, recursivelyDeleteDeadRecipes,
getOpcodeOrIntrinsicID and tryToFoldLiveIns, pullOutPermutations) are
promoted to vputils.
PR: https://github.com/llvm/llvm-project/pull/209883
Commit: a12cbbcc94a80f54714aaa253f8838fcc9ab4aae
https://github.com/llvm/llvm-project/commit/a12cbbcc94a80f54714aaa253f8838fcc9ab4aae
Author: Jan Korous <jkorous at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
M clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractor.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractorTest.cpp
M clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
Log Message:
-----------
[SSAF] Add EntitySourceLocationExtractor (#210201)
Walks every entity-producing decl in the TU and emits
SourceLocationRecord(s) per entity-kind anchor:
* Identifier-bearing decls (FunctionDecl/VarDecl/FieldDecl/ RecordDecl):
Decl::getLocation().
* Synthetic function return-slot entity:
FD->getReturnTypeSourceRange().getBegin().
* ParmVarDecl (named or unnamed): P->getTypeSpecStartLoc().
Skips compiler-synthesized implicits and builtins via the getEntityName
gate, system-header decls via SourceManager, and silently drops records
whose location is invalid or whose file path cannot be canonicalized via
real_path.
Assisted-By: Claude Opus 4.7
Commit: 284c1a166af4c7deab55c7de2ee1bd480d44e9ff
https://github.com/llvm/llvm-project/commit/284c1a166af4c7deab55c7de2ee1bd480d44e9ff
Author: David Mentler <mentlerd at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/docs/use/variable.md
M lldb/include/lldb/API/SBValue.h
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/include/lldb/ValueObject/ValueObjectSynthetic.h
M lldb/source/API/SBValue.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/ValueObject/ValueObject.cpp
M lldb/source/ValueObject/ValueObjectSynthetic.cpp
A lldb/test/API/python_api/sbvalue_set_type_synthetic/Makefile
A lldb/test/API/python_api/sbvalue_set_type_synthetic/TestSBValueSetTypeSynthetic.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic/library_support.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic/main.cpp
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/Makefile
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/foo_bar_synths.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/main.cpp
Log Message:
-----------
[LLDB] Enable SBTypeSynthetic manipulation for SBValue instances (#209056)
Allow manipulating the scripted synthetic children frontend selection
process for individual `SBValue` instances.
The motivating use-case is supporting custom data structures, type
erasure systems, and facilitating debugging handle based C APIs. Below
is an example of such a use-case of an anonymized 3rd party C library:
```C
using ErrorCode = int;
using Handle = void*;
using FooHandle = Handle;
using BarHandle = Handle;
struct ArrayOfHandles {
int size;
Handle* data;
};
struct AllHandles {
ArrayOfHandles foos;
ArrayOfHandles bars;
};
ErrorCode GetAllHandles(AllHandles* into);
```
The current LLDB feature-set allows attaching a synthetic children
provider to `AllHandles`, but the scripted frontend has no chance to
select an appropriate alternative frontend implementation class for
`foos` and `bars` based on type information it is aware of.
Commit: 9eb2dc0930ac75494e71b16739c859fe338a3f0f
https://github.com/llvm/llvm-project/commit/9eb2dc0930ac75494e71b16739c859fe338a3f0f
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libcxx/utils/libcxx/test/format.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/formats/shtest.py
Log Message:
-----------
Revert "[lit] Delete the external shell" (#210433)
Reverts llvm/llvm-project#209571
Breaks some buildbots:
1.
https://lab.llvm.org/buildbot/#/builders/232/builds/3690/steps/11/logs/stdio
2. https://lab.llvm.org/buildbot/#/builders/222/builds/11180
Commit: 965fa410dad7294cc1c1a9632ff94558de6dfa40
https://github.com/llvm/llvm-project/commit/965fa410dad7294cc1c1a9632ff94558de6dfa40
Author: Sharjeel Khan <sharjeelkhan at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
A llvm/test/MC/AArch64/LFI/debug-info.s
Log Message:
-----------
[LFI][AArch64] Fix Segfault due to infinite recursion in LFI rewriter (#210267)
When emitting a deferred LR guard, if debug info is enabled, the
emission of the guard instruction can trigger temporary labels (e.g. for
DWARF line entries), which recursively calls onLabel. Since
DeferredLRGuard was only set to false after emission, the nested call
would re-emit the guard, causing infinite recursion which leads to a
SegFault due to stack overflow. This was detected compiling
ubsan_minimal_handlers.cpp in compiler-rt. I fixed it by using the
existing recursion guard (Guard).
Commit: 2120490a54645f9a4390605adec5509243641d29
https://github.com/llvm/llvm-project/commit/2120490a54645f9a4390605adec5509243641d29
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/include/lldb/Core/Diagnostics.h
M lldb/source/Core/Diagnostics.cpp
M lldb/unittests/Core/CMakeLists.txt
A lldb/unittests/Core/DiagnosticsTest.cpp
Log Message:
-----------
[lldb] Add an artifact provider mechanism to Diagnostics (#210417)
Add a hook that lets a subsystem contribute a file to the diagnostics
bundle, without breaking layering and making Core depend on it. A plugin
registers an ArtifactProvider callback and a file name via AddArtifactProvider.
Providers run when a bundle is collected, and each one that yields
content is written into the bundle and recorded in the report's
attachments.
This restores, in a simpler form, the collection point that the removed
Diagnostics callback mechanism offered. The motivating consumer is the
downstream Swift health check, which registers a provider to write its
"swift-healthcheck.log" into the bundle. Unlike the old callback, a
provider does not open or write its own file: it just returns the
contents as a string and Diagnostics handles the rest.
Commit: d592aa5a10f44164cd403257270802eb2a4b123a
https://github.com/llvm/llvm-project/commit/d592aa5a10f44164cd403257270802eb2a4b123a
Author: Tony Guillot <tony.guillot at protonmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/Parse/ParseDecl.cpp
A clang/test/CXX/dcl/dcl.spec/dcl.type/dcl.type.general/p2.cpp
Log Message:
-----------
[Clang] Fixed auto parsing regression with brace initialization (#210347)
The PR #208552 has introduced a regression where brace initialization
was not taken into account `auto foo{12}`. It was also breaking
`dcl.type.general` p2 rules, which is also now tested.
Commit: 32221d9ff8f4772972193ebf7b8ba4974cd8458f
https://github.com/llvm/llvm-project/commit/32221d9ff8f4772972193ebf7b8ba4974cd8458f
Author: David Green <david.green at arm.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
Log Message:
-----------
[AArch64] Add lowering for fixed-vector bf16 masked gather/scatter. (#210273)
Similar to #208744, this makes sure that bf16 masked gather and scatter
work with fixed-length sve enabled. Without +bf16 the operations are
currently expanded pre-isel, but that will not be fixed in this patch as
it is a larger change and this patch is intended to be ported to the
branch.
Commit: b4a444ad635af70fe32f58d46fe0c08221fbcf5a
https://github.com/llvm/llvm-project/commit/b4a444ad635af70fe32f58d46fe0c08221fbcf5a
Author: Jackson Stogel <jtstogel at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/src/stdlib/linux/CMakeLists.txt
M libc/src/stdlib/linux/realpath.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/realpath_test.cpp
Log Message:
-----------
[libc][realpath] Support relative paths (#209374)
Updates realpath to call the `getcwd` linux syscall wrapper to resolve
cwd-relative queries.
Commit: 35bf12351740521f86fd406d01165e1c90b32ed8
https://github.com/llvm/llvm-project/commit/35bf12351740521f86fd406d01165e1c90b32ed8
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
M mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp
M mlir/test/Dialect/OpenACC/ops-cg.mlir
Log Message:
-----------
[mlir][acc] Preserve section bounds on acc.reduction_init (#210443)
When `acc.reduction_init` is created from `acc.reduction`, its bounds
are lost because they only live as values folded into the init region's
body. Those bounds describe the legal indexing of the section: the
produced view of a (possibly base-adjusted, compact) reduction temporary
must be indexed with the same bounds as the original array.
Carry the acc.bounds as optional operands on acc.reduction_init so this
indexing information is directly available. The operands are optional,
so scalar/whole-array reductions and existing IR are unaffected.
Commit: 2b68eb4d70072d4e0084c0b4113bbd209c600088
https://github.com/llvm/llvm-project/commit/2b68eb4d70072d4e0084c0b4113bbd209c600088
Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
Log Message:
-----------
[SCEV][NFCI] Refactor LoopGuards range check matching (#210362)
Parameterize MatchRangeCheckIdiom over (Predicate, LHS, RHS) so it can
be reused for other predicates discovered during guard collection.
Hoist AddRewrite / GetMaybeRewritten above it and use them in place of
the inline try_emplace, so range-check rewrites chain onto existing ones
the same way other rewrites do.
Commit: 2dbcd7d10f9462bdc30a169730919fc7da321905
https://github.com/llvm/llvm-project/commit/2dbcd7d10f9462bdc30a169730919fc7da321905
Author: adams381 <adams at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
M clang/lib/CIR/Dialect/Transforms/PassDetail.h
A clang/test/CIR/Transforms/abi-lowering/x86_64-lang-addrspace-nyi.cir
A clang/test/CIR/Transforms/abi-lowering/x86_64-scalars.cir
M clang/unittests/CIR/CMakeLists.txt
A clang/unittests/CIR/GetFloatingPointTypeTest.cpp
Log Message:
-----------
[CIR] Add x86_64 scalar calling-convention lowering (#209636)
CallConvLowering can already classify a function through the MLIR test
target or through a classification injected as an attribute, but it has
no
path to a real target ABI. This adds a `target=x86_64` mode that runs
the
LLVM ABI Lowering Library's System V x86_64 classifier: it maps CIR
types to
`llvm::abi` types, calls the classifier, and converts the result back
into
the `mlir::abi::FunctionClassification` that `CIRABIRewriteContext`
already
consumes.
To keep the first step small this handles scalar signatures only --
integer
up to 64 bits, pointer, bool, `f32`, and `f64`. Anything else (records,
arrays, vectors, `_Complex`, wide or uncommon floats, `_BitInt`,
`__int128`,
member pointers) is reported as not-yet-implemented through
`emitOpError`, so
an unsupported signature fails the pass instead of being silently
misclassified. Those types come in stacked follow-ups. The pass is still
only reachable from `cir-opt`; wiring it into the `-fclangir` pipeline
is a
later change.
Assisted-by: Cursor / claude-opus-4.8
Commit: 12e3d9db0088d95675a0081495122483faa7b60d
https://github.com/llvm/llvm-project/commit/12e3d9db0088d95675a0081495122483faa7b60d
Author: Akshay K <iit.akshay at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/test/CIR/CodeGen/var_arg.c
Log Message:
-----------
[CIR] Add support for lowering __builtin_c23_va_start in ClangIR (#208741)
C23 `va_start `expands to `__builtin_c23_va_start`, which was previously
routed to the unimplemented-builtin NYI path in ClangIR. As a result,
variadic code failed to compile with -fclangir in -std=c23 mode.
This change lowers `__builtin_c23_va_start` the same way as
`__builtin_va_start`. For both builtins, the va_list operand is always
argument 0, so the existing lowering logic can be reused directly.
Commit: fefdf74c073b0361fb9a5100f6b1f38a13d72e55
https://github.com/llvm/llvm-project/commit/fefdf74c073b0361fb9a5100f6b1f38a13d72e55
Author: lianjinfeng2003 <101249452+mygitljf at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/CodeGen/RISCV/rvv/vecreduce-minmax-constant-fold.ll
Log Message:
-----------
[SelectionDAG] Fold constant min/max vector reductions (#209190)
I extended constant folding to handle signed and unsigned min/max vector
reductions. Constant vectors now become scalar constants before target
lowering, while non-constant, poison, and undef behavior stays
unchanged.
Fixes #209109
Commit: 2926d18a0620a768857dce1c827d0a3da0d0b565
https://github.com/llvm/llvm-project/commit/2926d18a0620a768857dce1c827d0a3da0d0b565
Author: Pengxiang Huang <71998072+Pengxiang-Huang at users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M libc/src/semaphore/linux/CMakeLists.txt
M libc/src/semaphore/linux/named_semaphore.cpp
M libc/src/semaphore/linux/semaphore.h
M libc/test/src/semaphore/linux/CMakeLists.txt
M libc/test/src/semaphore/linux/semaphore_test.cpp
Log Message:
-----------
[libc][semaphore] Add post and wait operations for internal semaphore (#198959)
This pr implements https://github.com/llvm/llvm-project/issues/190847,
adding the post and wait operations in posix semaphore for linux using
futex.
Particularly,
`sem_post`:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/sem_post.html
`sem_trywait`, `sem_wait`:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/sem_wait.html
`sem_timedwait`, `sem_clockwait`:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/sem_clockwait.html#
The implementation is assisted by Claude Code Opus 4.7, specifically for
the unit tests generations.
Commit: c1c278e7484038f1d14314f38736532975fafd20
https://github.com/llvm/llvm-project/commit/c1c278e7484038f1d14314f38736532975fafd20
Author: Jan Korous <jkorous at apple.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
A clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.rst
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Options/Options.td
A clang/include/clang/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.cpp
M clang/test/Analysis/Scalable/help.cpp
A clang/test/Analysis/Scalable/source-edit-generation/Inputs/empty-suite.json
A clang/test/Analysis/Scalable/source-edit-generation/Inputs/two-function-suite.json
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/CMakeLists.txt
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/CMakeLists.txt
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/TestTransformation.cpp
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/lit.local.cfg
A clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
A clang/test/Analysis/Scalable/source-edit-generation/coexistence.cpp
A clang/test/Analysis/Scalable/source-edit-generation/downgradable-errors.cpp
A clang/test/Analysis/Scalable/source-edit-generation/happy-path.cpp
A clang/test/Analysis/Scalable/source-edit-generation/write-failure.cpp
M clang/test/CMakeLists.txt
Log Message:
-----------
[clang][ssaf] Integrate source-edit-generation (#208590)
Adds the four `--ssaf-*` driver flags
(`--ssaf-source-transformation=`,
`--ssaf-global-scope-analysis-result=`, `--ssaf-src-edit-file=`,
`--ssaf-transformation-report-file=`) under `SSAF_Group`, marshalled
into `FrontendOptions`. The compilation-unit identifier flag introduced
earlier is reused. The driver forwards all four flags to `cc1`.
Adds twelve `warn_ssaf_*` diagnostics under
`-Wscalable-static-analysis-framework` (`DefaultError`) covering the
orphan-flag matrix, unknown transformation names, unknown output
formats, WPA-suite read failures, and edit/report write failures.
Adds `clang::ssaf::SourceTransformationFrontendAction` — a
`WrapperFrontendAction` that, when any source-edit flag is set,
validates the CLI as a group, loads the WPASuite from the configured
path, instantiates the named transformation, and serializes the
accumulated edits and findings through the configured formats. The
action is wrapped in `ExecuteCompilerInvocation` after the existing
TU-summary wrap so both pipelines stack as independent `ASTConsumer`s on
the same translation unit; they exchange no data.
Assisted-By: Claude Opus 4.7
Commit: 372cd15f03e49bb826a63a6c59cc7f74962ab278
https://github.com/llvm/llvm-project/commit/372cd15f03e49bb826a63a6c59cc7f74962ab278
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitDeclare.cpp
M mlir/test/Dialect/OpenACC/acc-implicit-declare.mlir
Log Message:
-----------
[openacc] Implicitly map external constant globals (#210408)
Hoist initializer-less constant globals out of OpenACC compute regions
so implicit data mapping handles them. This avoids unresolved device
symbols for PARAMETER arrays defined in separately compiled modules,
while retaining implicit declare for initialized constants. Add
regression coverage and a global initializer query to the OpenACC
interface.
Commit: 3fbb037d03e7ff1ef1cd9156363e895af7caaf98
https://github.com/llvm/llvm-project/commit/3fbb037d03e7ff1ef1cd9156363e895af7caaf98
Author: Haowei <haowei at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/cmake/modules/ClangConfig.cmake.in
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M llvm/cmake/modules/LLVMConfig.cmake.in
M runtimes/CMakeLists.txt
Log Message:
-----------
Adding an option to Skip LLVM and Clang exports (#209922)
Under CMake 4+, calling add_library(... SHARED IMPORTED) on a
target platform that lacks dynamic linking support triggers a fatal
error. This becomes an issue when building LLVM and runtimes for
baremetal targets like armv6m-none-eabi. This patch
adds the option "LLVM_OMIT_EXPORTS_FROM_CONFIG" in LLVM.
When used in sub builds like LLVM runtimes, it makes CMake to skip
including the LLVM and Clang exports. This mitigates the CMake 4
errors on baremetal runtimes.
Commit: dbab04510ee89e5e9ed03cb6aff63fd218fb3042
https://github.com/llvm/llvm-project/commit/dbab04510ee89e5e9ed03cb6aff63fd218fb3042
Author: Teresa Johnson <tejohnson at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
A llvm/test/Transforms/TailCallElim/disable-tail-call-elim-for-cold-calls.ll
Log Message:
-----------
[TailCallElim] Optionally suppress tail call elim for cold calls (#209642)
Since eliminated tail calls result in missing frames when collecting
various types of profiles, provide an option for disabling the
elimination for cold non-musttail calls. By default the new handling is
disabled.
Since the new checks require BFI to be built in more cases, I have moved
UpdateFunctionEntryCount and ForceDisableBFI (renamed to
DisableEntryCountRecompute to match the flag and description), to
actually guard the function entry count update.
Commit: c4962f5721a36e198234019b846d3788738f766a
https://github.com/llvm/llvm-project/commit/c4962f5721a36e198234019b846d3788738f766a
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/source/Commands/CommandObjectScripting.cpp
M lldb/source/Commands/Options.td
M lldb/source/Core/PluginManager.cpp
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Interpreter/embedded_interpreter.py
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
A lldb/test/API/functionalities/scripting_extension_generate/Makefile
A lldb/test/API/functionalities/scripting_extension_generate/TestScriptingExtensionGenerate.py
A lldb/test/API/functionalities/scripting_extension_generate/main.c
Log Message:
-----------
[lldb/script] Add scripting extension template generator (#209647)
This patch adds a `scripting extension generate <ExtensionType>...`
command that introspects a Python extension base class and emits a
skeleton subclass with `# TODO: Implement` stubs for its abstract
methods (or, with `-a`, every method), then opens the result in an
editor.
Generated imports use `from <module> import <class>`, and the generated
`__init__` forwards its arguments to `super().__init__(...)` since every
base class relies on its constructor to set up attributes
(`self.target`, `self.process`, ...) that inherited, non-overridden
methods depend on. When the host can't open an external editor (e.g.
non-macOS), the command reports that as a message rather than an error,
since the file is already written.
To catch regressions in the generator itself instead of just checking
that a file was produced, this patch adds
`TestScriptingExtensionGenerate.py`, which generates a template for
every extension kind on the fly and drives it through a live lldb
session (`process launch -C`, `breakpoint set -P`, `target stop-hook add
-P`, etc.).
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: ccd75bb4b9c6d9c2e149d355c35193ca554c99a0
https://github.com/llvm/llvm-project/commit/ccd75bb4b9c6d9c2e149d355c35193ca554c99a0
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
A clang/test/CIR/IR/invalid-loop-cleanup.cir
A clang/test/CIR/IR/loop-cleanup.cir
M clang/unittests/CIR/ControlFlowTest.cpp
Log Message:
-----------
[CIR] Introduce loop cleanup regions (#210212)
For loops and while loops can create variables in their condition
regions that require per-iteration cleanup. The CIR dialect previously
had no clean way to represent these cleanups while maintaining a
separate condition region for the loop operation.
This change introduces an optional cleanup region to these loop ops and
updates the relevant region successor handling to reflect the insertion
of the cleanup region in the control flow when a non-empty cleanup
region is present.
The CFG flattening pass will handle routing the control flow through the
cleanup region in both the normal and EH unwind cases, but this is not
yet implemented. That will be added in a follow-up change, as will
creation of the cleanup region when it is needed during IR generation.
Assisted-by: Cursor / various models
Commit: ab6ef5680eb79e102414740198f5aa1015c5c254
https://github.com/llvm/llvm-project/commit/ab6ef5680eb79e102414740198f5aa1015c5c254
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/unittests/Process/gdb-remote/CMakeLists.txt
A lldb/unittests/Process/gdb-remote/ProcessGDBRemoteTest.cpp
Log Message:
-----------
[lldb] Contribute the GDB-remote packet history to diagnostics bundles (#210418)
Register a Diagnostics artifact provider from ProcessGDBRemote so a
diagnostics bundle captures the GDB-remote packet history, the same data
"process plugin packet history" prints.
Commit: 03b9039147cca65e2b4fa3adcbbbf40f73e3a3c9
https://github.com/llvm/llvm-project/commit/03b9039147cca65e2b4fa3adcbbbf40f73e3a3c9
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/docs/AdminTasks.md
Log Message:
-----------
[docs] Update the commit review admin task with process details (#210420)
As discussed in the infra area team meeting. Mostly this serves as a
place to stash helpful links.
I picked an arbitrary two week timeout for requests. We can re-evaluate at any time.
It seems less than ideal that one needs issue tracker labelling
privileges to reopen the issue, but I think that's accurate.
Commit: 42eb7db188f23625872b6f1d722979a3100d170e
https://github.com/llvm/llvm-project/commit/42eb7db188f23625872b6f1d722979a3100d170e
Author: Haowei <haowei at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/cmake/modules/ClangConfig.cmake.in
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M llvm/cmake/modules/LLVMConfig.cmake.in
M runtimes/CMakeLists.txt
Log Message:
-----------
Revert "Skipping host target exports during cross-compilation" (#210468)
Reverts llvm/llvm-project#209922
It broke runtimes build on amdgpu-amd-amdhsa
Commit: d00710093a3d2795200dbf065836220345aa9e9d
https://github.com/llvm/llvm-project/commit/d00710093a3d2795200dbf065836220345aa9e9d
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
Log Message:
-----------
[lldb-dap][test] Avoid a hang on a test failure (#209988)
Tests in `TestDAP_server.py` create `DebugAdapterServer`, passing a
connection string. `DebugAdapterServer.__init__()` creates a socket and
passes the associated input and output streams to its parent class,
`DebugCommunication`. `DAPTestCaseBase.launch()`, which is called from
`TestDAP_server.run_debug_session()`, adds a teardown hook that
eventually calls `DebugCommunication.terminate()`. If the socket is not
closed when this hook executes, it waits indefinitely for the receiving
thread to join.
In the normal case, when a test passes, the connection is closed by
calling `self.dap_server.request_disconnect()` at the end of
`TestDAP_server.run_debug_session()`. If a test fails, the cleanup hook
is called while the connection is still active, which results in a hang.
This can be reproduced by removing the call to `request_disconnect()` or
by changing the condition in the `assertEqual()` on the previous line.
The fix passes the opened socket to 'DebugCommunication' and closes the
socket explicitly in 'DebugCommunication.terminate()'.
Commit: fb2fa0b0f0a8b061401f6cfa3c2fadd3fbfb3b35
https://github.com/llvm/llvm-project/commit/fb2fa0b0f0a8b061401f6cfa3c2fadd3fbfb3b35
Author: Lucas Ribeiro Lima <lucasribeirolima974 at gmail.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/sse-builtins.c
Log Message:
-----------
[clang][clangIR]: X86 upstream avx psrldqi/pslldqi (#208025)
This PR upstreams the implementation and corresponding test suites for
X86 byte-shift intrinsics (pslldqi / psrldqi) spanning 128, 256, and
512-bit vector variants from the incubator.
I consolidated both left and right shifts into a single code path since
the underlying lane topology is identical, extracting the
direction-specific index arithmetic into clean variables at the top. Let
me know if you prefer this unified data-driven approach or if explicit
split functions for left/right shifts would be preferred for local
readability.
All integrated tests from the incubator have been upstreamed and are
currently passing.
Minimal compile case
```cpp
#include <emmintrin.h>
#include <iostream>
struct DataLayout {
alignas(16) int values[4];
};
#define INDEX 1
int main(int argc, char **argv) {
DataLayout data{8, 4, 2, 1};
std::cout << "Value before: " << data.values[INDEX] << '\n';
__m128i reg128i =
_mm_load_si128(reinterpret_cast<__m128i const *>(data.values));
__m128i reg_right_shift = _mm_bsrli_si128(reg128i, 4);
__m128i reg_left_shift = _mm_bslli_si128(reg128i, 4);
DataLayout result_right;
_mm_store_si128(reinterpret_cast<__m128i *>(result_right.values),
reg_right_shift);
DataLayout result_left;
_mm_store_si128(reinterpret_cast<__m128i *>(result_left.values),
reg_left_shift);
std::cout << "Value after left: " << result_left.values[INDEX] << '\n';
std::cout << "Value after right: " << result_right.values[INDEX] << '\n';
return 0;
}
```
Addresses #167752.
Commit: b0440cb55a22e979e81934e0c031c9d46e71f9da
https://github.com/llvm/llvm-project/commit/b0440cb55a22e979e81934e0c031c9d46e71f9da
Author: Fangrui Song <i at maskray.me>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
Log Message:
-----------
[CycleInfo] Reference cycles by preorder index, not pointer. NFC (#210271)
The block-to-innermost-cycle map (BlockMap) and each cycle's parent link
hold a GenericCycle pointer. Store the cycle's preorder index instead,
so no raw cycle pointer remains in the stored representation: BlockMap
becomes a SmallVector<unsigned>, four bytes per block rather than eight,
and the parent link becomes ParentIndex.
The flat Cycles array does not exist during construction, so both hold
creation-order indices into the temporary forest until flatten()
resolves them to preorder indices.
Aided by Claude Opus 4.8
Commit: ee5d6f537da4bc81b956b4813afbc0877f82b59d
https://github.com/llvm/llvm-project/commit/ee5d6f537da4bc81b956b4813afbc0877f82b59d
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes c1c278e (#210451)
This fixes c1c278e7484038f1d14314f38736532975fafd20.
Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=c1c278e7484038f1d14314f38736532975fafd20
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 1ef8ba9a00e16423d711ddbf16c7a45fb7fd570b
https://github.com/llvm/llvm-project/commit/1ef8ba9a00e16423d711ddbf16c7a45fb7fd570b
Author: Luc Forget <github at alias.lforget.fr>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M mlir/lib/Target/Wasm/TranslateFromWasm.cpp
Log Message:
-----------
[MLIR][WasmSSA] Instruction parser refactoring of WasmSSA importer (#195500)
Refactored WasmSSA importer mechanism to dispatch control flow to
relevant parser based on op code.
This is to prepare for instructions with multi-bytes opcodes (e.g.
vector instruction and some scalar instructions extensions) which will
be able to reuse the same mechanism.
It also replaces the bit tree to find the address by a jump table.
---------
Co-authored-by: Luc Forget <lforg37 at users.noreply.github.com>
Co-authored-by: Ferdinand Lemaire <ferdinand.lemaire at woven-planet.global>
Co-authored-by: Ferdinand Lemaire <flscminecraft at gmail.com>
Commit: cf11eef1c9476c8778055d7963fdac34b6628582
https://github.com/llvm/llvm-project/commit/cf11eef1c9476c8778055d7963fdac34b6628582
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
A llvm/docs/AArch64SME.md
R llvm/docs/AArch64SME.rst
A llvm/docs/AMDGPUAsyncOperations.md
R llvm/docs/AMDGPUAsyncOperations.rst
A llvm/docs/AMDGPUExecutionSynchronization.md
R llvm/docs/AMDGPUExecutionSynchronization.rst
A llvm/docs/AMDGPUMemoryModel.md
R llvm/docs/AMDGPUMemoryModel.rst
A llvm/docs/AddingConstrainedIntrinsics.md
R llvm/docs/AddingConstrainedIntrinsics.rst
A llvm/docs/BigEndianNEON.md
R llvm/docs/BigEndianNEON.rst
A llvm/docs/CompileCudaWithLLVM.md
R llvm/docs/CompileCudaWithLLVM.rst
A llvm/docs/DebuggingJITedCode.md
R llvm/docs/DebuggingJITedCode.rst
A llvm/docs/ExtendingLLVM.md
R llvm/docs/ExtendingLLVM.rst
A llvm/docs/HowToBuildWindowsItaniumPrograms.md
R llvm/docs/HowToBuildWindowsItaniumPrograms.rst
A llvm/docs/HowToCrossCompileBuiltinsOnArm.md
R llvm/docs/HowToCrossCompileBuiltinsOnArm.rst
A llvm/docs/HowToUpdateDebugInfo.md
R llvm/docs/HowToUpdateDebugInfo.rst
A llvm/docs/Instrumentor.md
R llvm/docs/Instrumentor.rst
A llvm/docs/JITLink.md
R llvm/docs/JITLink.rst
A llvm/docs/MCJITDesignAndImplementation.md
R llvm/docs/MCJITDesignAndImplementation.rst
A llvm/docs/NVPTXUsage.md
R llvm/docs/NVPTXUsage.rst
A llvm/docs/ORCv2.md
R llvm/docs/ORCv2.rst
A llvm/docs/Remarks.md
R llvm/docs/Remarks.rst
A llvm/docs/SPIRVUsage.md
R llvm/docs/SPIRVUsage.rst
Log Message:
-----------
[docs] Rename selected LLVM docs to Markdown (#208800)
Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
This is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.
Commit: cddf2069ded94cb47048ad2a5f340d12c35f1651
https://github.com/llvm/llvm-project/commit/cddf2069ded94cb47048ad2a5f340d12c35f1651
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/docs/AArch64SME.md
M llvm/docs/AMDGPUAsyncOperations.md
M llvm/docs/AMDGPUExecutionSynchronization.md
M llvm/docs/AMDGPUMemoryModel.md
M llvm/docs/AddingConstrainedIntrinsics.md
M llvm/docs/BigEndianNEON.md
M llvm/docs/CompileCudaWithLLVM.md
M llvm/docs/DebuggingJITedCode.md
M llvm/docs/ExtendingLLVM.md
M llvm/docs/HowToBuildWindowsItaniumPrograms.md
M llvm/docs/HowToCrossCompileBuiltinsOnArm.md
M llvm/docs/HowToUpdateDebugInfo.md
M llvm/docs/Instrumentor.md
M llvm/docs/JITLink.md
M llvm/docs/MCJITDesignAndImplementation.md
M llvm/docs/NVPTXUsage.md
M llvm/docs/ORCv2.md
M llvm/docs/Remarks.md
M llvm/docs/SPIRVUsage.md
Log Message:
-----------
[docs] Rewrite 19 LLVM docs from reST to markdown (#208798)
Tracking issue: #201242
[Migration
guide](https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines)
This is a stacked PR based on #208800, which does the file rename to
preserve history.
This was prepared with rst2myst plus LLM-assisted cleanup. I paged
through all the generated HTML looking for migration artifacts, and all
of the differences I could find appear to be formatting error
corrections.
Commit: a623e8d4381e26eceff29209e6db411617d95f83
https://github.com/llvm/llvm-project/commit/a623e8d4381e26eceff29209e6db411617d95f83
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn
Log Message:
-----------
[gn build] Port 2dbcd7d10f94 (#210484)
Commit: 605b6d73214cf253fc5fb9d5befe99857bd480cf
https://github.com/llvm/llvm-project/commit/605b6d73214cf253fc5fb9d5befe99857bd480cf
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 986cdd8618e3 (#210485)
Commit: 56fc7bf0c364ab210c49c3b95e7130d337490b78
https://github.com/llvm/llvm-project/commit/56fc7bf0c364ab210c49c3b95e7130d337490b78
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Frontend/BUILD.gn
Log Message:
-----------
[gn build] Port c1c278e74840 (#210488)
Commit: 2e1c934fea272654ab2b00f60b6d3dba93123190
https://github.com/llvm/llvm-project/commit/2e1c934fea272654ab2b00f60b6d3dba93123190
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn
Log Message:
-----------
[gn build] Port a12cbbcc94a8 (#210487)
Commit: 3be5663001465e74c7b879ad4d4cbfc3c94caeba
https://github.com/llvm/llvm-project/commit/3be5663001465e74c7b879ad4d4cbfc3c94caeba
Author: Nico Weber <thakis at chromium.org>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
Log Message:
-----------
[gn build] Port 9b096bb7abf7 (#210486)
Commit: 6a33b69d8bae737e5e1d60c7b7776a0b1f885bfa
https://github.com/llvm/llvm-project/commit/6a33b69d8bae737e5e1d60c7b7776a0b1f885bfa
Author: Kazu Hirata <kazu at google.com>
Date: 2026-07-17 (Fri, 17 Jul 2026)
Changed paths:
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/include/llvm/ProfileData/SampleProfWriter.h
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/ProfileData/SampleProfWriter.cpp
M llvm/test/tools/llvm-profdata/profile-symbol-list.test
M llvm/unittests/ProfileData/SampleProfTest.cpp
Log Message:
-----------
[SampleProfile] Support MD5-based ProfileSymbolList (#210235)
This patch speeds up sample profile loading by introducing an
MD5-based ProfileSymbolList (cold symbol list) in extensible binary
profiles.
The sample profile loader spends about a third of its time on loading
and decoding the symbol names in the Profile Symbol List section, yet
we use them only for membership checking purposes via
ProfileSymbolList::contains.
This patch teaches the writer to emit the section as an array of
64-bit GUIDs in the Eytzinger layout. The reader checks the
SecFlagMD5 section flag and sets up an EytzingerTableSpan
pointing into the mmap memory. This achieves both space efficiency
and runtime efficiency.
The new flag, md5-prof-sym-list, is off by default for now.
Profile merging is supported only from strings to an MD5-based
Eytzinger array.
RFC:
https://discourse.llvm.org/t/rfc-faster-sample-profile-loading/90957/7
Assisted-by: Antitygravity
Commit: ea50c8cc99778825fc647cf190d8f7a8f49cdcdd
https://github.com/llvm/llvm-project/commit/ea50c8cc99778825fc647cf190d8f7a8f49cdcdd
Author: Mishal Shah <mishal_shah at apple.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M .github/workflows/premerge.yaml
Log Message:
-----------
Fix macOS casing in premerge workflow (#210477)
Commit: 3fc4fcade6164fc6b9dcf0d6d0d6fa9cf6e47dfc
https://github.com/llvm/llvm-project/commit/3fc4fcade6164fc6b9dcf0d6d0d6fa9cf6e47dfc
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
Log Message:
-----------
[alpha.webkit.UncountedCallArgsChecker] Crash in printArgument (#210411)
The crash was caused by missing nullptr check for Decl used to get
printing policy. Fixed the bug by replacing the use of Decl with
BugManager to get the policy.
Commit: 2730fc8a1a46ea92bbe91e3fc31897498617e076
https://github.com/llvm/llvm-project/commit/2730fc8a1a46ea92bbe91e3fc31897498617e076
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bfloat16/bfloat16.ll
Log Message:
-----------
[SPIR-V] Handle bfloat in getZeroFP/getOneFP (#202859)
Related spirv-val change:
https://github.com/KhronosGroup/SPIRV-Tools/pull/6734
---------
Co-authored-by: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Commit: ccd0e982a02fa3be39a98dd98ea6cc1ccaf24d13
https://github.com/llvm/llvm-project/commit/ccd0e982a02fa3be39a98dd98ea6cc1ccaf24d13
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
A lldb/test/API/lang/cpp/enum-limits/Makefile
A lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
A lldb/test/API/lang/cpp/enum-limits/main.cpp
Log Message:
-----------
[lldb][NativePDB] Fix width and signedness of enum constants (#210338)
Enumerator values aren't always encoded in the correct bit width and
signedness. This happens with both MSVC and Clang.
On MSVC, unsigned 64bit enumerators can be encoded as signed. For
example `ULONGLONG_MAX` will be encoded as `-1`.
Clang/LLVM will always encode the values as unsigned.
Example: https://godbolt.org/z/96YjGW48W.
I fixed this by setting the expected width and signedness when creating
the enumerator constant. We can't use a shell test like for the other
PDB tests, because no output shows the enum values.
Commit: 8c2d7cc3a9983459628c028d8537eaf79551f396
https://github.com/llvm/llvm-project/commit/8c2d7cc3a9983459628c028d8537eaf79551f396
Author: Jared Hoberock <jaredhoberock at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M mlir/include/mlir/IR/CMakeLists.txt
M mlir/include/mlir/IR/SymbolInterfaces.td
M mlir/include/mlir/IR/SymbolTable.h
M mlir/lib/IR/SymbolTable.cpp
A mlir/test/IR/test-verifiers-symbol-user-type.mlir
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Test/TestTypes.h
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][IR] Add SymbolUserTypeInterface (#198435)
This change adds SymbolUserTypeInterface, analogous to
SymbolUserAttrInterface, and extends SymbolTable verification to check
participating types.
Verification visits the types owned by an operation, (operand/result
types, block argument types, attribute-contained types, nested type
parameters) and checks each distinct type at most once, interrupting on
the first failure. Deduplication spans the whole symbol-table walk, so a
type used by multiple operations is checked only once.
Attribute (SymbolUserAttrInterface) verification also gets deduped the
same way.
Assisted-by: Codex (OpenAI)
Assisted-by: Claude (Anthropic)
Commit: 1faa9f73119f007583ca829e07d78e82a40f1bae
https://github.com/llvm/llvm-project/commit/1faa9f73119f007583ca829e07d78e82a40f1bae
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlanEVLTailFolding.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
Log Message:
-----------
[VPlan] Infer SrcTy in createScalarExtOrTrunc (NFC) (#210423)
The argument is redundant and can be inferred from Op.
Commit: d46a352ecf9708255a938e6d5e972b5221de4c2c
https://github.com/llvm/llvm-project/commit/d46a352ecf9708255a938e6d5e972b5221de4c2c
Author: David Mentler <mentlerd at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py
Log Message:
-----------
[lldb] Fix TestSBValueSetTypeSyntheticOverride with libstdc++ (#210495)
My test added in #209056 assumed that a `CXXSyntheticChildren`
implementation for `std::vector` is readily available on all platforms,
that is not the case.
Do the simplest thing and remove this part of the test for now.
Fixes: https://lab.llvm.org/buildbot/#/builders/59/builds/35839
```
FAIL: test (TestSBValueSetTypeSyntheticOverride.TestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py", line 22, in test
self.checkOverride(vec, before=None)
File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py", line 43, in checkOverride
self.assertIsNone(impl_before)
AssertionError: <lldb.formatters.cpp.gnu_libstdcpp.StdVectorSynthProvider object at 0xfb088f787bb0> is not None
```
Commit: e96755f08bab48f1578bd70a1f55d336b5e44a69
https://github.com/llvm/llvm-project/commit/e96755f08bab48f1578bd70a1f55d336b5e44a69
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
Log Message:
-----------
[VPlan] Factor vputils::getOpcodeOrIntrinsicID (NFC) (#208993)
The check for recipes in vputils::isElementWise is necessary to prevent
regressions.
Commit: 1f4d6acc935f93eca55cfef67348c8abcc1415db
https://github.com/llvm/llvm-project/commit/1f4d6acc935f93eca55cfef67348c8abcc1415db
Author: pzoln <pashka.zolnikov at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
M mlir/test/Dialect/Bufferization/canonicalize.mlir
Log Message:
-----------
[mlir][bufferization] Avoid invalid memref.cast in to_buffer folding (#208973)
Fixes #202782
When folding bufferization.to_buffer(bufferization.to_tensor(...)), only
create a memref.cast if the source and destination memref types are
cast-compatible.
This avoids asserting on unranked memrefs with different memory spaces
and leaves the original bufferization ops in place instead.
Assisted-by: OpenAI Codex
Commit: c69896aa8733ceed6e8cc982eec64b97f277f926
https://github.com/llvm/llvm-project/commit/c69896aa8733ceed6e8cc982eec64b97f277f926
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
Log Message:
-----------
[mlir][interface] Use populateAndCompare cleanup compare (NFC) (#200156)
Commit: af0aa9440f1121bd5041a3dd7abef0d78b0f91cd
https://github.com/llvm/llvm-project/commit/af0aa9440f1121bd5041a3dd7abef0d78b0f91cd
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign-with-blend.ll
Log Message:
-----------
[AArch64][PAC] Rework the expansion of AUT/AUTPAC pseudos (#169699)
Refactor `AArch64AsmPrinter::emitPtrauthAuthResign` to improve
readability and tune the conditions when `emitPtrauthDiscriminator` is
allowed to clobber address discriminator operands.
When resigning, do not clobber address discriminator register used for
authentication if it is also used for signing. Such clobbering would
prevent passing raw, 64-bit value as the new discriminator. Clarify
other corner cases of clobbering address discriminator operands.
Reuse `enum PtrauthCheckMode` instead of separate `ShouldCheck` and
`ShouldTrap` flags and drop its `Default` enumerator.
Commit: 0c5b2258f0b517c0822e5b2f8e6a8de311d6db9d
https://github.com/llvm/llvm-project/commit/0c5b2258f0b517c0822e5b2f8e6a8de311d6db9d
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Transforms/IndVarSimplify/drop-exact.ll
M llvm/test/Transforms/IndVarSimplify/pr66066.ll
M llvm/test/Transforms/IndVarSimplify/strengthen-overflow.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
Log Message:
-----------
[SCEV] Infer no-wrap flags for shl by a constant. (#208434)
Treat `shl %a, C` as `mul %a, 1 << C` in
getStrengthenedNoWrapFlagsFromBinOp
if possible.
Only transfer NSW from shl to mul, if the shift amount is < Bitwidth -
1, otherwise the result would be more poisonous.
Alive2 proofs: https://alive2.llvm.org/ce/z/iBPpkv
Compile-time impact in noise:
https://llvm-compile-time-tracker.com/compare.php?from=a037729976f91dc11b41a76834dfca9d8812c4fe&to=2050d622aed5606774f0902b352bbb2142e654e1&stat=instructions:u
PR: https://github.com/llvm/llvm-project/pull/208434
Commit: d199b284c7d3f98bb7afbbca9e79e078a1da55fe
https://github.com/llvm/llvm-project/commit/d199b284c7d3f98bb7afbbca9e79e078a1da55fe
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M orc-rt/docs/Design.md
M orc-rt/include/orc-rt/Session.h
M orc-rt/test/unit/SessionTest.cpp
Log Message:
-----------
[orc-rt] Drop callManagedCodeAsync; tokens guard execution (#210508)
callManagedCodeSync is renamed to callManagedCode, and
callManagedCodeAsync is removed.
callManagedCodeAsync held a ManagedCodeTaskGroup token from the initial
call until the async continuation ran -- across the gap in which the
call is suspended and no managed code is executing. A token is meant to
guard managed code that is executing on a stack, so holding one across
that gap guards nothing while blocking shutdown.
callManagedCode holds a token only for the synchronous call to the
wrapped function, including anything the function runs inline on the
same thread before returning. An async function is called the same way,
with its continuation passed as an ordinary argument. Work deferred past
the function's return -- stashed, or handed to another thread -- runs on
a stack the token no longer guards; whoever later runs it is responsible
for ensuring a token covers it, acquiring one and aborting if the
acquire is denied.
See the new "Managed code execution and shutdown" section in
docs/Design.md for the full model (what a token guards, nested entries,
context-free acquire, and the abortability obligation).
Commit: 7b446294e098c7c02bbc998da1b4a438f7270879
https://github.com/llvm/llvm-project/commit/7b446294e098c7c02bbc998da1b4a438f7270879
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/include/llvm/Support/MathExtras.h
M llvm/unittests/Support/MathExtrasTest.cpp
Log Message:
-----------
[Support] Add constexpr versions of Add/Sub/MulOverflow (#210404)
<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
Commit: 36c812f77142aa77b99b4e4d059ccba591a944c0
https://github.com/llvm/llvm-project/commit/36c812f77142aa77b99b4e4d059ccba591a944c0
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/include/llvm/ADT/Sequence.h
M llvm/unittests/ADT/SequenceTest.cpp
Log Message:
-----------
[ADT] Make enum iterators constexpr (#210405)
<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
Commit: fdf1adc8910ce4083d4c18205f665ef3c30cc851
https://github.com/llvm/llvm-project/commit/fdf1adc8910ce4083d4c18205f665ef3c30cc851
Author: Lang Hames <lhames at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
Log Message:
-----------
[orc-rt] Add comment for Session::HandlerTag type. NFC. (#210510)
Commit: af0c933eda31b6beb436026a22121ec637f3cb53
https://github.com/llvm/llvm-project/commit/af0c933eda31b6beb436026a22121ec637f3cb53
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M clang/lib/CodeGen/TargetInfo.cpp
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
M llvm/docs/LangRef.md
M llvm/include/llvm/IR/Function.h
M llvm/lib/IR/Verifier.cpp
M llvm/test/CodeGen/AArch64/is_fpclass.ll
M llvm/test/CodeGen/AArch64/sms-loop-carried-fp-exceptions1.mir
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-to-int.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-int-to-fp.ll
M llvm/test/CodeGen/PowerPC/milicode32.ll
M llvm/test/CodeGen/PowerPC/ppcf128-constrained-fp-intrinsics.ll
M llvm/test/CodeGen/RISCV/double-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/float-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/zfh-half-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/zfhmin-half-intrinsics-strict.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-fmuladd.ll
M llvm/test/Transforms/EarlyCSE/replace-calls-def-attrs.ll
M llvm/test/Transforms/InstCombine/erf.ll
M llvm/test/Transforms/InstCombine/fdim.ll
M llvm/test/Transforms/InstSimplify/disable_folding.ll
M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll
M llvm/unittests/IR/VerifierTest.cpp
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[IR] Make semantics of strictfp consistent (#209465)
Although the section on constrainedfp in the LangRef clearly states "All
function definitions that use constrained floating point intrinsics must
have the strictfp attribute", indicating that a function with strictfp
calls must be marked with strictfp, the general description of strictfp
does not specify this. Refine its semantics and make it so, eliminating
the inconsistency.
Commit: 94b08b5de90dc21453a1dcde10cc1cd44ba93f7c
https://github.com/llvm/llvm-project/commit/94b08b5de90dc21453a1dcde10cc1cd44ba93f7c
Author: Alex Rønne Petersen <alex at alexrp.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Support/Unix/Signals.inc
Log Message:
-----------
[Support] Improve the logic for re-raising signals (#177864)
On most systems, checking `si_pid` is not actually valid unless
`si_code` equals one of the relevant signal codes (`SI_USER`,
`SI_QUEUE`, and on some OSs, `SI_LWP`), or the signal is `SIGCHLD`. So
on e.g. NetBSD, we would misinterpret the `SIGSEGV` fault address as the
sending PID and incorrectly conclude that the signal came from a
different process.
But as far as I can tell, there's not even a valid reason for us to be
checking `si_pid != getpid()`, because the signal could very well have
been explicitly sent by another thread in the current process. So we
really just need to check `si_code` for the aforementioned signal codes.
Darwin is the exception because it just doesn't set `si_code` at all in
the case of the `SI_*` signal codes. So keep the old logic there, even
though it misses the corner case of signals sent by a thread in the
current process.
While here, I also changed the error check for Linux
`rt_tgsigqueueinfo()` as it was not at all clear to me how we would ever
see `EPERM` from sending a signal to the current thread. Besides, it's
sensible to go to the `raise()` path as a last resort regardless of how
`rt_tgsigqueueinfo()` failed (e.g. `ENOSYS` on an old kernel).
Commit: f6d9ec41d30b453c939bbaa1c73b876ce1389ee9
https://github.com/llvm/llvm-project/commit/f6d9ec41d30b453c939bbaa1c73b876ce1389ee9
Author: 陈子昂 <2802328816 at qq.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M clang/lib/Headers/riscv_packed_simd.h
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
Log Message:
-----------
[RISCV] Add packed narrowing convert intrinsics (#210389)
Add RISC-V P-extension packed narrowing convert header APIs for `pncvt`
and `pncvth`.
The new APIs lower through generic IR: RV32 uses truncate / logical
shift plus truncate forms, while RV64 uses existing packed unzip shuffle
forms. This reuses the existing backend lowering and TableGen aliases
rather than adding intrinsic-specific lowering.
Tests cover Clang IR generation and cross-project header assembly checks
for RV32/RV64 spec-listed mnemonics.
Commit: be68a8829d6d6a2186f962b37d83984961cedeb1
https://github.com/llvm/llvm-project/commit/be68a8829d6d6a2186f962b37d83984961cedeb1
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/include/llvm/ADT/Sequence.h
Log Message:
-----------
[ADT] Fix non-assertion build after 36c812f771 (#210511)
E.g. https://lab.llvm.org/buildbot/#/builders/228/builds/5253
Commit: 53096b7a2d268ab92617436915bc6f9f3cf8d82e
https://github.com/llvm/llvm-project/commit/53096b7a2d268ab92617436915bc6f9f3cf8d82e
Author: AntonyCJ30 <cj6186609 at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/apx/sub.ll
Log Message:
-----------
[X86][APX] Optimize usub.sat(X,1) to cmp+adc with NDD (#208475)
When NDD is available, usub.sat(X, 1) is lowered from xor+sub+cmov (3
insns) to cmp+adc (2 insns).
All X86 tests pass.
Fixes #207888
Co-authored-by: AntonyCJ30 <cj6186609 at gmail@gmail.com>
Commit: c739ce632b1489dcdbaad72df64a9cec9a8ed359
https://github.com/llvm/llvm-project/commit/c739ce632b1489dcdbaad72df64a9cec9a8ed359
Author: Taimuraz Kaitmazov <atassikay38 at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
A llvm/test/TableGen/subreg-index-overflow-allowed.td
A llvm/test/TableGen/subreg-index-overflow.td
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.h
Log Message:
-----------
[TableGen] Diagnose sub-register indices that overflow their register (#206346)
Commit: 0b5073a3cd15b942860eeb2ce18a7958bbcf9169
https://github.com/llvm/llvm-project/commit/0b5073a3cd15b942860eeb2ce18a7958bbcf9169
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.h
Log Message:
-----------
[NFC][ELF] Remove unused R_RELAX_TLS_* RelExprs (#210517)
As of 46d29d43ba8e ("[ELF] Remove unused handleTlsRelocation (#184951)")
these are never generated.
Commit: 2144ee4e19c4cf4501daed8d71aec68af1b9a8a6
https://github.com/llvm/llvm-project/commit/2144ee4e19c4cf4501daed8d71aec68af1b9a8a6
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M lld/ELF/Relocations.h
Log Message:
-----------
[NFC][ELF] Remove unused R_TLSDESC_CALL RelExpr (#210518)
As of 4ea72c1e8cbd ("[ELF] Add target-specific relocation scanning for
RISC-V (#181332)") this is never generated, and as of 46d29d43ba8e
("[ELF] Remove unused handleTlsRelocation (#184951)") this is not even
handled anywhere.
Commit: f9b7acbe7d5b6dbd1769a8d8c9cfb6de23abe48c
https://github.com/llvm/llvm-project/commit/f9b7acbe7d5b6dbd1769a8d8c9cfb6de23abe48c
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M lld/ELF/Relocations.h
Log Message:
-----------
[NFC][ELF] Remove unused R_TLS*_HINT RelExprs (#210519)
As of 5e87f8147d68 ("[ELF] Add target-specific relocation scanning for
PPC32 (#181517)") these are never generated, and as of 46d29d43ba8e
("[ELF] Remove unused handleTlsRelocation (#184951)") these are not even
handled anywhere.
Commit: acd3fcfdd6d065f914eadbe2036e703c056b4ccc
https://github.com/llvm/llvm-project/commit/acd3fcfdd6d065f914eadbe2036e703c056b4ccc
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/test/CodeGen/call-graph-section-callback.cpp
M clang/test/CodeGen/call-graph-section-internal.cpp
M clang/test/CodeGen/call-graph-section-templates.cpp
M clang/test/CodeGen/call-graph-section-virtual-methods.cpp
M clang/test/CodeGen/call-graph-section.c
M clang/test/CodeGen/call-graph-section.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
M llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
M llvm/test/CodeGen/ARM/call-graph-section.ll
M llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
M llvm/test/CodeGen/X86/call-graph-section.ll
M llvm/test/Verifier/callee-type-metadata.ll
Log Message:
-----------
[clang] Emit call graph type metadata for internal linkage symbols (#210194)
Commit: 4812a67a45710531f9ac3bf2a84a1e2b278971a4
https://github.com/llvm/llvm-project/commit/4812a67a45710531f9ac3bf2a84a1e2b278971a4
Author: Ayokunle Amodu <ayokunle321 at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
M clang/test/CIR/CodeGenHIP/builtins-amdgcn-vi-f16.hip
M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip
Log Message:
-----------
[CIR][AMDGPU] Add support for AMDGCN frexp_mant builtins (#198121)
Adds codegen for the following AMDGCN frexp mantissa builtins:
- __builtin_amdgcn_frexp_mant (double)
- __builtin_amdgcn_frexp_mantf (float)
- __builtin_amdgcn_frexp_manth (half)
These are lowered to the corresponding `llvm.amdgcn.frexp.mant`
intrinsic.
Commit: 6d70017b17f967756825107c91f24769046826b9
https://github.com/llvm/llvm-project/commit/6d70017b17f967756825107c91f24769046826b9
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M .mailmap
Log Message:
-----------
mailmap: Add entries for Peter Collingbourne. (#210526)
I am no longer at Google.
Commit: d89537dd93f6fba07864e3583e11996c91a794b8
https://github.com/llvm/llvm-project/commit/d89537dd93f6fba07864e3583e11996c91a794b8
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-07-19 (Sun, 19 Jul 2026)
Changed paths:
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILWriterPass.cpp
Log Message:
-----------
[DirectX] Fix `--dx-embed-debug` flag dependency (#210513)
This patch moves the definition of `cl::opt<std::string> PdbDebugPath`
from `DXContainerGlobals.cpp` to `DXILWriter/DXILWriterPass.cpp`,
reversing the dependency.
Fixes the layering violation in #204166.
Commit: 220e8277d3ad300c094447d214f0a5a122435196
https://github.com/llvm/llvm-project/commit/220e8277d3ad300c094447d214f0a5a122435196
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/include/llvm/IR/PassManagerInternal.h
M llvm/unittests/IR/PassManagerTest.cpp
Log Message:
-----------
[IR][NFC] Avoid unneccessary move of analysis results (#210540)
While benchmarking CycleAnalysis, I noticed that each analysis result is
constructed on the stack first and then moved to its final place on the
heap. This is unnecessary -- directly construct the analysis result in
its final place. Consequently, analysis results can be immovable.
Commit: bcb4e7d061ac22bce4ac65f5158a4746fb0edc0f
https://github.com/llvm/llvm-project/commit/bcb4e7d061ac22bce4ac65f5158a4746fb0edc0f
Author: Justin Lebar <justin.lebar at gmail.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
Log Message:
-----------
[InstCombine] Fix 0.0 / x -> 0 folds when the divisor may be zero (#202482)
SimplifyDemandedUseFPClass folded 0/x to a signed zero, guarded only on
the divisor being non-NaN. But when x==0, the result is is NaN, not 0!
Require the divisor to be never (logical) zero, unless a NaN result
isn't demanded.
Commit: f5c4f390a04abf63f9f4c98980df67e22544ddb7
https://github.com/llvm/llvm-project/commit/f5c4f390a04abf63f9f4c98980df67e22544ddb7
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyPassRegistry.def
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
Log Message:
-----------
[WebAssembly] Port WebAssemblyLateEHPreparePass
Standard NewPM pass porting.
Reviewers: aheejin, sbc100, dschuff
Pull Request: https://github.com/llvm/llvm-project/pull/209956
Commit: 0e3d17a080646825df5cdff6997c633b6292b6ff
https://github.com/llvm/llvm-project/commit/0e3d17a080646825df5cdff6997c633b6292b6ff
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyPassRegistry.def
M llvm/lib/Target/WebAssembly/WebAssemblyReplacePhysRegs.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
Log Message:
-----------
[WebAssembly] Port WebAssemblyReplacePhysRegsPass
Standard NewPM pass porting.
Reviewers: dschuff, aheejin, sbc100
Pull Request: https://github.com/llvm/llvm-project/pull/209957
Commit: e97440324f90ac667a733e95d2d99dcd45dbe584
https://github.com/llvm/llvm-project/commit/e97440324f90ac667a733e95d2d99dcd45dbe584
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-07-18 (Sat, 18 Jul 2026)
Changed paths:
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .github/workflows/premerge.yaml
M .github/workflows/release-binaries.yml
M .github/workflows/validate-release-version/action.yml
M .mailmap
M bolt/docs/BOLTAArch64OptimizationStatus.md
M bolt/docs/GettingStarted.md
M bolt/docs/index.md
M bolt/docs/profiles.md
M bolt/include/bolt/Profile/DataReader.h
M bolt/lib/Profile/DataReader.cpp
A bolt/test/X86/profile-symbols-mode.s
M clang-tools-extra/clangd/CMakeLists.txt
A clang-tools-extra/clangd/LSPBinder.cpp
M clang-tools-extra/clangd/LSPBinder.h
M clang/docs/ReleaseNotes.md
A clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.rst
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Options/Options.td
M clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.h
M clang/include/clang/Sema/Sema.h
R clang/include/clang/Sema/TemplateInstCallback.h
M clang/lib/AST/ExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
M clang/lib/CIR/Dialect/Transforms/PassDetail.h
M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/riscv_packed_simd.h
M clang/lib/Parse/ParseAST.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractor.cpp
M clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/test/AST/ast-dump-decl.cpp
A clang/test/AST/ast-dump-deleted-defaulted-range.cpp
M clang/test/AST/ast-dump-funcs.cpp
M clang/test/AST/ast-dump-record-definition-data-json.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
M clang/test/Analysis/Scalable/help.cpp
A clang/test/Analysis/Scalable/source-edit-generation/Inputs/empty-suite.json
A clang/test/Analysis/Scalable/source-edit-generation/Inputs/two-function-suite.json
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/CMakeLists.txt
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/CMakeLists.txt
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/TestTransformation.cpp
A clang/test/Analysis/Scalable/source-edit-generation/Plugins/lit.local.cfg
A clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
A clang/test/Analysis/Scalable/source-edit-generation/coexistence.cpp
A clang/test/Analysis/Scalable/source-edit-generation/downgradable-errors.cpp
A clang/test/Analysis/Scalable/source-edit-generation/happy-path.cpp
A clang/test/Analysis/Scalable/source-edit-generation/write-failure.cpp
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-explicit-triple.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-namespace-override.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libempty.json
A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libtwo.json
M clang/test/Analysis/Scalable/ssaf-linker/help.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-create.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-help.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-time.test
A clang/test/Analysis/Scalable/ssaf-linker/static-library-verbose.test
M clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
A clang/test/Analysis/std-c-library-functions-non-integral-ssize_t.cpp
M clang/test/CIR/CodeGen/builtins-x86.c
M clang/test/CIR/CodeGen/ternary-throw.cpp
M clang/test/CIR/CodeGen/var_arg.c
M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
M clang/test/CIR/CodeGenBuiltins/X86/sse-builtins.c
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
A clang/test/CIR/CodeGenHIP/amdgcn-buffer-rsrc-type.hip
M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
M clang/test/CIR/CodeGenHIP/builtins-amdgcn-vi-f16.hip
M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip
A clang/test/CIR/IR/invalid-loop-cleanup.cir
A clang/test/CIR/IR/loop-cleanup.cir
A clang/test/CIR/Transforms/abi-lowering/x86_64-lang-addrspace-nyi.cir
A clang/test/CIR/Transforms/abi-lowering/x86_64-scalars.cir
M clang/test/CMakeLists.txt
A clang/test/CXX/dcl/dcl.spec/dcl.type/dcl.type.general/p2.cpp
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
A clang/test/CodeGen/SystemZ/systemz-module.flags.c
M clang/test/CodeGen/call-graph-section-callback.cpp
M clang/test/CodeGen/call-graph-section-internal.cpp
M clang/test/CodeGen/call-graph-section-templates.cpp
M clang/test/CodeGen/call-graph-section-virtual-methods.cpp
M clang/test/CodeGen/call-graph-section.c
M clang/test/CodeGen/call-graph-section.cpp
M clang/test/CodeGenHLSL/resources/RWBuffer-imageformat.hlsl
M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
M clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl
M clang/test/CoverageMapping/default-method.cpp
A clang/test/Driver/Inputs/resource_dir/lib/cygwin/libclang_rt.builtins-x86_64.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/x86_64-pc-windows-cygnus/libclang_rt.builtins.a
A clang/test/Driver/cygwin-print-file-name.c
M clang/test/Driver/darwin-target-variant-sdk-version.c
M clang/test/Driver/dxc_debug.hlsl
A clang/test/ExtractAPI/availability_typedef_anonymous_record.c
A clang/test/ExtractAPI/objc_nullability.m
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/SemaCXX/using-decl-templates.cpp
R clang/test/Templight/templight-deduced-func.cpp
R clang/test/Templight/templight-default-arg-inst.cpp
R clang/test/Templight/templight-default-func-arg.cpp
R clang/test/Templight/templight-default-template-arg.cpp
R clang/test/Templight/templight-empty-entries-fix.cpp
R clang/test/Templight/templight-exception-spec-func.cpp
R clang/test/Templight/templight-explicit-template-arg.cpp
R clang/test/Templight/templight-memoization.cpp
R clang/test/Templight/templight-nested-memoization.cpp
R clang/test/Templight/templight-nested-template-instantiation.cpp
R clang/test/Templight/templight-one-instantiation.cpp
R clang/test/Templight/templight-prior-template-arg.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.cpp
A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.h
M clang/unittests/AST/SourceLocationTest.cpp
M clang/unittests/CIR/CMakeLists.txt
M clang/unittests/CIR/ControlFlowTest.cpp
A clang/unittests/CIR/GetFloatingPointTypeTest.cpp
A clang/unittests/CIR/IntTypeABIAlignTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractorTest.cpp
M clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
M clang/unittests/Tooling/RecursiveASTVisitorTests/CXXMethodDecl.cpp
A compiler-rt/docs/ASanABI.md
R compiler-rt/docs/ASanABI.rst
A compiler-rt/docs/BuildingCompilerRT.md
R compiler-rt/docs/BuildingCompilerRT.rst
A compiler-rt/docs/TestingGuide.md
R compiler-rt/docs/TestingGuide.rst
M compiler-rt/lib/ubsan/ubsan_diag.cpp
M compiler-rt/test/lit.common.cfg.py
M compiler-rt/test/profile/Linux/counter_promo_for.c
M compiler-rt/test/profile/Linux/counter_promo_while.c
M compiler-rt/test/sanitizer_common/android_commands/android_common.py
M compiler-rt/test/ubsan/TestCases/Integer/suppressions-nested-calls.c
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
M flang-rt/CMakeLists.txt
M flang/docs/CMakeLists.txt
A flang/docs/CommandGuide/index.md
R flang/docs/CommandGuide/index.rst
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-acc-structure.h
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Driver/fakeflang.F
A flang/test/Fir/CUDA/cuda-device-func-transform-aio.mlir
A flang/test/Fir/create-box-codegen.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
A flang/test/Lower/CUDA/cuda-gpu-unified.cuf
R flang/test/Lower/CUDA/cuda-implicit-managed-alloc.cuf
A flang/test/Lower/global-initialization-parens.f90
A flang/test/Lower/pre-fir-tree-assigned-goto.f90
M flang/test/Semantics/OpenACC/acc-loop-routine-call.f90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-create-box.fir
M flang/tools/fakeflang/fakeflang.cpp
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/headers.txt
M libc/docs/CMakeLists.txt
R libc/docs/headers/time.rst
M libc/include/llvm-libc-types/struct_sockaddr_storage.h
M libc/src/__support/FPUtil/Hypot.h
M libc/src/__support/File/linux/CMakeLists.txt
M libc/src/__support/File/linux/dir.cpp
M libc/src/__support/File/linux/file.cpp
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/auxv.h
M libc/src/__support/math/hypot.h
M libc/src/__support/threads/linux/CMakeLists.txt
M libc/src/__support/threads/linux/thread.cpp
M libc/src/sched/linux/CMakeLists.txt
M libc/src/sched/linux/sched_getaffinity.cpp
M libc/src/semaphore/linux/CMakeLists.txt
M libc/src/semaphore/linux/named_semaphore.cpp
M libc/src/semaphore/linux/semaphore.h
M libc/src/spawn/linux/CMakeLists.txt
M libc/src/spawn/linux/posix_spawn.cpp
M libc/src/stdio/linux/CMakeLists.txt
M libc/src/stdio/linux/remove.cpp
M libc/src/stdlib/linux/CMakeLists.txt
M libc/src/stdlib/linux/realpath.cpp
M libc/src/sys/ipc/linux/CMakeLists.txt
M libc/src/sys/ipc/linux/ftok.cpp
R libc/src/sys/ipc/linux/kernel_statx.h
M libc/src/sys/mman/linux/CMakeLists.txt
M libc/src/sys/mman/linux/shm_unlink.cpp
M libc/src/sys/time/linux/CMakeLists.txt
M libc/src/sys/time/linux/utimes.cpp
M libc/startup/linux/x86_64/CMakeLists.txt
M libc/startup/linux/x86_64/tls.cpp
M libc/test/UnitTest/HermeticTestUtils.cpp
M libc/test/src/math/smoke/hypot_test.cpp
M libc/test/src/semaphore/linux/CMakeLists.txt
M libc/test/src/semaphore/linux/semaphore_test.cpp
M libc/test/src/stdfix/DiviFxTest.h
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/realpath_test.cpp
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/test/src/sys/socket/linux/connect_accept_test.cpp
M libc/test/src/sys/socket/linux/listen_test.cpp
M libc/test/src/sys/socket/linux/sockaddr_storage_test.cpp
M libc/test/src/sys/socket/linux/socket_test_support.h
M libc/test/src/sys/socket/linux/sockname_test.cpp
A libc/utils/docgen/time.yaml
M libcxx/src/support/runtime/exception_pointer_msvc.ipp
M libcxx/utils/ci/images/libcxx_release_runners.txt
A libsycl/docs/CodingGuidelines.md
R libsycl/docs/CodingGuidelines.rst
A libsycl/docs/index.md
R libsycl/docs/index.rst
M libsycl/src/event.cpp
M libsycl/test/README.md
M libsycl/unittests/event/event.cpp
A libunwind/docs/BuildingLibunwind.md
R libunwind/docs/BuildingLibunwind.rst
M libunwind/docs/conf.py
A libunwind/docs/index.md
R libunwind/docs/index.rst
M lld/COFF/Driver.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/Relocations.h
A lld/test/COFF/link-dll-arm64x.s
M lldb/bindings/interfaces.swig
M lldb/bindings/python/CMakeLists.txt
M lldb/bindings/python/python-wrapper.swig
M lldb/docs/CMakeLists.txt
M lldb/docs/use/variable.md
M lldb/examples/python/delta.py
M lldb/examples/python/gdbremote.py
A lldb/examples/python/templates/scripted_stackframe_recognizer.py
M lldb/include/lldb/API/LLDB.h
M lldb/include/lldb/API/SBDefines.h
A lldb/include/lldb/API/SBProtocolServer.h
M lldb/include/lldb/API/SBValue.h
M lldb/include/lldb/Core/Diagnostics.h
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/Host/common/DomainSocket.h
A lldb/include/lldb/Interpreter/Interfaces/ScriptedStackFrameRecognizerInterface.h
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Target/StackFrameRecognizer.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/include/lldb/ValueObject/ValueObjectSynthetic.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/include/lldb/lldb-forward.h
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/source/API/CMakeLists.txt
A lldb/source/API/SBProtocolServer.cpp
M lldb/source/API/SBValue.cpp
M lldb/source/Commands/CommandObjectScripting.cpp
M lldb/source/Commands/Options.td
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Diagnostics.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/Expression/IRInterpreter.cpp
M lldb/source/Host/common/DomainSocket.cpp
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Interpreter/embedded_interpreter.py
M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
M lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.cpp
A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/TraceExporter/common/TraceHTR.h
A lldb/source/Plugins/TraceExporter/docs/htr.md
R lldb/source/Plugins/TraceExporter/docs/htr.rst
M lldb/source/Target/StackFrameRecognizer.cpp
M lldb/source/ValueObject/ValueObject.cpp
M lldb/source/ValueObject/ValueObjectSynthetic.cpp
M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
M lldb/test/API/commands/frame/recognizer/recognizer.py
A lldb/test/API/functionalities/scripting_extension_generate/Makefile
A lldb/test/API/functionalities/scripting_extension_generate/TestScriptingExtensionGenerate.py
A lldb/test/API/functionalities/scripting_extension_generate/main.c
M lldb/test/API/functionalities/thread/finish-from-empty-func/TestEmptyFuncThreadStepOut.py
M lldb/test/API/functionalities/thread/finish-from-empty-func/main.c
A lldb/test/API/lang/cpp/enum-limits/Makefile
A lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
A lldb/test/API/lang/cpp/enum-limits/main.cpp
A lldb/test/API/python_api/sbvalue_set_type_synthetic/Makefile
A lldb/test/API/python_api/sbvalue_set_type_synthetic/TestSBValueSetTypeSynthetic.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic/library_support.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic/main.cpp
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/Makefile
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/foo_bar_synths.py
A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/main.cpp
A lldb/test/Shell/Diagnostics/TestDiagnosticsCollectBinaries.test
M lldb/test/Shell/SymbolFile/NativePDB/Inputs/globals-fundamental.lldbinit
M lldb/test/Shell/SymbolFile/NativePDB/globals-fundamental.cpp
A lldb/test/Shell/SymbolFile/NativePDB/static-class-constants.cpp
M lldb/unittests/API/CMakeLists.txt
A lldb/unittests/API/SBProtocolServerTest.cpp
M lldb/unittests/Core/CMakeLists.txt
A lldb/unittests/Core/DiagnosticsTest.cpp
M lldb/unittests/Host/SocketTest.cpp
M lldb/unittests/Process/gdb-remote/CMakeLists.txt
M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationServerLLGSTest.cpp
A lldb/unittests/Process/gdb-remote/ProcessGDBRemoteTest.cpp
M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp
M lldb/unittests/Utility/UriParserTest.cpp
A llvm-libgcc/docs/LLVMLibgcc.md
R llvm-libgcc/docs/LLVMLibgcc.rst
M llvm-libgcc/generate_version_script.py
A llvm/docs/AArch64SME.md
R llvm/docs/AArch64SME.rst
A llvm/docs/AMDGPUAsyncOperations.md
R llvm/docs/AMDGPUAsyncOperations.rst
M llvm/docs/AMDGPUDMAOperations.md
A llvm/docs/AMDGPUExecutionSynchronization.md
R llvm/docs/AMDGPUExecutionSynchronization.rst
A llvm/docs/AMDGPUMemoryModel.md
R llvm/docs/AMDGPUMemoryModel.rst
A llvm/docs/AddingConstrainedIntrinsics.md
R llvm/docs/AddingConstrainedIntrinsics.rst
A llvm/docs/AdminTasks.md
R llvm/docs/AdminTasks.rst
A llvm/docs/BigEndianNEON.md
R llvm/docs/BigEndianNEON.rst
M llvm/docs/CommandGuide/lit.rst
A llvm/docs/CompileCudaWithLLVM.md
R llvm/docs/CompileCudaWithLLVM.rst
A llvm/docs/DebuggingJITedCode.md
R llvm/docs/DebuggingJITedCode.rst
A llvm/docs/ExtendingLLVM.md
R llvm/docs/ExtendingLLVM.rst
A llvm/docs/HowToBuildWindowsItaniumPrograms.md
R llvm/docs/HowToBuildWindowsItaniumPrograms.rst
A llvm/docs/HowToCrossCompileBuiltinsOnArm.md
R llvm/docs/HowToCrossCompileBuiltinsOnArm.rst
A llvm/docs/HowToUpdateDebugInfo.md
R llvm/docs/HowToUpdateDebugInfo.rst
A llvm/docs/Instrumentor.md
R llvm/docs/Instrumentor.rst
A llvm/docs/JITLink.md
R llvm/docs/JITLink.rst
M llvm/docs/LangRef.md
A llvm/docs/MCJITDesignAndImplementation.md
R llvm/docs/MCJITDesignAndImplementation.rst
A llvm/docs/NVPTXUsage.md
R llvm/docs/NVPTXUsage.rst
A llvm/docs/ORCv2.md
R llvm/docs/ORCv2.rst
A llvm/docs/Remarks.md
R llvm/docs/Remarks.rst
A llvm/docs/SPIRVUsage.md
R llvm/docs/SPIRVUsage.rst
M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
M llvm/include/llvm/ADT/GenericUniformityImpl.h
M llvm/include/llvm/ADT/GenericUniformityInfo.h
M llvm/include/llvm/ADT/Sequence.h
M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
M llvm/include/llvm/IR/CycleInfo.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
M llvm/include/llvm/IR/Module.h
M llvm/include/llvm/IR/PassManagerInternal.h
M llvm/include/llvm/ObjectYAML/BBAddrMapYAML.h
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/include/llvm/ProfileData/SampleProfWriter.h
M llvm/include/llvm/Support/LSP/Transport.h
M llvm/include/llvm/Support/MathExtras.h
M llvm/lib/Analysis/CFG.cpp
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/UniformityAnalysis.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/DwarfEHPrepare.cpp
M llvm/lib/CodeGen/ExpandIRInsts.cpp
M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/lib/CodeGen/SafeStack.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerUnit.h
M llvm/lib/IR/CycleInfo.cpp
M llvm/lib/IR/Module.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/MC/MCDXContainerWriter.cpp
M llvm/lib/ObjectYAML/BBAddrMapYAML.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/ProfileData/SampleProfWriter.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/lib/Support/LSP/Transport.cpp
M llvm/lib/Support/Unix/Signals.inc
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/lib/Target/AArch64/AArch64PTrueCoalescing.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.def
M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp
M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILWriterPass.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRV.h
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrTBM.td
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
M llvm/lib/Transforms/Utils/SSAUpdater.cpp
M llvm/lib/Transforms/Vectorize/CMakeLists.txt
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
M llvm/lib/Transforms/Vectorize/VPlan.h
A llvm/lib/Transforms/Vectorize/VPlanEVLTailFolding.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-urem.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-vashr.mir
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
M llvm/test/CodeGen/AArch64/is_fpclass.ll
M llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign-with-blend.ll
M llvm/test/CodeGen/AArch64/sms-loop-carried-fp-exceptions1.mir
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-loads.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-stores.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
A llvm/test/CodeGen/AArch64/sve-ptrue-coalesce.mir
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-to-int.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-int-to-fp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_dpp_lds_expected_active_lanes.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/div-rem-fast-path.ll
M llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir
M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
M llvm/test/CodeGen/AMDGPU/global-saddr-atomics-min-max-system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
M llvm/test/CodeGen/AMDGPU/sdiv.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
M llvm/test/CodeGen/AMDGPU/valu-mask-write-hazard.mir
M llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
M llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
M llvm/test/CodeGen/ARM/call-graph-section.ll
M llvm/test/CodeGen/ARM/select-imm.ll
M llvm/test/CodeGen/DirectX/ContainerData/ContainerFlags.ll
A llvm/test/CodeGen/LoongArch/lasx/issue207316.ll
M llvm/test/CodeGen/LoongArch/lasx/xvexth.ll
M llvm/test/CodeGen/LoongArch/lsx/vexth.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-allow-ftz-atomics.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
M llvm/test/CodeGen/NVPTX/atomicrmw.py
M llvm/test/CodeGen/NVPTX/atomics.ll
M llvm/test/CodeGen/PowerPC/milicode32.ll
M llvm/test/CodeGen/PowerPC/ppcf128-constrained-fp-intrinsics.ll
A llvm/test/CodeGen/RISCV/GlobalISel/atomicrmw-xchg.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv64.mir
M llvm/test/CodeGen/RISCV/double-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/float-intrinsics-strict.ll
A llvm/test/CodeGen/RISCV/rvv/vecreduce-minmax-constant-fold.ll
M llvm/test/CodeGen/RISCV/zfh-half-intrinsics-strict.ll
M llvm/test/CodeGen/RISCV/zfhmin-half-intrinsics-strict.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-default-address-space.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-init-expr.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-multi-gve.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-backing-var.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-type.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-path-null.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-static-member.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-type-not-in-regs.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-static-member.ll
A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bfloat16/bfloat16.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/SignedBufferLoadStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/UnsignedBufferLoadStore.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/constrained-fmuladd.ll
M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll
M llvm/test/CodeGen/X86/apx/sub.ll
M llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
M llvm/test/CodeGen/X86/call-graph-section.ll
A llvm/test/CodeGen/X86/dagcombine-sub-globaladdress.ll
A llvm/test/CodeGen/X86/tailcall-i686-pic.ll
M llvm/test/CodeGen/X86/tbm_patterns.ll
A llvm/test/MC/AArch64/LFI/debug-info.s
A llvm/test/MC/AMDGPU/amdhsa-kernel-prologue.s
M llvm/test/MC/AMDGPU/hsa-gfx1250-v4.s
M llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s
A llvm/test/TableGen/RuntimeLibcallEmitter-predicate-cc-sort.td
A llvm/test/TableGen/subreg-index-overflow-allowed.td
A llvm/test/TableGen/subreg-index-overflow.td
A llvm/test/ThinLTO/X86/Inputs/cache-defined-globals-order.ll
A llvm/test/ThinLTO/X86/cache-defined-globals-order.ll
M llvm/test/Transforms/ConstraintElimination/eq.ll
M llvm/test/Transforms/ConstraintElimination/ne.ll
M llvm/test/Transforms/EarlyCSE/replace-calls-def-attrs.ll
M llvm/test/Transforms/IndVarSimplify/drop-exact.ll
A llvm/test/Transforms/IndVarSimplify/iv-widen-addrec-flag-inferred-late.ll
M llvm/test/Transforms/IndVarSimplify/pr66066.ll
M llvm/test/Transforms/IndVarSimplify/strengthen-overflow.ll
M llvm/test/Transforms/InstCombine/erf.ll
M llvm/test/Transforms/InstCombine/fdim.ll
M llvm/test/Transforms/InstCombine/known-bits.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
M llvm/test/Transforms/InstSimplify/disable_folding.ll
M llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check.ll
M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll
M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll
M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
A llvm/test/Transforms/SROA/sroa-self-referential-load.ll
M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll
A llvm/test/Transforms/TailCallElim/disable-tail-call-elim-for-cold-calls.ll
M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll
M llvm/test/Verifier/callee-type-metadata.ll
M llvm/test/Verifier/matrix-intrinsics.ll
M llvm/test/tools/llvm-profdata/profile-symbol-list.test
M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
M llvm/unittests/ADT/SequenceTest.cpp
M llvm/unittests/IR/MetadataTest.cpp
M llvm/unittests/IR/PassManagerTest.cpp
M llvm/unittests/IR/VerifierTest.cpp
M llvm/unittests/ProfileData/SampleProfTest.cpp
M llvm/unittests/Support/MathExtrasTest.cpp
M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.h
M llvm/utils/gn/README.rst
M llvm/utils/gn/build/BUILD.gn
M llvm/utils/gn/build/BUILDCONFIG.gn
M llvm/utils/gn/build/buildflags.gni
M llvm/utils/gn/build/symlink_or_copy.gni
M llvm/utils/gn/build/toolchain/BUILD.gn
M llvm/utils/gn/secondary/BUILD.gn
M llvm/utils/gn/secondary/bolt/tools/driver/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/tool/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clangd/xpc/framework/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Frontend/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-linker/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn
M llvm/utils/gn/secondary/lld/tools/lld/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-ar/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-cxxfilt/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod-find/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-dwp/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-libtool-darwin/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-lipo/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-ml/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-nm/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-rc/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-readobj/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-readtapi/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-size/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-strings/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-symbolizer/BUILD.gn
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/TestingConfig.py
M llvm/utils/lit/lit/cl_arguments.py
M llvm/utils/lit/lit/main.py
A llvm/utils/lit/tests/Inputs/pass-env/lit.cfg
A llvm/utils/lit/tests/Inputs/pass-env/test.txt
A llvm/utils/lit/tests/pass-env.py
M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/IR/CMakeLists.txt
M mlir/include/mlir/IR/SymbolInterfaces.td
M mlir/include/mlir/IR/SymbolTable.h
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitDeclare.cpp
M mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/lib/IR/SymbolTable.cpp
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
M mlir/lib/Target/Wasm/TranslateFromWasm.cpp
M mlir/test/Dialect/Bufferization/canonicalize.mlir
M mlir/test/Dialect/OpenACC/acc-implicit-declare.mlir
M mlir/test/Dialect/OpenACC/ops-cg.mlir
M mlir/test/Dialect/Tosa/availability.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/invalid_extension.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
M mlir/test/Dialect/Tosa/verifier.mlir
M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir
A mlir/test/IR/test-verifiers-symbol-user-type.mlir
M mlir/test/Integration/Dialect/Vector/CPU/compress.mlir
M mlir/test/Integration/Dialect/Vector/CPU/expand.mlir
M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
M mlir/test/Integration/Dialect/Vector/CPU/maskedload.mlir
M mlir/test/Integration/Dialect/Vector/CPU/maskedstore.mlir
M mlir/test/Integration/Dialect/Vector/CPU/scatter.mlir
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/Test/TestTypes.h
M offload/docs/conf.py
A offload/docs/index.md
R offload/docs/index.rst
M orc-rt/docs/Design.md
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/CCallback.h
M orc-rt/include/orc-rt/Session.h
M orc-rt/include/orc-rt/TaskGroup.h
A orc-rt/test/unit/CCallbackTest.cpp
M orc-rt/test/unit/CMakeLists.txt
M orc-rt/test/unit/SessionTest.cpp
M orc-rt/test/unit/TaskGroupTest.cpp
M runtimes/cmake/config-Fortran.cmake
M utils/bazel/llvm-project-overlay/clang-tools-extra/clangd/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.7
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/ca322621a14e...e97440324f90
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