[all-commits] [llvm/llvm-project] a1a559: [mlir][arith] add wide integer emulation support f...
Aiden Grossman via All-commits
all-commits at lists.llvm.org
Fri Mar 28 22:53:52 PDT 2025
Branch: refs/heads/users/boomanaiden154/main.ci-add-rich-build-information-for-github-workflows
Home: https://github.com/llvm/llvm-project
Commit: a1a5594ad2173be10e3e790fb1dce1a059d32e5b
https://github.com/llvm/llvm-project/commit/a1a5594ad2173be10e3e790fb1dce1a059d32e5b
Author: egebeysel <beyselege at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/test/Dialect/Arith/emulate-wide-int.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-subi-i32.mlir
Log Message:
-----------
[mlir][arith] add wide integer emulation support for subi (#133248)
Adds wide integer emulation support for the `arith.subi` op. `(i2N, i2N)
-> (i2N)` ops are emulated as `(vector<2xiN>, vector<2xiN>) ->
(vector<2xiN>)`, just as the other emulation patterns.
The emulation uses the following scheme:
```
resLow = lhsLow - rhsLow; // carry = 1 if rhsLow > lhsLow
resHigh = lhsLow - carry - rhsLow;
```
Signed-off-by: Ege Beysel <beysel at roofline.ai>
Commit: 7712de3062b979345fae0b9717796339a70c593b
https://github.com/llvm/llvm-project/commit/7712de3062b979345fae0b9717796339a70c593b
Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M compiler-rt/test/lit.common.cfg.py
Log Message:
-----------
[compiler-rt][tests][AIX] Use /opt/freeware/bin/env (#133160)
`env -u` is not supported by the system `env` utility on AIX.
`/opt/freeware/bin/env` is the standard path for the GNU coreutils `env`
utility as distributed by the AIX Toolbox for Open Source Software.
Adding `/opt/freeware/bin` to `PATH` causes issues by picking up other
utilities that are less capable, in an AIX context, than the system
ones.
This patch modifies the relevant usage of `env` to use (on AIX) the full
path to `/opt/freeware/bin/env`.
Commit: 8244f8210f2e62f68429a0daf104fd483ada45ab
https://github.com/llvm/llvm-project/commit/8244f8210f2e62f68429a0daf104fd483ada45ab
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
Log Message:
-----------
[lldb] Emit progress events in SymbolFileDWARFDebugMap (#133211)
Emit progress events from SymbolFileDWARFDebugMap. Because we know the
number of OSOs, we can show determinate progress. This is based on a
patch from Adrian, and part of what prompted me to look into improving
how LLDB shows progress events. Before the statusline, all these
progress events would get shadowed and never displayed on the command
line.
Commit: 0d4f12ee0046b83d28dbf3a8aca07a0f27b77786
https://github.com/llvm/llvm-project/commit/0d4f12ee0046b83d28dbf3a8aca07a0f27b77786
Author: Matthew Bastien <matthew_bastien at apple.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
A lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
M lldb/tools/lldb-dap/src-ts/extension.ts
A lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
A lldb/tools/lldb-dap/src-ts/ui/error-with-notification.ts
A lldb/tools/lldb-dap/src-ts/ui/show-error-message.ts
Log Message:
-----------
[lldb-dap] Allow providing debug adapter arguments in the extension (#129262)
Added a new setting called `lldb-dap.arguments` and a debug
configuration attribute called `debugAdapterArgs` that can be used to
set the arguments used to launch the debug adapter. Right now this is
mostly useful for debugging purposes to add the `--wait-for-debugger`
option to lldb-dap.
Additionally, the extension will now check for a changed lldb-dap
executable or arguments when launching a debug session in server mode. I
had to add a new `DebugConfigurationProvider` to do this because VSCode
will show an unhelpful error modal when the
`DebugAdapterDescriptorFactory` returns `undefined`.
In order to facilitate this, I had to add two new properties to the
launch configuration that are used by the
`DebugAdapterDescriptorFactory` to tell VS Code how to launch the debug
adapter:
- `debugAdapterHostname` - the hostname for an existing lldb-dap server
- `debugAdapterPort` - the port for an existing lldb-dap server
I've also removed the check for the `executable` argument in
`LLDBDapDescriptorFactory.createDebugAdapterDescriptor()`. This argument
is only set by VS Code when the debug adapter executable properties are
set in the `package.json`. The LLDB DAP extension does not currently do
this (and I don't think it ever will). So, this makes the debug adapter
descriptor factory a little easier to read.
The check for whether or not `lldb-dap` exists has been moved into the
new `DebugConfigurationProvider` as well. This way the extension won't
get in the user's way unless they actually try to start a debugging
session. The error will show up as a modal which will also make it more
obvious when something goes wrong, rather than popping up as a warning
at the bottom right of the screen.
Commit: 7c3ecffe9b23411463919742ad8399f6aa48af4b
https://github.com/llvm/llvm-project/commit/7c3ecffe9b23411463919742ad8399f6aa48af4b
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/test/Fir/CUDA/cuda-constructor.f90
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Dialect/LLVMIR/global.mlir
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Target/LLVMIR/Import/global-variables.ll
M mlir/test/Target/LLVMIR/Import/import-failure.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/test/mlir-runner/global-constructors.mlir
Log Message:
-----------
[MLIR][LLVMIR] Add support for the full form of global_{ctor,dtor} (#133176)
Currently only ctor/dtor list and their priorities are supported. This
PR adds support for the missing data field.
Few implementation notes:
- The assembly printer has a fixed form because previous `attr_dict`
will sort the dict by key name, making global_dtor and global_ctor
differ in the order of printed arguments.
- LLVM's `ptr null` is being converted to `#llvm.zero` otherwise we'd
have to create a region to use the default operation conversion from
`ptr null`, which is silly given that the field only support null or a
symbol.
Commit: 57e5b82e8cf4b892ce023c37c9f6053c15c582a5
https://github.com/llvm/llvm-project/commit/57e5b82e8cf4b892ce023c37c9f6053c15c582a5
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M lld/MachO/SyntheticSections.cpp
M lld/test/MachO/icf-safe-thunks-dwarf.ll
Log Message:
-----------
[lld-macho] Fix STABS entries for `--icf=safe_thunks` and `--keep-icf-stabs` (#133179)
When using the linker flags `--icf=safe_thunks` and `--keep-icf-stabs`
together, an issue arises with the STABS debugging entries in the linked
output. The problem affects STABS entries for functions that are folded
via ICF using thunks.
For instance, if `func1` is merged into `func2` through a thunk, the
STABS entry for `func1` incorrectly points to the object file of
`func2`. This is incorrect behavior—each function’s STABS entry should
consistently point to its own original object file (e.g., the STABS
entry for `func1` should reference `func1`’s object file). This issue
causes `dsymutil` to not be able to retrieve the debug information for
the problematic function.
This patch corrects this behavior - making it so that STABS entries
always point to the correct object file.
Commit: 5c26e80e57eba912cc7eb47b1a33afa46c1526e5
https://github.com/llvm/llvm-project/commit/5c26e80e57eba912cc7eb47b1a33afa46c1526e5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-op-cost.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-icmpcost.ll
M llvm/test/Transforms/LoopVectorize/X86/reduction-small-size.ll
Log Message:
-----------
[LV] Make cost model tests independent of VPValue numbers.
Update tests to not rely on hard-coded VPValue numbers.
Commit: 2a96beca9b502776d5e2a3be2da3f886135b056e
https://github.com/llvm/llvm-project/commit/2a96beca9b502776d5e2a3be2da3f886135b056e
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M lldb/source/Core/Debugger.cpp
Log Message:
-----------
[SBProgress][CLI] Configure sbprogress events to be emitted for the CLI (#133309)
In the original SBProgress patch, #123837, I didn't ensure the debugger
was broadcasting these events to the CLI as SBProgress has far been
focused on DAP. We had an internal ask to have SBProgress events
broadcasted to the CLI so this patch addresses that.
<img width="387" alt="image"
src="https://github.com/user-attachments/assets/5eb93a46-1db6-4d46-a6b7-2b2f9bbe71db"
/>
Commit: 1d9d4651df9490360a883f4479a90de5bcab0a71
https://github.com/llvm/llvm-project/commit/1d9d4651df9490360a883f4479a90de5bcab0a71
Author: Alexander Weinrauch <alexander.weinrauch at amd.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
Log Message:
-----------
[MLIR][ROCDL] Enable AliasAnalysis for GlobalLoadLds and LDS_Read_Tr (#133255)
Enables AliasAnalysis for `GlobalLoadLds` and `LDS_Read_Tr`. All other
memory related ROCDL Ops have this already enabled.
Commit: f2849fe05f03f06bef1384e7dbb9b6f296cf36ab
https://github.com/llvm/llvm-project/commit/f2849fe05f03f06bef1384e7dbb9b6f296cf36ab
Author: AdityaK <hiraditya at msn.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/test/Transforms/remove-dead-values.mlir
Log Message:
-----------
Fix RemoveDeadValues: Bail out early when there are no terminators (#133316)
Fixes: #131765
Commit: 10f983aebbb3a27c122b2a0f0ba9f2c809f1c8b9
https://github.com/llvm/llvm-project/commit/10f983aebbb3a27c122b2a0f0ba9f2c809f1c8b9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
Log Message:
-----------
[RISCV] Remove ParserMatchClass and DecoderMethod from an operand only used by pseudos. NFC
Commit: 52975d5c9fd524ab82dae16d8ef6890708c40fae
https://github.com/llvm/llvm-project/commit/52975d5c9fd524ab82dae16d8ef6890708c40fae
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
M mlir/test/Dialect/SCF/uplift-while.mlir
Log Message:
-----------
[mlir][scf] Allow different forwarding ordering in uplift
- Allow 'before' arguments are forwarded in different order to 'after'
body when uplifting `scf.while` to `scf.for`.
Commit: 01e505b9922485514d4e1f9a26c390d0e7a71bf4
https://github.com/llvm/llvm-project/commit/01e505b9922485514d4e1f9a26c390d0e7a71bf4
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
Log Message:
-----------
[clang-tidy][misc-const-correctness] fix fp when using const array type. (#133018)
Fixed: #132931
const array is immutable in C/C++ language design, we don't need to
check constness for it.
Commit: d8e44a9ab2901eee7cd0440b62722eb01cac94d7
https://github.com/llvm/llvm-project/commit/d8e44a9ab2901eee7cd0440b62722eb01cac94d7
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
A llvm/lib/Target/RISCV/RISCVLateBranchOpt.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/bfloat-br-fcmp.ll
M llvm/test/CodeGen/RISCV/branch_zero.ll
M llvm/test/CodeGen/RISCV/double-br-fcmp.ll
M llvm/test/CodeGen/RISCV/float-br-fcmp.ll
M llvm/test/CodeGen/RISCV/half-br-fcmp.ll
M llvm/test/CodeGen/RISCV/machine-sink-load-immediate.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/RISCV/simplify-condbr.ll
Log Message:
-----------
[RISCV] Add late optimization pass for riscv (#133256)
This patch is an alternative to PRs #117060, #131684, #131728.
The patch adds a late optimization pass that replaces conditional
branches that can be statically evaluated with an unconditinal branch.
Adding Michael as a co-author as most of the code that evaluates the
condition comes from #131684.
Co-authored-by: Michael Maitland michaeltmaitland at gmail.com
Commit: 50ea777e40dd0732fe08457d6326db538f0369b0
https://github.com/llvm/llvm-project/commit/50ea777e40dd0732fe08457d6326db538f0369b0
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/test/Other/time-passes.ll
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
[opt][timers] Fix time-passes.ll test failing on reversed iterators (#131941)
After https://github.com/llvm/llvm-project/pull/131217 was submitted,
time-passes.ll fails because `opt` prints `-time-report` when
`ManagedTimerGlobals` is destroyed. `ManagedTimerGlobals` stores
`TimerGroup`s in an unordered map, so the ordering of the output
`TimerGroup`s depends on the underlying iterator.
To fix this, we do what Clang does and use
`llvm::TimerGroup::printAll(...)`, which *is* deterministic. This is
also what Clang does. This does put move analysis section before the
pass section for `-time-report`, but again, this is also what Clang
currently does.
Commit: 5b7fd708fe792331baeade8b8d736c1d5310e0ee
https://github.com/llvm/llvm-project/commit/5b7fd708fe792331baeade8b8d736c1d5310e0ee
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/pr42905.ll
M llvm/test/CodeGen/X86/sad.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-fmin-fast.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-mul.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
Revert "[DAG] visitEXTRACT_SUBVECTOR - accumulate SimplifyDemandedVectorElts demanded elts across all EXTRACT_SUBVECTOR uses" (#133331)
Reverts llvm/llvm-project#133130
This touches a common file as #133083, which is causing failures
Commit: c10e26ba2eb307dcef95d91ea12aa13dc96e8d19
https://github.com/llvm/llvm-project/commit/c10e26ba2eb307dcef95d91ea12aa13dc96e8d19
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M lldb/source/Core/CoreProperties.td
Log Message:
-----------
[lldb] Improve default statusline colors to work with more color schemes (#133315)
Use the reverse video [1] font effect (`${ansi.negative}`) as the
default for the statusline. Inverting the foreground and background
color has a better change as looking reasonably good, compared to
picking an arbitrary color.
[1] https://en.wikipedia.org/wiki/Reverse_video
Commit: c676eb770a2608d9ace02a59d6d40844bce35de7
https://github.com/llvm/llvm-project/commit/c676eb770a2608d9ace02a59d6d40844bce35de7
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
Log Message:
-----------
[PreISelIntrinsicLowering][test] Add coverage for @llvm.experimental.memset.pattern with ptr pattern argument
These tests all show the desired output because after #132026, the
intrinsic can take any sized type as an argument. The tests were adapted
from those I proposed adding in #129220.
Commit: a285be320aadad51c431eed87cc2540951b3e4da
https://github.com/llvm/llvm-project/commit/a285be320aadad51c431eed87cc2540951b3e4da
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
Log Message:
-----------
[WebKit Checkers] Recognize Objective-C and CF pointer conversion functions. (#132784)
Recognize dynamic_objc_cast, checked_objc_cast, dynamic_cf_cast, and
checked_cf_cast.
Commit: a42342265f005bca6d4a22d464fa0e357104c7f6
https://github.com/llvm/llvm-project/commit/a42342265f005bca6d4a22d464fa0e357104c7f6
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
Log Message:
-----------
[gn build] Port d8e44a9ab290
Commit: a10a9134023539ee6ab3d166518487f40e368334
https://github.com/llvm/llvm-project/commit/a10a9134023539ee6ab3d166518487f40e368334
Author: Tom Stellard <tstellar at redhat.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/llvm-tests.yml
Log Message:
-----------
workflows: Add missing apt-get update to abi tests (#133264)
Commit: 864d4f940bdd3f5d1d45cdde573dd7fdc766e14e
https://github.com/llvm/llvm-project/commit/864d4f940bdd3f5d1d45cdde573dd7fdc766e14e
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
Log Message:
-----------
[AMDGPU] Trim traling blank in VOP3Instructions.td. NFC. (#133330)
Commit: e9dc0518c92ce0551f44b1b49722b4fb5f54ec4b
https://github.com/llvm/llvm-project/commit/e9dc0518c92ce0551f44b1b49722b4fb5f54ec4b
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
Revert "Fix gcc signed/unsigned comparison warning. NFC." (#133334)
This reverts commit 6c2171672f03356835c534a0ec18250233ea66db. It touches
a common file as #133083, which is causing failures
Commit: 5e1fba4243eea8f0166de20217416a12e26b45be
https://github.com/llvm/llvm-project/commit/5e1fba4243eea8f0166de20217416a12e26b45be
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
Log Message:
-----------
Revert "[X86] combineINSERT_SUBVECTOR - fold insert_subvector(base,extract_subvector(broadcast)) -> blend shuffle(base,broadcast)" (#133340)
Reverts llvm/llvm-project#133083
This causes BuildBot failures, and causes time outs in some of our internal tests (3 min => over 5 min).
Commit: fc33aa9684243dcce84b81f11c004061350b945a
https://github.com/llvm/llvm-project/commit/fc33aa9684243dcce84b81f11c004061350b945a
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/cmake/modules/CheckProblematicConfigurations.cmake
Log Message:
-----------
[llvm][cmake] Quote CMAKE_CXX_COMPILER_ID in string comparison (#133332)
We're seeing following configuration error when building the `runtimes`
target on our buildbots:
```
CMake Error at /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/llvm/cmake/modules/CheckProblematicConfigurations.cmake:14 (if):
if given arguments:
"STREQUAL" "MSVC"
Unknown arguments specified
Call Stack (most recent call first):
/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/llvm/cmake/modules/HandleLLVMOptions.cmake:10 (include)
CMakeLists.txt:175 (include)
```
If I understand correctly this happens because ${CMAKE_CXX_COMPILER_ID}
is empty. Quoting it should make the comparison work for those cases.
Commit: 2e3c31779018b9bea6abe262510b0bada148c1a5
https://github.com/llvm/llvm-project/commit/2e3c31779018b9bea6abe262510b0bada148c1a5
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
Log Message:
-----------
Fix the assertion failure in Analysis/Checkers/WebKit/forward-decl-checker.mm after https://github.com/llvm/llvm-project/pull/132784. (#133341)
Commit: 9cd88847b57a43c1f862e54abce445a2f2f8f46f
https://github.com/llvm/llvm-project/commit/9cd88847b57a43c1f862e54abce445a2f2f8f46f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZicbo.td
Log Message:
-----------
[RISCV] Remove unused MCOperandPredicate from simm12_lsb00000. NFC
I don't think the use of isBareSymbolRef() was correct since we
don't have any relocations associated with this instruction type.
Commit: d18faf646082b75634e0a2f616feba34fe29a378
https://github.com/llvm/llvm-project/commit/d18faf646082b75634e0a2f616feba34fe29a378
Author: AdityaK <hiraditya at msn.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/AsmParser/AttributeParser.cpp
Log Message:
-----------
[MLIR] NFC: Remove unused includes (#133327)
Commit: aa3149d204ed019c53eedd1bb00a315c0db41270
https://github.com/llvm/llvm-project/commit/aa3149d204ed019c53eedd1bb00a315c0db41270
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M compiler-rt/lib/msan/tests/msan_test.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
Log Message:
-----------
[sanitizer] intercept getservent_r, getservbyname_r, getservbyport_r (#133339)
Commit: f4e14e7cf37543e2b57b7b6422a0bd94c50e9040
https://github.com/llvm/llvm-project/commit/f4e14e7cf37543e2b57b7b6422a0bd94c50e9040
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Const correct reference argument to isElementRotate. NFC
Commit: d7c53a91c2c11439429bbd50bb1d0a202c553a47
https://github.com/llvm/llvm-project/commit/d7c53a91c2c11439429bbd50bb1d0a202c553a47
Author: Krzysztof Drewniak <krzysdrewniak at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/docs/DefiningDialects/Operations.md
M mlir/include/mlir/IR/EnumAttr.td
M mlir/include/mlir/TableGen/EnumInfo.h
M mlir/lib/TableGen/EnumInfo.cpp
M mlir/lib/TableGen/Pattern.cpp
M mlir/test/Dialect/LLVMIR/func.mlir
M mlir/test/IR/attribute.mlir
M mlir/test/lib/Dialect/Test/TestEnumDefs.td
M mlir/test/mlir-tblgen/enums-gen.td
M mlir/tools/mlir-tblgen/EnumPythonBindingGen.cpp
M mlir/tools/mlir-tblgen/EnumsGen.cpp
M mlir/tools/mlir-tblgen/OpDocGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
M mlir/utils/spirv/gen_spirv_dialect.py
Log Message:
-----------
[mlir] Decouple enum generation from attributes, adding EnumInfo and EnumCase (#132148)
This commit pulls apart the inherent attribute dependence of classes
like EnumAttrInfo and EnumAttrCase, factoring them out into simpler
EnumCase and EnumInfo variants. This allows specifying the cases of an
enum without needing to make the cases, or the EnumInfo itself, a
subclass of SignlessIntegerAttrBase.
The existing classes are retained as subclasses of the new ones, both
for backwards compatibility and to allow attribute-specific information.
In addition, the new BitEnum class changes its default printer/parser
behavior: cases when multiple keywords appear, like having both nuw and
nsw in overflow flags, will no longer be quoted by the operator<<, and
the FieldParser instance will now expect multiple keywords. All
instances of BitEnumAttr retain the old behavior.
Commit: 75ca080daba6585d0a6522187aab4bc781ba4103
https://github.com/llvm/llvm-project/commit/75ca080daba6585d0a6522187aab4bc781ba4103
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
A llvm/test/MC/Disassembler/RISCV/xqccmp-invalid-rlist.txt
M llvm/test/MC/RISCV/rv32xqccmp-invalid.s
M llvm/test/MC/RISCV/rv32xqccmp-valid.s
M llvm/test/MC/RISCV/rv64e-xqccmp-valid.s
M llvm/test/MC/RISCV/rv64xqccmp-valid.s
Log Message:
-----------
[RISCV][Xqccmp] Correctly Parse/Disassemble pushfp (#133188)
In the `qc.cm.pushfp` instruction, it is like `cm.pushfp` except in one
important way - `qc.cm.pushfp {ra}, -N*16` is not a valid encoding,
because this would update `s0`/`fp`/`x8` without saving it.
This change now correctly rejects this variant of the instruction, both
during parsing and during disassembly. I also implemented validation for
immediates that represent register lists (both kinds), which may help to
catch bugs in the future.
Commit: cd6e959102888279dc7e75a41ebd75a08ac3f7a5
https://github.com/llvm/llvm-project/commit/cd6e959102888279dc7e75a41ebd75a08ac3f7a5
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
Revert "[MC] Explicitly mark MCSymbol for MO_ExternalSymbol" (#133291)
Reverts llvm/llvm-project#108880 .
The patch has no regression test, no description of why the fix is
necessary, and the code is modifying MC datastructures in a way that's
forbidden in the AsmPrinter.
Fixes #132055.
Commit: 3a3732c2527056342051068c3dbaef4e822bd0a6
https://github.com/llvm/llvm-project/commit/3a3732c2527056342051068c3dbaef4e822bd0a6
Author: egebeysel <beysel at roofline.ai>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/test/Dialect/Arith/emulate-wide-int.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-fptosi-i64.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-fptoui-i64.mlir
Log Message:
-----------
[mlir][arith] wide integer emulation support for fpto*i ops (#132375)
Adding wide integer emulation support for `arith.fpto*i` operations. As
the other emulated operations, the upper and lower `N` bits of the `i2N`
integer result are emitted separately.
For the unsigned case we use the following emulation
```c
// example is 64 -> 32 bit emulation, but the implementation is generalized to any 2N -> N case
const double TWO_POW_N = (uint_64_t(1) << N); // 2^N, N is the bitwidth of the widest int supported
// f is a floating-point value representing the input of the fptoui op.
uint32_t hi = (uint32_t)(f / TWO_POW_N); // Truncates the division result
uint32_t lo = (uint32_t)(f - hi * TWO_POW_N); // Subtracts to get the lower bits.
```
For the signed case, we defer the emulation of the absolute value to
`fptoui` and handle the sign:
```
fptosi(fp) = sign(fp) * fptoui(abs(fp))
```
The edge cases of `NaNs, +-inf` and overflows/underflows are undefined
behaviour and the resulting numbers are the combination of the lower
bitwidth UB values. These operations also propagate poison values.
Signed-off-by: Ege Beysel <beysel at roofline.ai>
Commit: d443cd62d289d972c0245488920acba2b14f7cf9
https://github.com/llvm/llvm-project/commit/d443cd62d289d972c0245488920acba2b14f7cf9
Author: Hank Chang <hank.chang at sifive.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
Log Message:
-----------
[ASan] Move early exit checks outside "instrumentFunction()" to avoid… (#133285)
… unnecessary FunctionSanitizer construction (NFC)
This patch moves several early-exit checks (e.g., empty function, etc.)
out of `AddressSanitizer::instrumentFunction` and into the caller. This
change avoids unnecessary construction of FunctionSanitizer when
instrumentation is not needed.
Commit: 89cfeeb062577069d1da236d33810bb0416f1102
https://github.com/llvm/llvm-project/commit/89cfeeb062577069d1da236d33810bb0416f1102
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
Log Message:
-----------
[clang] fix structural comparison for dependent class member pointer (#133343)
Fixes a regression introduced in
https://github.com/llvm/llvm-project/pull/130537 and reported here
https://github.com/llvm/llvm-project/issues/133144
This fixes a crash in ASTStructuralEquivalence where the non-null
precondition for IsStructurallyEquivalent would be violated, when
comparing member pointers with a dependent class.
This also drive-by fixes the ast node traverser for member pointers so
it doesn't traverse into the qualifier in case it's not a type, or the
class declaration in case it would be equivalent to what the qualifier
refers.
This avoids printing of `<<<NULL>>>` on the text node dumper, which is
redundant.
No release notes since the regression was never released.
Fixes https://github.com/llvm/llvm-project/issues/133144
Commit: ebe1ece4bbfdcd29dd2b578f466998970f28a333
https://github.com/llvm/llvm-project/commit/ebe1ece4bbfdcd29dd2b578f466998970f28a333
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
A llvm/test/TableGen/CompressInstEmitter/suboperands.td
M llvm/utils/TableGen/CompressInstEmitter.cpp
Log Message:
-----------
[TableGen][RISCV] Support sub-operands in CompressInstEmitter.cpp. (#133039)
I'm looking into using sub-operands for memory operands. This would use
MIOperandInfo to create a single operand that contains a register and
immediate as sub-operands. We can treat this as a single operand for
parsing and matching in the assembler. I believe this will provide some
simplifications like removing the InstAliases we need to support "(rs1)"
without an immediate.
Doing this requires making CompressInstEmitter aware of sub-operands.
I've chosen to use a flat list of operands in the CompressPats so each
sub-operand is represented individually.
Commit: a6cb5cc0f0b6448e9b2d05017ea17fccf1eb1feb
https://github.com/llvm/llvm-project/commit/a6cb5cc0f0b6448e9b2d05017ea17fccf1eb1feb
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/lib/AsmParser/AttributeParser.cpp
M mlir/test/IR/invalid-builtin-attributes.mlir
Log Message:
-----------
[mlir] Add nullptr checks in SparseElementsAttr parser (#133222)
This PR adds nullptr checks in the SparseElementsAttr parser to improve
robustness and prevent crashes. Fixes #132891.
Commit: d131b78e060c709d41ba55572a5639f8e9f7ecc0
https://github.com/llvm/llvm-project/commit/d131b78e060c709d41ba55572a5639f8e9f7ecc0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/rvv/pr133217.ll
Log Message:
-----------
[RISCV] Disable i1 fixed vectors with more than 1024 elements. (#133267)
v2048i1 is an MVT, but v2048i8 is not so we don't support i8 vectors
with more than 1024 elements. Lowering a v2048i1 shufflevector would
requires promoting to v2048i8. Since v2048i8 isn't legal and isn't an
MVT this leads to a crash.
To fix the crash, this patch makes v2048i1 an illegal type.
Commit: 725a7b664b92cd2e884806de5a08900b43d43cce
https://github.com/llvm/llvm-project/commit/725a7b664b92cd2e884806de5a08900b43d43cce
Author: wanglei <wanglei at loongson.cn>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/MC/LoongArch/Relocations/relocations.s
Log Message:
-----------
[LoongArch] Pre-commit test for #133225
Reviewed By: SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/133224
Commit: 14c36db16fc090ef494ff6d8207562c414b40e30
https://github.com/llvm/llvm-project/commit/14c36db16fc090ef494ff6d8207562c414b40e30
Author: Lang Hames <lhames at apple.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/GetDylibInterface.cpp
A llvm/test/ExecutionEngine/JITLink/x86-64/Inputs/libFooUniversalDylib.yaml
A llvm/test/ExecutionEngine/JITLink/x86-64/MachO_foo-in-weak-dylib.s
Log Message:
-----------
[ORC] Generalize GetDylibInterface to support MachO Universal Binaries.
Also adds a testcase for dylib handling in llvm-jitlink`s -weak-lx and
-weak_library options.
Commit: f359c0bde52a06d841910aff0a61041c9b573763
https://github.com/llvm/llvm-project/commit/f359c0bde52a06d841910aff0a61041c9b573763
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-fptosi-i64.mlir
M mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-fptoui-i64.mlir
M mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-subi-i32.mlir
Log Message:
-----------
[mlir][arith] Trim trailing spaces in wide int emulation tests. NFC. (#133349)
Followup cleanup after https://github.com/llvm/llvm-project/pull/132375
and https://github.com/llvm/llvm-project/pull/133248
Commit: 52d7f14a895eb8669d72cd02754e5586de3e61d8
https://github.com/llvm/llvm-project/commit/52d7f14a895eb8669d72cd02754e5586de3e61d8
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M compiler-rt/lib/msan/tests/msan_test.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
Log Message:
-----------
Revert "[sanitizer] intercept getservent_r, getservbyname_r, getservbyport_r" (#133358)
Reverts llvm/llvm-project#133339
Commit: c8b69c90760072b2813a3465d70817470f63cd4a
https://github.com/llvm/llvm-project/commit/c8b69c90760072b2813a3465d70817470f63cd4a
Author: Jinjie Huang <huangjinjie at bytedance.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/IPO/SampleProfile.cpp
Log Message:
-----------
[NFC][SampleFDO] Clean the unneeded field and the related loop (#132376)
Clean the unneeded field 'TotalCollectedSamples' and the unnecessary
loop.
The field seems introduced in:https://reviews.llvm.org/D31952, and its
uses were removed in: https://reviews.llvm.org/D19287, but this field
and unnecessary calculation were not cleaned up.
This patch will remove these unneeded codes.
Commit: a1bb7507455ce407ebbb659ddf0d5ae4bb5c3869
https://github.com/llvm/llvm-project/commit/a1bb7507455ce407ebbb659ddf0d5ae4bb5c3869
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
Log Message:
-----------
[mlir] Use a range constructor of DenseSet (NFC) (#133355)
Commit: cb80b26e3731e7b10ff516d66761a3cfbc55bd20
https://github.com/llvm/llvm-project/commit/cb80b26e3731e7b10ff516d66761a3cfbc55bd20
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
M clang/lib/Basic/TargetID.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaObjCProperty.cpp
M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
Log Message:
-----------
[clang] Use *Set::insert_range (NFC) (#133357)
We can use *Set::insert_range to collapse:
for (auto Elem : Range)
Set.insert(E);
down to:
Set.insert_range(Range);
In some cases, we can further fold that into the set declaration.
Commit: d055e58334a91dcbaee22eb87bcdae85a1f33cd4
https://github.com/llvm/llvm-project/commit/d055e58334a91dcbaee22eb87bcdae85a1f33cd4
Author: wanglei <wanglei at loongson.cn>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchFloatInstrFormats.td
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/MC/LoongArch/Relocations/relocations.s
M llvm/test/MC/LoongArch/lasx/invalid-imm.s
M llvm/test/MC/LoongArch/lsx/invalid-imm.s
Log Message:
-----------
[LoongArch][MC] Add relocation support for fld fst [x]vld [x]vst
This also fixes errors when using Clang with step-by-step compilation.
Because the optimization will pass relocation information to memory
access instructions. For example:
t.c:
```
float f = 0.1;
float foo() { return f;}
```
```
clang --target=loongarch64 -O2 -c t.c --save-temps
```
Reviewed By: tangaac, SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/133225
Commit: c9197b27b484713c312c16cad12f9b518c1323c5
https://github.com/llvm/llvm-project/commit/c9197b27b484713c312c16cad12f9b518c1323c5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
Log Message:
-----------
[AMDGPU] Use MapVector instead of DenseMap (NFC) (#133356)
This patch combines:
DenseMap<MachineBasicBlock *, bool> ReachableMap;
SmallVector<MachineBasicBlock *, 4> ReachableOrdered;
into:
MapVector<MachineBasicBlock *, bool> ReachableMap;
because we add elements to the two data structures in lockstep, and we
care about preserving the insertion order.
As a side benefit, we get to avoid hash lookups at:
ReachableMap[MBB] = true;
Commit: 673f4705a827aba52b991d446a90a1c0ca5641a5
https://github.com/llvm/llvm-project/commit/673f4705a827aba52b991d446a90a1c0ca5641a5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/ProfileData/SampleProf.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlanSLP.h
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[llvm] Use *Set::insert_range (NFC) (#133353)
We can use *Set::insert_range to collapse:
for (auto Elem : Range)
Set.insert(E.first);
down to:
Set.insert_range(llvm::make_first_range(Range));
In some cases, we can further fold that into the set declaration.
Commit: 81c6ce3b33ff462a23744c82f493e1e1ea3844de
https://github.com/llvm/llvm-project/commit/81c6ce3b33ff462a23744c82f493e1e1ea3844de
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
Log Message:
-----------
[AMDGPU] Simplify VOP3_CVT_PK_F8_F32_Profile. NFC. (#133328)
Commit: 0ed4bdfe70d88e8b7aa70739ffcb655ad01226ef
https://github.com/llvm/llvm-project/commit/0ed4bdfe70d88e8b7aa70739ffcb655ad01226ef
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/test/MC/PowerPC/ppc64-fixups.s
Log Message:
-----------
PPCAsmParser: Detect multiple specifiers
In addition, simplify extractSpecifier and switch to the `Specifier`
naming convention.
Commit: 96e5ee23a76136851a52f48c780249e2a86a5ce9
https://github.com/llvm/llvm-project/commit/96e5ee23a76136851a52f48c780249e2a86a5ce9
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
A bolt/test/AArch64/lite-mode.s
Log Message:
-----------
[BOLT][AArch64] Add partial support for lite mode (#133014)
In lite mode, we only emit code for a subset of functions while
preserving the original code in .bolt.org.text. This requires updating
code references in non-emitted functions to ensure that:
* Non-optimized versions of the optimized code never execute.
* Function pointer comparison semantics is preserved.
On x86-64, we can update code references in-place using "pending
relocations" added in scanExternalRefs(). However, on AArch64, this is
not always possible due to address range limitations and linker address
"relaxation".
There are two types of code-to-code references: control transfer (e.g.,
calls and branches) and function pointer materialization.
AArch64-specific control transfer instructions are covered by #116964.
For function pointer materialization, simply changing the immediate
field of an instruction is not always sufficient. In some cases, we need
to modify a pair of instructions, such as undoing linker relaxation and
converting NOP+ADR into ADRP+ADD sequence.
To achieve this, we use the instruction patch mechanism instead of
pending relocations. Instruction patches are emitted via the regular MC
layer, just like regular functions. However, they have a fixed address
and do not have an associated symbol table entry. This allows us to make
more complex changes to the code, ensuring that function pointers are
correctly updated. Such mechanism should also be portable to RISC-V and
other architectures.
To summarize, for AArch64, we extend the scanExternalRefs() process to
undo linker relaxation and use instruction patches to partially
overwrite unoptimized code.
Commit: 4485e25dd2a57be1ee504b4dd863a1e140f5084c
https://github.com/llvm/llvm-project/commit/4485e25dd2a57be1ee504b4dd863a1e140f5084c
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_dense_map.h
Log Message:
-----------
[compiler-rt][nfc] DenseMap needs placement new (#133329)
Commit: 68571f91515b8467723322ece8da3ea2d00c7596
https://github.com/llvm/llvm-project/commit/68571f91515b8467723322ece8da3ea2d00c7596
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_dense_map.h
Log Message:
-----------
Revert "[compiler-rt][nfc] DenseMap needs placement new (#133329)"
This reverts commit 4485e25dd2a57be1ee504b4dd863a1e140f5084c.
Buildbot failures, e.g. https://lab.llvm.org/buildbot/#/builders/66/builds/11827
Commit: bed2bdf17b68b33dd1519a836ec2b77da8746053
https://github.com/llvm/llvm-project/commit/bed2bdf17b68b33dd1519a836ec2b77da8746053
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-03-27 (Thu, 27 Mar 2025)
Changed paths:
M compiler-rt/test/CMakeLists.txt
Log Message:
-----------
[NFCI] Change compiler_rt_Test_runtime to lowercase (#133362)
Commit: 0ed8b27890232738fa8e276d0fd2ac5c3c8e74ea
https://github.com/llvm/llvm-project/commit/0ed8b27890232738fa8e276d0fd2ac5c3c8e74ea
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/remove-attributes-convergent-uncontrolled.ll
A llvm/test/tools/llvm-reduce/remove-attributes-convergent.ll
M llvm/tools/llvm-reduce/deltas/ReduceAttributes.cpp
Log Message:
-----------
llvm-reduce: Avoid removing convergent with convergence tokens (#132946)
Check if the intrinsics are declared in the module as an overly
conservative fix.
Fixes #132695
Commit: 7eccafc3c84606587a175c0a8c1ebea6e4fb21cd
https://github.com/llvm/llvm-project/commit/7eccafc3c84606587a175c0a8c1ebea6e4fb21cd
Author: YunQiang Su <syq at debian.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsInstrInfo.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.h
Log Message:
-----------
MIPS: Implement isAsCheapAsAMove for addiu (#133273)
Set `addiu` as `isAsCheapAsAMove` only when the src register or imm is
zero only.
If other cases are set `isAsCheapAsAMove`, MachineLICM will reject to
hoist it.
Commit: a6e61ce2391f46cfe97de3a4986a5ed8fdb3b8db
https://github.com/llvm/llvm-project/commit/a6e61ce2391f46cfe97de3a4986a5ed8fdb3b8db
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Remove duplicate check in SelectAddrRegImmLsb00000. NFC (#133372)
Commit: 5b36835df010c5813808d34e45428c624fb52ff1
https://github.com/llvm/llvm-project/commit/5b36835df010c5813808d34e45428c624fb52ff1
Author: Jean-Didier PAILLEUX <jean-didier.pailleux at sipearl.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
A flang/test/Driver/m64-option.f90
Log Message:
-----------
[flang] Expose -m64 option (#132409)
Exposes `-m64` option for Flang.
These options can be used to build libraries or tools (e.g. OpenBlas).
Commit: e3f1c464f7283e79f566b33b87258ee55f77e139
https://github.com/llvm/llvm-project/commit/e3f1c464f7283e79f566b33b87258ee55f77e139
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lld/ELF/Driver.cpp
M lld/test/ELF/aarch64-feature-pac.s
Log Message:
-----------
[PAC][lld] Support `-z nopac-plt` flag (#132973)
Support `-z nopac-plt` so it's possible to cancel previous `-z pac-plt`.
Commit: 68f71aae3b4222afcd53cf0f84110032d1d34ec6
https://github.com/llvm/llvm-project/commit/68f71aae3b4222afcd53cf0f84110032d1d34ec6
Author: Letu Ren <fantasquex at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvmir] add llvm.sincos intrinsics (#133311)
https://llvm.org/docs/LangRef.html#llvm-frexp-intrinsic
Signed-off-by: Letu Ren <fantasquex at gmail.com>
Commit: 29cb00331f19dd2a93524fbd9f5367cb0d25fc72
https://github.com/llvm/llvm-project/commit/29cb00331f19dd2a93524fbd9f5367cb0d25fc72
Author: Letu Ren <fantasquex at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvmir] add llvm.experimental.constrained.uitofp intrinsics (#133300)
https://llvm.org/docs/LangRef.html#llvm-experimental-constrained-uitofp-intrinsic
Signed-off-by: Letu Ren <fantasquex at gmail.com>
Commit: f5f4da6db6904a88d23d4bacd01330a205683343
https://github.com/llvm/llvm-project/commit/f5f4da6db6904a88d23d4bacd01330a205683343
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/short-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
Log Message:
-----------
[RISCV] Don't vectorize for loops with small trip count (#132176)
Inspired by https://reviews.llvm.org/D130755.
I don't know the logic behind the value 5, it is copied from AArch64.
For some tests, I have to change the trip count so that we don't
break what they are testing.
Commit: 0a74cbfac462dfbf446e1f560e987619f93194ac
https://github.com/llvm/llvm-project/commit/0a74cbfac462dfbf446e1f560e987619f93194ac
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libclc/CMakeLists.txt
M libclc/cmake/modules/AddLibclc.cmake
Log Message:
-----------
[libclc] Pass -fapprox-func when compiling 'native' builtins (#133119)
The libclc build system isn't well set up to pass arbitrary options to
arbitrary source files in a non-intrusive way. There isn't currently any
other motivating example to warrant rewriting the build system just to
satisfy this requirement. So this commit uses a filename-based approach
to inserting this option into the list of compile flags.
Commit: b52977b868b02625ade1f14bfbe835e299b26f0e
https://github.com/llvm/llvm-project/commit/b52977b868b02625ade1f14bfbe835e299b26f0e
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A libclc/clc/include/clc/math/binary_decl_with_int_second_arg.inc
A libclc/clc/include/clc/math/binary_def_with_int_second_arg.inc
A libclc/clc/include/clc/math/clc_pow.h
A libclc/clc/include/clc/math/clc_pown.h
A libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/tables.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_pow.cl
A libclc/clc/lib/generic/math/clc_pow.inc
A libclc/clc/lib/generic/math/clc_pown.cl
A libclc/clc/lib/generic/math/clc_pown.inc
A libclc/clc/lib/generic/math/clc_powr.cl
A libclc/clc/lib/generic/math/clc_powr.inc
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clspv/lib/SOURCES
M libclc/generic/include/clc/math/pown.h
R libclc/generic/include/clc/math/pown.inc
R libclc/generic/include/math/clc_pow.h
R libclc/generic/include/math/clc_pown.h
R libclc/generic/include/math/clc_pown.inc
R libclc/generic/include/math/clc_powr.h
M libclc/generic/lib/SOURCES
M libclc/generic/lib/math/clc_exp10.cl
R libclc/generic/lib/math/clc_pow.cl
R libclc/generic/lib/math/clc_pown.cl
R libclc/generic/lib/math/clc_powr.cl
M libclc/generic/lib/math/clc_rootn.cl
M libclc/generic/lib/math/exp_helper.cl
M libclc/generic/lib/math/expm1.cl
M libclc/generic/lib/math/pow.cl
M libclc/generic/lib/math/pown.cl
R libclc/generic/lib/math/pown.inc
M libclc/generic/lib/math/powr.cl
M libclc/generic/lib/math/tables.cl
M libclc/spirv/lib/SOURCES
Log Message:
-----------
[libclc] Move pow, powr & pown to the CLC library (#133294)
These functions were already nominally in the CLC library.
Similar to others, these builtins are now vectorized and are not broken
down into scalar types.
Commit: 883612859bd255fc964c121ea6d3b1a9fb37fc65
https://github.com/llvm/llvm-project/commit/883612859bd255fc964c121ea6d3b1a9fb37fc65
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/docs/TableGen/ProgRef.rst
M llvm/include/llvm/TableGen/Record.h
M llvm/lib/TableGen/Record.cpp
M llvm/lib/TableGen/TGLexer.cpp
M llvm/lib/TableGen/TGLexer.h
M llvm/lib/TableGen/TGParser.cpp
A llvm/test/TableGen/instances.td
Log Message:
-----------
[TableGen] Add `!instances` operator to get defined records (#129680)
The format is: `!instances<T>([regex])`.
This operator produces a list of records whose type is `T`. If
`regex` is provided, only records whose name matches the regular
expression `regex` will be included. The format of `regex` is ERE
(Extended POSIX Regular Expressions).
Commit: 7b75db5755e63ddefa35101cf6a1179de560d312
https://github.com/llvm/llvm-project/commit/7b75db5755e63ddefa35101cf6a1179de560d312
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
Log Message:
-----------
[VPlan] Add new VPIRPhi overlay for VPIRInsts wrapping phi nodes (NFC). (#129387)
Add a new VPIRPhi subclass of VPIRInstruction, that purely serves as an
overlay, to provide more convenient checking (via directly doing
isa/dyn_cast/cast) and specialied execute/print implementations.
Both VPIRInstruction and VPIRPhi share the same VPDefID, and are
differentiated by the backing IR instruction.
This pattern could alos be used to provide more specialized interfaces
for some VPInstructions ocpodes, without introducing new, completely
spearate recipes. An example would be modeling VPWidenPHIRecipe &
VPScalarPHIRecip using VPInstructions opcodes and providing an interface
to retrieve incoming blocks and values through a VPInstruction subclass
similar to VPIRPhi.
PR: https://github.com/llvm/llvm-project/pull/129387
Commit: 1318a7bb098ff055533d7b3fe2f5d9201f3d79a6
https://github.com/llvm/llvm-project/commit/1318a7bb098ff055533d7b3fe2f5d9201f3d79a6
Author: Mallikarjuna Gouda <mgouda at mips.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A clang/test/CodeGen/Mips/subtarget-feature-test.c
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsSubtarget.h
Log Message:
-----------
Reland [MIPS] Define SubTargetFeature for i6500 cpu (#132907) (#133366)
Relands #132907 with a fix in the testcase:
clang/test/CodeGen/Mips/subtarget-feature-test.c
enable this test for only mips64 target
PR #130587 defined same SubTargetFeature for CPUs i6400 and i6500 which
resulted into following warning when -mcpu=i6500 was used:
+i6500' is not a recognized feature for this target (ignoring feature)
This PR fixes above issue by defining separate SubTargetFeature for
i6500.
Commit: 71f43a7c42a37d18be98b0885d62ef76e658f242
https://github.com/llvm/llvm-project/commit/71f43a7c42a37d18be98b0885d62ef76e658f242
Author: YunQiang Su <syq at debian.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/test/CodeGen/Mips/brdelayslot.ll
M llvm/test/Transforms/LoopStrengthReduce/Mips/long-array-initialize.ll
Log Message:
-----------
MIPS: Set EnableLoopTermFold (#133378)
Setting `EnableLoopTermFold` enables `loop-term-fold` pass.
Commit: 50d4ae4a62fb22e5e03a6150baaf80e4bb4f2d41
https://github.com/llvm/llvm-project/commit/50d4ae4a62fb22e5e03a6150baaf80e4bb4f2d41
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/test/Analysis/taint-generic.cpp
Log Message:
-----------
[analyzer] Fix format attribute handling in GenericTaintChecker (#132765)
Previously `optin.taint.GenericTaint` misinterpreted the parameter
indices and produced false positives in situations when a [format
attribute](https://clang.llvm.org/docs/AttributeReference.html#format)
is applied on a non-static method. This commit fixes this bug
Commit: c13c04fdfe9b312160310eeeee785867627ffe2f
https://github.com/llvm/llvm-project/commit/c13c04fdfe9b312160310eeeee785867627ffe2f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libcxx/include/__memory/allocator_traits.h
Log Message:
-----------
[libc++] Simplify the implementation of the pointer aliases in allocator_traits (#127079)
Commit: b82fd7110972c52cf4e58bf08b65bce7a91ecb0e
https://github.com/llvm/llvm-project/commit/b82fd7110972c52cf4e58bf08b65bce7a91ecb0e
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
Log Message:
-----------
[lldb] Adjust skips on reverse continue tests (#133240)
The x86-specific issue has been fixed with #132122. Watchpoint tests
fail on aarch64 with macos<15.0 due to a kernel bug.
Commit: 21a8c63cdc36abbf38b4402c9eb34a26598b8476
https://github.com/llvm/llvm-project/commit/21a8c63cdc36abbf38b4402c9eb34a26598b8476
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M offload/DeviceRTL/src/Workshare.cpp
A offload/test/offloading/fortran/target-teams-dist-nest-par.f90
Log Message:
-----------
[offload] Remove bad assert in StaticLoopChunker::Distribute (#132705)
When building with asserts enabled, this can actually cause strange
miscompilations because an incorrect llvm.assume is generated at the
point of the assertion.
Commit: 0d64f5adbaea173380668bc4280bb816bdb3a0de
https://github.com/llvm/llvm-project/commit/0d64f5adbaea173380668bc4280bb816bdb3a0de
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
Log Message:
-----------
[NFC] Fix a typo in StdLibraryFunctionsChecker.cpp comments (#133375)
Commit: f7a034d400860501a26e3429e1c6a9f310f07f76
https://github.com/llvm/llvm-project/commit/f7a034d400860501a26e3429e1c6a9f310f07f76
Author: Ana Mihajlovic <Ana.Mihajlovic at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SOPInstructions.td
A llvm/test/CodeGen/AMDGPU/nor-divergent-lanemask.ll
Log Message:
-----------
[AMDGPU] (x or y) xor -1 -> x nor y (#130264)
Added pattern so s_nor is selected for ((i1 x or i1 y) xor -1) instead
of s_or and s_xor . This patch is for i1 divergent. The ballot in the
test is added for the retrieval of lanemask. The control flow is needed
because the combiner can't pass through phi instructions.
Commit: 319045d8c42dc855eacdb4bd1d71b6ac3fca3257
https://github.com/llvm/llvm-project/commit/319045d8c42dc855eacdb4bd1d71b6ac3fca3257
Author: Balázs Benics <108414871+balazs-benics-sonarsource at users.noreply.github.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/test/Analysis/analyzer-stats/entry-point-stats.cpp
Log Message:
-----------
[analyzer] Add metrics tracking time spent in Z3 solver (#133236)
These metrics would turn out to be useful for verifying an upgrade of Z3.
Commit: 7d869045e068be152f4435d73733eb2276a6fc08
https://github.com/llvm/llvm-project/commit/7d869045e068be152f4435d73733eb2276a6fc08
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Log Message:
-----------
[AMDGPU] Hoist some constant stuff out of the loop in AMDGPUAsmParser.cpp. NFC. (#133398)
Commit: 8a3fe30a0a394ed3aa30ce4ba16e5a148a8bdd53
https://github.com/llvm/llvm-project/commit/8a3fe30a0a394ed3aa30ce4ba16e5a148a8bdd53
Author: Paul Schwabauer <pschwabauer at intevation.de>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/Modules/ComplexExplicitSpecifier.cpp
Log Message:
-----------
[PATCH] [clang][frontend] Fix serialization for CXXConstructorDecl (refs llvm#132794) (#133077)
When retrieving the ExplicitSpecifier from a CXXConstructorDecl, one of
its canonical declarations is returned. To correctly write the
declaration record the ExplicitSpecifier of the current declaration must
be used.
Failing to do so results in a crash during deserialization.
Commit: af150272cff97c121ed4fdb76fce702fbe2f12a3
https://github.com/llvm/llvm-project/commit/af150272cff97c121ed4fdb76fce702fbe2f12a3
Author: Weaver <Tom.Weaver at sony.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/test/CodeGen/Mips/brdelayslot.ll
M llvm/test/Transforms/LoopStrengthReduce/Mips/long-array-initialize.ll
Log Message:
-----------
Revert "MIPS: Set EnableLoopTermFold (#133378)"
This reverts commit 71f43a7c42a37d18be98b0885d62ef76e658f242.
Caused build bot failures:
https://lab.llvm.org/buildbot/#/builders/190/builds/17267
https://lab.llvm.org/buildbot/#/builders/144/builds/21445
https://lab.llvm.org/buildbot/#/builders/46/builds/14343
please consider fixing the test failure in long-array-initialize.ll before
recommitting.
Commit: b009c5af71a8676f1e6b4332f867957454635b2f
https://github.com/llvm/llvm-project/commit/b009c5af71a8676f1e6b4332f867957454635b2f
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/CodeGen/SPIRV/structurizer/cf.switch.ifstmt.simple2.ll
Log Message:
-----------
[SPIR-V] Mark XFAIL the test case that fails with LLVM_ENABLE_EXPENSIVE_CHECKS enabled (#133142)
After https://github.com/llvm/llvm-project/pull/130605
structurizer/cf.switch.ifstmt.simple2.ll test case starts failing with
the "PHI operand is not live-out from predecessor" diagnostic message.
This test case didn't include usual "-verify-machineinstrs" argument and
the fail was missed before
https://github.com/llvm/llvm-project/pull/130605 merging.
The problem looks not blocking, because the test case successfully
passes its CHECK's. This PR is to fix the build process by mark the test
case as XFAIL when LLVM_ENABLE_EXPENSIVE_CHECKS is enabled.
Investigation of the Machine Verifier complaint is to do. The issue is
created: https://github.com/llvm/llvm-project/issues/133141
Commit: 45c3fe8ff339843cdf0cfc8ccae91c0a4b7c09cd
https://github.com/llvm/llvm-project/commit/45c3fe8ff339843cdf0cfc8ccae91c0a4b7c09cd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vl.ll
Log Message:
-----------
[X86] Add test coverage for the concatable sources vpermv3 -> vpermv fold for non-constant shuffle masks (#133415)
Test both forward/reverse concat cases
Commit: 7f103ad537a64cd47dc49c661ad0245ea3ae2fdc
https://github.com/llvm/llvm-project/commit/7f103ad537a64cd47dc49c661ad0245ea3ae2fdc
Author: Dmitry Sidorov <dmitry.sidorov at intel.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
A llvm/test/CodeGen/SPIRV/structurizer/loop-unroll.ll
Log Message:
-----------
[SPIR-V] Add llvm.loop.unroll metadata lowering (#132062)
.enable lowers to Unroll LoopControl
.disable lowers to DontUnroll LoopControl
.count lowers to PartialCount LoopControl
.full lowers to Unroll LoopControl
TODO in future patches: enable structurizer for non-vulkan targets.
---------
Signed-off-by: Sidorov, Dmitry <dmitry.sidorov at intel.com>
Commit: f76254d9b2a68e0021d93e682744e4240a2368b9
https://github.com/llvm/llvm-project/commit/f76254d9b2a68e0021d93e682744e4240a2368b9
Author: Jesse D <jesse.a.deguire at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libc/src/__support/FPUtil/dyadic_float.h
Log Message:
-----------
[libc] Fix implicit conversion error in DyadicFloat::as_mantissa_type(). (#133383)
This is the same fix that was recently applied to
as_mantissa_type_rounded(), but for as_mantissa_type().
Commit: 4cdcf3b19302d8f337b5607d6b9df170f577dc70
https://github.com/llvm/llvm-project/commit/4cdcf3b19302d8f337b5607d6b9df170f577dc70
Author: Veera <32646674+veera-sivarajan at users.noreply.github.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
Log Message:
-----------
[InstCombine] Fold `(trunc nuw A to i1) == (trunc nuw B to i1)` to `A == B` (#133368)
Fixes #133344
Proof: https://alive2.llvm.org/ce/z/X3Uh23
InstCombine couldn't optimize `i1` because `canonicalizeICmpBool()` was
transforming the comparison into bitwise operations before
`foldICmpTruncWithTruncOrExt()` was called.
This PR solves the ordering issue by placing
`foldICmpTruncWithTruncOrExt()` before `canonicalizeICmpBool()`.
I believe this will not cause any regressions since all tests are
passing.
Commit: c4bc1b1d8177961c50c7a197bfb97b5226e749ff
https://github.com/llvm/llvm-project/commit/c4bc1b1d8177961c50c7a197bfb97b5226e749ff
Author: Nico Weber <thakis at chromium.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
A clang/test/Driver/arch-arm64e.c
Log Message:
-----------
[clang] Update Mach-O ptrauth driver defaults (#132834)
Xcode clang default-enables a bunch of ptrauth flags when targeting
arm64e. Let's match that.
Commit: 772173f54868eef6e1a4d40ab93b0ee6c04b1aca
https://github.com/llvm/llvm-project/commit/772173f54868eef6e1a4d40ab93b0ee6c04b1aca
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/test/CodeGen/amdgpu-abi-version.c
M clang/test/CodeGen/amdgpu-address-spaces.cpp
R clang/test/CodeGenCUDA/amdgpu-code-object-version-linking.cu
M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
M flang/lib/Frontend/FrontendActions.cpp
R flang/test/Lower/AMD/code-object-version.f90
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libcxx/cmake/caches/AMDGPU.cmake
M offload/DeviceRTL/CMakeLists.txt
Log Message:
-----------
[Clang][AMDGPU] Remove special handling for COV4 libraries (#132870)
Summary:
When we were first porting to COV5, this lead to some ABI issues due to
a change in how we looked up the work group size. Bitcode libraries
relied on the builtins to emit code, but this was changed between
versions. This prevented the bitcode libraries, like OpenMP or libc,
from being used for both COV4 and COV5. The solution was to have this
'none' functionality which effectively emitted code that branched off of
a global to resolve to either version.
This isn't a great solution because it forced every TU to have this
variable in it. The patch in
https://github.com/llvm/llvm-project/pull/131033 removed support for
COV4 from OpenMP, which was the only consumer of this functionality.
Other users like HIP and OpenCL did not use this because they linked the
ROCm Device Library directly which has its own handling (The name was
borrowed from it after all).
So, now that we don't need to worry about backward compatibility with
COV4, we can remove this special handling. Users can still emit COV4
code, this simply removes the special handling used to make the OpenMP
device runtime bitcode version agnostic.
Commit: 212a48b4daf3101871ba6e7c47cf103df66a5e56
https://github.com/llvm/llvm-project/commit/212a48b4daf3101871ba6e7c47cf103df66a5e56
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/CodeGen/X86/combine-bitselect.ll
Log Message:
-----------
[X86] combine-bitselect.ll - regenerate VPTERNLOG comments
Commit: a481452cd88acc180f82dd5631257c8954ed7812
https://github.com/llvm/llvm-project/commit/a481452cd88acc180f82dd5631257c8954ed7812
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
Log Message:
-----------
[RISCV] Add OR/XOR/SUB to RISCVInstrInfo::isCopyInstrImpl (#132002)
This adds coverage for additional instructions in isCopyInstrImpl, for
now picking just those where I can observe that there is a codegen
difference for SPEC.
This allows MachineCopyPropagation to successfully eliminate no-op moves in this form.
Commit: 33cd00f8c82d5df45b1dfd59310929a4d315fd8e
https://github.com/llvm/llvm-project/commit/33cd00f8c82d5df45b1dfd59310929a4d315fd8e
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M flang/include/flang/Evaluate/traverse.h
Log Message:
-----------
[flang] Use more generic overload for Operation in Traverse (#133305)
Currently there are two specific overloads: for unary operations, i.e.
`Operation<D, R, O>`, and binary ones `Operation<D, R, LO, RO>`.
This makes it impossible for a derived class to use a single overload to
handle all types of operations: `Operation<D, R, O...>`. Since the base
overloads need to be included in the derived class's scope, via `using
Base::operator()` either one of the specific overloads will always be a
better candidate than the more generic derived one.
```
class MyVisitor : public Traverse<...> {
using Traverse<...>::operator();
template <typename D, typename R, typename... O>
Result operator()(const Operation<D, R, O...> &op) const {
// Will never be used.
}
};
```
This patch replaces the two specific overloads for Operation in Traverse
with a single generic overload, while preserving the existing
functionality, and allowing derived classes to use a single overload as
well.
Commit: 4abff4d7b2b49f343da68f32ffdae2914ba8ae7f
https://github.com/llvm/llvm-project/commit/4abff4d7b2b49f343da68f32ffdae2914ba8ae7f
Author: Matthias Springer <me at m-sp.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[mlir][Transforms] Improve `replaceOpWithMultiple` API (#132608)
This commit adds an additional overload to `replaceOpWithMultiple` that
accepts additional container types. This has been brought up by users of
the new `replaceOpWithMultiple` API.
In particular, one missing container type was
`SmallVector<SmallVector<Value>>`. The "default" `ArrayRef<ValueRange>`
container type can lead to use-after-scope errors in cases such as:
```c++
// Compute the replacement value ranges. Some replacements are single
// values, some are value ranges.
SmallVector<ValueRange> repl;
repl.push_back(someValueRange); // OK
for (...) {
// push_back(Value) triggers an implicit conversion to ValueRange,
// which does not own the range.
repl.push_back(someValue); // triggers use-after-scope later
}
rewriter.replaceOpWithMultiple(op, repl);
```
In this example, users should use `SmallVector<SmallVector<Value>>
repl;`.
Commit: 316bb89c942c1a1cf61d3e673030f82d6f0b8acf
https://github.com/llvm/llvm-project/commit/316bb89c942c1a1cf61d3e673030f82d6f0b8acf
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Driver/ToolChain.h
M clang/lib/Driver/ToolChain.cpp
A clang/test/Driver/Inputs/resource_dir/lib/aix/libclang_rt.builtins-powerpc.a
A clang/test/Driver/Inputs/resource_dir/lib/aix/libclang_rt.builtins-powerpc64.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc-ibm-aix/libclang_rt.builtins.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64-ibm-aix/libclang_rt.builtins.a
M clang/test/Driver/aix-ld.c
M clang/test/Driver/aix-print-runtime-dir.c
M clang/test/Driver/aix-rtlib.c
Log Message:
-----------
[Driver] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON on AIX. (#132821)
In the wake of discussion in PR #131200 and internal discussion after,
we will add support for `LLVM_ENABLE_PER_TARGET_RUNTIME=ON` for AIX
instead of disable it. I already reverted the change in PR #131200.
The default value of the option is still OFF on AIX.
Commit: ecdbd26ba4b6017200b7773d41a270aa1fa2bd71
https://github.com/llvm/llvm-project/commit/ecdbd26ba4b6017200b7773d41a270aa1fa2bd71
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/bugprone/argument-comment.rst
Log Message:
-----------
[clang-tidy][NFC] improve documentation for `bugprone-argument-comment` check (#133436)
Improve docs for `bugprone-argument-comment` check by writing explicitly
default values for options.
Before this change, it was unclear what values are default.
Commit: d6dcd985c03bec4b77872be00a81d92454fedc32
https://github.com/llvm/llvm-project/commit/d6dcd985c03bec4b77872be00a81d92454fedc32
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-var.cpp
Log Message:
-----------
[clang-tidy] Fix `thread_local` false positives in `misc-use-internal-linkage` check (#132573)
Based on C++ standard (see issue
https://github.com/llvm/llvm-project/issues/131679) and
[StackOverflow](https://stackoverflow.com/questions/22794382/are-c11-thread-local-variables-automatically-static)
`thread_local` variables are implicitly `static` so we should not
suggest adding `static` on a `thread_local` variables. I'd appreciate if
someone else will confirm this too because reading standard is tricky.
However, many people still use `static` and `thread_local` together:
[github
code-search](https://github.com/search?type=code&q=%22static+thread_local%22+language%3AC%2B%2B).
Maybe disabling warnings on `thread_local` should be made as a flag?
WDYT?
Closes https://github.com/llvm/llvm-project/issues/131679.
Commit: 53b48301eb3bb4aba63678e9b5eb7cbea7745e34
https://github.com/llvm/llvm-project/commit/53b48301eb3bb4aba63678e9b5eb7cbea7745e34
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/include/llvm/Support/AMDGPUAddrSpace.h
M llvm/lib/Target/AMDGPU/AMDGPU.h
Log Message:
-----------
[AMDGPU] Tweak address space definitions. NFC. (#133442)
Define address spaces in numerical order. Fix comments to refer to
"local" instead of "group" address space.
Commit: 579379cf7f650a3fd5a039ea5c2480d69acc3878
https://github.com/llvm/llvm-project/commit/579379cf7f650a3fd5a039ea5c2480d69acc3878
Author: Andras Gemes <gemesandras22 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/docs/Security.rst
Log Message:
-----------
[Nomination] Add HighTec representatives to the Security Group (#124142)
I would like to nominate Mario Cupelli (@mariocup) and myself to join
the LLVM Security Group as representatives (vendor contacts) of [HighTec
EDV Systeme](https://github.com/hightec-rt).
Mario is the CTO of HighTec and has a strong background in compiler
safety qualification. I am a SW engineer with a focus on cybersecurity
and a goal to contribute to the LLVM Security Group.
HighTec collaborates with major silicon vendors and offers
safety-qualified C/C++ and Rust compilers based on LLVM. Our active
contributions to LLVM include work on the linker and various patches and
we are committed to further improving LLVM’s security.
Our motivation for joining the LLVM Security Group is to collaborate
with LLVM security experts, stay informed about the latest CVEs in LLVM
and meet the cybersecurity requirements of the automotive industry.
Commit: b6569cce4090ea12493ab2c948ea79c6a1a1983d
https://github.com/llvm/llvm-project/commit/b6569cce4090ea12493ab2c948ea79c6a1a1983d
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/test/CodeGen/RISCV/early-clobber-tied-def-subreg-liveness.ll
M llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/zvlsseg-spill.mir
Log Message:
-----------
[RISCV] Refine location size for segment spill and fill (#133268)
This is a follow up to #133171. I realized we could assume the structure
of the previous MMO, and thus the split is much simpler than I'd
initially pictured.
Commit: 427725508b084c7aa595312967d74d8888b168b6
https://github.com/llvm/llvm-project/commit/427725508b084c7aa595312967d74d8888b168b6
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M bolt/include/bolt/Core/Relocation.h
Log Message:
-----------
[BOLT] Add getter for optional relocations (#133085)
Minor refactoring on comments.
Commit: 48b753027382a5815295d6680c7dd407be936c86
https://github.com/llvm/llvm-project/commit/48b753027382a5815295d6680c7dd407be936c86
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.h
M clang/lib/AST/Decl.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/test/Lower/OpenMP/omp-is-gpu.f90
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
Log Message:
-----------
[clang][flang][Triple][llvm] Add isOffload function to LangOpts and isGPU function to Triple (#126956)
I'm adding support for SPIR-V, so let's consolidate these checks.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 1f90a88b80998e595a3a11a7d13c333dbfa8777a
https://github.com/llvm/llvm-project/commit/1f90a88b80998e595a3a11a7d13c333dbfa8777a
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libcxx/utils/ci/run-buildbot
Log Message:
-----------
[libcxx] Remove clang-18 workaround in picolib build (#133254)
clang-19 changed how Arm triples were normalised and so while we
supported 18 and 19, we could not hard code the path here.
Now that Linaro's bots are running clang-19, and libcxx is going to drop
clang-18 support (https://github.com/llvm/llvm-project/pull/130142) I
have simplified it by hard coding the path again.
I also looked into why this exists in the first place. It was added in
https://reviews.llvm.org/D154246 but not questioned at the time.
It is due to the way we build compiler-rt, which is due to the final
layout we need in the install:
1. The builtins library must be called libclang_rt.builtins.a for clang
to find it. There must not be an architecture name in the filename.
2. That builtins library must be directly in lib/, next to picolib's
installed files.
To achieve number 1 we must set LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON.
However, that causes the file to be installed in a per-target dir which
breaks number 2. So to fix that, we move the builtins library up one
level into lib/.
The alternative is to turn off per-target dirs, which results in a
builtin file with an arch in the name, then rename and move that file
(since it gets installed into lib/generic/).
So in the end, it's the same amount of hacks. I think it's best to keep
the one that uses LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON, as this is the
recommended way to built these days.
Commit: db04c3e4b3d9b79d99c5bbeb7fffaa887cd4352e
https://github.com/llvm/llvm-project/commit/db04c3e4b3d9b79d99c5bbeb7fffaa887cd4352e
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Serialization/ASTDeserializationListener.h
M clang/lib/Frontend/FrontendAction.cpp
Log Message:
-----------
[clang] Implement some missing interfaces for DelegatingDeserializationListener (#133424)
Split from the https://github.com/llvm/llvm-project/pull/133395 per the
review comment.
This patch also moves the `DelegatingDeserializationListener` close to
`ASTDeserializationListener`.
Commit: bf5627c85e6975a73bf582cf0d23a993673413d0
https://github.com/llvm/llvm-project/commit/bf5627c85e6975a73bf582cf0d23a993673413d0
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
A llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
Log Message:
-----------
[LV] Optimize VPWidenIntOrFpInductionRecipe for known TC (#118828)
Optimize the IR generated for a VPWidenIntOrFpInductionRecipe to use the
narrowest type necessary, when the trip-count of a loop is known to be
constant and the only use of the recipe is the condition used by the
vector loop's backedge branch.
Commit: 9ce77255b9a48b024e434e5c4017da07fc44bbe1
https://github.com/llvm/llvm-project/commit/9ce77255b9a48b024e434e5c4017da07fc44bbe1
Author: Cassandra Beckley <cbeckley at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Basic/Targets/SPIR.cpp
M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
Log Message:
-----------
[HLSL] Add __spirv__ macro (#132848)
This macro can be used by HLSL code to detect that it is being compiled
for the SPIR-V target.
Commit: 43829039c9b00a56847027801ab420cff2031143
https://github.com/llvm/llvm-project/commit/43829039c9b00a56847027801ab420cff2031143
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Format/MacroCallReconstructor.cpp
Log Message:
-----------
[Format] Use a range constructor of DenseSet (NFC) (#133382)
Commit: 0ae9c65d4a1c8d1e620a2843f22e77f05fcf202f
https://github.com/llvm/llvm-project/commit/0ae9c65d4a1c8d1e620a2843f22e77f05fcf202f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/tools/bugpoint/CrashDebugger.cpp
M llvm/tools/llvm-lto/llvm-lto.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[tools] Use *Set::insert_range (NFC) (#133384)
We can use *Set::insert_range to replace "for" loop-based insertions.
In some cases, we can further fold insert_range into the set
declaration.
Commit: 460d628d9006f63af3d296a90c32a60a347dbc2c
https://github.com/llvm/llvm-project/commit/460d628d9006f63af3d296a90c32a60a347dbc2c
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/lib/Transforms/Scalar/GVN.cpp
Log Message:
-----------
[GVN] Clean up unused argument, unify style, modernize syntax (NFC)
Finalize code style overhaul in GVN, following up to
2a0946bc0dffca89d16cd9d5208ec9416ed8100e and 9deed7d2ef3a147c4e8410910967fde601359039.
Commit: 2218587b5b131bb8ed57c3e6c7a5c0c589493300
https://github.com/llvm/llvm-project/commit/2218587b5b131bb8ed57c3e6c7a5c0c589493300
Author: YunQiang Su <syq at debian.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsISelLowering.h
Log Message:
-----------
MIPS: Support isLegalICmpImmediate and isLegalAddImmediate (#133400)
Set it to true only if isInt<16>.
By default implemention defines them to true always. For most cases,
MIPS uses 16bit IMM, and for microMIPS, ICMP and ADDiu have 16bit IMM
flavors.
Commit: fe30cf18ab3eb1aba5ea7e44574e27fdde791c1d
https://github.com/llvm/llvm-project/commit/fe30cf18ab3eb1aba5ea7e44574e27fdde791c1d
Author: swatheesh-mcw <swatheesh.muralidharan at multicorewareinc.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/openmp-modifiers.cpp
A flang/test/Lower/OpenMP/Todo/interop-construct.f90
A flang/test/Parser/OpenMP/interop-construct.f90
A flang/test/Semantics/OpenMP/interop-construct.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
Revert "Revert "[flang][openmp] Adds Parser and Semantic Support for Interop Construct, and Init and Use Clauses."" (#132343)
Reverts llvm/llvm-project#132005
Commit: 22138720020dd8dfd30dbd220c49d6585126d2f7
https://github.com/llvm/llvm-project/commit/22138720020dd8dfd30dbd220c49d6585126d2f7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/tools/llvm-reduce/deltas/ReduceOperandsSkip.cpp
Log Message:
-----------
llvm-reduce: Use isCallee helper (#133419)
Commit: 8ea3f818dea7d1104429040486614c96e0698901
https://github.com/llvm/llvm-project/commit/8ea3f818dea7d1104429040486614c96e0698901
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
Log Message:
-----------
[lldb][test] TestCCallingConventions.py: skip on older AArch64 compilers
With our Clang-15 arm64 CI this test-case crashes when compiling the test program:
```
user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/c/calling-conventions/ms_abi.c
Unexpected callee-save save/restore opcode!
UNREACHABLE executed at /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/clang_1501/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1129!
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/clang_1501_build/bin/clang -g -O0 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -arch arm64 -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/packages/Python/lldbsuite/test/make/../../../../..//include -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/lldb-build/tools/lldb/include -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/c/calling-conventions -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/packages/Python/lldbsuite/test/make -include /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/packages/Python/lldbsuite/test/make/test_common.h -fno-limit-debug-info -Werror=ignored-attributes -MT ms_abi.o -MD -MP -MF ms_abi.d -c -o ms_abi.o /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/c/calling-conventions/ms_abi.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module '/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/c/calling-conventions/ms_abi.c'.
4. Running pass 'Prologue/Epilogue Insertion & Frame Finalization' on function '@func'
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0 clang-15 0x0000000105d512b0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1 clang-15 0x0000000105d500e4 llvm::sys::RunSignalHandlers() + 112
2 clang-15 0x0000000105d507c4 llvm::sys::CleanupOnSignal(unsigned long) + 232
3 clang-15 0x0000000105c79d78 (anonymous namespace)::CrashRecoveryContextImpl::HandleCrash(int, unsigned long) + 128
4 clang-15 0x0000000105c79f94 CrashRecoverySignalHandler(int) + 124
5 libsystem_platform.dylib 0x0000000185ecba24 _sigtramp + 56
6 libsystem_pthread.dylib 0x0000000185e9ccc0 pthread_kill + 288
7 libsystem_c.dylib 0x0000000185daca40 abort + 180
8 clang-15 0x0000000105c88508 llvm::install_out_of_memory_new_handler() + 0
9 clang-15 0x0000000104af7404 fixupCalleeSaveRestoreStackOffset(llvm::MachineInstr&, unsigned long long, bool, bool*) + 0
10 clang-15 0x0000000104af53e0 llvm::AArch64FrameLowering::emitPrologue(llvm::MachineFunction&, llvm::MachineBasicBlock&) const + 3564
```
Commit: 71a977d0d611f3e9f6137a6b8a26b730b2886ce9
https://github.com/llvm/llvm-project/commit/71a977d0d611f3e9f6137a6b8a26b730b2886ce9
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
Log Message:
-----------
[RISCV] Add shift-add (SH1ADD, ...) to isCopyInstrImpl (#133443)
As with #132002, these do show up in a compilation of llvm-test-suite
(including SPEC 2017). We remove 30-40 static instances so this isn't
anything earth shattering.
rs2 is always added to the other shifted (and potentially extended)
operand unmodified, so rs1==zero is equivalent to a copy.
Commit: a983c3b209bf6602c0687251647535c7fa43a17a
https://github.com/llvm/llvm-project/commit/a983c3b209bf6602c0687251647535c7fa43a17a
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[TableGen] Make more use of CodeGenRegisterClass::EnumValue. NFC. (#132749)
Commit: f7f479b2a3ac4c242339896fe1012342dc1e56fc
https://github.com/llvm/llvm-project/commit/f7f479b2a3ac4c242339896fe1012342dc1e56fc
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
Log Message:
-----------
[RISCV] Use templates to reduce duplicated code for assembler operand predicates. (#133351)
We already had a template isUImm function. This patch adds isSImm,
isShiftedUImm, and 2 helpers that take a predicate function to validate
the immediate with. I'm using a template for the predicate function.
Commit: a33d789bb70e8b19840cacfc1980da883ae01ebd
https://github.com/llvm/llvm-project/commit/a33d789bb70e8b19840cacfc1980da883ae01ebd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/reduce-arguments-x86_intrcc.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Avoid invalid reductions on x86_intrcc (#133396)
If there are arguments, the first one must be byval.
Commit: 6526cda5d865d55b1db5aa0faffb29448e5c6a23
https://github.com/llvm/llvm-project/commit/6526cda5d865d55b1db5aa0faffb29448e5c6a23
Author: John Harrison <harjohn at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
Log Message:
-----------
[lldb-dap] Migrating DAP 'initialize' to new typed RequestHandler. (#133007)
This adds new types and helpers to support the 'initialize' request with
the new typed RequestHandler. While working on this I found there were a
few cases where we incorrectly treated initialize arguments as
capabilities. The new `lldb_dap::protocol::InitializeRequestArguments`
and `lldb_dap::protocol::Capabilities` uncovered the inconsistencies.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 4abe47c6fc06e44792bc1b0dc58f3b453ae4fb80
https://github.com/llvm/llvm-project/commit/4abe47c6fc06e44792bc1b0dc58f3b453ae4fb80
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/mktime_test.cpp
Log Message:
-----------
[libc] Enable 'mktime' for the GPU (#133437)
Summary:
This is a dependency on `strftime` which we provide, so we should have
this.
Commit: ea8573aca5bf5a629bfb01113d74b36efd5c2a51
https://github.com/llvm/llvm-project/commit/ea8573aca5bf5a629bfb01113d74b36efd5c2a51
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb] Add statusline to the release notes (#133281)
Add a release note for the LLDB statusline: #121860
Commit: 1b86867ab3ccf731863043718d53700535e0fb21
https://github.com/llvm/llvm-project/commit/1b86867ab3ccf731863043718d53700535e0fb21
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/tools/llvm-reduce/reduce-arguments-x86_intrcc.ll
A llvm/test/tools/llvm-reduce/remove-argument-preserve-attributes.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Fix losing callsite attributes when removing arguments (#133407)
The attribute APIs make this cumbersome. There seem to be missing
overloads using AttrBuilder for the function attrs. Plus there doesn't
seem to be a direct way to set the function attrs on the call.
Commit: 688df34634a5e3d9423060442a47a01b185ef4e1
https://github.com/llvm/llvm-project/commit/688df34634a5e3d9423060442a47a01b185ef4e1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/remove-arguments-preserve-fmf.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Fix losing fast math flags when removing arguments (#133408)
Commit: 115a77df9d8475bc62bc22fe52d0d1c62d8111e5
https://github.com/llvm/llvm-project/commit/115a77df9d8475bc62bc22fe52d0d1c62d8111e5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/tools/llvm-reduce/remove-arguments-preserve-fmf.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Fix losing metadata when removing arguments (#133409)
Commit: 277ab85d1ccf80750f5193495c0665808c2863de
https://github.com/llvm/llvm-project/commit/277ab85d1ccf80750f5193495c0665808c2863de
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Lex/Preprocessor.h
M clang/lib/Lex/Preprocessor.cpp
Log Message:
-----------
[clang] Make `PreprocessorOptions` reference const
Commit: 6b1acdb818dd158619c71546af1bf5e134cd7e03
https://github.com/llvm/llvm-project/commit/6b1acdb818dd158619c71546af1bf5e134cd7e03
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/remove-arguments-preserve-bundles.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Fix losing operand bundles when removing arguments (#133410)
Commit: 827f2ad64394bdcafabc58133c4b8258f728763c
https://github.com/llvm/llvm-project/commit/827f2ad64394bdcafabc58133c4b8258f728763c
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/shl64_reduce.ll
Log Message:
-----------
AMDGPU: Convert vector 64-bit shl to 32-bit if shift amt >= 32 (#132964)
Convert vector 64-bit shl to 32-bit if shift amt is known to be >= 32.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: 44e3735ac18407f23a4e1fea29192449dbe3d4de
https://github.com/llvm/llvm-project/commit/44e3735ac18407f23a4e1fea29192449dbe3d4de
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/remove-arguments-preserve-wrong-cc.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Preserve original callsite calling conv when removing arguments (#133411)
In undefined mismatch cases, this was fixing the callsite to use the calling
convention of the new function. Preserve the original wrong callsite's calling
convention.
Commit: 133c1afa8e54d4e9599cb0d8aad843c03f0e63b9
https://github.com/llvm/llvm-project/commit/133c1afa8e54d4e9599cb0d8aad843c03f0e63b9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/reduce-arguments-invoke.ll
A llvm/test/tools/llvm-reduce/reduce-arguments-non-callee-use.ll
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
Log Message:
-----------
llvm-reduce: Filter function based on uses before removing arguments (#133412)
Invokes and others are not handled, so this was leaving broken callsites
behind for anything other than CallInst
Commit: 049f179606a4af3ea650d7049626d267e01b79e2
https://github.com/llvm/llvm-project/commit/049f179606a4af3ea650d7049626d267e01b79e2
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
A llvm/include/llvm/Support/KnownFPClass.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Support/CMakeLists.txt
A llvm/lib/Support/KnownFPClass.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
Log Message:
-----------
[Analysis][NFC] Extract KnownFPClass (#133457)
- extract KnownFPClass for future use inside of GISelKnownBits
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 8c7550132f410766598ba88de6b7e7a2a4607f67
https://github.com/llvm/llvm-project/commit/8c7550132f410766598ba88de6b7e7a2a4607f67
Author: Ana Mihajlovic <Ana.Mihajlovic at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/addsubu64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.global.atomic.csub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.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/bf16.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/cgp-addressing-modes-flat.ll
M llvm/test/CodeGen/AMDGPU/div-rem-by-constant-64.ll
M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AMDGPU/gfx10-vop-literal.ll
M llvm/test/CodeGen/AMDGPU/gfx12_scalar_subword_loads.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/load-constant-always-uniform.ll
M llvm/test/CodeGen/AMDGPU/lrint.ll
M llvm/test/CodeGen/AMDGPU/lround.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/match-perm-extract-vector-elt-bug.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/memmove-var-size.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/offset-split-flat.ll
M llvm/test/CodeGen/AMDGPU/offset-split-global.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
M llvm/test/CodeGen/AMDGPU/saddo.ll
M llvm/test/CodeGen/AMDGPU/saddsat.ll
M llvm/test/CodeGen/AMDGPU/shl_add_ptr_csub.ll
M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
M llvm/test/CodeGen/AMDGPU/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/sub.ll
M llvm/test/CodeGen/AMDGPU/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
M llvm/test/CodeGen/AMDGPU/usubsat.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-add.ll
M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
Log Message:
-----------
[AMDGPU] Unused sdst writing to null (#133229)
Unused sdst writing to null to avoid a false VALU->SALU dependency
stall. This requires using the VOP3 encoding.
Commit: 4c4e4e4299b16d8dd85811e9dd8697b17c95577f
https://github.com/llvm/llvm-project/commit/4c4e4e4299b16d8dd85811e9dd8697b17c95577f
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Strengthen calls to collectInstsToScalarize (NFC) (#130642)
Avoid the pattern of always calling collectInstsToScalarize after
collectUniformsAndScalars, and call it in collectUniformsAndScalars
instead. Also strengthen checks for early exits in the function.
Commit: b8c86dc7699d3c561bcbee143d2022561d5cc8a3
https://github.com/llvm/llvm-project/commit/b8c86dc7699d3c561bcbee143d2022561d5cc8a3
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
Log Message:
-----------
[SystemZ] Remove custom implementation of optimizeLoadInst [NFC] (#133123)
In 236f938ef, I introduced a generic version of this routine. I believe
that the SystemZ specific version of this is less general than the
generic version, and is thus unrequired. I wasn't 100% given the
difference in sub-register, multiple use and defs, but from the SystemZ
code, it looks like those cases simply don't arise?
Commit: e70fe9b264b6f98fd3744b514d7166f75dd19872
https://github.com/llvm/llvm-project/commit/e70fe9b264b6f98fd3744b514d7166f75dd19872
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/test/AST/ast-dump-templates.cpp
Log Message:
-----------
NFC: fix typo in clang/test/AST/ast-dump-templates.cpp
Commit: b3f01a6aa45b00240cec1c64286b85d7ba87e2af
https://github.com/llvm/llvm-project/commit/b3f01a6aa45b00240cec1c64286b85d7ba87e2af
Author: Qiu Chaofan <qcf at ecnelises.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Frontend/FrontendAction.cpp
A clang/test/Frontend/print-stats.c
Log Message:
-----------
[Clang] Check PP presence when printing stats (#131608)
Front-end option `-print-stats` can be used to print statistics around
the compilation process. But clang with this options will crash when
input is IR file. This patch fixes the crash by checking preprocessor
presence before invoking it.
Commit: d6d559cc090b775649f1de6f6bfcc029184d4fb5
https://github.com/llvm/llvm-project/commit/d6d559cc090b775649f1de6f6bfcc029184d4fb5
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
Log Message:
-----------
[RISCV] Add zvfhmin to zipeven/zipodd shuffle tests per review suggestion
Commit: bc37fea107dd21ea92efee20032a844e09d4e504
https://github.com/llvm/llvm-project/commit/bc37fea107dd21ea92efee20032a844e09d4e504
Author: Paul Bowen-Huggett <paulhuggett at mac.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
A llvm/test/MC/Disassembler/RISCV/c_lui_disasm.txt
Log Message:
-----------
[RISCV] Fix the disassembler's handling of C.LUI when imm=0 (#133450)
Fix for #133446.
According to the RISC-V spec: "C.LUI is valid only when rd≠{x0,x2}, and
when the immediate is not equal to zero. The code points with imm=0 are
reserved".
This change makes the disassembler consider code points with imm=0 as
illegal. It introduces a test which exercises every C.LUI opcode
including the illegal ones but excluding those assigned to C.ADDI16SP).
Output for +c, +c +Zcmop, and +c +no-rvc-hints is checked.
Commit: b0bb86e239b2b09476ca58976094cc645ea9194f
https://github.com/llvm/llvm-project/commit/b0bb86e239b2b09476ca58976094cc645ea9194f
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
Log Message:
-----------
[HLSL][NFC] Use method builder to create default resource constructor (#131384)
Updates `BuiltinTypeMethodBuilder` helper class to support creation of
constructors and updates the code that creates default constructor for
resource classes to use it.
This enables us to share code when creating builtin methods and
constructors and will come in handy when we add more constructors in the
future.
Depends on #131032.
Commit: da84a7d4038177152082265c0d425866a4f71659
https://github.com/llvm/llvm-project/commit/da84a7d4038177152082265c0d425866a4f71659
Author: John Holdsworth <github at johnholdsworth.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/Options.td
M lld/MachO/SymbolTable.cpp
A lld/test/MachO/interposable.s
Log Message:
-----------
[lld][MachO] Support for -interposable (#131813)
As discussed in https://github.com/llvm/llvm-project/issues/53680, add
support for ld64's -interposable flag on Apple platforms to lld.
Commit: 4e4cb4359ae915b5a14c94914e39a8cc94e98963
https://github.com/llvm/llvm-project/commit/4e4cb4359ae915b5a14c94914e39a8cc94e98963
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
M llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/fp128.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbkb.ll
M llvm/test/CodeGen/RISCV/abdu-neg.ll
M llvm/test/CodeGen/RISCV/abdu.ll
M llvm/test/CodeGen/RISCV/alu8.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/atomic-rmw.ll
M llvm/test/CodeGen/RISCV/atomic-signext.ll
M llvm/test/CodeGen/RISCV/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/RISCV/avgceilu.ll
M llvm/test/CodeGen/RISCV/avgflooru.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-sext-zext.ll
M llvm/test/CodeGen/RISCV/csr-first-use-cost.ll
M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
M llvm/test/CodeGen/RISCV/div.ll
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/float-convert.ll
M llvm/test/CodeGen/RISCV/fold-mem-offset.ll
M llvm/test/CodeGen/RISCV/half-convert.ll
M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts.ll
M llvm/test/CodeGen/RISCV/machine-combiner.ll
M llvm/test/CodeGen/RISCV/machine-sink-load-immediate.ll
M llvm/test/CodeGen/RISCV/memset-inline.ll
M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
M llvm/test/CodeGen/RISCV/pr65025.ll
M llvm/test/CodeGen/RISCV/rem.ll
M llvm/test/CodeGen/RISCV/rv32zbkb.ll
M llvm/test/CodeGen/RISCV/rv64zbkb.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fold-scalar-load-crash.ll
M llvm/test/CodeGen/RISCV/rvv/memset-inline.ll
M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
M llvm/test/CodeGen/RISCV/rvv/vector-extract-last-active.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvl-ext.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvlmax-ext.ll
M llvm/test/CodeGen/RISCV/sext-zext-trunc.ll
M llvm/test/CodeGen/RISCV/simplify-condbr.ll
M llvm/test/CodeGen/RISCV/split-store.ll
M llvm/test/CodeGen/RISCV/typepromotion-overflow.ll
M llvm/test/CodeGen/RISCV/uadd_sat_plus.ll
M llvm/test/CodeGen/RISCV/usub_sat_plus.ll
M llvm/test/CodeGen/RISCV/zbb-logic-neg-imm.ll
M llvm/test/CodeGen/RISCV/zcb-regalloc-hints.ll
M llvm/test/MC/RISCV/rv32i-aliases-valid.s
M llvm/test/MC/RISCV/rv64i-aliases-valid.s
Log Message:
-----------
[RISCV][MC] Enable printing of zext.b alias (#133502)
The comment shows that at the time we were worried about producing the
alias in assembly that might be ingested by a binutils version that
doesn't yet support it. binutils gained support over 4 years ago
<https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c2137f55ad04e451d834048d4bfec1de2daea20e>.
With all the changes in areas such as ELF attributes, if you tried to
use LLVM's RISC-V assembler output with a binutils that old then zext.b
would be the least of your worries.
Commit: 70f083f068ef0c6c589897d44e809ca18d5d1148
https://github.com/llvm/llvm-project/commit/70f083f068ef0c6c589897d44e809ca18d5d1148
Author: David Green <david.green at arm.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
Log Message:
-----------
[LV][AArch64] Test cleanup of low_trip_count_predicates.ll. NFC
Post commit cleanup from #132170
Commit: 864c76a181dd054a2c74ffa58b02bc554a8a1f83
https://github.com/llvm/llvm-project/commit/864c76a181dd054a2c74ffa58b02bc554a8a1f83
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Rename operands used for branch and compressed jump targets. NFC (#133364)
The current names look just like predicates we use for regular
immediates, but branches and jumps also allow bare symbols.
While I was there I realized I could use PredicateMethod to have the
AsmMatcher directly call the template function we use in the asm parser.
Commit: 77ba6918a14ddef4ee639bf6221cc2eb95adf320
https://github.com/llvm/llvm-project/commit/77ba6918a14ddef4ee639bf6221cc2eb95adf320
Author: Ian Wood <ianwood2024 at u.northwestern.edu>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir
Log Message:
-----------
[mlir][linalg] Fix FoldReshapeWithGenericOpByCollapsing insertion point (#133476)
Fixes dominance verifier error with
`FoldReshapeWithGenericOpByCollapsing` by setting the insertion point
after `producer`. The `tensor.collapse_shape` op only has a single
operand (`producer`) so it is safe to insert after the producer.
Signed-off-by: Ian Wood <ianwood2024 at u.northwestern.edu>
Commit: 1bfc61064ab46e44865453d2c2176f5e7f96987c
https://github.com/llvm/llvm-project/commit/1bfc61064ab46e44865453d2c2176f5e7f96987c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/split-node-parent-operands-in-spill.ll
Log Message:
-----------
[SLP]Fix spill cost analysis for split vectorized nodes
If the entry is SplitVectorize, it can be skipped in favor of its
operands, operands allow correctly detect spill costs.
Fixes #133288
Commit: d4dc5712c47dab5f5dcfc329db8121059b591fb1
https://github.com/llvm/llvm-project/commit/d4dc5712c47dab5f5dcfc329db8121059b591fb1
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/assets/index.js
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/test/clang-doc/assets.cpp
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
Log Message:
-----------
[clang-doc] Allow setting a base directory for hosted pages (#132482)
Currently, when we set URLs from JS, we set them only using the protocol
and host locations. This works fine when docs are served from the base
directory of the site, but if you want to nest it under another
directory, our JS fails to set the correct path, leading to broken
links.
This patch adds a --base option to specify the path prefix to use, which
is set in the generated index_json.js file. index.json can then fill in
the prefix appropriately when generating links in a browser. This flag
has no effect for non HTML output.
Given an index hosted at: www.docs.com/base_directory/index.html
we used to generate the following link:
www.docs.com/file.html
Using --base base_directory we now generate:
www.docs.com/base_directory/file.html
This allows such links to work when hosting pages without using a custom
index.js.
Commit: c8246f69f4e17b877bf42643f3d4360a89232f68
https://github.com/llvm/llvm-project/commit/c8246f69f4e17b877bf42643f3d4360a89232f68
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libcxx/include/__tree
Log Message:
-----------
[libc++] Remove friend declarations from __tree (#133237)
Instead, make the few functions `map` relies on public. This makes it
more clear what is private to `__tree` and what is part of the
library-internal interface.
Commit: 45b9e24b1ea8f34230cb2a746d624bd7e64e484b
https://github.com/llvm/llvm-project/commit/45b9e24b1ea8f34230cb2a746d624bd7e64e484b
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/lib/asan/asan_activation.cpp
M compiler-rt/lib/asan/asan_flags.h
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/asan/asan_report.cpp
M compiler-rt/lib/memprof/memprof_flags.h
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/test/asan/TestCases/Posix/deep_call_stack.cpp
M compiler-rt/test/asan/TestCases/Posix/stack-overflow.cpp
M compiler-rt/test/asan/TestCases/alloca_instruments_all_paddings.cpp
M compiler-rt/test/metadata/lit.cfg.py
M compiler-rt/test/sanitizer_common/TestCases/Darwin/malloc_zone.cpp
M compiler-rt/test/tsan/Darwin/no_call_setenv_in_symbolize.cpp
M compiler-rt/test/tsan/Linux/clone_setns.cpp
M llvm/include/llvm/ProfileData/InstrProfData.inc
Log Message:
-----------
Fix some small typos in compiler-rt. NFC (#133388)
Commit: 91d2ecf0d563b03d75380375e8ac26a291bed9d7
https://github.com/llvm/llvm-project/commit/91d2ecf0d563b03d75380375e8ac26a291bed9d7
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libc/src/__support/CPP/atomic.h
M mlir/include/mlir/Analysis/Presburger/Simplex.h
M mlir/include/mlir/AsmParser/AsmParser.h
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/sm80/transform-mma-sync-matmul-f16-f16-accum.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/sm80/transform-mma-sync-matmul-f32.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f16.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f32-bare-ptr.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f32.mlir
M mlir/test/mlir-tblgen/op-properties-predicates.td
Log Message:
-----------
[NFC] Fix some typos in libc and mlir comments (#133374)
Commit: 812efdb0940f82fbfd2a139573764364cb55cdc2
https://github.com/llvm/llvm-project/commit/812efdb0940f82fbfd2a139573764364cb55cdc2
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] Bump the version to 0.2.11
Commit: c0952a931c7d556ca9f0073d86d591a37eb60477
https://github.com/llvm/llvm-project/commit/c0952a931c7d556ca9f0073d86d591a37eb60477
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGExpr.cpp
M clang/test/CodeGen/bounds-checking-debuginfo.c
Log Message:
-----------
[clang] [sanitizer] add pseudofunction to indicate array-bounds check (#128977)
With this, we can:
* use profilers to estimate how many cycles we spend on these checks
(subject to caveats),
* more easily see why we crashed.
Commit: 812e02a74c0afb8bce8bf7ac7cc606ace188e30d
https://github.com/llvm/llvm-project/commit/812e02a74c0afb8bce8bf7ac7cc606ace188e30d
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/f16-instructions.ll
M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/fast-math.ll
A llvm/test/CodeGen/NVPTX/frem.ll
Log Message:
-----------
[NVPTX] Use fast-math flags when lowering sin, cos, frem (#133121)
Update the lowering rules for sin, cos, and frem to respect the
instruction-level flags in addition to the global and function-level
options. For sin and cos, the TableGen lowering has been updated to
check the `afn` flag on the node. The lowering for frem has been pulled
to custom instruction legalization in order to allow for DAG Combiner
optimizations to operate over the expanded instructions.
Commit: 83c4cb36aaa41cc58f8d9fed5cb364e46e5c7db5
https://github.com/llvm/llvm-project/commit/83c4cb36aaa41cc58f8d9fed5cb364e46e5c7db5
Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Lex/LexHLSLRootSignature.cpp
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
Log Message:
-----------
[HLSL][RootSignature] Make Root Signature lexer keywords case-insensitive (#132967)
>From the corrections to the Root Signature specification here:
https://github.com/llvm/wg-hlsl/issues/192. It was denoted that keywords
are also case-insensitive in DXC.
This pr adjusts the lexer to adhere to the updated spec.
We also have a NFC to add a missing license to a file while in the area.
---------
Co-authored-by: Finn Plummer <finnplummer at microsoft.com>
Commit: 0c811053734e49151fb436f8afbb87b396bcb15e
https://github.com/llvm/llvm-project/commit/0c811053734e49151fb436f8afbb87b396bcb15e
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/cuda-no-pgo-or-coverage.cu
M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
M offload/test/offloading/gpupgo/pgo1.c
M offload/test/offloading/gpupgo/pgo2.c
Log Message:
-----------
[PGO][Offload] Disable PGO on NVPTX (#133522)
Commit: 3026fa0eb61904d6dde1dba8c93a3c757c2d4056
https://github.com/llvm/llvm-project/commit/3026fa0eb61904d6dde1dba8c93a3c757c2d4056
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/test/CodeGenHLSL/builtins/clamp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/clip-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/degrees-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/frac-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/normalize-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/radians-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/rcp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/rsqrt-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/saturate-builtin.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/clip-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rsqrt-errors.hlsl
Log Message:
-----------
[HLSL] add CustomTypeChecking to float builtins (#133441)
- Add CustomTypeChecking to HLSL builtins that take float arguments
- Add new builtin tests to confirm CustomTypeChecking doesn't promote
scalar float arguments aren't promoted to double
- fixes #133440
Commit: 783a846507683c7b515473b833c9cf02cd2b1993
https://github.com/llvm/llvm-project/commit/783a846507683c7b515473b833c9cf02cd2b1993
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-vplan.ll
M llvm/test/Transforms/LoopVectorize/AArch64/synthesize-mask-for-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
M llvm/test/Transforms/LoopVectorize/uncountable-early-exit-vplan.ll
M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge-vf1.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
M llvm/test/Transforms/LoopVectorize/vplan-widen-struct-return.ll
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Add VF as operand to VPScalarIVStepsRecipe.
Similarly to other recipes, update VPScalarIVStepsRecipe to also take
the runtime VF as argument. This removes some unnecessary runtime VF
computations for scalable vectors. It will also allow dropping the
UF == 1 restriction for narrowing interleave groups required in
577631f0a528.
Commit: bf02dfcd8c69f45f5ea0e273fc63cc34675ae5c2
https://github.com/llvm/llvm-project/commit/bf02dfcd8c69f45f5ea0e273fc63cc34675ae5c2
Author: Mohammed Keyvanzadeh <mohammadkeyvanzade94 at gmail.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/include/llvm/ADT/AddressRanges.h
Log Message:
-----------
[llvm][ADT] Some AddressRanges.h improvements (#132847)
- Rename parameter to adhere to the project's parameter naming
convention.
- Remove redundant template argument.
- Remove redundant name-qualification.
- Change non-explicit conversion operator to an explicit one to avoid
surprising implicit conversions.
Commit: 457970d25d7216d793734915ab675701e50c292c
https://github.com/llvm/llvm-project/commit/457970d25d7216d793734915ab675701e50c292c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/ctor.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_bool.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_pointer.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_unsigned_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_unsigned_long_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.virtuals/tested_elsewhere.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/types.pass.cpp
Log Message:
-----------
[libc++][NFC] Format std::num_put tests
Commit: 77913b5d1dc970e3e053ab1ab160da897560b1b4
https://github.com/llvm/llvm-project/commit/77913b5d1dc970e3e053ab1ab160da897560b1b4
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Add instantiation of VPUnrollPartAccessor<3> to fix link error.
Fix link errors with GCC by providing an explicit instantiation.
Commit: 5a073f1f3ad99e70138e9ef8097ccc2b7fad05b2
https://github.com/llvm/llvm-project/commit/5a073f1f3ad99e70138e9ef8097ccc2b7fad05b2
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[doc][IR] Add documentation for `llvm.vector.(de)interleave3/5/7` (#133519)
I put the documentation of all factors into the same (de)interleave
entries because I really don't see a reason to separate them in an
already long LangRef page.
Commit: 021a1f69742aab7d650887a0978db5cf007967d3
https://github.com/llvm/llvm-project/commit/021a1f69742aab7d650887a0978db5cf007967d3
Author: Alex <alejandro.duran at intel.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M offload/include/OffloadPolicy.h
M offload/libomptarget/PluginManager.cpp
Log Message:
-----------
[OFFLOAD] Stricter enforcement of user offload disable (#133470)
If user specifies offload is disabled (e.g.,
OMP_TARGET_OFFLOAD=disable), disable library almost completely. This
reduces resources spent to a minimum and ensures all APIs behave as if
the only available device is the host device.
Currently some of the APIs behave as if there were devices avaible for
offload even when under OMP_TARGET_OFFLOAD=disable.
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 973bf4d53b9cfac4400a9954d9c527092b238a86
https://github.com/llvm/llvm-project/commit/973bf4d53b9cfac4400a9954d9c527092b238a86
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
Log Message:
-----------
[RISCV] Remove unnecessary if guard before calling SignExtend64<6> in decodeCLUIImmOperand. NFC (#133514)
Commit: 5bdce305793f161cfa1bf69a65954089c99ccf0b
https://github.com/llvm/llvm-project/commit/5bdce305793f161cfa1bf69a65954089c99ccf0b
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
Log Message:
-----------
[AMDGPU][True16][CodeGen] remove v2i16 from srl pattern (#133458)
remove v2i16 from srl true16 pattern since 16bit right shift on v2i16
should not be applied with this pattern
Commit: 48408954670e1f564bd92eed6b54bf155238201c
https://github.com/llvm/llvm-project/commit/48408954670e1f564bd92eed6b54bf155238201c
Author: Mohamed Emad <73320969+hulxv at users.noreply.github.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/include/stdlib.yaml
M libc/src/stdlib/CMakeLists.txt
A libc/src/stdlib/memalignment.cpp
A libc/src/stdlib/memalignment.h
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/memalignment_test.cpp
Log Message:
-----------
[libc] implement `memalignment` (#132493)
This patch adds the `memalignment` function to LLVM-libc, following its
description in [WG14 N3220,
§7.24.2.1](https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf#page=387).
- [x] Add the implementation of `memalignment` in
[`/src/stdlib`](https://github.com/llvm/llvm-project/tree/main/libc/src/stdlib)
- [x] Add tests for `memalignment` in
[`/test/src/stdlib`](https://github.com/llvm/llvm-project/tree/main/libc/test/src/stdlib)
- [x] Add `memalignment` to
[`entrypoints.txt`](https://github.com/llvm/llvm-project/blob/main/libc/config/linux/x86_64/entrypoints.txt)
for at least x86_64 and whatever you're building on
- [x] Add `memalignment` to
[`include/stdlib.yaml`](https://github.com/llvm/llvm-project/blob/main/libc/include/stdlib.yaml)
Closes #132300
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 5252bb1d74cc7bcbba4d0f6826486f43a124d01c
https://github.com/llvm/llvm-project/commit/5252bb1d74cc7bcbba4d0f6826486f43a124d01c
Author: Jeff Niu <jeffniu22 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/lib/Interfaces/InferIntRangeInterface.cpp
M mlir/test/Dialect/Arith/int-range-interface.mlir
Log Message:
-----------
[mlir] IntegerRangeAnalysis: return initialized state for noninteger values (#133541)
Otherwise, the state for noninteger values remains uninitialized,
causing the analysis to return bogus results.
Commit: 934f2557bacbbe914878c1ba56a17a8c6eae83c9
https://github.com/llvm/llvm-project/commit/934f2557bacbbe914878c1ba56a17a8c6eae83c9
Author: Mogball <jeffniu22 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/test/Dialect/Arith/int-range-interface.mlir
Log Message:
-----------
[mlir][analysis] Commit missing check lines
Commit: b394babddcec466a4cb8f31ea94b99c1b934ea71
https://github.com/llvm/llvm-project/commit/b394babddcec466a4cb8f31ea94b99c1b934ea71
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
A llvm/test/Transforms/HotColdSplit/musttail.ll
Log Message:
-----------
[HotColdSplit] Don't outline musttail calls. (#133177)
musttail calls have several restrictions, generally enforcing matching
calling conventions between the caller parent and musttail callee. We
can't usually honor them, because the extracted function has a different
signature altogether, taking inputs/outputs and returning a control-flow
identifier rather than the actual return value.
Don't consider musttail calls as valid for extraction.
Commit: e29f228a0732b126cca3ee2ff2536f08c1e49434
https://github.com/llvm/llvm-project/commit/e29f228a0732b126cca3ee2ff2536f08c1e49434
Author: Mogball <jeffniu22 at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/test/Dialect/Arith/int-range-interface.mlir
Log Message:
-----------
actually fix the test
Commit: 1462c26a9f5505c899a3ddbd78fd0caa6675c5fd
https://github.com/llvm/llvm-project/commit/1462c26a9f5505c899a3ddbd78fd0caa6675c5fd
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/test/CodeGenHLSL/builtins/WaveReadLaneAt.hlsl
Log Message:
-----------
[HLSL] Add WaveReadLaneAt unsigned integer overloads (#133520)
Add WaveReadLaneAt unsigned integer overloads
2nd argument of WaveReadLaneAt should be a uint32_t and not an int32_t
add tests
Closes #133473
Commit: 1e00bb16f488492198df692ae2e2abc405a138f3
https://github.com/llvm/llvm-project/commit/1e00bb16f488492198df692ae2e2abc405a138f3
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp
Log Message:
-----------
[sanitizer] actually run preadv2 test (#133529)
it seems the %run was accidentally omitted, otherwise the `assert` calls
would not make sense
Commit: c8a70f4c6e24076ac3fc18bfb9e2a41ece83e7fc
https://github.com/llvm/llvm-project/commit/c8a70f4c6e24076ac3fc18bfb9e2a41ece83e7fc
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A llvm/include/llvm/Analysis/StaticDataProfileInfo.h
M llvm/include/llvm/CodeGen/Passes.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Analysis/CMakeLists.txt
A llvm/lib/Analysis/StaticDataProfileInfo.cpp
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/CodeGen.cpp
A llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/lib/CodeGen/StaticDataSplitter.cpp
M llvm/lib/CodeGen/TargetPassConfig.cpp
A llvm/test/CodeGen/X86/global-variable-partition.ll
Log Message:
-----------
[CodeGen][StaticDataPartitioning]Place local-linkage global variables in hot or unlikely prefixed sections based on profile information (#125756)
In this PR, static-data-splitter pass finds out the local-linkage global
variables in {`.rodata`, `.data.rel.ro`, `bss`, `.data`} sections by
analyzing machine instruction operands, and aggregates their accesses
from code across functions.
A follow-up item is to analyze global variable initializers and count
for access from data.
* This limitation is demonstrated by `bss2` and `data3` in
`llvm/test/CodeGen/X86/global-variable-partition.ll`.
Some stats of static-data-splitter with this patch:
**section**|**bss**|**rodata**|**data**
:-----:|:-----:|:-----:|:-----:
hot-prefixed section coverage|99.75%|97.71%|91.30%
unlikely-prefixed section size percentage|67.94%|39.37%|63.10%
1. The coverage is defined as `#perf-sample-in-hot-prefixed <data>
section / #perf-sample in <data.*> section` for each <data> section.
* The perf command samples
`MEM_INST_RETIRED.ALL_LOADS:u:pinned:precise=2` events at a high
frequency (`perf -c 2251`) for 30 seconds. The profiled binary is built
as non-PIE so `data.rel.ro` coverage data is not available.
2. The unlikely-prefixed `<data>` section size percentage is defined as
`unlikely <data> section size / the sum size of <data>.* sections` for
each `<data>` section
Commit: 515d1ae679ea25687423be37abec74565d755921
https://github.com/llvm/llvm-project/commit/515d1ae679ea25687423be37abec74565d755921
Author: Mohamed Emad <73320969+hulxv at users.noreply.github.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/test/clang-doc/basic-project.test
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
Log Message:
-----------
[clang-doc] Add --repository-line-prefix argument (#131280)
This PR adds a new command-line option that allows users to specify the
prefix used for line-based anchors in repository URLs. Different
repository interfaces use different formats for line anchors (GitHub
uses `#L123`, googlesource uses `#123`, etc.). This option enables users
to customize the line prefix to match their repository platform without
requiring hard-coded values for each service.
Fixes #59814
Commit: 6cc208cd3c80a57c535ad2ea7e8a189d02966682
https://github.com/llvm/llvm-project/commit/6cc208cd3c80a57c535ad2ea7e8a189d02966682
Author: Michael Jones <michaelrj at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
A libc/Maintainers.rst
M libc/docs/CMakeLists.txt
A libc/docs/Maintainers.rst
M libc/docs/index.rst
M llvm/Maintainers.md
Log Message:
-----------
[libc] Add maintainers file (#133471)
Based on #133297 by jhuber.
LLVM-libc needs a maintainers file, this patch adds an initial set.
The file is based on `clang/maintainers.rst` and
https://llvm.org/docs/DeveloperPolicy.html#maintainers.
Commit: 8dc64e93cb203904c778ba7c390f8b7adc85bb02
https://github.com/llvm/llvm-project/commit/8dc64e93cb203904c778ba7c390f8b7adc85bb02
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/tools/llvm-reduce/deltas/ReduceDIMetadata.cpp
Log Message:
-----------
llvm-reduce: Avoid double map lookup (#133447)
Commit: 27b53e90a50428456e48a04b606fc366d48520a9
https://github.com/llvm/llvm-project/commit/27b53e90a50428456e48a04b606fc366d48520a9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
M llvm/tools/llvm-reduce/deltas/ReduceOperandsToArgs.cpp
Log Message:
-----------
llvm-reduce: Use takeName instead of setName when cloning functions (#133393)
Commit: 4324f236ac8e8487f82c2f5e9fff1560600019c8
https://github.com/llvm/llvm-project/commit/4324f236ac8e8487f82c2f5e9fff1560600019c8
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
Log Message:
-----------
[gn build] Port c8a70f4c6e24
Commit: bb047b9ea37f8183941bdbffde00886fa4ab2407
https://github.com/llvm/llvm-project/commit/bb047b9ea37f8183941bdbffde00886fa4ab2407
Author: vporpo <vporpodas at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/include/llvm/SandboxIR/Constant.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/lib/SandboxIR/Constant.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement missing ConstantVector member functions (#131390)
This patch implements get(), getSplat(), getSplatValue() and getType(),
mirroring LLVM IR.
Commit: fb0cd9899d79211a497f0b560f73d2bca67d7d9d
https://github.com/llvm/llvm-project/commit/fb0cd9899d79211a497f0b560f73d2bca67d7d9d
Author: AdityaK <hiraditya at msn.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/lib/IR/Verifier.cpp
Log Message:
-----------
NFC: Remove unused includes (#133474)
Commit: 304b3c500021a9281a1d03cf3a63380ca31f7451
https://github.com/llvm/llvm-project/commit/304b3c500021a9281a1d03cf3a63380ca31f7451
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
Log Message:
-----------
[alpha.webkit.RawPtrRefMemberChecker] The checker doesn't warn Objective-C types in ivars. (#132833)
This PR fixes the bug that we weren't generating warnings when a raw
poiner is used to point to a NS type in Objective-C ivars. Also fix the
bug that we weren't suppressing this warning in system headers.
Commit: 84c1afe69e51018fd48462d95190797f880d5195
https://github.com/llvm/llvm-project/commit/84c1afe69e51018fd48462d95190797f880d5195
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/tools/llvm-reduce/deltas/ReduceInstructions.cpp
Log Message:
-----------
llvm-reduce: Simplify instruction reduction to avoid worklist (#133391)
Commit: b2e2950358ff6fc201e408145b30db63b33d486b
https://github.com/llvm/llvm-project/commit/b2e2950358ff6fc201e408145b30db63b33d486b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
R llvm/test/tools/llvm-reduce/remove-ifunc-constantexpr.ll
Log Message:
-----------
llvm-reduce: Remove xfailed test for ifunc with constant expression (#133389)
The verifier does reject this now
Commit: 8c18c25b1b22ea710edb40a4f167a6a8bfe6ff9d
https://github.com/llvm/llvm-project/commit/8c18c25b1b22ea710edb40a4f167a6a8bfe6ff9d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-reduce.rst
A llvm/test/tools/llvm-reduce/Inputs/flaky-test.py
A llvm/test/tools/llvm-reduce/flaky-interestingness.ll
M llvm/tools/llvm-reduce/deltas/Delta.cpp
Log Message:
-----------
llvm-reduce: Do not assert if the input is no longer interesting (#133386)
If the interestingness script is flaky, we should not assert. Print
a warning, and continue. This could still happen as a result of an
llvm-reduce bug, so make a note of that.
Add a --skip-verify-interesting-after-counting-chunks option to
avoid the extra run of the reduction script, and to silence the
warning.
Commit: 842f25a5fb781491c14102d0db1886a78a190ed5
https://github.com/llvm/llvm-project/commit/842f25a5fb781491c14102d0db1886a78a190ed5
Author: Florian Mayer <fmayer at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/unittests/Analysis/FlowSensitive/SmartPointerAccessorCachingTest.cpp
Log Message:
-----------
[NFC] [dataflow] generalize smart pointer caching (#133350)
This allows us to use it for classes that use other names than get /
value.
Commit: 8726e973459d93d34653946ba1e01ad198cdf11f
https://github.com/llvm/llvm-project/commit/8726e973459d93d34653946ba1e01ad198cdf11f
Author: Thurston Dang <thurston at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse2-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/mmx-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse2-intrinsics-i386.ll
Log Message:
-----------
[msan] Handle SSE2 cvt(t?)ps2dq/cvt(t?)pd2dq and cvtpd2ps using handleSSEVectorConvertIntrinsicByProp (#132815)
cvt(t?)ps2dq/cvt(t?)pd2dq and cvtpd2ps are currently handled strictly.
This patch handles them using handleSSEVectorConvertIntrinsicByProp
(from https://github.com/llvm/llvm-project/pull/130705), generalized to
handle SSE intrinsics that do not have a rounding mode parameter.
Commit: 724f2096cedd6e179c79eaddf41accaad1218c96
https://github.com/llvm/llvm-project/commit/724f2096cedd6e179c79eaddf41accaad1218c96
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/test/tools/llvm-reduce/distinct-dimetadata-nullptr.ll
M llvm/test/tools/llvm-reduce/operands-to-args-metadata.ll
M llvm/test/tools/llvm-reduce/reduce-distinct-metadata.ll
M llvm/test/tools/llvm-reduce/remove-attributes-from-intrinsics.ll
M llvm/test/tools/llvm-reduce/remove-function-bodies.ll
M llvm/test/tools/llvm-reduce/remove-instructions.ll
M llvm/test/tools/llvm-reduce/remove-metadata.ll
M llvm/test/tools/llvm-reduce/remove-module-data.ll
M llvm/test/tools/llvm-reduce/remove-multiple-use-of-args-in-same-instruction.ll
M llvm/test/tools/llvm-reduce/skip-delta-passes.ll
M llvm/test/tools/llvm-reduce/temporary-files-as-bitcode-split.ll
M llvm/test/tools/llvm-reduce/temporary-files-as-bitcode.ll
Log Message:
-----------
llvm-reduce: Add -abort-on-invalid-reduction to more tests (#133390)
If I flip the default, the only failures are in MIR tests.
Commit: 22a11be8ab6f31cd3621f37d675e44988218f314
https://github.com/llvm/llvm-project/commit/22a11be8ab6f31cd3621f37d675e44988218f314
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][vector] Fix parser of `vector.contract` (#133434)
This PR adds a check in the parser to prevent a crash when
`vector.contract` lacks the `iterator_types` attribute.
Fixes #132886.
Commit: 55430f8673b9f8b27779faad3fe9c59954d539df
https://github.com/llvm/llvm-project/commit/55430f8673b9f8b27779faad3fe9c59954d539df
Author: peterbell10 <peterbell10 at openai.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/test/Transforms/SLPVectorizer/NVPTX/v2f16.ll
Log Message:
-----------
[NVPTX] Customize getScalarizationOverhead (#128077)
We've observed that the SLPVectorizer is too conservative on NVPTX
because it over-estimates the cost to build a vector. PTX has a single
`mov` instruction that can build e.g. `<2 x half>` vectors from scalars,
however the SLPVectorizer over-estimates it as the cost of 2 insert
elements.
To fix this I customize `getScalarizationOverhead` to lower the cost for
building 2x16 types.
Commit: 539ef5eee2c26b93923ed7872c6f847ff54c71ae
https://github.com/llvm/llvm-project/commit/539ef5eee2c26b93923ed7872c6f847ff54c71ae
Author: John Harrison <harjohn at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
Log Message:
-----------
[lldb-dap] Addressing ubsan enum usage. (#133542)
Running tests with ubsan enabled showed that the current
`protocol::AdapterFeature` and `protocol::ClientFeature` enums are
incorrectly defined if we want to use them in a `llvm::DenseSet`. The
enums are currently untyped and this results in the undefined behavior.
Adding `FLAGS_ENUM()` wrappers to all the enums in the
`lldb-dap::protocol` namespace to ensure they're typed so they can be
used with types like `llvm::DenseSet`.
Commit: f8ffbaebed1a7ac82a445a22630fefb769f0d08b
https://github.com/llvm/llvm-project/commit/f8ffbaebed1a7ac82a445a22630fefb769f0d08b
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lld/test/ELF/weak-undef-rw.s
Log Message:
-----------
[test] Test absolute/relative relocations referencing undefined non-weak symbol
Commit: edef028029c4785dfe23c06731de4fc9f34d5cd5
https://github.com/llvm/llvm-project/commit/edef028029c4785dfe23c06731de4fc9f34d5cd5
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/MC/RISCV/xqciio-aliases-valid.s
A llvm/test/MC/RISCV/xqciio-invalid.s
A llvm/test/MC/RISCV/xqciio-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Qualcomm uC Xqciio (External Input Output) extension (#132721)
This extension adds two external input output instructions for
non-memory-mapped device.
The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7.0
This patch adds assembler only support.
Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>
Commit: b33cc642ed398b13875dbb9099916affce355b49
https://github.com/llvm/llvm-project/commit/b33cc642ed398b13875dbb9099916affce355b49
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lldb/source/Host/common/NativeProcessProtocol.cpp
M lldb/source/Plugins/ExpressionParser/Clang/CxxModuleHandler.cpp
M lldb/tools/lldb-dap/Handler/SetInstructionBreakpointsRequestHandler.cpp
Log Message:
-----------
[lldb] Use *Set::insert_range and a range constructor (NFC) (#133548)
This patch uses *Set::insert_range and a range constructor of DenseSet
to clean up the code to populate sets.
Commit: d4427f308eb6e42790a36b56d61b482cbc9f67ba
https://github.com/llvm/llvm-project/commit/d4427f308eb6e42790a36b56d61b482cbc9f67ba
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/include/llvm/Support/GenericDomTreeConstruction.h
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/lib/Analysis/DependenceGraphBuilder.cpp
M llvm/lib/Analysis/LazyCallGraph.cpp
M llvm/lib/Analysis/MemorySSAUpdater.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/CodeGen/RDFGraph.cpp
M llvm/lib/CodeGen/RDFLiveness.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/VFABIDemangler.cpp
M llvm/lib/Object/IRSymtab.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/tools/llvm-extract/llvm-extract.cpp
M llvm/unittests/ADT/DirectedGraphTest.cpp
Log Message:
-----------
[llvm] Use range constructors of *Set (NFC) (#133549)
Commit: d3c10a3897ccd060090ca273de4cedb91cd2d605
https://github.com/llvm/llvm-project/commit/d3c10a3897ccd060090ca273de4cedb91cd2d605
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
Log Message:
-----------
[CodeGen] Use llvm::reverse (NFC) (#133550)
Commit: f915015a3e22d569f23dee0e042bfd6f4ee74509
https://github.com/llvm/llvm-project/commit/f915015a3e22d569f23dee0e042bfd6f4ee74509
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[llvm] Remove extraneous calls to make_range (NFC) (#133551)
Commit: 854d795985d404236346340cb015409c30078e46
https://github.com/llvm/llvm-project/commit/854d795985d404236346340cb015409c30078e46
Author: Kazu Hirata <kazu at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/tools/mlir-tblgen/RewriterGen.cpp
Log Message:
-----------
[mlir] Use llvm::reverse (NFC) (#133552)
Commit: 63bb0078f824143f580225ad92464b21186f646e
https://github.com/llvm/llvm-project/commit/63bb0078f824143f580225ad92464b21186f646e
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M compiler-rt/lib/ctx_profile/CMakeLists.txt
A compiler-rt/lib/ctx_profile/RootAutoDetector.cpp
A compiler-rt/lib/ctx_profile/RootAutoDetector.h
M compiler-rt/lib/ctx_profile/tests/CMakeLists.txt
A compiler-rt/lib/ctx_profile/tests/RootAutoDetectorTest.cpp
Log Message:
-----------
[ctxprof] Auto root detection: trie for stack samples (#133106)
An initial patch for supporting automated root detection. The auto-detector is introduced subsequently, but this patch introduces a datastructure for capturing sampled stacks, per thread, in a trie, and inferring from such samples which functions are reasonable roots.
Commit: 1d4801f22ab1fd6205b1cf625b690aefc554cd4c
https://github.com/llvm/llvm-project/commit/1d4801f22ab1fd6205b1cf625b690aefc554cd4c
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
Log Message:
-----------
[mlir] fix `maybeReplaceWithConstant` in IntRangeOptimizations (#133556)
If a dialect is caching/reusing constants when materializing then such
constants might already have `IntegerValueRangeLattice`s associated with
them and the range endpoint bit widths might not match the new
replacement (amongst other possible wackiness).
I observed this with `%true = arith.constant true` which was
materialized but had an existing `IntegerValueRangeLattice` (i.e.,
`solver.getOrCreateState<dataflow::IntegerValueRangeLattice>` was not
uninitalized) with range endpoint bit widths:
```
umin bit width: 32
umax bit width: 32
smin bit width: 32
smax bit width: 32
```
while the widths of the range end points for something like `%20 =
arith.cmpi slt, %19, %c1_i32` (a replacement candidate) would be
```
umin bit width: 1
umax bit width: 1
smin bit width: 1
smax bit width: 1
```
Thus, we should be clearing the analysis state each time a constant is
reused.
Commit: ba2de8f22d0cac86d89c1806fb54ed3463349342
https://github.com/llvm/llvm-project/commit/ba2de8f22d0cac86d89c1806fb54ed3463349342
Author: Fangrui Song <i at maskray.me>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M lld/ELF/Relocations.cpp
M lld/test/ELF/riscv-relax-hi20-lo12-pie.s
M lld/test/ELF/weak-undef-rw.s
Log Message:
-----------
[ELF] Allow absolute relocation referencing symbol index 0 in PIC mode
The value of an absolute relocation, like R_RISCV_HI20 or R_PPC64_LO16,
with a symbol index of 0, the resulting value should be treated as
absolute and permitted in both -pie and -shared links.
This change also resolves an absolute relocation referencing an
undefined symbol in statically-linked executables.
PPC64 has unfortunate exceptions:
* R_PPC64_TOCBASE uses symbol index 0 but it should be treated as
referencing the linker-defined .TOC.
* R_PPC64_PCREL_OPT (https://reviews.llvm.org/D84360) could no longer
rely on `isAbsoluteValue` return false.
Commit: 8e1d9f2d844a22f7d1cba93c604a9a094636f7a2
https://github.com/llvm/llvm-project/commit/8e1d9f2d844a22f7d1cba93c604a9a094636f7a2
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
Log Message:
-----------
[ctxprof][nfc] Move 2 implementation functions up in `CtxInstrProfiling.cpp` (#133146)
Commit: 31fe0d20fc49b0e0f653c95496b7955328f2983b
https://github.com/llvm/llvm-project/commit/31fe0d20fc49b0e0f653c95496b7955328f2983b
Author: vporpo <vporpodas at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M llvm/docs/SandboxIR.md
A llvm/docs/SandboxVectorizer.md
M llvm/docs/Vectorizers.rst
Log Message:
-----------
[SandboxVec][Doc] Add documentation for the Sandbox Vectorizer (#133504)
Commit: 2898c3e0bbf904c68efb194525bcdfeedb3014c2
https://github.com/llvm/llvm-project/commit/2898c3e0bbf904c68efb194525bcdfeedb3014c2
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M .github/workflows/pr-code-format.yml
Log Message:
-----------
[Github] Simplify Getting Changed Files in Code Formatting Workflow (#133023)
This patch changes getting changed files in the pr code format job to
just checking out the previous two commits (the merge commit and its
porent, the current commit latest in main), which allows us to just diff
the merge commit. This means we do not have to checkout the ref through
the merge base, which should save approximately a minute per job (or
much more in some cases where the PR is particularly out of date).
Commit: 1e03408d4b17a792da5fd01b30f05ff055cfbd79
https://github.com/llvm/llvm-project/commit/1e03408d4b17a792da5fd01b30f05ff055cfbd79
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
A llvm/test/CodeGen/DirectX/remove-dead-intriniscs.ll
Log Message:
-----------
[DirectX] Remove intrinsic definitions with no use (#133459)
Do cleanup in DXILFinalizeLinkage.cpp where intrinsic declares are getting orphaned.
This change reduces "Unsupported intrinsic for DXIL lowering" errors
when compiling DML shaders from 12218 to 415. and improves our
compilation success rate from less than 1% to 44%.
Commit: 40c1d50024f8f0306b8601559d69663ae3d2d9bb
https://github.com/llvm/llvm-project/commit/40c1d50024f8f0306b8601559d69663ae3d2d9bb
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsSPIRV.td
M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaSPIRV.cpp
A clang/test/CodeGenHLSL/builtins/smoothstep.hlsl
A clang/test/CodeGenSPIRV/Builtins/smoothstep.c
A clang/test/SemaHLSL/BuiltIns/smoothstep-errors.hlsl
A clang/test/SemaSPIRV/BuiltIns/smoothstep-errors.c
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smoothstep.ll
A llvm/test/CodeGen/SPIRV/opencl/smoothstep.ll
Log Message:
-----------
[HLSL] Implement the `smoothstep` intrinsic (#132288)
Closes #99156.
Tasks completed:
- Implement `smoothstep` using HLSL source in `hlsl_intrinsics.h`
- Implement the `smoothstep` SPIR-V target built-in in
`clang/include/clang/Basic/BuiltinsSPIRV.td`
- Add sema checks for `smoothstep` to `CheckSPIRVBuiltinFunctionCall` in
`clang/lib/Sema/SemaSPIRV.cpp`
- Add codegen for spv `smoothstep` to `EmitSPIRVBuiltinExpr` in
`clang/lib/CodeGen/TargetBuiltins/SPIR.cpp`
- Add codegen tests to `clang/test/CodeGenHLSL/builtins/smoothstep.hlsl`
- Add spv codegen test to
`clang/test/CodeGenSPIRV/Builtins/smoothstep.c`
- Add sema tests to
`clang/test/SemaHLSL/BuiltIns/smoothstep-errors.hlsl`
- Add spv sema tests to
`clang/test/SemaSPIRV/BuiltIns/smoothstep-errors.c`
- Create the `int_spv_smoothstep` intrinsic in `IntrinsicsSPIRV.td`
- In SPIRVInstructionSelector.cpp create the `smoothstep` lowering and
map it to `int_spv_smoothstep` in
`SPIRVInstructionSelector::selectIntrinsic`
- Create SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smoothstep.ll`
- Create SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/opencl/smoothstep.ll`
Commit: 34d858635f0887cc083ccbe3ac69fd34f107b4f6
https://github.com/llvm/llvm-project/commit/34d858635f0887cc083ccbe3ac69fd34f107b4f6
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
R .ci/compute-projects.sh
M .ci/generate-buildkite-pipeline-premerge
M .github/workflows/premerge.yaml
Log Message:
-----------
[CI] Move CI over to new project computation script
This patch migrates the CI over to the new compute_projects.py script
for calculating what projects need to be tested based on a change to
LLVM.
Reviewers: lnihlen, ldionne, tstellar, Endilll, joker-eph, Keenuts
Reviewed By: Keenuts, tstellar
Pull Request: https://github.com/llvm/llvm-project/pull/132642
Commit: 21eeca3db0341fef4ab4a6464ffe38b2eba5810c
https://github.com/llvm/llvm-project/commit/21eeca3db0341fef4ab4a6464ffe38b2eba5810c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-28 (Fri, 28 Mar 2025)
Changed paths:
M .ci/compute_projects.py
M .ci/compute_projects_test.py
Log Message:
-----------
[CI] Exclude docs directories from triggering rebuilds
Currently when someone touches a docs directory in a subproject, it is
treated as if the source code of that project got touched, so the
project is built, it is tested, and the same for all of its enumerated
dependents. This is wasteful, particularly for patches just touching
docs in places like LLVM where we might spend an hour of node time to do
nothing useful given changes in the docs shouldn't cause test failures
and there is already another workflow that tests the documentation build
completes successfully.
Reviewers: Keenuts, tstellar, lnihlen
Reviewed By: tstellar
Pull Request: https://github.com/llvm/llvm-project/pull/133185
Commit: b1d7a6f58b7928e935874d53f85141930893171f
https://github.com/llvm/llvm-project/commit/b1d7a6f58b7928e935874d53f85141930893171f
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-03-29 (Sat, 29 Mar 2025)
Changed paths:
R .ci/compute-projects.sh
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .ci/generate-buildkite-pipeline-premerge
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/premerge.yaml
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Core/Relocation.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
A bolt/test/AArch64/lite-mode.s
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/assets/index.js
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/argument-comment.rst
M clang-tools-extra/test/clang-doc/assets.cpp
M clang-tools-extra/test/clang-doc/basic-project.test
M clang-tools-extra/test/clang-doc/test-path-abs.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-var.cpp
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/Analysis/FlowSensitive/SmartPointerAccessorCaching.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsSPIRV.td
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Serialization/ASTDeserializationListener.h
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
M clang/lib/Basic/TargetID.cpp
M clang/lib/Basic/Targets/SPIR.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Lex/LexHLSLRootSignature.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaObjCProperty.cpp
M clang/lib/Sema/SemaSPIRV.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/test/AST/ast-dump-template-json-win32-mangler-crash.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/test/AST/ast-dump-types-json.cpp
M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
M clang/test/Analysis/analyzer-stats/entry-point-stats.cpp
M clang/test/Analysis/taint-generic.cpp
A clang/test/CodeGen/Mips/subtarget-feature-test.c
M clang/test/CodeGen/amdgpu-abi-version.c
M clang/test/CodeGen/amdgpu-address-spaces.cpp
M clang/test/CodeGen/bounds-checking-debuginfo.c
R clang/test/CodeGenCUDA/amdgpu-code-object-version-linking.cu
M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
M clang/test/CodeGenHIP/default-attributes.hip
M clang/test/CodeGenHLSL/builtins/WaveReadLaneAt.hlsl
M clang/test/CodeGenHLSL/builtins/clamp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/clip-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/degrees-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/frac-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/normalize-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/radians-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/rcp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/rsqrt-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/saturate-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/smoothstep.hlsl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
A clang/test/CodeGenSPIRV/Builtins/smoothstep.c
A clang/test/Driver/Inputs/resource_dir/lib/aix/libclang_rt.builtins-powerpc.a
A clang/test/Driver/Inputs/resource_dir/lib/aix/libclang_rt.builtins-powerpc64.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc-ibm-aix/libclang_rt.builtins.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/powerpc64-ibm-aix/libclang_rt.builtins.a
M clang/test/Driver/aix-ld.c
M clang/test/Driver/aix-print-runtime-dir.c
M clang/test/Driver/aix-rtlib.c
A clang/test/Driver/arch-arm64e.c
A clang/test/Driver/cuda-no-pgo-or-coverage.cu
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Frontend/print-stats.c
A clang/test/Modules/ComplexExplicitSpecifier.cpp
M clang/test/OpenMP/amdgcn_target_global_constructor.cpp
M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/clip-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/rsqrt-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/smoothstep-errors.hlsl
A clang/test/SemaSPIRV/BuiltIns/smoothstep-errors.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/unittests/Analysis/FlowSensitive/SmartPointerAccessorCachingTest.cpp
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/lib/asan/asan_activation.cpp
M compiler-rt/lib/asan/asan_flags.h
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/asan/asan_report.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/ctx_profile/CMakeLists.txt
M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
A compiler-rt/lib/ctx_profile/RootAutoDetector.cpp
A compiler-rt/lib/ctx_profile/RootAutoDetector.h
M compiler-rt/lib/ctx_profile/tests/CMakeLists.txt
A compiler-rt/lib/ctx_profile/tests/RootAutoDetectorTest.cpp
M compiler-rt/lib/memprof/memprof_flags.h
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/profile/InstrProfilingFile.c
M compiler-rt/lib/profile/InstrProfilingInternal.h
M compiler-rt/test/CMakeLists.txt
M compiler-rt/test/asan/TestCases/Posix/deep_call_stack.cpp
M compiler-rt/test/asan/TestCases/Posix/stack-overflow.cpp
M compiler-rt/test/asan/TestCases/alloca_instruments_all_paddings.cpp
M compiler-rt/test/lit.common.cfg.py
M compiler-rt/test/metadata/lit.cfg.py
M compiler-rt/test/sanitizer_common/TestCases/Darwin/malloc_zone.cpp
M compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp
M compiler-rt/test/tsan/Darwin/no_call_setenv_in_symbolize.cpp
M compiler-rt/test/tsan/Linux/clone_setns.cpp
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/openmp-modifiers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/openmp-modifiers.cpp
A flang/test/Driver/m64-option.f90
M flang/test/Fir/CUDA/cuda-constructor.f90
R flang/test/Lower/AMD/code-object-version.f90
A flang/test/Lower/OpenMP/Todo/interop-construct.f90
M flang/test/Lower/OpenMP/omp-is-gpu.f90
A flang/test/Parser/OpenMP/interop-construct.f90
A flang/test/Semantics/OpenMP/interop-construct.f90
A libc/Maintainers.rst
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/darwin/arm/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/CMakeLists.txt
A libc/docs/Maintainers.rst
M libc/docs/index.rst
M libc/include/stdlib.yaml
M libc/src/__support/CPP/atomic.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/stdlib/CMakeLists.txt
A libc/src/stdlib/memalignment.cpp
A libc/src/stdlib/memalignment.h
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/memalignment_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/mktime_test.cpp
M libclc/CMakeLists.txt
A libclc/clc/include/clc/math/binary_decl_with_int_second_arg.inc
A libclc/clc/include/clc/math/binary_def_with_int_second_arg.inc
A libclc/clc/include/clc/math/clc_pow.h
A libclc/clc/include/clc/math/clc_pown.h
A libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/tables.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_pow.cl
A libclc/clc/lib/generic/math/clc_pow.inc
A libclc/clc/lib/generic/math/clc_pown.cl
A libclc/clc/lib/generic/math/clc_pown.inc
A libclc/clc/lib/generic/math/clc_powr.cl
A libclc/clc/lib/generic/math/clc_powr.inc
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clspv/lib/SOURCES
M libclc/cmake/modules/AddLibclc.cmake
M libclc/generic/include/clc/math/pown.h
R libclc/generic/include/clc/math/pown.inc
R libclc/generic/include/math/clc_pow.h
R libclc/generic/include/math/clc_pown.h
R libclc/generic/include/math/clc_pown.inc
R libclc/generic/include/math/clc_powr.h
M libclc/generic/lib/SOURCES
M libclc/generic/lib/math/clc_exp10.cl
R libclc/generic/lib/math/clc_pow.cl
R libclc/generic/lib/math/clc_pown.cl
R libclc/generic/lib/math/clc_powr.cl
M libclc/generic/lib/math/clc_rootn.cl
M libclc/generic/lib/math/exp_helper.cl
M libclc/generic/lib/math/expm1.cl
M libclc/generic/lib/math/pow.cl
M libclc/generic/lib/math/pown.cl
R libclc/generic/lib/math/pown.inc
M libclc/generic/lib/math/powr.cl
M libclc/generic/lib/math/tables.cl
M libclc/spirv/lib/SOURCES
M libcxx/cmake/caches/AMDGPU.cmake
M libcxx/include/__memory/allocator_traits.h
M libcxx/include/__tree
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/ctor.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_bool.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_pointer.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_unsigned_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_unsigned_long_long.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.virtuals/tested_elsewhere.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/types.pass.cpp
M libcxx/utils/ci/run-buildbot
M lld/ELF/Driver.cpp
M lld/ELF/Relocations.cpp
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/Options.td
M lld/MachO/SymbolTable.cpp
M lld/MachO/SyntheticSections.cpp
M lld/test/ELF/aarch64-feature-pac.s
M lld/test/ELF/riscv-relax-hi20-lo12-pie.s
M lld/test/ELF/weak-undef-rw.s
M lld/test/MachO/icf-safe-thunks-dwarf.ll
A lld/test/MachO/interposable.s
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Host/common/NativeProcessProtocol.cpp
M lldb/source/Plugins/ExpressionParser/Clang/CxxModuleHandler.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
M lldb/test/API/lang/c/calling-conventions/TestCCallingConventions.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SetInstructionBreakpointsRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Protocol/ProtocolBase.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolBase.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
A lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
M lldb/tools/lldb-dap/src-ts/extension.ts
A lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
A lldb/tools/lldb-dap/src-ts/ui/error-with-notification.ts
A lldb/tools/lldb-dap/src-ts/ui/show-error-message.ts
M llvm/Maintainers.md
M llvm/cmake/modules/CheckProblematicConfigurations.cmake
M llvm/docs/CommandGuide/llvm-reduce.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/SandboxIR.md
A llvm/docs/SandboxVectorizer.md
M llvm/docs/Security.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/docs/Vectorizers.rst
M llvm/include/llvm/ADT/AddressRanges.h
A llvm/include/llvm/Analysis/StaticDataProfileInfo.h
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/CodeGen/Passes.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/ProfileData/InstrProfData.inc
M llvm/include/llvm/SandboxIR/Constant.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/include/llvm/Support/AMDGPUAddrSpace.h
M llvm/include/llvm/Support/GenericDomTreeConstruction.h
A llvm/include/llvm/Support/KnownFPClass.h
M llvm/include/llvm/TableGen/Record.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
M llvm/lib/Analysis/CMakeLists.txt
M llvm/lib/Analysis/DependenceGraphBuilder.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/LazyCallGraph.cpp
M llvm/lib/Analysis/MemorySSAUpdater.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
A llvm/lib/Analysis/StaticDataProfileInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/lib/CodeGen/RDFGraph.cpp
M llvm/lib/CodeGen/RDFLiveness.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/lib/CodeGen/StaticDataSplitter.cpp
M llvm/lib/CodeGen/TargetPassConfig.cpp
M llvm/lib/ExecutionEngine/Orc/GetDylibInterface.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/IR/VFABIDemangler.cpp
M llvm/lib/Object/IRSymtab.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/SampleProf.cpp
M llvm/lib/SandboxIR/Constant.cpp
M llvm/lib/Support/CMakeLists.txt
A llvm/lib/Support/KnownFPClass.cpp
M llvm/lib/TableGen/Record.cpp
M llvm/lib/TableGen/TGLexer.cpp
M llvm/lib/TableGen/TGLexer.h
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostSelectOptimize.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/LoongArch/LoongArchFloatInstrFormats.td
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsISelLowering.h
M llvm/lib/Target/Mips/MipsInstrInfo.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.h
M llvm/lib/Target/Mips/MipsSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZicbo.td
A llvm/lib/Target/RISCV/RISCVLateBranchOpt.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanSLP.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/addsubu64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.global.atomic.csub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.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/bf16.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/cgp-addressing-modes-flat.ll
M llvm/test/CodeGen/AMDGPU/div-rem-by-constant-64.ll
M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/AMDGPU/gfx10-vop-literal.ll
M llvm/test/CodeGen/AMDGPU/gfx12_scalar_subword_loads.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/load-constant-always-uniform.ll
M llvm/test/CodeGen/AMDGPU/lrint.ll
M llvm/test/CodeGen/AMDGPU/lround.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/match-perm-extract-vector-elt-bug.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/memmove-var-size.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
A llvm/test/CodeGen/AMDGPU/nor-divergent-lanemask.ll
M llvm/test/CodeGen/AMDGPU/offset-split-flat.ll
M llvm/test/CodeGen/AMDGPU/offset-split-global.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
M llvm/test/CodeGen/AMDGPU/saddo.ll
M llvm/test/CodeGen/AMDGPU/saddsat.ll
M llvm/test/CodeGen/AMDGPU/shl64_reduce.ll
M llvm/test/CodeGen/AMDGPU/shl_add_ptr_csub.ll
M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
M llvm/test/CodeGen/AMDGPU/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/sub.ll
M llvm/test/CodeGen/AMDGPU/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
M llvm/test/CodeGen/AMDGPU/usubsat.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-add.ll
M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
A llvm/test/CodeGen/DirectX/remove-dead-intriniscs.ll
M llvm/test/CodeGen/NVPTX/f16-instructions.ll
M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/fast-math.ll
A llvm/test/CodeGen/NVPTX/frem.ll
M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
M llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-convert.ll
M llvm/test/CodeGen/RISCV/GlobalISel/fp128.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb-zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbkb.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/abdu-neg.ll
M llvm/test/CodeGen/RISCV/abdu.ll
M llvm/test/CodeGen/RISCV/alu8.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/atomic-rmw.ll
M llvm/test/CodeGen/RISCV/atomic-signext.ll
M llvm/test/CodeGen/RISCV/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/avgceilu.ll
M llvm/test/CodeGen/RISCV/avgflooru.ll
M llvm/test/CodeGen/RISCV/bfloat-br-fcmp.ll
M llvm/test/CodeGen/RISCV/branch_zero.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
M llvm/test/CodeGen/RISCV/calling-conv-sext-zext.ll
M llvm/test/CodeGen/RISCV/csr-first-use-cost.ll
M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
M llvm/test/CodeGen/RISCV/div.ll
M llvm/test/CodeGen/RISCV/double-br-fcmp.ll
M llvm/test/CodeGen/RISCV/double-convert.ll
M llvm/test/CodeGen/RISCV/early-clobber-tied-def-subreg-liveness.ll
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/CodeGen/RISCV/float-br-fcmp.ll
M llvm/test/CodeGen/RISCV/float-convert.ll
M llvm/test/CodeGen/RISCV/fold-mem-offset.ll
M llvm/test/CodeGen/RISCV/half-br-fcmp.ll
M llvm/test/CodeGen/RISCV/half-convert.ll
M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts.ll
M llvm/test/CodeGen/RISCV/machine-combiner.ll
M llvm/test/CodeGen/RISCV/machine-sink-load-immediate.ll
M llvm/test/CodeGen/RISCV/memset-inline.ll
M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
M llvm/test/CodeGen/RISCV/pr65025.ll
M llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll
M llvm/test/CodeGen/RISCV/rem.ll
M llvm/test/CodeGen/RISCV/rv32zbkb.ll
M llvm/test/CodeGen/RISCV/rv64zbkb.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
M llvm/test/CodeGen/RISCV/rvv/fold-scalar-load-crash.ll
M llvm/test/CodeGen/RISCV/rvv/memset-inline.ll
A llvm/test/CodeGen/RISCV/rvv/pr133217.ll
M llvm/test/CodeGen/RISCV/rvv/rv32-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/rv64-spill-zvlsseg.ll
M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
M llvm/test/CodeGen/RISCV/rvv/vector-extract-last-active.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvl-ext.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvlmax-ext.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/RISCV/rvv/zvlsseg-spill.mir
M llvm/test/CodeGen/RISCV/sext-zext-trunc.ll
M llvm/test/CodeGen/RISCV/simplify-condbr.ll
M llvm/test/CodeGen/RISCV/split-store.ll
M llvm/test/CodeGen/RISCV/typepromotion-overflow.ll
M llvm/test/CodeGen/RISCV/uadd_sat_plus.ll
M llvm/test/CodeGen/RISCV/usub_sat_plus.ll
M llvm/test/CodeGen/RISCV/zbb-logic-neg-imm.ll
M llvm/test/CodeGen/RISCV/zcb-regalloc-hints.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smoothstep.ll
A llvm/test/CodeGen/SPIRV/opencl/smoothstep.ll
M llvm/test/CodeGen/SPIRV/structurizer/cf.switch.ifstmt.simple2.ll
A llvm/test/CodeGen/SPIRV/structurizer/loop-unroll.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/combine-bitselect.ll
A llvm/test/CodeGen/X86/global-variable-partition.ll
M llvm/test/CodeGen/X86/pr42905.ll
M llvm/test/CodeGen/X86/sad.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-fmin-fast.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-mul.ll
A llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vl.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
A llvm/test/ExecutionEngine/JITLink/x86-64/Inputs/libFooUniversalDylib.yaml
A llvm/test/ExecutionEngine/JITLink/x86-64/MachO_foo-in-weak-dylib.s
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse2-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/mmx-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/sse2-intrinsics-i386.ll
A llvm/test/MC/Disassembler/RISCV/c_lui_disasm.txt
A llvm/test/MC/Disassembler/RISCV/xqccmp-invalid-rlist.txt
M llvm/test/MC/LoongArch/Relocations/relocations.s
M llvm/test/MC/LoongArch/lasx/invalid-imm.s
M llvm/test/MC/LoongArch/lsx/invalid-imm.s
M llvm/test/MC/PowerPC/ppc64-fixups.s
M llvm/test/MC/RISCV/rv32i-aliases-valid.s
M llvm/test/MC/RISCV/rv32xqccmp-invalid.s
M llvm/test/MC/RISCV/rv32xqccmp-valid.s
M llvm/test/MC/RISCV/rv64e-xqccmp-valid.s
M llvm/test/MC/RISCV/rv64i-aliases-valid.s
M llvm/test/MC/RISCV/rv64xqccmp-valid.s
A llvm/test/MC/RISCV/xqciio-aliases-valid.s
A llvm/test/MC/RISCV/xqciio-invalid.s
A llvm/test/MC/RISCV/xqciio-valid.s
M llvm/test/Other/time-passes.ll
A llvm/test/TableGen/CompressInstEmitter/suboperands.td
A llvm/test/TableGen/instances.td
A llvm/test/Transforms/HotColdSplit/musttail.ll
M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-op-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-vplan.ll
M llvm/test/Transforms/LoopVectorize/AArch64/synthesize-mask-for-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-icmpcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/short-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/X86/reduction-small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
A llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
M llvm/test/Transforms/LoopVectorize/uncountable-early-exit-vplan.ll
M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge-vf1.ll
M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
M llvm/test/Transforms/LoopVectorize/vplan-widen-struct-return.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
M llvm/test/Transforms/SLPVectorizer/NVPTX/v2f16.ll
A llvm/test/Transforms/SLPVectorizer/X86/split-node-parent-operands-in-spill.ll
M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
A llvm/test/tools/llvm-reduce/Inputs/flaky-test.py
M llvm/test/tools/llvm-reduce/distinct-dimetadata-nullptr.ll
A llvm/test/tools/llvm-reduce/flaky-interestingness.ll
M llvm/test/tools/llvm-reduce/operands-to-args-metadata.ll
A llvm/test/tools/llvm-reduce/reduce-arguments-invoke.ll
A llvm/test/tools/llvm-reduce/reduce-arguments-non-callee-use.ll
A llvm/test/tools/llvm-reduce/reduce-arguments-x86_intrcc.ll
M llvm/test/tools/llvm-reduce/reduce-distinct-metadata.ll
A llvm/test/tools/llvm-reduce/remove-argument-preserve-attributes.ll
A llvm/test/tools/llvm-reduce/remove-arguments-preserve-bundles.ll
A llvm/test/tools/llvm-reduce/remove-arguments-preserve-fmf.ll
A llvm/test/tools/llvm-reduce/remove-arguments-preserve-wrong-cc.ll
A llvm/test/tools/llvm-reduce/remove-attributes-convergent-uncontrolled.ll
A llvm/test/tools/llvm-reduce/remove-attributes-convergent.ll
M llvm/test/tools/llvm-reduce/remove-attributes-from-intrinsics.ll
M llvm/test/tools/llvm-reduce/remove-function-bodies.ll
R llvm/test/tools/llvm-reduce/remove-ifunc-constantexpr.ll
M llvm/test/tools/llvm-reduce/remove-instructions.ll
M llvm/test/tools/llvm-reduce/remove-metadata.ll
M llvm/test/tools/llvm-reduce/remove-module-data.ll
M llvm/test/tools/llvm-reduce/remove-multiple-use-of-args-in-same-instruction.ll
M llvm/test/tools/llvm-reduce/skip-delta-passes.ll
M llvm/test/tools/llvm-reduce/temporary-files-as-bitcode-split.ll
M llvm/test/tools/llvm-reduce/temporary-files-as-bitcode.ll
M llvm/tools/bugpoint/CrashDebugger.cpp
M llvm/tools/llvm-extract/llvm-extract.cpp
M llvm/tools/llvm-lto/llvm-lto.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/tools/llvm-reduce/deltas/Delta.cpp
M llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp
M llvm/tools/llvm-reduce/deltas/ReduceAttributes.cpp
M llvm/tools/llvm-reduce/deltas/ReduceDIMetadata.cpp
M llvm/tools/llvm-reduce/deltas/ReduceInstructions.cpp
M llvm/tools/llvm-reduce/deltas/ReduceOperandsSkip.cpp
M llvm/tools/llvm-reduce/deltas/ReduceOperandsToArgs.cpp
M llvm/tools/opt/NewPMDriver.cpp
M llvm/unittests/ADT/DirectedGraphTest.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/CompressInstEmitter.cpp
M llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
M mlir/docs/DefiningDialects/Operations.md
M mlir/include/mlir/Analysis/Presburger/Simplex.h
M mlir/include/mlir/AsmParser/AsmParser.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/include/mlir/IR/EnumAttr.td
M mlir/include/mlir/TableGen/EnumInfo.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/AsmParser/AttributeParser.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/IR/Verifier.cpp
M mlir/lib/Interfaces/InferIntRangeInterface.cpp
M mlir/lib/TableGen/EnumInfo.cpp
M mlir/lib/TableGen/Pattern.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Transforms/RemoveDeadValues.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Dialect/Arith/emulate-wide-int.mlir
M mlir/test/Dialect/Arith/int-range-interface.mlir
M mlir/test/Dialect/LLVMIR/func.mlir
M mlir/test/Dialect/LLVMIR/global.mlir
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir
M mlir/test/Dialect/SCF/uplift-while.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/IR/attribute.mlir
M mlir/test/IR/invalid-builtin-attributes.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-fptosi-i64.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-fptoui-i64.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-subi-i32.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/sm80/transform-mma-sync-matmul-f16-f16-accum.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/sm80/transform-mma-sync-matmul-f32.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f16.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f32-bare-ptr.mlir
M mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f32.mlir
M mlir/test/Target/LLVMIR/Import/global-variables.ll
M mlir/test/Target/LLVMIR/Import/import-failure.ll
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/test/Transforms/remove-dead-values.mlir
M mlir/test/lib/Dialect/Test/TestEnumDefs.td
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
M mlir/test/mlir-runner/global-constructors.mlir
M mlir/test/mlir-tblgen/enums-gen.td
M mlir/test/mlir-tblgen/op-properties-predicates.td
M mlir/tools/mlir-tblgen/EnumPythonBindingGen.cpp
M mlir/tools/mlir-tblgen/EnumsGen.cpp
M mlir/tools/mlir-tblgen/OpDocGen.cpp
M mlir/tools/mlir-tblgen/RewriterGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
M mlir/utils/spirv/gen_spirv_dialect.py
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/src/Workshare.cpp
M offload/include/OffloadPolicy.h
M offload/libomptarget/PluginManager.cpp
A offload/test/offloading/fortran/target-teams-dist-nest-par.f90
M offload/test/offloading/gpupgo/pgo1.c
M offload/test/offloading/gpupgo/pgo2.c
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/ded5a0058fc9...b1d7a6f58b79
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