[qt/clang/llvm-project]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm-project Pushed by mirror-service into branch 'upstream/main'. Changed from 3c6b4870425e7b62a966ff04f51f78920adbedb8 to 8377d59dfade3f1a4bf5779ddd90359bd4ddc249 Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository. This change contains the following new commits: Git commit f2ef5670cf70371153caeb0ebbeae2323a61f8e0 by GitHub (on behalf of Carl Ritson) on 17/07/2026 at 05:23.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/f2ef5670cf70371153caeb0ebbeae2323a61f8e0 Git commit 78ed03f555ea75d2337f618930c062f4d881a08b by GitHub (on behalf of Eugene Epshteyn) on 17/07/2026 at 05:29.. [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 https://invent.kde.org/qt/clang/llvm-project/-/commit/78ed03f555ea75d2337f618930c062f4d881a08b Git commit 15ae01dd24261bd70947aab884098e5dcd4096dd by GitHub (on behalf of David Zbarsky) on 17/07/2026 at 05:38.. [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 <[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/15ae01dd24261bd70947aab884098e5dcd4096dd Git commit c488b2c2407bf29bb20f67bb8f3cf39c637d231e by GitHub (on behalf of Sameer Sahasrabuddhe) on 17/07/2026 at 05:39.. [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 https://invent.kde.org/qt/clang/llvm-project/-/commit/c488b2c2407bf29bb20f67bb8f3cf39c637d231e Git commit a376783e2ed3a44f63991c97513711faad09525b by GitHub (on behalf of maflcko) on 17/07/2026 at 05:42.. [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 <*~=`'#}+{/-|&$^[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/a376783e2ed3a44f63991c97513711faad09525b Git commit 30bc042395a6cf0aa1e5de4fcc625d5b8c611767 by GitHub (on behalf of maflcko) on 17/07/2026 at 05:50.. [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 <*~=`'#}+{/-|&$^[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/30bc042395a6cf0aa1e5de4fcc625d5b8c611767 Git commit c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75 by GitHub (on behalf of Pavel Labath) on 17/07/2026 at 05:54.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75 Git commit 9445ad3f91d4331eead867f8b3c9c8a3818edac0 by GitHub (on behalf of Rana Pratap Reddy) on 17/07/2026 at 06:20.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/9445ad3f91d4331eead867f8b3c9c8a3818edac0 Git commit 513ac13e7e5037af4b39c8c582dd7927f4c807fc by GitHub (on behalf of SiHuaN) on 17/07/2026 at 06:21.. [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`. https://invent.kde.org/qt/clang/llvm-project/-/commit/513ac13e7e5037af4b39c8c582dd7927f4c807fc Git commit 61fa8d3db491c4a864242f22ce31b730fb78ecb5 by GitHub (on behalf of Matt Arsenault) on 17/07/2026 at 06:22.. CodeGen: Rename LibcallLoweringModuleAnalysisResult to ModuleLibcallLoweringInfo (#210176) https://invent.kde.org/qt/clang/llvm-project/-/commit/61fa8d3db491c4a864242f22ce31b730fb78ecb5 Git commit 6f2bd9fd1a5e7c61893abf2f1e9246610e6a32f8 by GitHub (on behalf of Valentin Clement (バレンタイン クレメン)) on 17/07/2026 at 06:28.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/6f2bd9fd1a5e7c61893abf2f1e9246610e6a32f8 Git commit 02f55a9e5e4775bc17cc23f9d1e7f5ee23cf63cd by GitHub (on behalf of Pavel Labath) on 17/07/2026 at 06:44.. [libc] add net/if.h to the list of installed headers (#210021) on aarch64, riscv and x86_64. https://invent.kde.org/qt/clang/llvm-project/-/commit/02f55a9e5e4775bc17cc23f9d1e7f5ee23cf63cd Git commit c571b0bd7330a4b737ad7dec31e7f2b52edd3953 by GitHub (on behalf of Pavel Labath) on 17/07/2026 at 06:45.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/c571b0bd7330a4b737ad7dec31e7f2b52edd3953 Git commit c4903855b64ee801d1b9caeb970921a63475c98b by GitHub (on behalf of Michael Kruse) on 17/07/2026 at 07:01.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/c4903855b64ee801d1b9caeb970921a63475c98b Git commit 250f791e7002afb308e4a59dc5ef3e1f2e1c10af by GitHub (on behalf of Raphael Isemann) on 17/07/2026 at 07:14.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/250f791e7002afb308e4a59dc5ef3e1f2e1c10af Git commit 89f5334990c5aa853fcbaa361aefe5b999e63dc5 by GitHub (on behalf of Jeff Bailey) on 17/07/2026 at 07:14.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/89f5334990c5aa853fcbaa361aefe5b999e63dc5 Git commit d68dc184b1cec0a01876b3f635bce6c25a64edf6 by GitHub (on behalf of Kareem Ergawy) on 17/07/2026 at 07:16.. [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 <[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/d68dc184b1cec0a01876b3f635bce6c25a64edf6 Git commit d134db0b2b989a2b15f91f24acca43497dfe0919 by GitHub (on behalf of Sean Clarke) on 17/07/2026 at 07:17.. [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`. https://invent.kde.org/qt/clang/llvm-project/-/commit/d134db0b2b989a2b15f91f24acca43497dfe0919 Git commit cc98c1eb84c690c65fba77b72c269a869978c898 by GitHub (on behalf of Fangrui Song) on 17/07/2026 at 07:34.. [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 https://invent.kde.org/qt/clang/llvm-project/-/commit/cc98c1eb84c690c65fba77b72c269a869978c898 Git commit 90e31c46d005ae0a7f5968c38a9310bee499923c by GitHub (on behalf of Nikita Popov) on 17/07/2026 at 07:51.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/90e31c46d005ae0a7f5968c38a9310bee499923c Git commit b69dd3366863acff56b0b2efdc4c4938097bb43e by GitHub (on behalf of Andrzej Warzyński) on 17/07/2026 at 08:03.. [mlir][vector][nfc] Update integration tests (#210090) Add comments, unify naming, remove redundant printing hooks. https://invent.kde.org/qt/clang/llvm-project/-/commit/b69dd3366863acff56b0b2efdc4c4938097bb43e Git commit 8b269587981fdc3b487cda5559ef75eeb475e613 by GitHub (on behalf of Simon Pilgrim) on 17/07/2026 at 08:13.. [VectorCombine][X86] Add test coverage for #209714 (#210063) https://invent.kde.org/qt/clang/llvm-project/-/commit/8b269587981fdc3b487cda5559ef75eeb475e613 Git commit 981c0f9037fc2e1e5c70ba2cfe61128557b5eeff by GitHub (on behalf of David Spickett) on 17/07/2026 at 08:30.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/981c0f9037fc2e1e5c70ba2cfe61128557b5eeff Git commit 9ee8b18b6c0758e57cedfa57e99ba85dfd247d35 by GitHub (on behalf of Andrzej Warzyński) on 17/07/2026 at 08:30.. [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 https://invent.kde.org/qt/clang/llvm-project/-/commit/9ee8b18b6c0758e57cedfa57e99ba85dfd247d35 Git commit 4894d4e87c332af24809b20573d880a4073b738b by GitHub (on behalf of Ian Anderson) on 17/07/2026 at 08:32.. [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 <[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/4894d4e87c332af24809b20573d880a4073b738b Git commit 12c4c0bf0269218c6ffdddae1c895f892a3e4e75 by GitHub (on behalf of Jay Foad) on 17/07/2026 at 08:37.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/12c4c0bf0269218c6ffdddae1c895f892a3e4e75 Git commit 2580624091e36b85c162439513eef8e752217a1d by GitHub (on behalf of cqwrteur) on 17/07/2026 at 09:11.. [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 https://invent.kde.org/qt/clang/llvm-project/-/commit/2580624091e36b85c162439513eef8e752217a1d Git commit a3bcc010c7b7d5fa43ab7928a88312841c4322dd by GitHub (on behalf of Jacek Caban) on 17/07/2026 at 09:24.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/a3bcc010c7b7d5fa43ab7928a88312841c4322dd Git commit f520e7083a12f0642eff8fc19fc4c90ccccc7da5 by GitHub (on behalf of Arseniy Obolenskiy) on 17/07/2026 at 09:24.. [SPIR-V][NewPM] Fix SPIRVEmitIntrinsics registration with the new pass manager (#209966) https://invent.kde.org/qt/clang/llvm-project/-/commit/f520e7083a12f0642eff8fc19fc4c90ccccc7da5 Git commit 0e1b0935ff6f326ba1b9c2d23ba9fa7b41e6941d by GitHub (on behalf of Arseniy Obolenskiy) on 17/07/2026 at 09:29.. [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 https://invent.kde.org/qt/clang/llvm-project/-/commit/0e1b0935ff6f326ba1b9c2d23ba9fa7b41e6941d Git commit 5fcab35be3b450256e3b02a735900071c0b74a54 by GitHub (on behalf of Jay Foad) on 17/07/2026 at 09:39.. [AMDGPU] Add assembler check for GFX1250 unclaused vmem workaround (#209517) Warn if an entrypoint does not start with the standard workaround sequence. https://invent.kde.org/qt/clang/llvm-project/-/commit/5fcab35be3b450256e3b02a735900071c0b74a54 Git commit 6cafa889cd398ca70992e0df518b2414a2607327 by GitHub (on behalf of Nerixyz) on 17/07/2026 at 09:48.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/6cafa889cd398ca70992e0df518b2414a2607327 Git commit e8f9589942ecd93d94de2af2e875964693e55129 by GitHub (on behalf of Ilia Kuklin) on 17/07/2026 at 10:22.. [Driver][DirectX] Add `/Qstrip_debug` flag (#204832) Add the flag that removes ILDB part from the main DXContainer. https://invent.kde.org/qt/clang/llvm-project/-/commit/e8f9589942ecd93d94de2af2e875964693e55129 Git commit d444e3ebb8ae69cdb628be3b3b0c632f13df9a08 by GitHub (on behalf of Chibuoyim (Wilson) Ogbonna) on 17/07/2026 at 10:28.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/d444e3ebb8ae69cdb628be3b3b0c632f13df9a08 Git commit 06effa5b965f68a24dcea8550efc86225b186f54 by GitHub (on behalf of mayanksolanki393) on 17/07/2026 at 10:37.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/06effa5b965f68a24dcea8550efc86225b186f54 Git commit afa73e4ff6db57b0416eb44127105b8092bd01f8 by GitHub (on behalf of Antonio Frighetto) on 17/07/2026 at 10:42.. [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. https://invent.kde.org/qt/clang/llvm-project/-/commit/afa73e4ff6db57b0416eb44127105b8092bd01f8 Git commit 2b2df2677619cb0377d27d8b766b8fc265749345 by GitHub (on behalf of Jacek Caban) on 17/07/2026 at 10:46.. Revert "[LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210080)" (#210299) This reverts commit a3bcc010c7b7d5fa43ab7928a88312841c4322dd, which breaks in asan build. https://invent.kde.org/qt/clang/llvm-project/-/commit/2b2df2677619cb0377d27d8b766b8fc265749345 Git commit 2a006dff821342c1726fd3137f804186851a26bb by GitHub (on behalf of Joel Walker) on 17/07/2026 at 10:49.. [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). https://invent.kde.org/qt/clang/llvm-project/-/commit/2a006dff821342c1726fd3137f804186851a26bb Git commit a4cad33430cf5d2d03eb91ce5e41ed1b9ef7cc4d by GitHub (on behalf of Joel Walker) on 17/07/2026 at 10:49.. [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). https://invent.kde.org/qt/clang/llvm-project/-/commit/a4cad33430cf5d2d03eb91ce5e41ed1b9ef7cc4d Git commit 671c0a275a1f304f22855fabb299090233fdbd54 by GitHub (on behalf of tyan0) on 17/07/2026 at 11:04.. [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 <[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/671c0a275a1f304f22855fabb299090233fdbd54 Git commit 8377d59dfade3f1a4bf5779ddd90359bd4ddc249 by GitHub (on behalf of Kseniya Tikhomirova) on 17/07/2026 at 11:07.. [libsycl] add explicit instantiations for event::get_profiling_info (#210118) Assisted by GH Copilot. Signed-off-by: Tikhomirova, Kseniya <[email protected]> https://invent.kde.org/qt/clang/llvm-project/-/commit/8377d59dfade3f1a4bf5779ddd90359bd4ddc249