[all-commits] [llvm/llvm-project] a1bdb0: [VectorCombine] Change shuffleToIdentity to use Us...
Enna1 via All-commits
all-commits at lists.llvm.org
Tue Jun 18 18:14:47 PDT 2024
Branch: refs/heads/users/Enna1/BPI-use-isEHPad
Home: https://github.com/llvm/llvm-project
Commit: a1bdb016564d3c0867e83f3bb7494bfe8128f4b6
https://github.com/llvm/llvm-project/commit/a1bdb016564d3c0867e83f3bb7494bfe8128f4b6
Author: David Green <david.green at arm.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
Log Message:
-----------
[VectorCombine] Change shuffleToIdentity to use Use. NFC
When looking up through shuffles, a Value can be multiple different leaf types
(for example an identity from one position, a splat from another). We currently
detect this by recalculating which type of leaf it is when generating, but as
more types of leafs are added (#94954) this doesn't scale very well.
This patch switches it to use Use, not Value, to more accurately detect which
type of leaf each Use should have.
Commit: 4cf1a19b7eb67f0f3e1d70b5d513b5404692119d
https://github.com/llvm/llvm-project/commit/4cf1a19b7eb67f0f3e1d70b5d513b5404692119d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-system.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-system.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-fp-vector.ll
Log Message:
-----------
Reapply "AMDGPU: Handle legal v2f16/v2bf16 atomicrmw fadd for global/flat (#95394)"
This reverts commit 95b77d90aae10725ea692e120aac083ef1c1297d.
Commit: c659e3a3f8ab797e65ca72a969b74cd06b1dfbd2
https://github.com/llvm/llvm-project/commit/c659e3a3f8ab797e65ca72a969b74cd06b1dfbd2
Author: Piotr Fusik <piotr at fusion-lang.org>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/docs/TableGen/ProgRef.rst
Log Message:
-----------
[TableGen][Docs] Fix `!range` markup (#95540)
Commit: d3da134487ca62da09c51ec598798bf8eff027d3
https://github.com/llvm/llvm-project/commit/d3da134487ca62da09c51ec598798bf8eff027d3
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
Log Message:
-----------
[RISCV] Add coverage for vsetvli insertion at O0 [nfc]
In review around https://github.com/llvm/llvm-project/pull/94686, we had
a discussion about a possible O0 specific miscompile case without test
coverage. The particular case turned out not be possible to exercise in
practice, but improving our test coverage remains a good idea if we're
going to have differences in the dataflow with and without live intervals.
Commit: f06575832aac0682c4d7383de34d2a9c20aa5837
https://github.com/llvm/llvm-project/commit/f06575832aac0682c4d7383de34d2a9c20aa5837
Author: Angel Zhang <angel.zhang at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
A mlir/test/mlir-vulkan-runner/vector-deinterleave.mlir
Log Message:
-----------
[mlir][spirv] Reland integration test for `vector.deinterleave` (#95800)
This PR relands the commit reverted in #95607.
Fixes:
- Now literals are only used for the indices of `vector.insert` and
`vector.extract`.
- `arith.constant` needs to be used for the `memref.load` and
`memref.store` since otherwise there will be a failure to parse the
input IR.
Commit: c11677eedb2c302df0392af4bf21fb2f4978669b
https://github.com/llvm/llvm-project/commit/c11677eedb2c302df0392af4bf21fb2f4978669b
Author: GkvJwa <gkvjwa at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lld/COFF/InputFiles.cpp
M lld/test/COFF/pdb-type-server-simple.test
Log Message:
-----------
[LLD][COFF] Support finding pdb files from outputpath (#94153)
In addition to looking for dependent (input) PDB files next to the associated .OBJ file, we now also look into the output folder as well. This mimics MSVC link.exe behavior.
Fixes #94152
Commit: 964c92d04f039a205327cb47c75919096f9fca94
https://github.com/llvm/llvm-project/commit/964c92d04f039a205327cb47c75919096f9fca94
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.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-unaligned.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
Log Message:
-----------
[RISCV][InsertVSETVLI] Eliminate the AVLIsIgnored state (#94658)
As noted in one of the existing comments, the job AVLIsIgnored was
filing was really more of a demanded field role. Since we recently
realized we can use the values of VL on MI even in the backwards pass,
let's exploit that to improve demanded fields, and delete AVLIsIgnored.
Note that the test change is a real regression, but only incidental to
this patch. The backwards pass doesn't have the information that the VL
following a VL-preserving vtype is non-zero. This is an existing
problem, this patch just adds a few more cases where we prove
vl-preserving is legal.
Commit: 0851d7b00c651d527a37becc206566580bf3c615
https://github.com/llvm/llvm-project/commit/0851d7b00c651d527a37becc206566580bf3c615
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
M clang/test/Analysis/equality_tracking.c
M clang/test/Analysis/errno-stdlibraryfunctions.c
Log Message:
-----------
[clang][analyzer] use unqualified canonical type during merging equivalence class (#95729)
Fixes: #95658
Unqualified canonical type should be used instead of normal QualType for
type equality comparison
Commit: 8fe376f5ecf908856a4e817015c5796ca5307dae
https://github.com/llvm/llvm-project/commit/8fe376f5ecf908856a4e817015c5796ca5307dae
Author: Alexandre Ganea <aganea at havenstudios.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/utils/release/build_llvm_release.bat
Log Message:
-----------
[llvm] Fix incorrect usage of `LIBXML2_INCLUDE_DIRS` in the Windows release script (#95781)
Before this fix, when building the Windows LLVM package with the latest
cmake 3.29.3 I was seeing:
```
C:\git\llvm-project>llvm\utils\release\build_llvm_release.bat --version 19.0.0 --x64 --skip-checkout --local-python
...
-- Looking for FE_INEXACT
-- Looking for FE_INEXACT - found
-- Performing Test HAVE_BUILTIN_THREAD_POINTER
-- Performing Test HAVE_BUILTIN_THREAD_POINTER - Failed
-- Looking for mach/mach.h
-- Looking for mach/mach.h - not found
-- Looking for CrashReporterClient.h
-- Looking for CrashReporterClient.h - not found
-- Looking for pfm_initialize in pfm
-- Looking for pfm_initialize in pfm - not found
-- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
CMake Error at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find LibXml2 (missing: LIBXML2_INCLUDE_DIR)
Call Stack (most recent call first):
C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
C:/Program Files/CMake/share/cmake-3.29/Modules/FindLibXml2.cmake:108 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
cmake/config-ix.cmake:167 (find_package)
CMakeLists.txt:921 (include)
-- Configuring incomplete, errors occurred!
```
It looks like `LIBXML2_INCLUDE_DIRS` (with the extra 'S') is a result
variable that is set by cmake after a call to `find_package(LibXml2)`.
It is actually `LIBXML2_INCLUDE_DIR` (without the 'S') that shold be
used as a input before the `find_package` call, since the 'S' variable
is unconditionally overwritten, see
https://github.com/Kitware/CMake/blob/master/Modules/FindLibXml2.cmake#L96.
I am unsure exactly why that worked with older cmake versions.
Commit: 13c66388db650d7766b5eb63c09ef84bb5c9e9b8
https://github.com/llvm/llvm-project/commit/13c66388db650d7766b5eb63c09ef84bb5c9e9b8
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lldb/test/requirements.txt
Log Message:
-----------
[lldb] Add packaging to testing requirements.txt (#95806)
To fix CI after https://github.com/llvm/llvm-project/pull/93712 landed.
Commit: b6476e5549ccb728336a67faa5078b2021fd389a
https://github.com/llvm/llvm-project/commit/b6476e5549ccb728336a67faa5078b2021fd389a
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Retain branch in middle block when scalar epilogue is needed (NFC)
splitBlock will create a unconditional branch between the middle block
and scalar preheader. Instead of creating and replacing the same branch
again when scalar epilogue is needed, simply add an early exit.
As suggested by @ayalz in
https://github.com/llvm/llvm-project/pull/92651 to clarify the existing
code.
Commit: fae31e283203da9a4a3225e2d016e245d4887c2f
https://github.com/llvm/llvm-project/commit/fae31e283203da9a4a3225e2d016e245d4887c2f
Author: John Brawn <john.brawn at arm.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/test/CodeGenCXX/debug-info-structured-binding-bitfield.cpp
Log Message:
-----------
[DebugInfo] Change handling of structured bindings of bitfields (#94632)
Currently we use DW_OP_plus_uconst to handle the bitfield offset and
handle the bitfield size by choosing a type size that matches, but this
doesn't work if either offset or size aren't byte-aligned. Extracting
the bits using DW_OP_LLVM_extract_bits means we can handle any kind of
offset or size.
Commit: 85f4593e856e5034c5de1e6bbea13fb59e1995f5
https://github.com/llvm/llvm-project/commit/85f4593e856e5034c5de1e6bbea13fb59e1995f5
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/loops3.f90
Log Message:
-----------
[flang] Add a REDUCE clause to each nested loop (#95555)
For DO CONCURRENT REDUCE, every nested loop should have a REDUCE clause
so that we can lower reduction without analysis.
Commit: 3380644fb070fd6648e873b1e75022bdfc432f1f
https://github.com/llvm/llvm-project/commit/3380644fb070fd6648e873b1e75022bdfc432f1f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lldb/include/lldb/Utility/SupportFile.h
M lldb/source/Symbol/LineEntry.cpp
Log Message:
-----------
[lldb] Remove SupportFile::Update and use the original Checksum (#95623)
When Jason was looking into the issue caused by #95606 he suggested
using the Checksum from the original file in LineEntry. I like the idea
because it makes sense semantically, but also allows us to get rid of
the Update method and ensures we make a new copy, in case someone else
is holding onto the old SupportFile.
Commit: e577f96e3b5e6f2b9f0687fd61ef9c68ca36afbe
https://github.com/llvm/llvm-project/commit/e577f96e3b5e6f2b9f0687fd61ef9c68ca36afbe
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
Log Message:
-----------
[AMDGPU] Move FeatureMaxHardClauseLength32 into FeatureISAVersion12. NFC. (#95808)
Commit: 5914a5671a1596f68189c8408f8d877e6b6373bf
https://github.com/llvm/llvm-project/commit/5914a5671a1596f68189c8408f8d877e6b6373bf
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M .github/workflows/pr-code-format.yml
Log Message:
-----------
[GitHub][workflows] Use latest clang-format version 18.1.7 (#95757)
Since clang-format 18.1.4, there have been a number of commits that
fixed various kinds of issues:
- Bug
3ceccbdb1995
- Regression
6dbaa89433f7
51ff7f38b633
35fea1032741
7699b341b763
768118d1ad38
8c0fe0d65ed8
- Crash
f1491c7460e7
- Invalid code generation
0abb89a80f5c
Commit: d1a4f0c9fb559eb4c2fb56112e56343bcd333edc
https://github.com/llvm/llvm-project/commit/d1a4f0c9fb559eb4c2fb56112e56343bcd333edc
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sitofp-to-tbl.ll
Log Message:
-----------
[AArch64] Lower extending sitofp using tbl (#92528)
In a similar manner as in https://reviews.llvm.org/D133494
use `TBL` to place bytes in the *upper* part of `i32` elements
and then convert to float using fixed-point `scvtf`, i.e.
scvtf Vd.4s, Vn.4s, #24
Commit: fe3f8ad8cc209c1f73a3c9465b46701120de51f7
https://github.com/llvm/llvm-project/commit/fe3f8ad8cc209c1f73a3c9465b46701120de51f7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
Log Message:
-----------
[X86] getIntrinsicInstrCost - begin generalizing BSWAP load/store-folding handling.
Move load/store folding 'free costs' inside the adjustTableCost helper so we can some additional intrinsics in the future.
The plan is to do something similar for other costs callbacks as well (getArithmeticInstrCost etc.).
Commit: 7e3507e2f565bfc63d4a3f098ab770dce842ed32
https://github.com/llvm/llvm-project/commit/7e3507e2f565bfc63d4a3f098ab770dce842ed32
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitAVG - avoid duplication in the avg(ext(x), ext(y)) -> ext(avg(x, y)) folds
m_BinOp doesn't need a compile time opcode - so we can merge these into signed/unsigned cases.
Commit: a1994ae6247ddd0374c7eb3a5d421925117833ab
https://github.com/llvm/llvm-project/commit/a1994ae6247ddd0374c7eb3a5d421925117833ab
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lldb/test/API/lit.cfg.py
Log Message:
-----------
[lldb] More reliably detect a virtual environment
More reliably detect whether the API tests are running in a virtual
environment by comparing sys.prefix and sys.base_prefix [1].
[1] https://docs.python.org/3/library/sys.html#sys.base_prefix
Commit: 2ebe4794b1bdb3519d5dda7ef39f32d868dfa9b0
https://github.com/llvm/llvm-project/commit/2ebe4794b1bdb3519d5dda7ef39f32d868dfa9b0
Author: Oleksandr T <oleksandr.tarasiuk at outlook.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
A clang/test/Sema/integral-to-ptr.c
Log Message:
-----------
[Clang] Disallow non-lvalue values in constant expressions to prevent invalid pointer offset computation (#95479)
Fixes #95366
Commit: 4447e255a908c4e1a2863374eaee4bc98e773c3d
https://github.com/llvm/llvm-project/commit/4447e255a908c4e1a2863374eaee4bc98e773c3d
Author: Mital Ashok <mital at mitalashok.co.uk>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.nodiscard/p2.cpp
Log Message:
-----------
[NFC] Refactor `[[nodiscard]]` test to not use macros and run under `-pedantic` (#95762)
Commit: 3ad31e12ccfc7db25f3cbedc4ee966e7099ac78f
https://github.com/llvm/llvm-project/commit/3ad31e12ccfc7db25f3cbedc4ee966e7099ac78f
Author: Mital Ashok <mital at mitalashok.co.uk>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ExprCXX.h
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/CodeGen/CGCXXABI.h
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/SemaCXX/warn-unused-value.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[Clang] Introduce `CXXTypeidExpr::hasNullCheck` (#95718)
Used to implement CWG2191 where `typeid` for a polymorphic glvalue only
becomes potentially-throwing if the `typeid` operand was already
potentially throwing or a `nullptr` check was inserted:
https://cplusplus.github.io/CWG/issues/2191.html
Also change `Expr::hasSideEffects` for `CXXTypeidExpr` to check the
operand for side-effects instead of always reporting that there are
side-effects
Remove `IsDeref` parameter of `CGCXXABI::shouldTypeidBeNullChecked`
because it should never return `true` if `!IsDeref` (we shouldn't add a
null check that wasn't there in the first place)
Commit: a4b44c003e35bb6ed78af6300e576554d41f0368
https://github.com/llvm/llvm-project/commit/a4b44c003e35bb6ed78af6300e576554d41f0368
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-add.ll
Log Message:
-----------
[InstCombine] Canonicalize `icmp ult (add X, C2), C` expressions
`icmp ult (add X, C2), C` can be folded to `icmp ne (and X, C), 2C`,
subject to `C == -C2` and C2 being a power of 2.
Proofs: https://alive2.llvm.org/ce/z/P-VVmQ.
Fixes: https://github.com/llvm/llvm-project/issues/75613.
Commit: 3a2e4428938476a4822f4da7193e866e9dd585d9
https://github.com/llvm/llvm-project/commit/3a2e4428938476a4822f4da7193e866e9dd585d9
Author: Peiming Liu <peiming at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.h
M mlir/test/Dialect/SparseTensor/sparse_iteration_to_scf.mlir
Log Message:
-----------
[mlir][sparse] implement lowering rules for IterateOp. (#95286)
Commit: 21ba91c43902c25bfd55cc03fd245c3fe274717b
https://github.com/llvm/llvm-project/commit/21ba91c43902c25bfd55cc03fd245c3fe274717b
Author: Krzysztof Pszeniczny <kpszeniczny at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-matching-LCS.ll
Log Message:
-----------
[SamplePGO] Add a cutoff for number of profile matching anchors (#95542)
The algorithm added by PR #87375 can be potentially quadratic in the
number of anchors. This is almost never a problem because normally
functions have a reasonable number of function calls.
However, in some rare cases of auto-generated code we observed very
large functions that trigger quadratic behaviour here (resulting in
>130GB of peak heap memory usage for clang). Let's add a knob for
controlling the max number of callsites in a function above which stale
profile matching won't be performed.
Commit: 13d983e730297ad454d53a0a97e1f72499b489f1
https://github.com/llvm/llvm-project/commit/13d983e730297ad454d53a0a97e1f72499b489f1
Author: Matthias Springer <me at m-sp.org>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Conversion/ArithToLLVM/convert-nd-vector-to-llvmir.mlir
M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv.mlir
M mlir/test/Conversion/IndexToLLVM/index-to-llvm.mlir
M mlir/test/Conversion/IndexToSPIRV/index-to-spirv.mlir
M mlir/test/Conversion/MathToSPIRV/math-to-core-spirv.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
M mlir/test/Conversion/VectorToLLVM/vector-scalable-memcpy.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/SCF/bufferize.mlir
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[mlir][Transforms][NFC] Dialect Conversion: Resolve insertion point TODO (#95653)
Remove a TODO in the dialect conversion code base when materializing
unresolved conversions:
```
// FIXME: Determine a suitable insertion location when there are multiple
// inputs.
```
The implementation used to select an insertion point as follows:
- If the cast has exactly one operand: right after the definition of the
SSA value.
- Otherwise: right before the cast op.
However, it is not necessary to change the insertion point. Unresolved
materializations (`UnrealizedConversionCastOp`) are built during
`buildUnresolvedArgumentMaterialization` or
`buildUnresolvedTargetMaterialization`. In the former case, the op is
inserted at the beginning of the block. In the latter case, only one
operand is supported in the dialect conversion, and the op is inserted
right after the definition of the SSA value. I.e., the
`UnrealizedConversionCastOp` is already inserted at the right place and
it is not necessary to change the insertion point for the resolved
materialization op.
Note: The IR change changes slightly because the
`unrealized_conversion_cast` ops at the beginning of a block are no
longer doubly-inverted (by setting the insertion to the beginning of the
block when inserting the `unrealized_conversion_cast` and again when
inserting the resolved conversion op). All affected test cases were
fixed by using `CHECK-DAG` instead of `CHECK`.
Also improve the quality of multiple test cases that did not check for
the correct operands.
Note: This commit is in preparation of decoupling the
argument/source/target materialization logic of the type converter from
the dialect conversion (to reduce its complexity and make that
functionality usable from a new dialect conversion driver).
Commit: 15399890beb69f622ad0f04a544369fa7947d50b
https://github.com/llvm/llvm-project/commit/15399890beb69f622ad0f04a544369fa7947d50b
Author: Angel Zhang <angel.zhang at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/test/mlir-vulkan-runner/vector-deinterleave.mlir
Log Message:
-----------
[mlir][spirv] Remove debug option from the `RUN` command in `vector-deinterleave.mlir` (#95820)
This PR is based on #95800. It removes a debug option from the `RUN`
command in `vector-deinterleave.mlir`.
Commit: 996905d8152def16ca2fa1322367e493ac6eef5e
https://github.com/llvm/llvm-project/commit/996905d8152def16ca2fa1322367e493ac6eef5e
Author: Peiming Liu <peiming at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.h
M mlir/test/Dialect/SparseTensor/sparse_iteration_to_scf.mlir
Log Message:
-----------
Revert "[mlir][sparse] implement lowering rules for IterateOp." (#95826)
Reverts llvm/llvm-project#95286
Commit: 7439072289f41d46d563763509d5d0d0cb62f3a0
https://github.com/llvm/llvm-project/commit/7439072289f41d46d563763509d5d0d0cb62f3a0
Author: Petr Hosek <phosek at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Fuchsia.cpp
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/asan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/asan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/compat/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/hwasan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/hwasan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/asan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/asan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/compat/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/hwasan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/hwasan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/asan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/asan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/compat/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/hwasan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/hwasan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/aarch64-unknown-fuchsia/ubsan+noexcept/libc++.so
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/aarch64-unknown-fuchsia/ubsan/libc++.so
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/x86_64-unknown-fuchsia/ubsan+noexcept/libc++.so
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/x86_64-unknown-fuchsia/ubsan/libc++.so
M clang/test/Driver/fuchsia.cpp
Log Message:
-----------
[Driver][Fuchsia] Support multilib for C++ include dir (#95815)
We generate a separate `__config_site` for each multilib and thus need
to add the additional include dir if it exists.
Commit: 111507ed4ce49bbb8cfbf36a3e143bb25f0f13c0
https://github.com/llvm/llvm-project/commit/111507ed4ce49bbb8cfbf36a3e143bb25f0f13c0
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
A llvm/test/CodeGen/RISCV/rvv/pr93587.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
Log Message:
-----------
[RISCV] Teach RISCVInsertVSETVLI to work without LiveIntervals (#94686)
Stacked on https://github.com/llvm/llvm-project/pull/94658.
We recently moved RISCVInsertVSETVLI from before vector register
allocation to after vector register allocation. When doing so, we added
an unconditional dependency on LiveIntervals - even at O0 where
LiveIntevals hadn't previously run. As reported in #93587, this was
apparently not safe to do.
This change makes LiveIntervals optional, and adjusts all the update
code to only run wen live intervals is present. The only real tricky
part of this change is the abstract state tracking in the dataflow. We
need to represent a "register w/unknown definition" state - but only
when we don't have LiveIntervals.
This adjust the abstract state definition so that the AVLIsReg state can
represent either a register + valno, or a register + unknown definition.
With LiveIntervals, we have an exact definition for each AVL use.
Without LiveIntervals, we treat the definition of a register AVL as
being unknown.
The key semantic change is that we now have a state in the lattice for
which something is known about the AVL value, but for which two
identical lattice elements do *not* necessarily represent the same AVL
value at runtime. Previously, the only case which could result in such
an unknown AVL was the fully unknown state (where VTYPE is also fully
unknown). This requires a small adjustment to hasSameAVL and lattice
state equality to draw this important distinction.
The net effect of this patch is that we remove the LiveIntervals
dependency at O0, and O0 code quality will regress for cases involving
register AVL values.
This patch is an alternative to
https://github.com/llvm/llvm-project/pull/93796 and
https://github.com/llvm/llvm-project/pull/94340. It is very directly
inspired by review conversation around them, and thus should be
considered coauthored by Luke.
Commit: 1d028151c9cd79d76c1cda0bc3b4f10a2239d8b6
https://github.com/llvm/llvm-project/commit/1d028151c9cd79d76c1cda0bc3b4f10a2239d8b6
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
R llvm/test/CodeGen/RISCV/rvv/pr93587.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
Log Message:
-----------
Revert "[RISCV] Teach RISCVInsertVSETVLI to work without LiveIntervals (#94686)"
This reverts commit 111507ed4ce49bbb8cfbf36a3e143bb25f0f13c0. Accidentally landed with stale commit message, will reply shortly.
Commit: 8756043467edbc6d62efd36af9985150b5781111
https://github.com/llvm/llvm-project/commit/8756043467edbc6d62efd36af9985150b5781111
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
A llvm/test/CodeGen/RISCV/rvv/pr93587.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
Log Message:
-----------
[RISCV] Teach RISCVInsertVSETVLI to work without LiveIntervals
(Reapplying with corrected commit message)
We recently moved RISCVInsertVSETVLI from before vector register allocation
to after vector register allocation. When doing so, we added an unconditional
dependency on LiveIntervals - even at O0 where LiveIntevals hadn't previously
run. As reported in #93587, this was apparently not safe to do.
This change makes LiveIntervals optional, and adjusts all the update code to
only run wen live intervals is present. The only real tricky part of this
change is the abstract state tracking in the dataflow. We need to represent
a "register w/unknown definition" state - but only when we don't have
LiveIntervals.
This adjust the abstract state definition so that the AVLIsReg state can
represent either a register + valno, or a register + unknown definition.
With LiveIntervals, we have an exact definition for each AVL use. Without
LiveIntervals, we treat the definition of a register AVL as being unknown.
The key semantic change is that we now have a state in the lattice for which
something is known about the AVL value, but for which two identical lattice
elements do *not* neccessarily represent the same AVL value at runtime.
Previously, the only case which could result in such an unknown AVL was the
fully unknown state (where VTYPE is also fully unknown). This requires a
small adjustment to hasSameAVL and lattice state equality to draw this
important distinction.
The net effect of this patch is that we remove the LiveIntervals dependency
at O0, and O0 code quality will regress for cases involving register AVL values.
In practice, this means we pessimize code written with intrinsics at O0.
This patch is an alternative to #93796 and #94340. It is very directly
inspired by review conversation around them, and thus should be considered
coauthored by Luke.
Commit: c9549e10e9ea70428ada80a34d15afeaf5710b2d
https://github.com/llvm/llvm-project/commit/c9549e10e9ea70428ada80a34d15afeaf5710b2d
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/include/mlir-c/Rewrite.h
Log Message:
-----------
[mlirc] Add missing extern C (#95829)
This was missing being wrapped in extern C block.
Don't know why didn't fail elsewhere, but failed on Windows build while
linking Python libs.
Signed-off-by: Jacques Pienaar <jpienaar at google.com>
Commit: c22d3917b93a6d54613d2e5b2ea4c97546144c46
https://github.com/llvm/llvm-project/commit/c22d3917b93a6d54613d2e5b2ea4c97546144c46
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/include/llvm/IR/ConstantRange.h
M llvm/lib/Analysis/LazyValueInfo.cpp
M llvm/lib/IR/ConstantRange.cpp
M llvm/test/Transforms/CorrelatedValuePropagation/icmp.ll
M llvm/unittests/IR/ConstantRangeTest.cpp
Log Message:
-----------
[LVI][ConstantRange] Generalize mask not equal conditions handling
Extend `V & Mask != 0` for non-zero constants if satisfiable, when
retrieving constraint value information from a non-equality comparison.
Proof: https://alive2.llvm.org/ce/z/dc5BeT.
Motivating example: https://github.com/gcc-mirror/gcc/blob/master/gcc/testsuite/gcc.dg/tree-ssa/vrp76.c.
Commit: 06aa078d68380bc775f0a903204fe330d50f4f1f
https://github.com/llvm/llvm-project/commit/06aa078d68380bc775f0a903204fe330d50f4f1f
Author: Hana Dusíková <hanicka at hanicka.net>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/docs/ReleaseNotes.rst
M llvm/test/tools/llvm-cov/Inputs/showProjectSummary.test
M llvm/test/tools/llvm-cov/showLineExecutionCounts.cpp
M llvm/test/tools/llvm-cov/showTemplateInstantiations.cpp
M llvm/tools/llvm-cov/SourceCoverageView.cpp
M llvm/tools/llvm-cov/SourceCoverageView.h
M llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
M llvm/tools/llvm-cov/SourceCoverageViewHTML.h
M llvm/tools/llvm-cov/SourceCoverageViewText.cpp
M llvm/tools/llvm-cov/SourceCoverageViewText.h
Log Message:
-----------
[llvm-cov] Coverage report HTML UI to jump between uncovered parts of code (#95662)
I replaced "jump to first uncovered line" with UI buttons and keyboard
shortcut to jump between uncovered parts of code: lines (key L), branchs
(key B), regions (key R).
User can also jump in reverse direction with shift+key.
Commit: bba5951b6f9cd77047cafc554b20144b33602298
https://github.com/llvm/llvm-project/commit/bba5951b6f9cd77047cafc554b20144b33602298
Author: Shivam Gupta <shivam98.tkg at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
Log Message:
-----------
[MLIR] Fix an assert that contains a mistake in conditional operator (#95668)
This is described in (N2) https://pvs-studio.com/en/blog/posts/cpp/1126/
so caught by the PVS Studio analyzer.
Warning message -
V502 Perhaps the '?:' operator works in a different way than it was
expected. The '?:' operator has a lower priority than the '+' operator.
LoopEmitter.cpp 983
V502 Perhaps the '?:' operator works in a different way than it was
expected. The '?:' operator has a lower priority than the '+' operator.
LoopEmitter.cpp 1039
The assert should be
assert(bArgs.size() == reduc.size() + (needsUniv ? 1 : 0));
since + has higher precedence and ? has lower.
This further can be reduce to
assert(aArgs.size() == reduc.size() + needsUniv);
because needUniv is a bool value which is implicitly converted to 0 or
Commit: 3b997294d6117241477ab36be0595040f8278707
https://github.com/llvm/llvm-project/commit/3b997294d6117241477ab36be0595040f8278707
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx1200.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll
Log Message:
-----------
AMDGPU: Remove .v2bf16 buffer atomic fadd intrinsics (#95783)
These are redundant with the unsuffixed versions, and have a name
collision with surprising behavior when the base intrinsic is used with
v2bf16.
The global and flat variants should be removed too, but those are complicated
due to using v2i16 in place of the natural v2bf16. Those cases can soon be
completely deleted in favor of atomicrmw.
The GlobalISel codegen change is broken and substitutes handling as bf16
for handling as f16, but it's a bug that this passed the IRTranslator in the first
place.
Commit: 8930ac1bbe0bc50402da53b22501e17045a537ca
https://github.com/llvm/llvm-project/commit/8930ac1bbe0bc50402da53b22501e17045a537ca
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
Log Message:
-----------
AMDGPU: Cleanup selection patterns for buffer loads (#95378)
We should just support these for all register types.
Commit: 804335638078f5a7c2bd31847b6080763cb22159
https://github.com/llvm/llvm-project/commit/804335638078f5a7c2bd31847b6080763cb22159
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
Log Message:
-----------
[Offload] Change HSA header search order (#95769)
Summary:
The HSA headers existed previously in `include/hsa.h` and were moved to
`include/hsa/hsa.h` in a later ROCm version. The include headers here
were originally designed to favor a newer one. However, this
unintentionally prevented the dyanmic HSA's `hsa.h` from being used if
both were present. This patch changes the order so it will be found
first.
Related to https://github.com/llvm/llvm-project/pull/95484.
Commit: 77d8cfb3c50e3341d65af1f9e442004bbd77af9b
https://github.com/llvm/llvm-project/commit/77d8cfb3c50e3341d65af1f9e442004bbd77af9b
Author: Alexander Shaposhnikov <6532716+alexander-shaposhnikov at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Lower/DumpEvaluateExpr.h
M flang/include/flang/Lower/PFTBuilder.h
M flang/include/flang/Lower/Support/Utils.h
M flang/include/flang/Optimizer/Support/Matcher.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ComponentPath.cpp
M flang/lib/Lower/ConvertArrayConstructor.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertType.cpp
M flang/lib/Lower/DirectivesCommon.h
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/IterationSpace.cpp
M flang/lib/Lower/Mangler.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Lower/VectorSubscripts.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-coarray.cpp
Log Message:
-----------
[Flang] Switch to common::visit more call sites (#90018)
Switch to common::visit more call sites.
Test plan: ninja check-all
Commit: 7ddff3a586baaf6f4403183ba51121951ce0602e
https://github.com/llvm/llvm-project/commit/7ddff3a586baaf6f4403183ba51121951ce0602e
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
Log Message:
-----------
[flang] Fix comments and formatting. (NFC) (#95786)
As mentioned in
[here](https://github.com/llvm/llvm-project/pull/95462#discussion_r1640126721),
the formatting of the comments have been fixed. Also added comments
before literal arguments.
Commit: 7620fe0d2d1e0257611c0ab0d96f3bf1bf7a1079
https://github.com/llvm/llvm-project/commit/7620fe0d2d1e0257611c0ab0d96f3bf1bf7a1079
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/utils/git/code-format-helper.py
Log Message:
-----------
[CI][format] Explicitly pass extensions to git-clang-format (#95794)
This ensures that the CI script controls which file extensions are
considered instead of letting git-clang-format apply its own filtering
rules. In particular, this properly handles libc++ extension-less
headers which were passed to git-clang-format, but then dropped by that
tool as having an unrecognized extension.
Commit: 5b04b6fe3fabba8f76d730da3c0d528e1dd0c184
https://github.com/llvm/llvm-project/commit/5b04b6fe3fabba8f76d730da3c0d528e1dd0c184
Author: Florian Mayer <fmayer at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_premap_shadow.cpp
M compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cpp
M compiler-rt/lib/memprof/memprof_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
Log Message:
-----------
[HWASan] [compiler-rt] support non-4k pages on Android (#95069)
Commit: d6cc35f7f67575f2d3534ea385c2f36f48f49aea
https://github.com/llvm/llvm-project/commit/d6cc35f7f67575f2d3534ea385c2f36f48f49aea
Author: Peiming Liu <peiming at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.h
M mlir/test/Dialect/SparseTensor/sparse_iteration_to_scf.mlir
Log Message:
-----------
Reapply "[mlir][sparse] implement lowering rules for IterateOp." (#95836)
Commit: dcb6c0d71c8dbb6bb17391c968c3716cfafd3765
https://github.com/llvm/llvm-project/commit/dcb6c0d71c8dbb6bb17391c968c3716cfafd3765
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/include/mlir/Target/LLVM/ROCDL/Utils.h
M mlir/lib/Dialect/GPU/CMakeLists.txt
M mlir/lib/Target/LLVM/CMakeLists.txt
M mlir/lib/Target/LLVM/ROCDL/Target.cpp
Log Message:
-----------
Reland [mlir][Target] Improve ROCDL gpu serialization API (#95813)
Reland: https://github.com/llvm/llvm-project/pull/95456
This patch improves the ROCDL gpu serialization API by:
- Introducing the enum `AMDGCNLibraries` for specifying the AMD GCN
device code libraries to use during linking.
- Removing `getCommonBitcodeLibs` in favor of `AMDGCNLibraries`.
Previously `getCommonBitcodeLibs` would try to load all AMD GCN bitcode
librariesm now it will only load the requested libraries.
- Exposing the `compileToBinary` method and making it virtual, allowing
downstream users to re-use this method.
- Exposing `moduleToObjectImpl`, this method provides a prototype flow
for compiling to binary, allowing downstream users to re-use this
method.
- It also avoids constructing the control variables if no device
libraries are being used.
- Changes the style of the error messages to be composable, ie no full
stops.
- Adds an error message for when the ROCm toolkit can't be found but it
was required.
Commit: 44ca65661e2cdd5636f592f573a2837e6ae948ba
https://github.com/llvm/llvm-project/commit/44ca65661e2cdd5636f592f573a2837e6ae948ba
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M libc/test/IntegrationTest/test.cpp
M libc/test/UnitTest/HermeticTestUtils.cpp
Log Message:
-----------
[libc] Only include getauxval on AARCH64 targets (#95844)
Summary:
Not all platforms support this function or header, but it was being
included by every test. Move it inside of the `ifdef` for the only user,
which is aarch64.
Commit: a50bcc03cbaecf6473c6bf41f4497758a7876f3d
https://github.com/llvm/llvm-project/commit/a50bcc03cbaecf6473c6bf41f4497758a7876f3d
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M libc/src/stdlib/CMakeLists.txt
Log Message:
-----------
[libc][stdlib] Only add internal malloc in full build mode. Use the system malloc in overlay mode. (#95845)
This causes an issue in overlay mode:
https://github.com/llvm/llvm-project/pull/95736#issuecomment-2172739705
Commit: 16aa39ad94350670f4d72dace0a4866fbe10d716
https://github.com/llvm/llvm-project/commit/16aa39ad94350670f4d72dace0a4866fbe10d716
Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/secondary.h
M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
Log Message:
-----------
[scudo] Update error handling for seondary cache entry count (#95595)
Initially, the scudo allocator would return an error if the user
attempted to set the cache capacity
(i.e. the number of possible entries in the cache) above the maximum
cache capacity.
Now the allocator will resort to using the maximum cache capacity in
this event.
An error will still be returned if the user attempts to set the number
of entries to a negative value.
Commit: 6037a698b919e0c8dbf39673d68835c49dc5130a
https://github.com/llvm/llvm-project/commit/6037a698b919e0c8dbf39673d68835c49dc5130a
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/include/llvm/Analysis/MLInlineAdvisor.h
M llvm/lib/Analysis/MLInlineAdvisor.cpp
M llvm/lib/Analysis/models/gen-inline-oz-test-model.py
A llvm/test/Transforms/Inline/ML/bypass.ll
Log Message:
-----------
[mlgo] inline for size: add bypass mechanism for perserving performance (#95616)
This allows shrinking for size the cold part of the code, without sacrificing performance.
Commit: 3a2f7d8a9f84db380af5122418098cb28a57443f
https://github.com/llvm/llvm-project/commit/3a2f7d8a9f84db380af5122418098cb28a57443f
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/include/mlir/Target/LLVM/ROCDL/Utils.h
M mlir/lib/Dialect/GPU/CMakeLists.txt
M mlir/lib/Target/LLVM/CMakeLists.txt
M mlir/lib/Target/LLVM/ROCDL/Target.cpp
Log Message:
-----------
Revert "Reland [mlir][Target] Improve ROCDL gpu serialization API" (#95847)
Reverts llvm/llvm-project#95813
Commit: 1adf0fae0503fccd1216865dd0276c3ec97f62a7
https://github.com/llvm/llvm-project/commit/1adf0fae0503fccd1216865dd0276c3ec97f62a7
Author: Florian Mayer <fmayer at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_premap_shadow.cpp
M compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cpp
M compiler-rt/lib/memprof/memprof_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
Log Message:
-----------
Revert "[HWASan] [compiler-rt] support non-4k pages on Android" (#95853)
Reverts llvm/llvm-project#95069
Broke windows bot
Commit: 6b54ecca885f58cd9449535a8678d93144c62e4d
https://github.com/llvm/llvm-project/commit/6b54ecca885f58cd9449535a8678d93144c62e4d
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Analysis/DevelopmentModeInlineAdvisor.cpp
M llvm/lib/Analysis/models/gen-inline-oz-test-model.py
Log Message:
-----------
[mlgo] remove `inlining_default` - unused feature
The feature was only exposed for training and was immediately dropped on
the training side. It was bulk-copied into the test model generator, where
it had no effect (the generator always returns a constant).
In the AOT + test model case, since the test model returns a constant, all
input features are pruned by the AOT compiler, so its presence/absence
doesn't matter.
Commit: ca22469a101e73fd2b2057d98d3f880f064764e5
https://github.com/llvm/llvm-project/commit/ca22469a101e73fd2b2057d98d3f880f064764e5
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M libc/test/src/stdlib/CMakeLists.txt
Log Message:
-----------
[libc][stdlib] Run freelist_heap_test only in full build mode. (#95850)
Commit: ca1a96364a568be6a2e65e6f12328b23dd35bafc
https://github.com/llvm/llvm-project/commit/ca1a96364a568be6a2e65e6f12328b23dd35bafc
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/test/mlir-tblgen/rewriter-static-matcher.td
M mlir/tools/mlir-tblgen/RewriterGen.cpp
Log Message:
-----------
[mlir][drr] Fix variadic destination emission (#95855)
Its possible for handleResultPattern to emit helpers, these helpers
cannot be interleaved with pushing into the array. Emit into a separate
string to enable helpers to be emitted before the population of vector.
Signed-off-by: Jacques Pienaar <jpienaar at google.com>
Commit: 6c17f1cabdee3399feceb478921a8369bde18b16
https://github.com/llvm/llvm-project/commit/6c17f1cabdee3399feceb478921a8369bde18b16
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lldb/include/lldb/DataFormatters/ValueObjectPrinter.h
Log Message:
-----------
Fix comments in ValueObjectPrinter.h (NFC)
Commit: 68fc8dffe4669fed1f7eb88e6770509505f9960a
https://github.com/llvm/llvm-project/commit/68fc8dffe4669fed1f7eb88e6770509505f9960a
Author: shaw young <58664393+shawbyoung at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M bolt/docs/CommandLineArgumentReference.md
M bolt/lib/Profile/StaleProfileMatching.cpp
A bolt/test/X86/Inputs/blarge_profile_stale_low_matched_blocks.yaml
A bolt/test/X86/stale-matching-min-matched-block.test
Log Message:
-----------
[BOLT] Drop high discrepancy profiles in matching (#95156)
Summary: Functions with high discrepancy
(measured by matched function blocks)
can be ignored with an added command line
argument for better performance.
Test Plan: Added
stale-matching-min-matched-block.test
---------
Co-authored-by: Amir Ayupov <aaupov at fb.com>
Commit: 0041582b6ca137ad04e26985a87a1ae45fb0f0bb
https://github.com/llvm/llvm-project/commit/0041582b6ca137ad04e26985a87a1ae45fb0f0bb
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lldb/test/API/lit.cfg.py
Log Message:
-----------
[lldb] Fix Python interpreter workaround (attempt #2)
On macOS, to make DYLD_INSERT_LIBRARIES and the Python shim work
together, we have a workaroud that copies the "real" Python interpreter
into the build directory. This doesn't work when running in a virtual
environment, as the copied interpreter cannot find the packages
installed in the virtual environment relative to itself.
Address this issue by copying the Python interpreter into the virtual
environment's `bin` folder, rather than the build folder, when the test
suite detects that it's being run inside a virtual environment.
I'm not thrilled about this solution because it puts a file outside the
build directory. However, given virtual environments are considered
disposable, this seems reasonable.
Commit: cd48335a8a5e97c4a4942fb4f94a511da3eb60f4
https://github.com/llvm/llvm-project/commit/cd48335a8a5e97c4a4942fb4f94a511da3eb60f4
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/docs/Security.rst
Log Message:
-----------
[docs][Security Group] Update Apple representation. (#95491)
Remove Kate; Apple is now represented by Oliver (and myself).
Commit: c6049e67efaaca34ca8ad93b007397b118574b81
https://github.com/llvm/llvm-project/commit/c6049e67efaaca34ca8ad93b007397b118574b81
Author: Florian Mayer <fmayer at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_premap_shadow.cpp
M compiler-rt/lib/asan/asan_win.cpp
M compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cpp
M compiler-rt/lib/memprof/memprof_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
Log Message:
-----------
Reapply "[HWASan] [compiler-rt] support non-4k pages on Android" (#95853)
Updated MapDynamicShadow callsite in asan_win.
Commit: bea329ecb0bd756d2e169169fb4333e9cd4d2dae
https://github.com/llvm/llvm-project/commit/bea329ecb0bd756d2e169169fb4333e9cd4d2dae
Author: Vidush Singhal <54336227+vidsinghal at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
Log Message:
-----------
[Attributor]: allow more than one offset for a pass through user in AAPointerInfo (#94416)
Co-authored-by: Vidush Singhal <singhal2 at ruby964.llnl.gov>
Commit: c67ecf385395ecb6184faf577b5b60367c923aa8
https://github.com/llvm/llvm-project/commit/c67ecf385395ecb6184faf577b5b60367c923aa8
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M bolt/test/X86/bug-reorder-bb-jrcxz.s
Log Message:
-----------
[BOLT][tests] Fix jrcxz instruction test (#95861)
Rewrite the test case intended to check that BOLT does not separate
jrcxz instruction from its destination by more than a one-byte offset.
Commit: a02010b3e97b5f01d4ff921b353f4a25a29c45cd
https://github.com/llvm/llvm-project/commit/a02010b3e97b5f01d4ff921b353f4a25a29c45cd
Author: Peiming Liu <peiming at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensor.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
M mlir/test/Dialect/SparseTensor/fuse_sparse_pad_with_consumer.mlir
M mlir/test/Dialect/SparseTensor/sparse_2d.mlir
M mlir/test/Dialect/SparseTensor/sparse_3d.mlir
M mlir/test/Dialect/SparseTensor/sparse_affine.mlir
M mlir/test/Dialect/SparseTensor/sparse_batch.mlir
M mlir/test/Dialect/SparseTensor/sparse_broadcast.mlir
M mlir/test/Dialect/SparseTensor/sparse_concat.mlir
M mlir/test/Dialect/SparseTensor/sparse_fill_zero.mlir
M mlir/test/Dialect/SparseTensor/sparse_fp_ops.mlir
M mlir/test/Dialect/SparseTensor/sparse_fusion.mlir
M mlir/test/Dialect/SparseTensor/sparse_int_ops.mlir
M mlir/test/Dialect/SparseTensor/sparse_kernels.mlir
A mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir
M mlir/test/Dialect/SparseTensor/sparse_lower_inplace.mlir
M mlir/test/Dialect/SparseTensor/sparse_matmul_codegen.mlir
M mlir/test/Dialect/SparseTensor/sparse_nd.mlir
M mlir/test/Dialect/SparseTensor/sparse_out.mlir
M mlir/test/Dialect/SparseTensor/sparse_outbuf.mlir
M mlir/test/Dialect/SparseTensor/sparse_parallel_reduce.mlir
M mlir/test/Dialect/SparseTensor/sparse_perm.mlir
M mlir/test/Dialect/SparseTensor/sparse_reshape.mlir
M mlir/test/Dialect/SparseTensor/sparse_sddmm.mlir
M mlir/test/Dialect/SparseTensor/sparse_sddmm_org.mlir
M mlir/test/Dialect/SparseTensor/sparse_tensor_reshape.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector_chain.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector_index.mlir
M mlir/test/Dialect/SparseTensor/spy_sddmm_bsr.mlir
M mlir/test/Dialect/SparseTensor/vectorize_reduction.mlir
A mlir/test/Integration/Dialect/SparseTensor/CPU/iterator-based-sqsum.mlir
Log Message:
-----------
[mlir][sparse] support sparsifying sparse kernels to sparse-iterator-based loop (#95858)
Commit: 753498eed1d2d6d8c419bae5b65458640e5fbfd7
https://github.com/llvm/llvm-project/commit/753498eed1d2d6d8c419bae5b65458640e5fbfd7
Author: shaw young <58664393+shawbyoung at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M bolt/lib/Profile/StaleProfileMatching.cpp
A bolt/test/X86/Inputs/infer_no_exits.s
A bolt/test/X86/infer_no_exits.test
Log Message:
-----------
[BOLT] Add sink block to flow CFG in profile inference (#95047)
Summary: Constructing an artificial sink block for the
flow CFG in stale profile inference to allow profile
inference to be run on CFGs with blocks that terminate
and have successors.
Testing Plan: Added infer_no_exits.test to verify that
functions with exit blocks with a landing pad are
covered by stale profile inference.
---------
Co-authored-by: Amir Ayupov <fads93 at gmail.com>
Commit: 2cf2f1b2b6219b606faeade2342c3d2288658ab0
https://github.com/llvm/llvm-project/commit/2cf2f1b2b6219b606faeade2342c3d2288658ab0
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M libcxx/cmake/caches/Apple.cmake
R libcxx/test/configs/apple-libc++-shared.cfg.in
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/utils/ci/apple-install-libcxx.sh
R libcxxabi/test/configs/apple-libc++abi-shared.cfg.in
Log Message:
-----------
[libc++] Test suite adjustments on macOS (#95835)
This patch makes a few adjustments to the way we run the tests in the
Apple configuration on macOS:
First, we stop using DYLD_LIBRARY_PATH. Using that environment variable
leads to libc++.dylib being replaced by the just-built one for the whole
process, and that assumes compatibility between the system-provided
dylib and the just-built one. Unfortunately, that is not the case
anymore due to typed allocation, which is only available in the system
one. Instead, we want to layer the just-built libc++ on top of the
system-provided one, which seems to be what happens when we set a rpath
instead.
Second, add a missing XFAIL for a std::print test that didn't work as
expected when building with availability annotations enabled. When we
enable these annotations, std::print falls back to a non-unicode and
non-terminal output, which breaks the test.
Commit: ffed34e0250820161c68d799ad883eb00086ac05
https://github.com/llvm/llvm-project/commit/ffed34e0250820161c68d799ad883eb00086ac05
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M libc/test/IntegrationTest/test.cpp
M libc/test/UnitTest/HermeticTestUtils.cpp
Log Message:
-----------
[libc] Fix getauxval being defined in a namespace
Commit: 3c6a1090b25ef2dda5a378182cd17aad00439d35
https://github.com/llvm/llvm-project/commit/3c6a1090b25ef2dda5a378182cd17aad00439d35
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
Log Message:
-----------
[clang-format][NFC] Add FormatToken::isAccessSpecifierKeyword() (#95727)
Commit: d6b0b7acf3562c8089f3342634a749f03909fd32
https://github.com/llvm/llvm-project/commit/d6b0b7acf3562c8089f3342634a749f03909fd32
Author: Kazu Hirata <kazu at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/lib/ProfileData/InstrProf.cpp
Log Message:
-----------
[ProfileData] Remove getValueProfDataFromInst (#95617)
I've migrated all uses to the new version of getValueProfDataFromInst
that returns std::unique_ptr<InstrProfValueData[]>.
Commit: 2c2f49059ff2999e06eb5ecb76af5b1ebd3e5477
https://github.com/llvm/llvm-project/commit/2c2f49059ff2999e06eb5ecb76af5b1ebd3e5477
Author: Kazu Hirata <kazu at google.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/include/llvm/Analysis/IndirectCallPromotionAnalysis.h
M llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
Log Message:
-----------
[Analysis] Clean up getPromotionCandidatesForInstruction (NFC) (#95624)
Callers of getPromotionCandidatesForInstruction pass NumVals as an out
parameter for the number of value-count pairs of the value profiling
data, but nobody uses the out parameter.
This patch removes the parameter and updates the callers. Note that
the number of value-count pairs is still available via
getPromotionCandidatesForInstruction(...).size().
Commit: d68eb5b956a47c6321e26076f2481346b5e397fa
https://github.com/llvm/llvm-project/commit/d68eb5b956a47c6321e26076f2481346b5e397fa
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M lld/MachO/ObjC.cpp
M lld/MachO/ObjC.h
Log Message:
-----------
[lld-macho][NFC] Track category merger input data source language for better verification (#95473)
This change adds tracking for the source language of the various input
structs used by the category merger. Identification is based on expected
symbol names. It also adds checks to ensure we're dealing with the
expected data in known scenarios.
Commit: 117921e071a353edbd27f08456ec27ea98ecdb8c
https://github.com/llvm/llvm-project/commit/117921e071a353edbd27f08456ec27ea98ecdb8c
Author: Kai Luo <lkail at cn.ibm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/lib/IR/Globals.cpp
M llvm/test/CodeGen/PowerPC/tocdata-firm-alignment.ll
Log Message:
-----------
[PowerPC] Alignment of toc-data symbol should not be increased during optimizations (#94593)
Currently, the alignment of toc-data symbol might be changed during
instcombine
```
IC: Visiting: %global = alloca %struct.widget, align 8
Found alloca equal to global: %global = alloca %struct.widget, align 8
memcpy = call void @llvm.memcpy.p0.p0.i64(ptr nonnull align 1 %global, ptr align 1 @global, i64 3, i1 false)
```
The `alloca` is created with `PrefAlign` which is 8 and after IC, the
alignment of `@global` is enforced into `8`, same as the `alloca`. This
is not expected, since toc-data symbol has the same alignment as toc
entry and should not be increased during optimizations.
---------
Co-authored-by: Sean Fertile <sd.fertile at gmail.com>
Co-authored-by: Eli Friedman <efriedma at quicinc.com>
Commit: e4b130fa00a01cad73709b782e8044e5a9535b85
https://github.com/llvm/llvm-project/commit/e4b130fa00a01cad73709b782e8044e5a9535b85
Author: Luke Lau <luke at igalia.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/utils/emacs/llvm-mode.el
Log Message:
-----------
[emacs] Handle vector types, arbitary integer types and function names (#88246)
Resurrecting this patch from https://reviews.llvm.org/D158321
This adds a few more regexp patterns for llvm-mode-syntax-table. The
primitive type regexp was split out so it could be reused when handling
vectors. Also worth noting is that the vector regexp needs to come
before the primitive types, otherwise they will match first.
Commit: 049630d0ae805d56b9587024d2542e7e08c9e1d2
https://github.com/llvm/llvm-project/commit/049630d0ae805d56b9587024d2542e7e08c9e1d2
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M llvm/test/CodeGen/NVPTX/f16-instructions.ll
Log Message:
-----------
[NFC][NVPTX][test] Update test for `fneg half` (#95856)
`test_fneg` function uses `fsub half 0.0, %x`. Add a test that uses the
`fneg` instruction directly.
Commit: 43fd4c49bd8d54b9058620f0a885c7a5672fd602
https://github.com/llvm/llvm-project/commit/43fd4c49bd8d54b9058620f0a885c7a5672fd602
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-06-17 (Mon, 17 Jun 2024)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/IR/InferIntRangeInterfaceImpls.cpp
M mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
M mlir/test/Dialect/GPU/int-range-interface.mlir
M mlir/test/Dialect/GPU/invalid.mlir
M mlir/test/Dialect/GPU/outlining.mlir
Log Message:
-----------
[mlir][GPU] Improve handling of GPU bounds (#95166)
This change reworks how range information for GPU dispatch IDs (block
IDs, thread IDs, and so on) is handled.
1. `known_block_size` and `known_grid_size` become inherent attributes
of GPU functions. This makes them less clunky to work with. As a
consequence, the `gpu.func` lowering patterns now only look at the
inherent attributes when setting target-specific attributes on the
`llvm.func` that they lower to.
2. At the same time, `gpu.known_block_size` and `gpu.known_grid_size`
are made official dialect-level discardable attributes which can be
placed on arbitrary functions. This allows for progressive lowerings
(without this, a lowering for `gpu.thread_id` couldn't know about the
bounds if it had already been moved from a `gpu.func` to an `llvm.func`)
and allows for range information to be provided even when
`gpu.*_{id,dim}` are being used outside of a `gpu.func` context.
3. All of these index operations have gained an optional `upper_bound`
attribute, allowing for an alternate mode of operation where the bounds
are specified locally and not inherited from the operation's context.
These also allow handling of cases where the precise launch sizes aren't
known, but can be bounded more precisely than the maximum of what any
platform's API allows. (I'd like to thank @benvanik for pointing out
that this could be useful.)
When inferring bounds (either for range inference or for setting `range`
during lowering) these sources of information are consulted in order of
specificity (`upper_bound` > inherent attribute > discardable attribute,
except that dimension sizes check for `known_*_bounds` to see if they
can be constant-folded before checking their `upper_bound`).
This patch also updates the documentation about the bounds and inference
behavior to clarify what these attributes do when set and the
consequences of setting them up incorrectly.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: d563c0f96ca4a4160b149ce83b99c78eed865fa8
https://github.com/llvm/llvm-project/commit/d563c0f96ca4a4160b149ce83b99c78eed865fa8
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/AST/Interp/InterpBuiltin.cpp
Log Message:
-----------
[clang][Interp][NFC] Add source ranges to some diagnostics.
Commit: 5996496e7f1314fb40d57657e2085b5c41916766
https://github.com/llvm/llvm-project/commit/5996496e7f1314fb40d57657e2085b5c41916766
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
Log Message:
-----------
[clang][NFC] Use foreach loop in FinalizeDeclaratorGroup
Commit: e5d0627c5a78f8cf4ff79816547b528ec52d6590
https://github.com/llvm/llvm-project/commit/e5d0627c5a78f8cf4ff79816547b528ec52d6590
Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
A llvm/test/ExecutionEngine/Orc/global-ctor-order.ll
Log Message:
-----------
[ORC] Preserve order of constructors with same priority (#95532)
Constructors with the same priority should keep their relative order
that was specified. This is important for `clang-repl` with many `const`
variables after commit 05137ecfca ("[clang-repl] Emit const variables
only once").
Commit: 2d38becda8afa48a031995d67ebf9a6383e01e4f
https://github.com/llvm/llvm-project/commit/2d38becda8afa48a031995d67ebf9a6383e01e4f
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeEmitter.h
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/lib/AST/Interp/EvalEmitter.cpp
M clang/lib/AST/Interp/EvalEmitter.h
M clang/lib/AST/Interp/EvaluationResult.cpp
Log Message:
-----------
[clang][Interp][NFC] Don't create variables in non-constant contexts
When the evaluation in a contant context fails, we would otherwise try
to access and use that variable later in a (maybe) non-constant context.
If the evaluation succeeds in the non-constant context, we never
reported success because we reported failure from the first time
we visited the variable.
Commit: 18000feec0e174194fec3476b8b73db1d767e0d2
https://github.com/llvm/llvm-project/commit/18000feec0e174194fec3476b8b73db1d767e0d2
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
Log Message:
-----------
[clang][Interp][NFC] Reject non-floating CK_FloatingCast casts
We need the types to be floating types. Rejecting the HLSL vector
casts here is also what the current interpreter does.
Commit: 6ec02f73163c1ef6443af024eec783c307f7d5bc
https://github.com/llvm/llvm-project/commit/6ec02f73163c1ef6443af024eec783c307f7d5bc
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
Log Message:
-----------
[AArch64] Refactor redundant PTEST optimisations (NFC) (#87802)
This patch refactors `AArch64InstrInfo::optimizePTestInstr` to simplify
the convoluted conditions and control flow
and make it easier to add the optimisation in
https://github.com/llvm/llvm-project/pull/81141
Commit: 4b4aaf1e792367b4ce0e24966a7d21e2a83bb979
https://github.com/llvm/llvm-project/commit/4b4aaf1e792367b4ce0e24966a7d21e2a83bb979
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
A clang/test/AST/Interp/hlsl.hlsl
Log Message:
-----------
[clang][Interp] Fix non-initializing CK_VectorSplat casts
Create the usual local variable to fill.
Commit: edd6f0c544785d6f6276a24b94222e0064413cd1
https://github.com/llvm/llvm-project/commit/edd6f0c544785d6f6276a24b94222e0064413cd1
Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
R llvm/test/ExecutionEngine/Orc/global-ctor-order.ll
Log Message:
-----------
Revert "[ORC] Preserve order of constructors with same priority (#95532)"
The test fails on 32-bit ARMv8:
https://lab.llvm.org/buildbot/#/builders/154/builds/170
This reverts commit e5d0627c5a78f8cf4ff79816547b528ec52d6590.
Commit: ae0813f2d7222c4eab7cd3e6099d49f50318d1d5
https://github.com/llvm/llvm-project/commit/ae0813f2d7222c4eab7cd3e6099d49f50318d1d5
Author: Kadir Cetinkaya <kadircet at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/include-cleaner/lib/LocateSymbol.cpp
M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp
Log Message:
-----------
Revert "[clang-tidy] fix false positives for the functions with the same name as standard library functions in misc-include-cleaner (#94923)"
This reverts commit 1bae10879d9183c5edfb709c36b55086ebc772f0. Also add
some test cases to prevent further regressions.
Commit: d95b82c49aef0223bcc03ff5a9163e70037c82be
https://github.com/llvm/llvm-project/commit/d95b82c49aef0223bcc03ff5a9163e70037c82be
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/Target/TargetMachine.h
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
Log Message:
-----------
[NFC][AMDGPU] Make AMDGPUSplitModule a ModulePass (#95773)
It allows it to access TTI correctly, and opens the door to accessing
more analysis in the future.
I went back and forth between this, and also making the default
SplitModule a Pass too to make it uniform, but I decided against it
because it's just needless complications. Neither llvm-split or
LTOBackend have a PM ready to use so we need to create one anyway. Let's
keep all the mess hidden in the AMDGPU version for now to keep this
change more self-contained.
Commit: 3ca17443ef4af21bdb1f3b4fbcfff672cbc6176c
https://github.com/llvm/llvm-project/commit/3ca17443ef4af21bdb1f3b4fbcfff672cbc6176c
Author: eddyz87 <eddyz87 at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/LLVMContextImpl.h
A llvm/test/Bitcode/attr-btf_tag-dibasic.ll
A llvm/test/Bitcode/attr-btf_tag-disubroutine.ll
M llvm/test/DebugInfo/attr-btf_type_tag.ll
Log Message:
-----------
[DebugInfo][BPF] Add 'annotations' field for DIBasicType & DISubroutineType (#91422)
Extend `DIBasicType` and `DISubroutineType` with additional field
`annotations`, e.g. as below:
```
!5 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed, annotations: !6)
!6 = !{!7}
!7 = !{!"btf:type_tag", !"tag1"}
```
The field would be used by BPF backend to generate DWARF attributes
corresponding to `btf_type_tag` type attributes, e.g.:
```
0x00000029: DW_TAG_base_type
DW_AT_name ("int")
DW_AT_encoding (DW_ATE_signed)
DW_AT_byte_size (0x04)
0x0000002d: DW_TAG_LLVM_annotation
DW_AT_name ("btf:type_tag")
DW_AT_const_value ("tag1")
```
Such DWARF entries would be used to generate BTF definitions by tools
like [pahole](https://github.com/acmel/dwarves).
Note: similar fields with similar purposes are already present in
DIDerivedType and DICompositeType.
Currently "btf_type_tag" attributes are represented in debug information
as 'annotations' fields in DIDerivedType with DW_TAG_pointer_type tag.
The annotation on a pointer corresponds to pointee having the attributes
in the final BTF.
The discussion in
[thread](https://lore.kernel.org/bpf/87r0w9jjoq.fsf@oracle.com/) came to
conclusion, that such annotations should apply to the annotated type
itself. Hence the necessity to extend `DIBasicType` & `DISubroutineType`
types with 'annotations' field to represent cases like below:
```
int __attribute__((btf_type_tag("foo"))) bar;
```
This was previously tracked as differential revision:
https://reviews.llvm.org/D143966
Commit: db394edf95e7e47e2a11c570d65a8f5005af7849
https://github.com/llvm/llvm-project/commit/db394edf95e7e47e2a11c570d65a8f5005af7849
Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c
M llvm/docs/ReleaseNotes.rst
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/include/llvm-c/DebugInfo.h
M llvm/lib/IR/DebugInfo.cpp
R llvm/test/Bindings/llvm-c/debug_info.ll
M llvm/test/Bindings/llvm-c/debug_info_new_format.ll
M llvm/tools/llvm-c-test/debuginfo.c
M llvm/tools/llvm-c-test/llvm-c-test.h
M llvm/tools/llvm-c-test/main.c
Log Message:
-----------
[RemoveDIs] Update DIBuilder C API with DbgRecord functions. (#95535)
The DIBuilder C API was changed to deal with DbgRecord functions:
https://github.com/llvm/llvm-project/pull/84915
https://github.com/llvm/llvm-project/pull/85657
https://github.com/llvm/llvm-project/pull/92417#issuecomment-2120078326
As discussed by @nikic and @OCHyams:
https://github.com/llvm/llvm-project/pull/92417#issuecomment-2144505440
> For the intrinsic-inserting functions, do you think we should:
>
> a) mark as deprecated but otherwise leave them alone for now.
> b) mark as deprecated and change their behaviour so that they
> do nothing and return nullptr.
> c) outright delete them (it sounds like you're voting this one,
> but just wanted to double check).
This patch implements option (c).
Commit: 7dd7d5749f7d9d98fec50ee88e633e8b85c6502a
https://github.com/llvm/llvm-project/commit/7dd7d5749f7d9d98fec50ee88e633e8b85c6502a
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaExpr.cpp
M clang/test/C/drs/dr1xx.c
R clang/test/Sema/debug-93066.cpp
M clang/test/Sema/exprs.c
M clang/test/Sema/va_arg_x86_32.c
M clang/test/SemaObjCXX/sel-address.mm
Log Message:
-----------
Revert "[clang] Fix-it hint for `++this` -> `++*this` when deref is modifiable" (#95833)
Reverts llvm/llvm-project#94159
@zygoloid had some concerns about the implementation of this, which make
sense to me, so I’d like to revert this for now so we can have more time
to think about how to best approach this (if at all...)
Commit: 89c26f6c7b0a6dfa257ec090fcf5b6e6e0c89aab
https://github.com/llvm/llvm-project/commit/89c26f6c7b0a6dfa257ec090fcf5b6e6e0c89aab
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
A clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
A clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
A clang/test/Analysis/z3/crosscheck-statistics.c
M clang/unittests/StaticAnalyzer/CMakeLists.txt
A clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
M llvm/include/llvm/Support/SMTAPI.h
M llvm/lib/Support/Z3Solver.cpp
Log Message:
-----------
[analyzer][NFC] Reorganize Z3 report refutation
This change keeps existing behavior, namely that if we hit a Z3 timeout
we will accept the report as "satisfiable".
This prepares for the commit "Harden safeguards for Z3 query times".
https://discourse.llvm.org/t/analyzer-rfc-taming-z3-query-times/79520
Reviewers: NagyDonat, haoNoQ, Xazax-hun, mikhailramalho, Szelethus
Reviewed By: NagyDonat
Pull Request: https://github.com/llvm/llvm-project/pull/95128
Commit: eacc3b3504be061f7334410dd0eb599688ba103a
https://github.com/llvm/llvm-project/commit/eacc3b3504be061f7334410dd0eb599688ba103a
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/test/Analysis/analyzer-config.c
M clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
Log Message:
-----------
[analyzer] Harden safeguards for Z3 query times
This patch is a functional change.
https://discourse.llvm.org/t/analyzer-rfc-taming-z3-query-times/79520
As a result of this patch, individual Z3 queries in refutation will be
bound by 300ms. Every report equivalence class will be processed in
at most 1 second.
The heuristic should have only really marginal observable impact -
except for the cases when we had big report eqclasses with long-running
(15s) Z3 queries, where previously CSA effectively halted.
After this patch, CSA will tackle such extreme cases as well.
Reviewers: NagyDonat, haoNoQ, Xazax-hun, Szelethus, mikhailramalho
Reviewed By: NagyDonat
Pull Request: https://github.com/llvm/llvm-project/pull/95129
Commit: a6eddf9a79709e3161d3aad86d44ab1097f57f22
https://github.com/llvm/llvm-project/commit/a6eddf9a79709e3161d3aad86d44ab1097f57f22
Author: Ruiling, Song <ruiling.song at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Analysis/Loads.cpp
A llvm/test/Transforms/LICM/hoist-speculatable-load.ll
Log Message:
-----------
[Loads] Pass DominatorTree if available (#95752)
For better dominance check inside the function.
Commit: 8b0d38be9ece414dbc7a91dbd8fa506b0e3287e7
https://github.com/llvm/llvm-project/commit/8b0d38be9ece414dbc7a91dbd8fa506b0e3287e7
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang-tools-extra/test/CMakeLists.txt
M clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
M llvm/docs/WritingAnLLVMPass.rst
M llvm/lib/Transforms/CMakeLists.txt
R llvm/lib/Transforms/Hello/CMakeLists.txt
R llvm/lib/Transforms/Hello/Hello.cpp
R llvm/lib/Transforms/Hello/Hello.exports
M llvm/test/CMakeLists.txt
Log Message:
-----------
[llvm] Remove the Legacy PM Hello example (#95708)
The Legacy PM was deprecated for the optimization pipeline in LLVM 14
[1] (the support was removed altogether in the following release). This
patch removes the original Hello example that was introduced to
illustrate the Legacy PM. The Hello example no longer works and hence is
deleted. The corresponding documentation is also removed.
Note, Hello example for the new PM is located in
* llvm/lib/Transforms/Utils/HelloWorld.cpp
and documented in
* WritingAnLLVMNewPMPass.rst.
[1]
https://releases.llvm.org/14.0.0/docs/ReleaseNotes.html#changes-to-the-llvm-ir
Commit: 0e21f125c69f0e3204ea76d931717c88493e5cb3
https://github.com/llvm/llvm-project/commit/0e21f125c69f0e3204ea76d931717c88493e5cb3
Author: Him188 <tguan at nvidia.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64GenRegisterBankInfo.def
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h
A llvm/test/CodeGen/AArch64/GlobalISel/sve-formal-argument-multiple.ll
A llvm/test/CodeGen/AArch64/GlobalISel/sve-formal-argument.ll
A llvm/test/CodeGen/AArch64/GlobalISel/translate-sve-formal-argument-multiple.ll
A llvm/test/CodeGen/AArch64/GlobalISel/translate-sve-formal-argument.ll
Log Message:
-----------
[AArch64][GISel] Translate legal SVE formal arguments and select COPY for SVE (#95236)
This patch adds support for legal SVE fromal arguments in IRTranslator,
and support for COPY with SVE.
SVE arguments are allowed only if the hidden option
`-aarch64-enable-gisel-sve` is enabled. Illegal types and predicates
like `nxv8i1` are not supported yet.
Commit: a945f55d3e6af6be6648fb92a20c80e88e3fc2b2
https://github.com/llvm/llvm-project/commit/a945f55d3e6af6be6648fb92a20c80e88e3fc2b2
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
Log Message:
-----------
[mlir][linalg] Add pattern to bubble-up pack through expand shape op (#93529)
Extends bubble-up pack through reshape pattern to handle pack
propagation through expand shape ops.
---------
Co-authored-by: Prashant Kumar <pk5561 at gmail.com>
Commit: 9cd3622a6ecd4485d89bb5b074e029fbe646e22d
https://github.com/llvm/llvm-project/commit/9cd3622a6ecd4485d89bb5b074e029fbe646e22d
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/tools/llvm-c-test/debuginfo.c
M llvm/tools/llvm-c-test/llvm-c-test.h
Log Message:
-----------
[tools] Fix -Wstrict-prototypes in llvm-c-test.h (NFC)
/llvm-project/llvm/tools/llvm-c-test/llvm-c-test.h:39:24:
error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
int llvm_test_dibuilder();
^
void
1 error generated.
Commit: cf5ce8cdf1688ac3cd8b9dedd19df005a1ff8fdf
https://github.com/llvm/llvm-project/commit/cf5ce8cdf1688ac3cd8b9dedd19df005a1ff8fdf
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
A llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-fp128.ll
A llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i128.ll
Log Message:
-----------
AMDGPU: Add some tests for i128 and fp128 atomic expansion
These produce garbage libcalls, so the result is not useful but
this at least shows we don't assert.
Commit: 9f8e7c3a01bc071447634eaa3e7b41ae072a87fe
https://github.com/llvm/llvm-project/commit/9f8e7c3a01bc071447634eaa3e7b41ae072a87fe
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/test/CodeGen/AMDGPU/fp-atomic-to-s_denormmode.mir
Log Message:
-----------
AMDGPU: Create pseudo to real mapping for flat/buffer atomic fmin/fmax (#95591)
The global/flat/buffer atomic fmin/fmax situation is a mess. These
instructions have been renamed 3 times. We currently have
separate pseudos defined for the same opcodes with the different names
(e.g. GLOBAL_ATOMIC_MIN_F64 from gfx90a and GLOBAL_ATOMIC_FMIN_X2 from gfx10).
Use the _FMIN versions as the canonical name for the f32 versions. Use the
_MIN_F64 style as the canonical name for the f64 case. This is because
gfx90a has the most sensible names, but does not have the f32 versions.t sho
Wire through the pseudo to use for the instruction properties vs. the assembly
name like in other cases. This will simplify handling of direct atomicrmw selection.
This will simplify directly selecting these from atomicrmw.
Commit: 47f5707db796419a5872592422f0f1beb17f0731
https://github.com/llvm/llvm-project/commit/47f5707db796419a5872592422f0f1beb17f0731
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/AST/DeclID.h
Log Message:
-----------
[Serialization] Use specialized decl hash function for GlobalDeclID (#95730)
See the comment:
https://github.com/llvm/llvm-project/pull/92083#issuecomment-2168121729
After the patch, https://github.com/llvm/llvm-project/pull/92083, the
lower 32 bits of DeclID can be the same commonly. This may produce many
collisions. It will be best to change the default hash implementation
for uint64_t. But sent this one as a quick workaround.
Feel free to update this if you prefer other hash functions.
Commit: 6b4b29f85900995b2a3b817548be4a534d46763b
https://github.com/llvm/llvm-project/commit/6b4b29f85900995b2a3b817548be4a534d46763b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libcxx/include/__atomic/memory_order.h
M libcxx/include/__hash_table
M libcxx/include/__math/exponential_functions.h
M libcxx/include/__math/fdim.h
M libcxx/include/__math/fma.h
M libcxx/include/__math/hypot.h
M libcxx/include/__math/inverse_trigonometric_functions.h
M libcxx/include/__math/min_max.h
M libcxx/include/__math/modulo.h
M libcxx/include/__math/remainder.h
M libcxx/include/__math/rounding_functions.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__mdspan/layout_left.h
M libcxx/include/__mdspan/layout_right.h
M libcxx/include/__mdspan/layout_stride.h
M libcxx/include/__numeric/gcd_lcm.h
M libcxx/include/__thread/thread.h
M libcxx/include/__tree
M libcxx/include/cmath
M libcxx/include/deque
M libcxx/include/forward_list
M libcxx/include/ios
M libcxx/include/list
M libcxx/include/map
M libcxx/include/queue
M libcxx/include/set
M libcxx/include/stack
M libcxx/include/streambuf
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/vector
Log Message:
-----------
[libc++][NFC] Remove unnecessary parens in static_asserts (#95605)
These were required a long time ago due to `static_assert` not actually
being available in C++03. Now `static_assert` is simply mapped to
`_Static_assert` in C++03, making the additional parens unnecessary.
Commit: bbe4a80605619dcb819ccfee016cf1355fb00af2
https://github.com/llvm/llvm-project/commit/bbe4a80605619dcb819ccfee016cf1355fb00af2
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libcxx/.clang-tidy
M libcxx/include/__bit_reference
M libcxx/include/__functional/function.h
M libcxx/include/__functional/reference_wrapper.h
M libcxx/include/__locale_dir/locale_base_api/locale_guard.h
M libcxx/include/__mutex/lock_guard.h
M libcxx/include/__ostream/basic_ostream.h
M libcxx/include/__ranges/ref_view.h
M libcxx/include/__thread/thread.h
M libcxx/include/__tree
M libcxx/include/forward_list
M libcxx/include/future
M libcxx/include/iosfwd
M libcxx/include/istream
M libcxx/include/list
M libcxx/include/locale
M libcxx/include/map
M libcxx/include/regex
M libcxx/include/tuple
M libcxx/include/unordered_map
M libcxx/include/vector
Log Message:
-----------
[libc++] Enable modernize-use-equals-delete (#93293)
Differential Revision: https://reviews.llvm.org/D121213
Commit: cb417401879ce70b441a999c4a30f7b64b8d426b
https://github.com/llvm/llvm-project/commit/cb417401879ce70b441a999c4a30f7b64b8d426b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libcxx/include/__hash_table
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/swap_allocator.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__split_buffer
M libcxx/include/__tree
M libcxx/include/__type_traits/is_swappable.h
M libcxx/include/__utility/pair.h
M libcxx/include/__utility/swap.h
M libcxx/include/array
M libcxx/include/deque
M libcxx/include/experimental/propagate_const
M libcxx/include/forward_list
M libcxx/include/list
M libcxx/include/map
M libcxx/include/queue
M libcxx/include/regex
M libcxx/include/set
M libcxx/include/stack
M libcxx/include/string
M libcxx/include/tuple
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/vector
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_swappable_include_order.pass.cpp
M libcxx/test/support/nasty_containers.h
M libcxx/test/support/poisoned_hash_helper.h
Log Message:
-----------
[libc++] Refactor<__type_traits/is_swappable.h> (#86822)
This changes the `is_swappable` implementation to use variable templates
first and basing the class templates on that. This avoids instantiating
them when the `_v` versions are used, which are generally less resource
intensive.
Commit: f07d30072ac0dd0e10a4684335d5f464db627049
https://github.com/llvm/llvm-project/commit/f07d30072ac0dd0e10a4684335d5f464db627049
Author: Tomas Matheson <Tomas.Matheson at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/test/CodeGen/aarch64-targetattr.c
M clang/test/Misc/target-invalid-cpu-note.c
M clang/test/Preprocessor/aarch64-target-features.c
M flang/test/Driver/target-cpu-features.f90
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/utils/TableGen/ARMTargetDefEmitter.cpp
Log Message:
-----------
[AArch64][TargetParser] move CPUInfo into tablegen [NFC] (#92145)
This is a follow up to #92037, which moved the architecture information.
Generate the AArch64TargetParser CPUInfo from tablegen Processor defs using a
new tablegen emitter. Some basic error checking is added in the emitter to
ensure that duplicate features are not added to the Processor defs.
The generic CPU becomes an entry in tablegen.
Some CPU features which were present in the CPUInfo but absent from the tablegen
defs have been added to tablegen. FeatureCrypto is replaced with FeatureSHA2 and
FeatureAES. This changes a few of the tests.
Commit: aabf6df644d1906aaa8ebe95868e4ef0c262d428
https://github.com/llvm/llvm-project/commit/aabf6df644d1906aaa8ebe95868e4ef0c262d428
Author: Luke Lau <luke at igalia.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV] Remove redundant dependency on SlotIndexes in RISCVInsertVSETVLI. NFC
SlotIndexes is already marked as a transitive requirement of
LiveIntervals, so we don't need to specify it again in
RISCVInsertVSETVLI.
Commit: fed8e38c195af5b4806b1088c3ef4d772c0ff450
https://github.com/llvm/llvm-project/commit/fed8e38c195af5b4806b1088c3ef4d772c0ff450
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Driver.cpp
M lld/COFF/ICF.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
M lld/COFF/MarkLive.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/SymbolTable.h
M lld/COFF/Writer.cpp
A lld/test/COFF/arm64ec-entry-thunk.s
A lld/test/COFF/arm64ec-hybmp.s
M llvm/include/llvm/BinaryFormat/COFF.h
Log Message:
-----------
[LLD][COFF] Add support for ARM64EC entry thunks. (#88132)
For x86_64 callable functions, ARM64EC requires an entry thunk generated
by the compiler. The linker interprets .hybmp sections to associate
function chunks with their entry points and writes an offset to thunks
preceding function section contents.
Additionally, ICF needs to be aware of entry thunks to not consider
chunks to be equal when they have different entry thunks, and GC needs
to mark entry thunks together with function chunks.
I used a new SectionChunkEC class instead of storing entry thunks in
SectionChunk, following the guideline to keep SectionChunk as compact as
possible. This way, there is no memory usage increase on non-EC targets.
Commit: 7ea203b7d91b8533059e43f8eec18e2b47da28f1
https://github.com/llvm/llvm-project/commit/7ea203b7d91b8533059e43f8eec18e2b47da28f1
Author: csstormq <swust_xiaoqiangxu at 163.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/CodeGen/RegisterPressure.cpp
Log Message:
-----------
RegPressure: Fix incorrect comment. NFC (#95896)
Commit: ca7dc895cea44c80263c969302fa2f202751aa9c
https://github.com/llvm/llvm-project/commit/ca7dc895cea44c80263c969302fa2f202751aa9c
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/test/CodeGen/AArch64/sme-disable-gisel-fisel.ll
M llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
M llvm/test/CodeGen/AArch64/sme-lazy-save-call.ll
M llvm/test/CodeGen/AArch64/sme-shared-za-interface.ll
A llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
Log Message:
-----------
[AArch64][SME] Remove unused ZA lazy-save (#81648)
This patch removes the TPIDR2 lazy-save object and buffer if no lazy
save is required.
---------
Co-authored-by: Samuel Tebbs <samuel.tebbs at arm.com>
Commit: 1d97f8f78a18820a2e0263d7a56595a25d9ed631
https://github.com/llvm/llvm-project/commit/1d97f8f78a18820a2e0263d7a56595a25d9ed631
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
Log Message:
-----------
AMDGPU: Add some addressing mode tests for flat atomic intrinsics
These are incorrectly matching with signed offsets.
Commit: 9f44d5d9d0903adaa9deb35d33056202e5030cb3
https://github.com/llvm/llvm-project/commit/9f44d5d9d0903adaa9deb35d33056202e5030cb3
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/include/flang/Optimizer/Builder/Runtime/Assign.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Runtime/assign.h
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Optimizer/Builder/Runtime/Assign.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/runtime/assign.cpp
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/assumed_shape_with_value_keyword.f90
M flang/test/HLFIR/copy-in-out-codegen.fir
M flang/test/HLFIR/copy-in-out.fir
M flang/test/HLFIR/memory-effects.fir
M flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-poly-to-assumed-type.f90
M flang/test/Lower/HLFIR/poly_expr_for_nonpoly_dummy.f90
M flang/test/Lower/call-copy-in-out.f90
M flang/test/Lower/dummy-argument-assumed-shape-optional.f90
M flang/test/Lower/dummy-argument-optional-2.f90
M flang/test/Lower/optional-value-caller.f90
Log Message:
-----------
[flang] Simplify copy-in copy-out runtime API (#95822)
The runtime API for copy-in copy-out currently only has an entry only
for the copy-out. This entry has a "skipInit" boolean that is never set
to false by lowering and it does not deal with the deallocation of the
temporary.
The generated code was a mix of inline code and runtime calls This is not a big deal,
but this is unneeded compiler and generated code complexity.
With assumed-rank, it is also more cumbersome to establish a
temporary descriptor.
Instead, this patch:
- Adds a CopyInAssignment API that deals with establishing the temporary
descriptor and does the copy.
- Removes unused arg to CopyOutAssign, and pushes
destruction/deallocation responsibility inside it.
Note that this runtime API are still not responsible for deciding the
need of copying-in and out. This is kept as a separate runtime call to
IsContiguous, which is easier to inline/replace by inline code with the
hope of removing the copy-in/out calls after user function inlining.
@vzakhari has already shown that always inlining all the copy part
increase Fortran compilation time due to loop optimization attempts for
loops that are known to have little optimization profitability (the
variable being copied from and to is not contiguous).
Commit: 612fdf3fec279b84f9cae0c22214e2b0891c9847
https://github.com/llvm/llvm-project/commit/612fdf3fec279b84f9cae0c22214e2b0891c9847
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
A llvm/test/CodeGen/X86/cmpf-avx.ll
Log Message:
-----------
[X86] Add AVX1 v8i32 comparison test coverage
Pulled from #82290
Commit: 20d3cab85258198d262eea05fae6292a2666d6ae
https://github.com/llvm/llvm-project/commit/20d3cab85258198d262eea05fae6292a2666d6ae
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplateDeduction.cpp
Log Message:
-----------
[clang][NFC] Take const pointers in Sema::DiagnoseAutoDeductionFailure
Commit: eda9ff899faf77ec0171b4421a3278c4fb8a0a61
https://github.com/llvm/llvm-project/commit/eda9ff899faf77ec0171b4421a3278c4fb8a0a61
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
Log Message:
-----------
AMDGPU: Flat instructions do not have signed offsets gfx7-gfx11 (#95852)
Fixes some atomicrmw fadd and intrinsic cases
Commit: 66aa26012bda48bca58673fcdd0bed43380d544f
https://github.com/llvm/llvm-project/commit/66aa26012bda48bca58673fcdd0bed43380d544f
Author: Nico Weber <thakis at chromium.org>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
R llvm/utils/gn/secondary/llvm/lib/Transforms/Hello/BUILD.gn
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
Log Message:
-----------
[gn] port 8b0d38be9ece414
Commit: 69753aa43b0a1f0d13abdf396a754aa0cc8b6a20
https://github.com/llvm/llvm-project/commit/69753aa43b0a1f0d13abdf396a754aa0cc8b6a20
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M bolt/test/X86/stale-matching-min-matched-block.test
Log Message:
-----------
[bolt] stale-matching-min-matched-block.test requires asserts
Because of the --debug-only flag.
Commit: 4d7d45e8bab102f8792d45e1807cfe2d1c55dd69
https://github.com/llvm/llvm-project/commit/4d7d45e8bab102f8792d45e1807cfe2d1c55dd69
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/AST/ExprConstShared.h
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/Opcodes.td
M clang/test/AST/Interp/complex.cpp
M clang/test/SemaCXX/complex-folding.cpp
Log Message:
-----------
[clang][Interp] Implement complex division (#94892)
Share the implementation with the current interpreter.
Commit: 9e63632b3274dc1b20502b569e79a311977e0a97
https://github.com/llvm/llvm-project/commit/9e63632b3274dc1b20502b569e79a311977e0a97
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn
Log Message:
-----------
[gn build] Port 89c26f6c7b0a
Commit: ced41a125c7efdb11087570850bac27a94891030
https://github.com/llvm/llvm-project/commit/ced41a125c7efdb11087570850bac27a94891030
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Log Message:
-----------
[InstCombine] Remove redundant urem demanded bits case
This does the recursive simplification with all bits demanded,
which is not useful. Fall through to the fallback case instead.
Commit: bcaacf38920fe2b85e7d65e8c3832deefea96d21
https://github.com/llvm/llvm-project/commit/bcaacf38920fe2b85e7d65e8c3832deefea96d21
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/AST/Interp/InterpStack.h
Log Message:
-----------
[clang][Interp][NFC] Fix a user-after-move
Reported by a static analyzer.
Commit: 1a0a4d0b2290c124db6d656cf58226259d2d3443
https://github.com/llvm/llvm-project/commit/1a0a4d0b2290c124db6d656cf58226259d2d3443
Author: David Green <david.green at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/ret-vec-promote.ll
A llvm/test/CodeGen/AArch64/GlobalISel/vec-param.ll
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/function-returns.v2i65.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.v2i65.ll
Log Message:
-----------
[GlobalISel] Allow more illegal vector types in params/returns. (#95514)
This helps some of the testing of illegal types, allowing us to pass
them into and out of functions.
The AMD tests no longer fail, but I am unsure whether they are correct.
They fail later on in the pipeline for GISel, and during lowering ret
for SDAG.
Commit: d97951e57a9b47fc3febff130217da62071aa44b
https://github.com/llvm/llvm-project/commit/d97951e57a9b47fc3febff130217da62071aa44b
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
A llvm/test/ExecutionEngine/Orc/global-ctor-order.ll
Log Message:
-----------
Reland "[ORC] Preserve order of constructors with same priority (#95532)"
This reverts commit edd6f0c544785d6f6276a24b94222e0064413cd1.
The newly added test uncovered a pre-existing issue on Arm 32 bit,
so as we did https://github.com/llvm/llvm-project/issues/94994, disable
it while we find the problem.
Commit: d38c8a7a51227fecdb1f84160f5da4f89c3e25be
https://github.com/llvm/llvm-project/commit/d38c8a7a51227fecdb1f84160f5da4f89c3e25be
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/logf128.ll
Log Message:
-----------
ConstantFold logl calls (#94944)
This is a follow up patch from #90611 which folds logl calls in the same
manner as log.f128 calls. logl suffers from the same problem as logf128
of having slow calls to fp128 log functions which can be constant
folded. However, logl is emitted with -fmath-errno and log.f128 is
emitted by -fno-math-errno by certain intrinsics.
Commit: 79e668f9700cc8321e7ee0eecd3b82c108aea6de
https://github.com/llvm/llvm-project/commit/79e668f9700cc8321e7ee0eecd3b82c108aea6de
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Log Message:
-----------
[InstCombine] Fix funnel shift bailout in demanded bits simplification
We shouldn't simply return here -- we still need to compute the
known bits and fall through to generic handling.
This fixes a -instcombine-verify-known-bits violation in funnel.ll.
Commit: e42a4c70a112c1c0f07ccb8b57b4fda4cfa11b49
https://github.com/llvm/llvm-project/commit/e42a4c70a112c1c0f07ccb8b57b4fda4cfa11b49
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
[Analysis] Fix -Wunused-function in ConstantFolding.cpp (NFC)
/llvm-project/llvm/lib/Analysis/ConstantFolding.cpp:1787:11:
error: unused function 'ConstantFoldFP128' [-Werror,-Wunused-function]
Constant *ConstantFoldFP128(long double (*NativeFP)(long double),
^
1 error generated.
Commit: 55d5c032fc9fd3aeba82cdc5dfc82b2a32f34d4f
https://github.com/llvm/llvm-project/commit/55d5c032fc9fd3aeba82cdc5dfc82b2a32f34d4f
Author: Matthias Springer <me at m-sp.org>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][vector] Fix crash in `vector.extract` folder (#95912)
Fix a bug in the `vector.extract` folder when the vector type is 0-d.
Commit: 8fc9c03cded022e2bfe16f6fd7470c3adedcd29c
https://github.com/llvm/llvm-project/commit/8fc9c03cded022e2bfe16f6fd7470c3adedcd29c
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
R clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
R clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/test/Analysis/analyzer-config.c
R clang/test/Analysis/z3/crosscheck-statistics.c
M clang/unittests/StaticAnalyzer/CMakeLists.txt
R clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
M llvm/include/llvm/Support/SMTAPI.h
M llvm/lib/Support/Z3Solver.cpp
Log Message:
-----------
[analyzer] Revert Z3 changes (#95916)
Requested in:
https://github.com/llvm/llvm-project/pull/95128#issuecomment-2176008007
Revert "[analyzer] Harden safeguards for Z3 query times"
Revert "[analyzer][NFC] Reorganize Z3 report refutation"
This reverts commit eacc3b3504be061f7334410dd0eb599688ba103a.
This reverts commit 89c26f6c7b0a6dfa257ec090fcf5b6e6e0c89aab.
Commit: eb3e544473e6064feece8255a5c44c9b31072f26
https://github.com/llvm/llvm-project/commit/eb3e544473e6064feece8255a5c44c9b31072f26
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn
Log Message:
-----------
[gn build] Port 8fc9c03cded0
Commit: e2c2ffbe7a1b5d9e32a2ce64279475b50c4cba5b
https://github.com/llvm/llvm-project/commit/e2c2ffbe7a1b5d9e32a2ce64279475b50c4cba5b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libcxx/include/__algorithm/comp_ref_type.h
M libcxx/include/__algorithm/make_projected.h
M libcxx/include/__atomic/atomic_init.h
M libcxx/include/__bit_reference
M libcxx/include/__chrono/duration.h
M libcxx/include/__chrono/time_point.h
M libcxx/include/__config
M libcxx/include/__configuration/abi.h
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__format/formatter_output.h
M libcxx/include/__functional/bind.h
M libcxx/include/__functional/bind_back.h
M libcxx/include/__functional/bind_front.h
M libcxx/include/__functional/mem_fn.h
M libcxx/include/__functional/mem_fun_ref.h
M libcxx/include/__functional/operations.h
M libcxx/include/__functional/pointer_to_binary_function.h
M libcxx/include/__functional/pointer_to_unary_function.h
M libcxx/include/__functional/unary_negate.h
M libcxx/include/__iterator/access.h
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__iterator/cpp17_iterator_concepts.h
M libcxx/include/__iterator/iter_swap.h
M libcxx/include/__iterator/move_iterator.h
M libcxx/include/__iterator/reverse_iterator.h
M libcxx/include/__iterator/wrap_iter.h
M libcxx/include/__mdspan/mdspan.h
M libcxx/include/__memory/allocate_at_least.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__ranges/access.h
M libcxx/include/__ranges/all.h
M libcxx/include/__ranges/common_view.h
M libcxx/include/__ranges/counted.h
M libcxx/include/__ranges/data.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/rend.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__split_buffer
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_size.h
M libcxx/include/__type_traits/invoke.h
M libcxx/include/__type_traits/is_literal_type.h
M libcxx/include/__utility/exception_guard.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/is_pointer_in_range.h
M libcxx/include/__verbose_abort
M libcxx/include/any
M libcxx/include/array
M libcxx/include/barrier
M libcxx/include/cmath
M libcxx/include/codecvt
M libcxx/include/coroutine
M libcxx/include/fstream
M libcxx/include/limits
M libcxx/include/locale
M libcxx/include/map
M libcxx/include/mutex
M libcxx/include/new
M libcxx/include/optional
M libcxx/include/print
M libcxx/include/queue
M libcxx/include/regex
M libcxx/include/scoped_allocator
M libcxx/include/set
M libcxx/include/shared_mutex
M libcxx/include/span
M libcxx/include/stack
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/strstream
M libcxx/include/tuple
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/valarray
M libcxx/include/variant
M libcxx/include/vector
Log Message:
-----------
[libc++][NFC] Run clang-format on libcxx/include again (#95874)
As time went by, a few files have become mis-formatted w.r.t.
clang-format. This was made worse by the fact that formatting was not
being enforced in extensionless headers. This commit simply brings all
of libcxx/include in-line with clang-format again.
We might have to do this from time to time as we update our clang-format
version, but frankly this is really low effort now that we've formatted
everything once.
Commit: 65b0301943e64d7841e11f047a1a9fbd15f28037
https://github.com/llvm/llvm-project/commit/65b0301943e64d7841e11f047a1a9fbd15f28037
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M .git-blame-ignore-revs
Log Message:
-----------
[git] Add libcxx touch-up formatting to git-blame-ignore-revs
Commit: 74941d053cd3cbe6a49a4b3387e21bd139377cee
https://github.com/llvm/llvm-project/commit/74941d053cd3cbe6a49a4b3387e21bd139377cee
Author: Hugo Trachino <hugo.trachino at huawei.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
M mlir/test/Dialect/Vector/vector-transfer-to-vector-load-store.mlir
Log Message:
-----------
[MLIR][Vector] Implement XferOp To {Load|Store}Lowering as MaskableOpRewritePattern (#92892)
Implements `TransferReadToVectorLoadLowering` and
`TransferWriteToVectorStoreLowering` as a `MaskableOpRewritePattern`.
Allowing to exit gracefully when run on an xferOp located inside a
`vector::MaskOp` instead of breaking because the pattern generated
multiple ops in the MaskOp with `error: 'vector.mask' op expects only
one operation to mask`.
Split of https://github.com/llvm/llvm-project/pull/90835
Commit: 506b4cdae0929ff4bc7174cb580b5e55b8a74a0b
https://github.com/llvm/llvm-project/commit/506b4cdae0929ff4bc7174cb580b5e55b8a74a0b
Author: David Truby <david.truby at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/lib/Semantics/canonicalize-directives.cpp
M flang/test/Semantics/loop-directives.f90
Log Message:
-----------
[flang] Change vector always errors to warnings (#95908)
Commit: 0f1b6276ce8e92363cbebc5308d0ce5f0c25b99d
https://github.com/llvm/llvm-project/commit/0f1b6276ce8e92363cbebc5308d0ce5f0c25b99d
Author: Matt Devereau <matthew.devereau at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
Fixup __float128 uses and if defined guard in ConstantFolding
Uses of __float128 in (#94944) should be float128. Although ConstantFoldFP128
is not reliant on HAS_LOGF128, it is only used by conditional code controlled
by HAS_LOGF128, and will cause unused errors on buildbots.
Commit: fb86cb7ec157689e4106e70deea2e1f71d6a780e
https://github.com/llvm/llvm-project/commit/fb86cb7ec157689e4106e70deea2e1f71d6a780e
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
A llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
Log Message:
-----------
[LV] Add extra tests for interleave-group, reduction store costing.
Add extra cost model tests exposed by VPlan cost-model transition,
causing revert in 6f538f6a2d3224efda985e9eb09012fa4275ea92
Commit: 3417ff6b1c6b165fce92e7c647c65466092cf638
https://github.com/llvm/llvm-project/commit/3417ff6b1c6b165fce92e7c647c65466092cf638
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
Log Message:
-----------
[Clang] Fix immediate escalation in templated entities (#95233)
* Lambdas were not considered immediate escalating in a template
* Calls to an immediate function whose arguments were dependent were
incorrectly treated as immediate escalating.
Fixes #94935
Commit: f1eae81c0738a2b05d8ba4039a04af6959a13d3b
https://github.com/llvm/llvm-project/commit/f1eae81c0738a2b05d8ba4039a04af6959a13d3b
Author: Danial Klimkin <dklimkin at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/unittests/Lex/HeaderSearchTest.cpp
Log Message:
-----------
[NFC]Fix memory leak in HeaderSearchTest (#95927)
AddressSanitizer: 56 byte(s) leaked in 1 allocation(s).
(clang/unittests:lex_tests)
Commit: aede380210b4b86b821f3ec24b506f0d5a6928c9
https://github.com/llvm/llvm-project/commit/aede380210b4b86b821f3ec24b506f0d5a6928c9
Author: Shao-Ce SUN <sunshaoce at outlook.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/test/Driver/riscv-cpus.c
M clang/test/Misc/target-invalid-cpu-note.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add processor definition for SpacemiT-X60 (#94564)
SpacemiT-X60 is an RVV 1.0 core integrated into the SpacemiT-K1, an
8-core SoC, and it is incorporated into the BPi-F3 development board.
According to the
[document](https://developer.spacemit.com/#/documentation?token=BWbGwbx7liGW21kq9lucSA6Vnpb),
relevant information for extensions has been obtained.
BPi-F3 Datasheet:
https://docs.banana-pi.org/en/BPI-F3/SpacemiT_K1_datasheet
Spacemit-K1 Datasheet:
https://developer.spacemit.com/#/documentation?token=DBd4wvqoqi2fiqkiERTcbEDknBh
Commit: 1d76bf900b1671eec88b414e83fe9a4df99fdb07
https://github.com/llvm/llvm-project/commit/1d76bf900b1671eec88b414e83fe9a4df99fdb07
Author: DianQK <dianqk at dianqk.net>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/test/Transforms/SimplifyCFG/ForwardSwitchConditionToPHI.ll
Log Message:
-----------
[SimplifyCFG] Remove unnecessary content in `ForwardSwitchConditionToPHI.ll` (NFC)
Also rename `t` to forward_multiple`.
Commit: d7d19a9ddaec49f014198c42a404b40de87284e4
https://github.com/llvm/llvm-project/commit/d7d19a9ddaec49f014198c42a404b40de87284e4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
R clang/utils/update_options_td_flags.py
Log Message:
-----------
[clang] Remove update_options_td_flags.py (#95909)
The comment says:
> This script will be removed after the next LLVM release.
but it's still there. Change that.
Commit: 66959ff8633684ec285d62ac244d38bfc8b263da
https://github.com/llvm/llvm-project/commit/66959ff8633684ec285d62ac244d38bfc8b263da
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
[Analysis] Fix -Wunused-function in ConstantFolding.cpp (NFC)
/llvm-project/llvm/lib/Analysis/ConstantFolding.cpp:1747:11:
error: unused function 'GetConstantFoldFPValue128' [-Werror,-Wunused-function]
Constant *GetConstantFoldFPValue128(float128 V, Type *Ty) {
^
1 error generated.
Commit: d9a00ed3668803d11675b103fe9b6ed077ddc4c1
https://github.com/llvm/llvm-project/commit/d9a00ed3668803d11675b103fe9b6ed077ddc4c1
Author: Xuan Zhang <144393379+xuanzh-meta at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/Support/SuffixTree.h
M llvm/include/llvm/Support/SuffixTreeNode.h
M llvm/lib/CodeGen/MachineOutliner.cpp
M llvm/lib/Support/SuffixTree.cpp
M llvm/lib/Support/SuffixTreeNode.cpp
M llvm/test/CodeGen/AArch64/machine-outliner-cfi-tail-some.mir
A llvm/test/CodeGen/AArch64/machine-outliner-leaf-descendants.ll
M llvm/test/CodeGen/AArch64/machine-outliner-overlap.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-sp-mod.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-thunk.ll
M llvm/test/CodeGen/AArch64/machine-outliner-throw2.ll
M llvm/test/CodeGen/AArch64/machine-outliner-thunk.ll
M llvm/test/CodeGen/AArch64/machine-outliner.mir
M llvm/test/CodeGen/RISCV/machineoutliner-pcrel-lo.mir
M llvm/unittests/Support/SuffixTreeTest.cpp
Log Message:
-----------
[MachineOutliner] Leaf Descendants (#90275)
This PR depends on https://github.com/llvm/llvm-project/pull/90264
In the current implementation, only leaf children of each internal node
in the suffix tree are included as candidates for outlining. But all
leaf descendants are outlining candidates, which we include in the new
implementation. This is enabled on a flag `outliner-leaf-descendants`
which is default to be true.
The reason for _enabling this on a flag_ is because machine outliner is
not the only pass that uses suffix tree.
The reason for _having this default to be true_ is because including all
leaf descendants show consistent size win.
* For Clang/LLD, it shows around 3% reduction in text segment size when
compared to the baseline `-Oz` linker binary.
* For selected benchmark tests in LLVM test suite
| run (CTMark/) | only leaf children | all leaf descendants | reduction
% |
|------------------|--------------------|----------------------|-------------|
| lencod | 349624 | 348564 | -0.2004% |
| SPASS | 219672 | 218440 | -0.4738% |
| kc | 271956 | 250068 | -0.4506% |
| sqlite3 | 223920 | 222484 | -0.5471% |
| 7zip-benchmark | 405364 | 401244 | -0.3428% |
| bullet | 139820 | 138340 | -0.8315% |
| consumer-typeset | 295684 | 286628 | -1.2295% |
| pairlocalalign | 72236 | 71936 | -0.2164% |
| tramp3d-v4 | 189572 | 183676 | -2.9668% |
This is part of an enhanced version of machine outliner -- see
[RFC](https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-1-fulllto-part-2-thinlto-nolto-to-come/78732).
Commit: 41f6aee769a900558e58eba7b5f9044f8f8a05b7
https://github.com/llvm/llvm-project/commit/41f6aee769a900558e58eba7b5f9044f8f8a05b7
Author: thetruestblue <92476612+thetruestblue at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M lldb/source/Target/InstrumentationRuntime.cpp
Log Message:
-----------
[LLDB] Don't cache module sp when Activate() fails. (#95586)
Currently, the instrumentation runtime is caching a library the first
time it sees it in the module list. However, in some rare cases on
Darwin, the cached pre-run unloaded modules are different from the
runtime module that is loaded at runtime. This patch removes the cached
module if the plugin fails to activate, ensuring that on subsequent
calls we don't try to activate using the unloaded cached module.
There are a few related bugs to fix in a follow up: CheckIfRuntimeValid
should have a stronger check to ensure the module is loaded and can be
activated. Further investigation in
UpdateSpecialBinariesFromNewImageInfos calling ModulesDidLoad when the
module list may have unloaded modules.
I have not included a test for the following reasons:
1. This is an incredibly rare occurance and is only observed in a
specific circumstance on Darwin. It is tied to behavior in the
DynamicLoader thai is not commonly encountered.
2. It is difficult to reproduce -- this bug requires precise conditions
on darwin and it is unclear how we'd reproduce that in a controlled
testing environment.
rdar://128971453
Commit: 552f80a97982c30e3cb1bde2223e923a2e3a47e8
https://github.com/llvm/llvm-project/commit/552f80a97982c30e3cb1bde2223e923a2e3a47e8
Author: Matthias Springer <me at m-sp.org>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][vector] Fix crash when folding 0D extract from splat/broadcast (#95918)
There was an assertion in the folder that caused a crash when extracting
from a vector that is defined by an op with 0D semantics. This commit
removes the assertion and adds test cases to ensure that 0D scenarios
are handled correctly.
Commit: 440af98a04402929b8c644b983add05cf420b5f8
https://github.com/llvm/llvm-project/commit/440af98a04402929b8c644b983add05cf420b5f8
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Log Message:
-----------
[InstCombine] Avoid use of ConstantExpr::getShl()
Use IRBuilder instead. Also use ImmConstant to guarantee that this
will fold.
Commit: 76e889d3b024c187880187b1a14fe9ab0ea7aa36
https://github.com/llvm/llvm-project/commit/76e889d3b024c187880187b1a14fe9ab0ea7aa36
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
Log Message:
-----------
[InstCombine] Avoid use of ConstantExpr::getShl()
Use the constant folding API instead (we later call isNotMinSignedValue
on it, so we do need the Constant* return type here). Use ImmConstant
to guarantee that constant folding succeeds.
Commit: d314cf241d61410fa4bd925c1c4355e87209da17
https://github.com/llvm/llvm-project/commit/d314cf241d61410fa4bd925c1c4355e87209da17
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
Log Message:
-----------
[InstCombine] Avoid use of ConstantExpr::getShl()
Use IRBuilder instead, as we don't care about the return type
here. Use ImmConstant to ensure that constant folding will
succeed.
Commit: e64ed1db46967fe9963751873b5d0098b57c9316
https://github.com/llvm/llvm-project/commit/e64ed1db46967fe9963751873b5d0098b57c9316
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
Log Message:
-----------
[InstCombine] Avoid use of ConstantExpr::getShl()
Either use IRBuilder or the constant folding API instead. For
the IRBuilder uses, also switch to ImmConstant to make sure that
folding will succeed.
Commit: 8052e94946ec7535f2d22aae1dbf3c48d3cd1b34
https://github.com/llvm/llvm-project/commit/8052e94946ec7535f2d22aae1dbf3c48d3cd1b34
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Log Message:
-----------
[InstCombine] Avoid use of ConstantExpr::getShl()
Use the constant folding API instead. Use ImmConstant to make
sure it actually folds.
Commit: 162386693f663b3d0aa5403a45bfbc8edc3a84ed
https://github.com/llvm/llvm-project/commit/162386693f663b3d0aa5403a45bfbc8edc3a84ed
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
Log Message:
-----------
[AMDGPU][MC] Support UC_VERSION_* constants. (#95618)
Our other tools support them, so we want them in LLVM
assembler/disassembler too.
Commit: 6be6c3a37be46ebefa967b66e398d8ea9ed4ffe8
https://github.com/llvm/llvm-project/commit/6be6c3a37be46ebefa967b66e398d8ea9ed4ffe8
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/test/Transforms/InstCombine/shuffle_select.ll
Log Message:
-----------
[InstCombine] Use disjoint flag for alternate binops
Check the or disjoint flag instead of the weaker MaskedValueIsZero
query.
Commit: ffc31d3221e2ebe1f5b1e5c846dcde27cb326616
https://github.com/llvm/llvm-project/commit/ffc31d3221e2ebe1f5b1e5c846dcde27cb326616
Author: Tina Jung <tinamaria.jung at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
Log Message:
-----------
[mlir][emitc] arith.negf to EmitC conversion (#95372)
Lower arith.negf to the unary minus in EmitC.
Commit: 534e3ad08b0b9773aceaef82f1282fd5bd8c43e6
https://github.com/llvm/llvm-project/commit/534e3ad08b0b9773aceaef82f1282fd5bd8c43e6
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[InstCombine] Avoid use of ConstantExpr::getShl()
Use the constant folding API instead. Use ImmConstant to ensure
folding succeeds.
Commit: 5aaf2ab085ef85498a65a1af03a1b3812c2cf531
https://github.com/llvm/llvm-project/commit/5aaf2ab085ef85498a65a1af03a1b3812c2cf531
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/Reassociate.cpp
Log Message:
-----------
[Reassociate] Avoid use of ConstantExpr::getShl()
Use the constant folding API instead.
Commit: 3eb4128eb0cb4a42b912ee352c120a9c0f2ddbd6
https://github.com/llvm/llvm-project/commit/3eb4128eb0cb4a42b912ee352c120a9c0f2ddbd6
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/stack-tagging-initializer-merge.ll
Log Message:
-----------
[StackTagging] Generate test checks (NFC)
Commit: 7dbc1688b550510b6777acbbbcfea8e02ba34ed2
https://github.com/llvm/llvm-project/commit/7dbc1688b550510b6777acbbbcfea8e02ba34ed2
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M lldb/test/API/lit.cfg.py
Log Message:
-----------
[lldb] Extend Python interpreter workaround to Xcode Python (attempt #2.5)
The Python interpreter in Xcode cannot be copied because of a relative
RPATH. Our workaround would just use that Python interpreter directly
when it detects this. For the reasons explained in my previous commit,
that doesn't work in a virtual environment. Address this case by
creating a symlink to the "real" interpreter in the virtual environment.
Commit: 4b9112e88a998ce620e4683548f2afd17cc5fe95
https://github.com/llvm/llvm-project/commit/4b9112e88a998ce620e4683548f2afd17cc5fe95
Author: Vikash Gupta <35700483+vg0204 at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
M llvm/test/CodeGen/AMDGPU/sgpr-regalloc-flags.ll
M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
Log Message:
-----------
[AMDGPU]Optimize SGPR spills (#93668)
This PR is dependent on
[#93779](https://github.com/llvm/llvm-project/pull/93779).
As currently, each SGPR Spills are lowered to go into distinct stack
slots in stack frame after SGPR allocation phase. Therefore, this patch
utilizes the capability of StackSlotColoring to ensure the stack slot
sharing if possible for stack frame index, where the SGPR spills are
occuring in the non-interfering region.
StackSlotColoring is introduced immediately after SGPR register
allocation, just to ensure that any further lowering happens on the
optimally allocated stack slots, with certain flags to indicate the
preservation of certain analysis result later to be used by RA of other
register classes.
Commit: 083c683969b2436afdc45becadc955841f5f4d31
https://github.com/llvm/llvm-project/commit/083c683969b2436afdc45becadc955841f5f4d31
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/CMakeLists.txt
M flang/cmake/modules/AddFlang.cmake
Log Message:
-----------
[flang] Add FLANG_PARALLEL_COMPILE_JOBS option (#95672)
This works the same way as LLVM_PARALLEL_COMPILE_JOBS except that it is
specific to the flang source rather than for the whole project.
Configuring with -DFLANG_PARALLEL_COMPILE_JOBS=1 would mean that there
would only ever be one flang source being compiled at a time.
Some of the flang sources require large amounts of memory to compile, so
this option can be used to avoid OOM erros when compiling those files
while still allowing the rest of the project to compile using the
maximum number of jobs.
---------
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: da0e5359fc1a5bf1749306440f9dad089046d772
https://github.com/llvm/llvm-project/commit/da0e5359fc1a5bf1749306440f9dad089046d772
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
A .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M llvm/docs/HowToReleaseLLVM.rst
Log Message:
-----------
workflows: Add a new job for packaging release sources (#91834)
This job uses the new artifact attestations:
https://github.blog/2024-05-02-introducing-artifact-attestations-now-in-public-beta/
This will allow users to verify that the sources came from a specific
workflow run in the llvm-project repository. Currently, this job does
not automatically upload sources to the release page, but rather it
attaches them the workflow run as artifacts. The release manager is
expected to download, verify, and sign the sources before uploading them
to the release page.
We may be able to automatically upload them in the future once we have a
process for signing the binaries within the github workflow.
Technically, though, the binaries are being signed as part of the
attestation process, but the only way to verify the signatures is using
the gh command line tool, and I don't think it is best to rely on that,
since the tool may not be easily available on all systems.
Commit: fcee0333bab6747ca34188f3a781f4fef900b7fe
https://github.com/llvm/llvm-project/commit/fcee0333bab6747ca34188f3a781f4fef900b7fe
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M lldb/source/Target/Process.cpp
M lldb/test/Shell/Process/UnsupportedLanguage.test
Log Message:
-----------
[lldb] Suppress unsupported language warning for assembly (#95871)
The following warning is technically correct, but pretty much useless,
since there aren't any frame variables that we'd expect the debugger to
understand.
> This version of LLDB has no plugin for the language "assembler".
> Inspection of frame variables will be limited.
This message is useful in the general case but should be suppressed for
the "assembler" case.
rdar://92745462
Commit: b99d0b34400176cb9183113b96b245400caaf8d8
https://github.com/llvm/llvm-project/commit/b99d0b34400176cb9183113b96b245400caaf8d8
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/include/mlir/Interfaces/TilingInterface.h
M mlir/include/mlir/Interfaces/TilingInterface.td
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
Log Message:
-----------
[mlir][TilingInterface] Update `PartialReductionOpInterface` to get it more in line with `TilingInterface`. (#95460)
The `TilingInterface` methods have return values that allow the
interface implementation to return multiple operations, and also return
tiled values explicitly. This is to avoid the assumption that the
interface needs to return a single operation and this operations result
are the expected tiled values. Make the
`PartialReductionOpInterface::tileToPartialReduction` return
`TilingResult` as well for the same reason.
Similarly make the `PartialReductionOpInterface::mergeReductions` also
return a list of generated operations and values to use as replacements.
This is just a refactoring to allow for deprecation of
`linalg::tileReductionUsingForall` with `scf::tileReductionUsingSCF`
method.
Commit: ae6f730b2f6f2055b3a658235ddef91624d532f2
https://github.com/llvm/llvm-project/commit/ae6f730b2f6f2055b3a658235ddef91624d532f2
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/x86_64.h
M llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/x86_64.cpp
A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_R_X86_64_PC8.s
Log Message:
-----------
[JITLink] Add x86_64::Delta8 edge kind, ELF::R_X86_64_PC8 support (#95869)
Add support for ELF::R_X86_64_PC8 relocation via new x86_64::Delta8 edge
kind.
Commit: 8520061281b0475bf4767107ddc94cf13335db48
https://github.com/llvm/llvm-project/commit/8520061281b0475bf4767107ddc94cf13335db48
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/atomics-gmir.mir
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll
Log Message:
-----------
AMDGPU: Support local atomicrmw fmin/fmax for float/double (#95590)
This has always been supported. Somehow, we ended up with 2
copies of clang builtins for this case, and the newer one
erroneously requires gfx8-insts.
Commit: b629d4b91291328090023b5405dbbaabfd38d961
https://github.com/llvm/llvm-project/commit/b629d4b91291328090023b5405dbbaabfd38d961
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Transforms/IPO/Attributor.cpp
A llvm/test/Transforms/Attributor/recursive_globals.ll
Log Message:
-----------
[Attributor] Prevent infinite loop in AAGlobalValueInfoFloating (#94941)
Global variables that reference themselves alongside a function that is
called indirectly can cause an infinite loop in
`AAGlobalValueInfoFloating`. The recursive reference is continually
pushed back into the workload, causing the attributor to hang
indefinitely.
Commit: 62b5196be0f8ab9b3e73ccfd6a4ee0f1598d6f1c
https://github.com/llvm/llvm-project/commit/62b5196be0f8ab9b3e73ccfd6a4ee0f1598d6f1c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
A llvm/test/CodeGen/AMDGPU/invalid-inline-asm-constraint-crash.ll
Log Message:
-----------
DAG: Fix asserting on invalid inline asm constraints (#95935)
Commit: 5207632f8698a2fab0c4cdcdf2f7ad9aaf96e06f
https://github.com/llvm/llvm-project/commit/5207632f8698a2fab0c4cdcdf2f7ad9aaf96e06f
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/CMakeLists.txt
A mlir/include/mlir/Dialect/GPU/IR/GPUDeviceMappingAttr.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/CMakeLists.txt
R mlir/include/mlir/Dialect/GPU/TransformOps/GPUDeviceMappingAttr.td
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][GPU] Move `GPUDeviceMappingAttr.td` to `GPU/IR`. (#95880)
This seems to be in the wrong place with `GPU/TransformOps`
Commit: 8570685d3b5a71d9a65a8c37a88fb0184d9b131c
https://github.com/llvm/llvm-project/commit/8570685d3b5a71d9a65a8c37a88fb0184d9b131c
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/aarch64-load-ext.ll
Log Message:
-----------
[AArch64] Fix v4i8 loads in strict-align mode. (#95828)
Fixes #95811
Commit: b932da16b76f905e05520c473e3ae01c2f89e594
https://github.com/llvm/llvm-project/commit/b932da16b76f905e05520c473e3ae01c2f89e594
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
Log Message:
-----------
AMDGPU: Fix vector handling in pown libcall simplification (#95832)
The isIntegerTy check would not work as you would hope in
the vector case.
Commit: b1477eb436fd22e96b4592a73242902ae240eeef
https://github.com/llvm/llvm-project/commit/b1477eb436fd22e96b4592a73242902ae240eeef
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
Log Message:
-----------
[ARM64EC] Fix thunks for C++ methods returning structs. (#95876)
For C++ methods, the first argument is "this", and the second is the
sret argument, which needs to be returned indirectly. Add handling for
this case.
Commit: 6f13f0b3fe57d2f59b8d456446fe87f3fef686d0
https://github.com/llvm/llvm-project/commit/6f13f0b3fe57d2f59b8d456446fe87f3fef686d0
Author: Caslyn Tonelli <6718161+Caslyn at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
Log Message:
-----------
[scudo] Test secondary cache options only if enabled (#95872)
Configs that use `MapAllocatorNoCache` for its secondary cache will
return `false` if `setOption` is called with some [specific
options](https://github.com/llvm/llvm-project/blob/main/compiler-rt/lib/scudo/standalone/secondary.h#L104),
and this breaks with the `SecondaryOptions` test.
This change will gate testing all `setOption` expectations for cache
options only if the allocator cache is enabled. This will unblock
[github.com/llvm/llvm-project/pull/95595
](https://github.com/llvm/llvm-project/pull/95595) from merging into
Fuchsia.
Commit: 30efdce77e523454a6f1778827170f0e70ba8616
https://github.com/llvm/llvm-project/commit/30efdce77e523454a6f1778827170f0e70ba8616
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/AST/DeclBase.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/SemaHLSL/Availability/avail-diag-strict-compute.hlsl
A clang/test/SemaHLSL/Availability/avail-diag-strict-lib.hlsl
Log Message:
-----------
[HLSL] Strict Availability Diagnostics (#93860)
Implements HLSL availability diagnostics' strict mode.
HLSL availability diagnostics emits errors or warning when unavailable
shader APIs are used. Unavailable shader APIs are APIs that are exposed
in HLSL code but are not available in the target shader stage or shader
model version.
In the strict mode the compiler emits an error when an unavailable API
is found in any function regardless of whether it is reachable from the
shader entry point or not. This mode is enabled by
``-fhlsl-strict-availability``.
See HLSL Availability Diagnostics design doc
[here](https://github.com/llvm/llvm-project/blob/main/clang/docs/HLSL/AvailabilityDiagnostics.rst)
for more details.
Fixes #90096
Commit: 35a2b60973074ab7b9add53c58acafe166820551
https://github.com/llvm/llvm-project/commit/35a2b60973074ab7b9add53c58acafe166820551
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/test/CodeGenHLSL/builtins/rsqrt.hlsl
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/rsqrt.ll
Log Message:
-----------
[SPIRV][HLSL] Add lowering of `rsqrt` to SPIRV (#95849)
Add lowering of `rsqrt` to SPIRV.
Fixes #88949
Commit: 9a88aa0e2b6d09c7c7932e14224632b2033ad403
https://github.com/llvm/llvm-project/commit/9a88aa0e2b6d09c7c7932e14224632b2033ad403
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/DeclSpec.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/CXX/dcl.dcl/dcl.spec/dcl.stc/p1.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.decls/temp.mem/p2.cpp
M clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p17.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-0x.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-20.cpp
M clang/test/Modules/Inputs/redecl-templates/a.h
M clang/test/Modules/redecl-templates.cpp
M clang/test/PCH/cxx-templates.h
M clang/test/PCH/cxx1y-variable-templates.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
M clang/test/SemaTemplate/explicit-specialization-member.cpp
M clang/test/SemaTemplate/nested-template.cpp
Log Message:
-----------
[Clang][Sema] Diagnose variable template explicit specializations with storage-class-specifiers (#93873)
According to [temp.expl.spec] p2:
> The declaration in an _explicit-specialization_ shall not be an
_export-declaration_. An explicit specialization shall not use a
_storage-class-specifier_ other than `thread_local`.
Clang partially implements this, but a number of issues exist:
1. We don't diagnose class scope explicit specializations of variable
templates with _storage-class-specifiers_, e.g.
```
struct A
{
template<typename T>
static constexpr int x = 0;
template<>
static constexpr int x<void> = 1; // ill-formed, but clang accepts
};
````
2. We incorrectly reject class scope explicit specializations of
variable templates when `static` is not used, e.g.
```
struct A
{
template<typename T>
static constexpr int x = 0;
template<>
constexpr int x<void> = 1; // error: non-static data member cannot be
constexpr; did you intend to make it static?
};
````
3. We don't diagnose dependent class scope explicit specializations of
function templates with storage class specifiers, e.g.
```
template<typename T>
struct A
{
template<typename U>
static void f();
template<>
static void f<int>(); // ill-formed, but clang accepts
};
````
This patch addresses these issues as follows:
- # 1 is fixed by issuing a diagnostic when an explicit
specialization of a variable template has storage class specifier
- # 2 is fixed by considering any non-function declaration with any
template parameter lists at class scope to be a static data member. This
also allows for better error recovery (it's more likely the user
intended to declare a variable template than a "field template").
- # 3 is fixed by checking whether a function template explicit
specialization has a storage class specifier even when the primary
template is not yet known.
One thing to note is that it would be far simpler to diagnose this when
parsing the _decl-specifier-seq_, but such an implementation would
necessitate a refactor of `ParsedTemplateInfo` which I believe to be
outside the scope of this patch.
Commit: 295d5746dfc1ff5ae7d5767c6ada6130a2a69533
https://github.com/llvm/llvm-project/commit/295d5746dfc1ff5ae7d5767c6ada6130a2a69533
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Symbol/DWARFCallFrameInfo.cpp
Log Message:
-----------
[lldb] Remove LLVM_PRETTY_FUNCTION from LLDB_SCOPED_TIMERF
The macro already uses LLVM_PRETTY_FUNCTION as the timer category, so
there's no point in duplicating it in the timer message.
Commit: 7b33c5c79c20745aed953ea5539f32de1a622752
https://github.com/llvm/llvm-project/commit/7b33c5c79c20745aed953ea5539f32de1a622752
Author: Michael Jones <michaelrj at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libc/src/stdio/printf_core/float_dec_converter.h
Log Message:
-----------
[libc] Remove unnecessary check in printf floats (#95841)
Fixes https://github.com/llvm/llvm-project/issues/95638
The check was `if(unsigned_num >= 0)` which will always be true. The
intent was to check for zero, but the `for` loop inside the `if` was
already doing that.
Commit: 04a75f54a11f1f2640a211a81120966c7a24d05b
https://github.com/llvm/llvm-project/commit/04a75f54a11f1f2640a211a81120966c7a24d05b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libcxx/include/__config_site.in
M libcxx/include/__format/parser_std_format_spec.h
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/transcoding.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_posix.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_windows.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/escaped_output.ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/locale-specific_form.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.sh.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.fsigned-char.pass.cpp
Log Message:
-----------
[libc++] Properly define _LIBCPP_HAS_NO_UNICODE in __config_site (#95138)
Fixes #93638
Co-authored-by: Mark de Wever <koraq at xs4all.nl>
Commit: f80bd9b8a8103f39f5fece019abf86d41098cec1
https://github.com/llvm/llvm-project/commit/f80bd9b8a8103f39f5fece019abf86d41098cec1
Author: Gábor Spaits <gaborspaits1 at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Initialization.h
M clang/lib/Sema/SemaInit.cpp
A clang/test/SemaCXX/ctad-copy-init-list-narrowing.cpp
Log Message:
-----------
[Sema][CTAD] Allow user defined conversion for copy-list-initialization (#94752)
Fixes #62925.
The following code:
```cpp
#include <map>
int main() {
std::map m1 = {std::pair{"foo", 2}, {"bar", 3}}; // guide #2
std::map m2(m1.begin(), m1.end()); // guide #1
}
```
Is rejected by clang, but accepted by both gcc and msvc:
https://godbolt.org/z/6v4fvabb5 .
So basically CTAD with copy-list-initialization is rejected.
Note that this exact code is also used in a cppreference article:
https://en.cppreference.com/w/cpp/container/map/deduction_guides
I checked the C++11 and C++20 standard drafts to see whether suppressing
user conversion is the correct thing to do for user conversions. Based
on the standard I don't think that it is correct.
```
13.3.1.4 Copy-initialization of class by user-defined conversion [over.match.copy]
Under the conditions specified in 8.5, as part of a copy-initialization of an object of class type, a user-defined
conversion can be invoked to convert an initializer expression to the type of the object being initialized.
Overload resolution is used to select the user-defined conversion to be invoked
```
So we could use user defined conversions according to the standard.
```
If a narrowing conversion is required to initialize any of the elements, the
program is ill-formed.
```
We should not do narrowing.
```
In copy-list-initialization, if an explicit constructor is chosen, the initialization is ill-formed.
```
We should not use explicit constructors.
Commit: 76894c5e6e20bfe8a30f7d8bdd39c41a7af54d65
https://github.com/llvm/llvm-project/commit/76894c5e6e20bfe8a30f7d8bdd39c41a7af54d65
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGenCUDA/builtins-amdgcn.cu
M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
M clang/test/CodeGenCUDA/builtins-unsafe-atomics-gfx90a.cu
M clang/test/CodeGenCUDA/builtins-unsafe-atomics-spirv-amdgcn-gfx90a.cu
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx8.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
Log Message:
-----------
clang/AMDGPU: Emit atomicrmw from ds_fadd builtins (#95395)
We should have done this for the f32/f64 case a long time ago. Now that
codegen handles atomicrmw selection for the v2f16/v2bf16 case, start emitting
it instead.
This also does upgrade the behavior to respect a volatile qualified pointer,
which was previously ignored (for the cases that don't have an explicit
volatile argument).
Commit: 89fd19509292db64ea6f2fd95e3b7d40cf78b2b1
https://github.com/llvm/llvm-project/commit/89fd19509292db64ea6f2fd95e3b7d40cf78b2b1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.ll
Log Message:
-----------
AMDGPU: Fix buffer load/store of pointers (#95379)
Make sure we test all the address spaces since this support isn't
free in gisel.
Commit: 0863bd83e573f5e3e35c5c6b5750ac74f2295f48
https://github.com/llvm/llvm-project/commit/0863bd83e573f5e3e35c5c6b5750ac74f2295f48
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/ADT/ilist_base.h
M llvm/include/llvm/ADT/ilist_iterator.h
M llvm/include/llvm/ADT/ilist_node.h
M llvm/include/llvm/ADT/ilist_node_base.h
M llvm/include/llvm/ADT/ilist_node_options.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/ValueSymbolTable.h
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/unittests/ADT/IListBaseTest.cpp
M llvm/unittests/ADT/IListIteratorBitsTest.cpp
M llvm/unittests/ADT/IListIteratorTest.cpp
M llvm/unittests/ADT/IListNodeBaseTest.cpp
M llvm/unittests/ADT/IListNodeTest.cpp
Log Message:
-----------
[LLVM] Add option to store Parent-pointer in ilist_node_base (#94224)
This patch adds a new option for `ilist`, `ilist_parent<ParentTy>`, that
enables storing an additional pointer in the `ilist_node_base` type to a
specified "parent" type, and uses that option for `Instruction`.
This is distinct from the `ilist_node_with_parent` class, despite their
apparent similarities. The `ilist_node_with_parent` class is a subclass
of `ilist_node` that requires its own subclasses to define a `getParent`
method, which is then used by the owning `ilist` for some of its
operations; it is purely an interface declaration. The `ilist_parent`
option on the other hand is concerned with data, adding a parent field
to the `ilist_node_base` class.
Currently, we can use `BasicBlock::iterator` to insert instructions,
_except_ when either the iterator is invalid (`NodePtr=0x0`), or when
the iterator points to a sentinel value (`BasicBlock::end()`). This patch
results in the sentinel value also having a valid pointer to its owning
basic block, which allows us to use iterators for all insertions,
without needing to store or pass an extra `BasicBlock *BB` argument
alongside it.
Commit: ad2905e52c2016a7de02ace59e33c3ca6ab53cd9
https://github.com/llvm/llvm-project/commit/ad2905e52c2016a7de02ace59e33c3ca6ab53cd9
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/test/X86/linux-alt-instruction.s
Log Message:
-----------
[BOLT] Skip optimization of functions with alt instructions (#95172)
Alternative instructions in the Linux kernel may modify control flow in
a function. As such, it is unsafe to optimize functions with alternative
instructions until we properly support CFG alternatives.
Previously, we marked functions with alt instructions before the
emission, but that could be too late if we remove or replace
instructions with alternatives. We could have marked functions as
non-simple immediately after reading .altinstructions, but it's nice to
be able to view functions after CFG is built. Thus assign the non-simple
status after building CFG.
Commit: d7b5741ad117a068537e2f0101999d1184acab4e
https://github.com/llvm/llvm-project/commit/d7b5741ad117a068537e2f0101999d1184acab4e
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/lib/Parser/prescan.cpp
A flang/test/Preprocessing/multi-cont.F90
Log Message:
-----------
[flang] Fix crash due to overly broad assertion (#95809)
Fix https://github.com/llvm/llvm-project/issues/95689 and add a
regression test.
Commit: 4b57fe65fdc6b8d7163f36440386d1e707d89381
https://github.com/llvm/llvm-project/commit/4b57fe65fdc6b8d7163f36440386d1e707d89381
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/include/flang/Common/Fortran.h
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/tools.cpp
M flang/module/__fortran_builtins.f90
M flang/module/__fortran_ieee_exceptions.f90
M flang/module/ieee_arithmetic.f90
A flang/test/Evaluate/fold-ieee.f90
M flang/test/Lower/Intrinsics/ieee_femodes.f90
M flang/test/Lower/Intrinsics/ieee_festatus.f90
M flang/test/Lower/Intrinsics/ieee_flag.f90
M flang/test/Lower/Intrinsics/ieee_logb.f90
M flang/test/Lower/Intrinsics/ieee_max_min.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_rounding.f90
Log Message:
-----------
[flang] Fold IEEE_SUPPORT_xxx() intrinsic functions (#95866)
All of the IEEE_SUPPORT_xxx() intrinsic functions must fold to constant
logical values when they have constant arguments; and since they fold to
.TRUE. for currently support architectures, always fold them. But also
put in the infrastructure whereby a driver can initialize Evaluate's
target information to set some of them to .FALSE. if that becomes
necessary.
Commit: 3d2bbea37002e38759c06d975b6656a91e908dc6
https://github.com/llvm/llvm-project/commit/3d2bbea37002e38759c06d975b6656a91e908dc6
Author: Kazu Hirata <kazu at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
[ProfileData] Clean up validateRecord (#95488)
validateRecord ensures that all the values are unique except for
IPVK_IndirectCallTarget and IPVK_VTableTarget. The problem is that we
exclude them in the innermost loop.
This patch pulls the loop invariant out of the loop. While I am at
it, this patch migrates a use of getValueForSite to
getValueArrayForSite.
Commit: 887bd73d7204a9ae80c608bb7113710be925384b
https://github.com/llvm/llvm-project/commit/887bd73d7204a9ae80c608bb7113710be925384b
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/test/Lower/Intrinsics/reduce.f90
Log Message:
-----------
[flang] Handle procedure pointer and dummy procecure in REDUCE intrinsic calls (#95843)
Add handling for procedure pointer and dummy procedure in REDUCE
intrinsic call lowering.
Commit: 5e20785edc39854751e78dbd102fc9e6fa740fc5
https://github.com/llvm/llvm-project/commit/5e20785edc39854751e78dbd102fc9e6fa740fc5
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Relax cuf.data_transfer verifier (#95974)
Allow data transfer between array reference and array described by a
descriptor.
Commit: e5f16393429bd73ea7d8a73cdc19408114c9e944
https://github.com/llvm/llvm-project/commit/e5f16393429bd73ea7d8a73cdc19408114c9e944
Author: Mats Petersson <mats.petersson at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/test/OpenMP/irbuilder_nested_parallel_for.c
M clang/test/OpenMP/nested_loop_codegen.cpp
A flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-parallel-reduction-cleanup.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir
Log Message:
-----------
[Flang]Fix for changed code at the end of AllocaIP. (#92430)
Some of the OpenMP code can change the instruction pointed at by the
insertion point. This leads to an assert in the compiler about
BB->getParent() and IP->getParent() not matching.
The fix is to rebuild the insertionpoint from the block, rather than use
builder.restoreIP.
Also, move some of the alloca generation, rather than skipping back and
forth between insert points (and ensure all the allocas are done before
their users are created).
A simple test, mainly to ensure the minimal reproducer doesn't fail to
compile in the future is also added.
Commit: a03d06a736fd8921c8f40637667d6af9c2c76505
https://github.com/llvm/llvm-project/commit/a03d06a736fd8921c8f40637667d6af9c2c76505
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/CMakeLists.txt
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/test/CodeGen/aarch64-cpu-supports-target.c
M clang/test/CodeGen/aarch64-sme-intrinsics/aarch64-sme-attrs.cpp
M clang/test/CodeGen/aarch64-targetattr.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/Sema/aarch64-neon-target.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_imm_lane.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_imm_rotation.cpp
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/TargetParser/AArch64TargetParser.cpp
Log Message:
-----------
Reland "[AArch64] Decouple feature dependency expansion. (#94279)" (#95519)
This is the second attempt. When parsing the target attribute
we should be letting cc1 features which don't correspond to
Extensions pass through to avoid errors like the following:
% cat neon.c
__attribute__((target("arch=armv8-a")))
uint64x2_t foo(uint64x2_t a, uint64x2_t b) { return veorq_u64(a, b); }
% clang --target=aarch64-linux-gnu -c neon.c
error: always_inline function 'veorq_u64' requires target feature
'outline-atomics', but would be inlined into function 'foo'
that is compiled without support for 'outline-atomics'
Co-authored-by: Tomas Matheson <Tomas.Matheson at arm.com>
Commit: fad2ad704983ecf975f437f2352b3e72ec8d23a0
https://github.com/llvm/llvm-project/commit/fad2ad704983ecf975f437f2352b3e72ec8d23a0
Author: Nick Desaulniers (paternity leave) <nickdesaulniers at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M libc/src/__support/OSUtil/linux/fcntl.cpp
Log Message:
-----------
[libc][fcntl] fix -Wshorten-64-to-32 for 32b ARM (#95945)
Fixes:
llvm-project/libc/src/__support/OSUtil/linux/fcntl.cpp:63:26: error:
implicit conversion loses integer precision: '__off64_t' (aka 'long
long')
to '__off_t' (aka 'long') [-Werror,-Wshorten-64-to-32]
flk->l_start = flk64.l_start;
~ ~~~~~~^~~~~~~
llvm-project/libc/src/__support/OSUtil/linux/fcntl.cpp:64:24: error:
implicit conversion loses integer precision: '__off64_t' (aka 'long
long')
to '__off_t' (aka 'long') [-Werror,-Wshorten-64-to-32]
flk->l_len = flk64.l_len;
~ ~~~~~~^~~~~
We already have an overflow check, just need the cast to be explicit.
This
warning was observed on the 32b ARM build in overlay mode.
Commit: 300c41c2bd5a5a5b5c98c603f64a36d2e4df967f
https://github.com/llvm/llvm-project/commit/300c41c2bd5a5a5b5c98c603f64a36d2e4df967f
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/test/CodeGen/X86/win64-jumptable.ll
Log Message:
-----------
[X86] Use 32-bit jump table entries on Windows (#95962)
Windows doesn't support relative 64-bit relocations.
Fixes #95622
Commit: 66df7657c83a3650312699163e4dce085bd2a160
https://github.com/llvm/llvm-project/commit/66df7657c83a3650312699163e4dce085bd2a160
Author: Kazu Hirata <kazu at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProf.h
Log Message:
-----------
[ProfileData] Remove getValueForSite and getNumValueDataForSite (#95989)
This patch removes getValueForSite and getNumValueDataForSite as I've
migrated all uses of them to getValueArrayForSite.
Commit: 773ee62e16b859f41104c53bc3b80fb318d13eb2
https://github.com/llvm/llvm-project/commit/773ee62e16b859f41104c53bc3b80fb318d13eb2
Author: Kazu Hirata <kazu at google.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
[memprof] Rename the members of IndexedMemProfData (NFC) (#94873)
I'm planning to use IndexedMemProfData in MemProfReader and beyond.
Before I do so, this patch renames the members of IndexedMemProfData
as MemProfData.FrameData is a bit mouthful with "Data" repeated twice.
Note that MemProfReader currently has a trio -- IdToFrame,
CSIdToCallStack, and FunctionProfileData. Replacing them with an
instance of IndexedMemProfData allows us to use the move semantics
from the reader to the writer context. More importantly, treating the
profile data as one package makes the maintenance easier. In the
past, forgetting to update a place dealing with the trio has resulted
in a bug where we totally forgot to emit call stacks into the indexed
profile.
Commit: d8b63b680d026ba9c62b99e335cb284d5a73617d
https://github.com/llvm/llvm-project/commit/d8b63b680d026ba9c62b99e335cb284d5a73617d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
Log Message:
-----------
AMDGPU: Don't fold clamp/omod modifiers without nofpexcept (#95950)
Commit: 0f323dc0c43bd45147bdf8ee9cbeef0d8f57165b
https://github.com/llvm/llvm-project/commit/0f323dc0c43bd45147bdf8ee9cbeef0d8f57165b
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/CMakeLists.txt
M flang/cmake/modules/AddFlang.cmake
Log Message:
-----------
Revert "[flang] Add FLANG_PARALLEL_COMPILE_JOBS option" (#96000)
Reverts llvm/llvm-project#95672
This is failing on build configurations that use the CMakeLists.txt file
from flang/runtime instead of flang/
Commit: 625fc4b3f2463355053f57baebc76a672935c50b
https://github.com/llvm/llvm-project/commit/625fc4b3f2463355053f57baebc76a672935c50b
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/lib/Lower/CallInterface.cpp
Log Message:
-----------
[flang][NFC] Fix typo getFuncElementAttrName -> getFuncElementalAttrName (#95998)
Fix type in the getter for the attribute name
Commit: 12cf0dc685a9c3adfefc3a58f0b8ed4360be8b14
https://github.com/llvm/llvm-project/commit/12cf0dc685a9c3adfefc3a58f0b8ed4360be8b14
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-06-19 (Wed, 19 Jun 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M llvm/docs/ReleaseNotes.rst
Log Message:
-----------
Update ReleaseNotes for MC/DC changes. (#95887)
Mostly apparent changes (#82448, #95496) are described here.
Commit: f0a76d5cb53dda912565ab9d1d6807c569e4c636
https://github.com/llvm/llvm-project/commit/f0a76d5cb53dda912565ab9d1d6807c569e4c636
Author: Nico Weber <thakis at chromium.org>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn] port 04a75f54a11f
Commit: c638ba19970905b191d0121a23ce640a3a811b30
https://github.com/llvm/llvm-project/commit/c638ba19970905b191d0121a23ce640a3a811b30
Author: Alexander Shaposhnikov <6532716+alexander-shaposhnikov at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/test/Driver/fsanitize.c
Log Message:
-----------
[Clang][Sanitizers] Enable NSAN on X86_64 only (#95885)
This is a follow-up to https://github.com/llvm/llvm-project/pull/93783.
The current set of patches covers only x86_64,
therefore we should not enable this flag on arm64 yet.
Commit: 448bb5cfc999d166d82facd985ba3e2716bfb016
https://github.com/llvm/llvm-project/commit/448bb5cfc999d166d82facd985ba3e2716bfb016
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
A llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
Log Message:
-----------
[SCEV] Add coverage for variants of vscale indexing for EVL vectorized loops
Commit: 139f896c0f86ea9cdb13aa94835b48d1e6f63808
https://github.com/llvm/llvm-project/commit/139f896c0f86ea9cdb13aa94835b48d1e6f63808
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-06-19 (Wed, 19 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
Log Message:
-----------
InstrProfiling: Split creating Bias offset to getOrCreateBiasVar(Name). NFC. (#95692)
Commit: 8ea31db27211ed0c8207b4b4b0839e5cbe780c73
https://github.com/llvm/llvm-project/commit/8ea31db27211ed0c8207b4b4b0839e5cbe780c73
Author: Fangrui Song <i at maskray.me>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/test/Transforms/CodeGenPrepare/X86/statepoint-relocate.ll
Log Message:
-----------
[CodeGenPrepare] Use MapVector to stabilize iteration order
DenseMap iteration order is not guaranteed to be deterministic.
Without the change,
llvm/test/Transforms/CodeGenPrepare/X86/statepoint-relocate.ll would
fail when `combineHashValue` changes (#95970).
Fixes: dba7329ebb0dbe1fabb3faaedfd31da3b8bd611d
Commit: 70f41a8c305478cb16bcda9f9967af96ab1e3a20
https://github.com/llvm/llvm-project/commit/70f41a8c305478cb16bcda9f9967af96ab1e3a20
Author: royitaqi <royitaqi at users.noreply.github.com>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M lldb/include/lldb/API/SBStatisticsOptions.h
M lldb/include/lldb/Interpreter/OptionArgParser.h
M lldb/include/lldb/Target/Statistics.h
M lldb/source/API/SBStatisticsOptions.cpp
M lldb/source/Commands/CommandObjectStats.cpp
M lldb/source/Commands/Options.td
M lldb/source/Interpreter/OptionArgParser.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/commands/statistics/basic/TestStats.py
M lldb/unittests/Interpreter/TestOptionArgParser.cpp
Log Message:
-----------
[lldb] Add/change options in `statistics dump` to control what sections are dumped (#95075)
# Added/changed options
The following options are **added** to the `statistics dump` command:
* `--targets=bool`: Boolean. Dumps the `targets` section.
* `--modules=bool`: Boolean. Dumps the `modules` section.
When both options are given, the field `moduleIdentifiers` will be
dumped for each target in the `targets` section.
The following options are **changed**:
* `--transcript=bool`: Changed to a boolean. Dumps the `transcript`
section.
# Behavior of `statistics dump` with various options
The behavior is **backward compatible**:
- When no options are provided, `statistics dump` dumps all sections.
- When `--summary` is provided, only dumps the summary info.
**New** behavior:
- `--targets=bool`, `--modules=bool`, `--transcript=bool` overrides the
above "default".
For **example**:
- `statistics dump --modules=false` dumps summary + targets +
transcript. No modules.
- `statistics dump --summary --targets=true --transcript=true` dumps
summary + targets (in summary mode) + transcript.
# Added options into public API
In `SBStatisticsOptions`, add:
* `Set/GetIncludeTargets`
* `Set/GetIncludeModules`
* `Set/GetIncludeTranscript`
**Alternative considered**: Thought about adding
`Set/GetIncludeSections(string sections_spec)`, which receives a
comma-separated list of section names to be included ("targets",
"modules", "transcript"). The **benefit** of this approach is that the
API is more future-proof when it comes to possible adding/changing of
section names. **However**, I feel the section names are likely to
remain unchanged for a while - it's not like we plan to make big changes
to the output of `statistics dump` any time soon. The **downsides** of
this approach are: 1\ the readability of the API is worse (requires
reading doc to understand what string can be accepted), 2\ string input
are more prone to human error (e.g. typo "target" instead of expected
"targets").
# Tests
```
bin/llvm-lit -sv ../external/llvm-project/lldb/test/API/commands/statistics/basic/TestStats.py
```
```
./tools/lldb/unittests/Interpreter/InterpreterTests
```
New test cases have been added to verify:
* Different sections are dumped/not dumped when different
`StatisticsOptions` are given through command line (CLI or
`HandleCommand`; see `test_sections_existence_through_command`) or API
(see `test_sections_existence_through_api`).
* The order in which the options are given in command line does not
matter (see `test_order_of_options_do_not_matter`).
---------
Co-authored-by: Roy Shi <royshi at meta.com>
Commit: ad599211a79dd7817f110241372075d82c0ae52a
https://github.com/llvm/llvm-project/commit/ad599211a79dd7817f110241372075d82c0ae52a
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeProperties.td
A clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NSAPI.cpp
M clang/lib/AST/PrintfFormatString.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Index/USRGeneration.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTReader.cpp
A clang/test/AST/ast-dump-amdgpu-types.c
A clang/test/CodeGen/amdgpu-buffer-rsrc-type-debug-info.c
A clang/test/CodeGenCXX/amdgpu-buffer-rsrc-typeinfo.cpp
A clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
A clang/test/SemaCXX/amdgpu-buffer-rsrc.cpp
A clang/test/SemaHIP/amdgpu-buffer-rsrc.hip
A clang/test/SemaOpenCL/amdgpu-buffer-rsrc.cl
A clang/test/SemaOpenMP/amdgpu-buffer-rsrc.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[Clang][AMDGPU] Add a new builtin type for buffer rsrc (#94830)
This patch adds a new builtin type for AMDGPU's buffer rsrc data type,
which is effectively an AS 8 pointer. This is needed because we'd like
to expose certain intrinsics to users via builtins which take buffer
rsrc as argument.
Commit: a5128542495d04e20db0828bceaae69c39e72c6d
https://github.com/llvm/llvm-project/commit/a5128542495d04e20db0828bceaae69c39e72c6d
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-06-19 (Wed, 19 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/test/Instrumentation/InstrProfiling/runtime-counter-relocation.ll
M llvm/test/Transforms/PGOProfile/counter_promo_with_bias.ll
Log Message:
-----------
InstProfiling: Give the name to profc_bias. NFC. (#95587)
Commit: e8f1a571bd3e150d516df9af4d2e8bf6e408662c
https://github.com/llvm/llvm-project/commit/e8f1a571bd3e150d516df9af4d2e8bf6e408662c
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-06-19 (Wed, 19 Jun 2024)
Changed paths:
M .git-blame-ignore-revs
M .github/workflows/pr-code-format.yml
A .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M bolt/docs/CommandLineArgumentReference.md
M bolt/lib/Profile/StaleProfileMatching.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
A bolt/test/X86/Inputs/blarge_profile_stale_low_matched_blocks.yaml
A bolt/test/X86/Inputs/infer_no_exits.s
M bolt/test/X86/bug-reorder-bb-jrcxz.s
A bolt/test/X86/infer_no_exits.test
M bolt/test/X86/linux-alt-instruction.s
A bolt/test/X86/stale-matching-min-matched-block.test
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/include-cleaner/lib/LocateSymbol.cpp
M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
M clang-tools-extra/test/CMakeLists.txt
M clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/DeclID.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeProperties.td
A clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Driver/Options.td
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstShared.h
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/ByteCodeEmitter.h
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/lib/AST/Interp/EvalEmitter.cpp
M clang/lib/AST/Interp/EvalEmitter.h
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/InterpBuiltin.cpp
M clang/lib/AST/Interp/InterpStack.h
M clang/lib/AST/Interp/Opcodes.td
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NSAPI.cpp
M clang/lib/AST/PrintfFormatString.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCXXABI.h
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Index/USRGeneration.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/DeclSpec.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
M clang/test/AST/Interp/complex.cpp
A clang/test/AST/Interp/hlsl.hlsl
A clang/test/AST/ast-dump-amdgpu-types.c
M clang/test/Analysis/equality_tracking.c
M clang/test/Analysis/errno-stdlibraryfunctions.c
M clang/test/C/drs/dr1xx.c
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.nodiscard/p2.cpp
M clang/test/CXX/dcl.dcl/dcl.spec/dcl.stc/p1.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/temp/temp.decls/temp.mem/p2.cpp
M clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p17.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-0x.cpp
A clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-20.cpp
M clang/test/CodeGen/aarch64-cpu-supports-target.c
M clang/test/CodeGen/aarch64-sme-intrinsics/aarch64-sme-attrs.cpp
M clang/test/CodeGen/aarch64-targetattr.c
A clang/test/CodeGen/amdgpu-buffer-rsrc-type-debug-info.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCUDA/builtins-amdgcn.cu
M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
M clang/test/CodeGenCUDA/builtins-unsafe-atomics-gfx90a.cu
M clang/test/CodeGenCUDA/builtins-unsafe-atomics-spirv-amdgcn-gfx90a.cu
A clang/test/CodeGenCXX/amdgpu-buffer-rsrc-typeinfo.cpp
M clang/test/CodeGenCXX/debug-info-structured-binding-bitfield.cpp
M clang/test/CodeGenHLSL/builtins/rsqrt.hlsl
A clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx8.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/asan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/asan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/compat/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/hwasan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/hwasan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/aarch64-unknown-fuchsia/noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/asan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/asan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/compat/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/hwasan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/hwasan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/riscv64-unknown-fuchsia/noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/asan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/asan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/compat/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/hwasan+noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/hwasan/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/include/x86_64-unknown-fuchsia/noexcept/c++/v1/.keep
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/aarch64-unknown-fuchsia/ubsan+noexcept/libc++.so
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/aarch64-unknown-fuchsia/ubsan/libc++.so
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/x86_64-unknown-fuchsia/ubsan+noexcept/libc++.so
A clang/test/Driver/Inputs/basic_fuchsia_tree/lib/x86_64-unknown-fuchsia/ubsan/libc++.so
M clang/test/Driver/fsanitize.c
M clang/test/Driver/fuchsia.cpp
M clang/test/Driver/riscv-cpus.c
M clang/test/Misc/target-invalid-cpu-note.c
M clang/test/Modules/Inputs/redecl-templates/a.h
M clang/test/Modules/redecl-templates.cpp
M clang/test/OpenMP/irbuilder_nested_parallel_for.c
M clang/test/OpenMP/nested_loop_codegen.cpp
M clang/test/PCH/cxx-templates.h
M clang/test/PCH/cxx1y-variable-templates.cpp
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Sema/aarch64-neon-target.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_imm_lane.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_imm_rotation.cpp
R clang/test/Sema/debug-93066.cpp
M clang/test/Sema/exprs.c
A clang/test/Sema/integral-to-ptr.c
M clang/test/Sema/va_arg_x86_32.c
A clang/test/SemaCXX/amdgpu-buffer-rsrc.cpp
M clang/test/SemaCXX/complex-folding.cpp
A clang/test/SemaCXX/ctad-copy-init-list-narrowing.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
M clang/test/SemaCXX/warn-unused-value.cpp
A clang/test/SemaHIP/amdgpu-buffer-rsrc.hip
A clang/test/SemaHLSL/Availability/avail-diag-strict-compute.hlsl
A clang/test/SemaHLSL/Availability/avail-diag-strict-lib.hlsl
M clang/test/SemaObjCXX/sel-address.mm
A clang/test/SemaOpenCL/amdgpu-buffer-rsrc.cl
A clang/test/SemaOpenMP/amdgpu-buffer-rsrc.cpp
M clang/test/SemaTemplate/explicit-specialization-member.cpp
M clang/test/SemaTemplate/nested-template.cpp
M clang/tools/libclang/CIndex.cpp
M clang/unittests/Lex/HeaderSearchTest.cpp
R clang/utils/update_options_td_flags.py
M clang/www/cxx_dr_status.html
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_premap_shadow.cpp
M compiler-rt/lib/asan/asan_win.cpp
M compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cpp
M compiler-rt/lib/memprof/memprof_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
M compiler-rt/lib/scudo/standalone/secondary.h
M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
M flang/include/flang/Common/Fortran.h
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Evaluate/target.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Lower/DumpEvaluateExpr.h
M flang/include/flang/Lower/PFTBuilder.h
M flang/include/flang/Lower/Support/Utils.h
M flang/include/flang/Optimizer/Builder/Runtime/Assign.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/Support/Matcher.h
M flang/include/flang/Runtime/assign.h
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ComponentPath.cpp
M flang/lib/Lower/ConvertArrayConstructor.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/ConvertType.cpp
M flang/lib/Lower/DirectivesCommon.h
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/IterationSpace.cpp
M flang/lib/Lower/Mangler.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/PFTBuilder.cpp
M flang/lib/Lower/VectorSubscripts.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Assign.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Semantics/canonicalize-directives.cpp
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-coarray.cpp
M flang/module/__fortran_builtins.f90
M flang/module/__fortran_ieee_exceptions.f90
M flang/module/ieee_arithmetic.f90
M flang/runtime/assign.cpp
M flang/test/Driver/target-cpu-features.f90
A flang/test/Evaluate/fold-ieee.f90
M flang/test/HLFIR/assumed-type-actual-args.f90
M flang/test/HLFIR/assumed_shape_with_value_keyword.f90
M flang/test/HLFIR/copy-in-out-codegen.fir
M flang/test/HLFIR/copy-in-out.fir
M flang/test/HLFIR/memory-effects.fir
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/HLFIR/call-sequence-associated-descriptors.f90
M flang/test/Lower/HLFIR/calls-assumed-shape.f90
M flang/test/Lower/HLFIR/calls-constant-expr-arg.f90
M flang/test/Lower/HLFIR/calls-optional.f90
M flang/test/Lower/HLFIR/calls-poly-to-assumed-type.f90
M flang/test/Lower/HLFIR/poly_expr_for_nonpoly_dummy.f90
M flang/test/Lower/Intrinsics/ieee_femodes.f90
M flang/test/Lower/Intrinsics/ieee_festatus.f90
M flang/test/Lower/Intrinsics/ieee_flag.f90
M flang/test/Lower/Intrinsics/ieee_logb.f90
M flang/test/Lower/Intrinsics/ieee_max_min.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_rounding.f90
M flang/test/Lower/Intrinsics/reduce.f90
A flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
M flang/test/Lower/call-copy-in-out.f90
M flang/test/Lower/dummy-argument-assumed-shape-optional.f90
M flang/test/Lower/dummy-argument-optional-2.f90
M flang/test/Lower/loops3.f90
M flang/test/Lower/optional-value-caller.f90
A flang/test/Preprocessing/multi-cont.F90
M flang/test/Semantics/loop-directives.f90
M libc/src/__support/OSUtil/linux/fcntl.cpp
M libc/src/stdio/printf_core/float_dec_converter.h
M libc/src/stdlib/CMakeLists.txt
M libc/test/IntegrationTest/test.cpp
M libc/test/UnitTest/HermeticTestUtils.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libcxx/.clang-tidy
M libcxx/cmake/caches/Apple.cmake
M libcxx/include/__algorithm/comp_ref_type.h
M libcxx/include/__algorithm/make_projected.h
M libcxx/include/__atomic/atomic_init.h
M libcxx/include/__atomic/memory_order.h
M libcxx/include/__bit_reference
M libcxx/include/__chrono/duration.h
M libcxx/include/__chrono/time_point.h
M libcxx/include/__config
M libcxx/include/__config_site.in
M libcxx/include/__configuration/abi.h
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__format/formatter_output.h
M libcxx/include/__format/parser_std_format_spec.h
M libcxx/include/__functional/bind.h
M libcxx/include/__functional/bind_back.h
M libcxx/include/__functional/bind_front.h
M libcxx/include/__functional/function.h
M libcxx/include/__functional/mem_fn.h
M libcxx/include/__functional/mem_fun_ref.h
M libcxx/include/__functional/operations.h
M libcxx/include/__functional/pointer_to_binary_function.h
M libcxx/include/__functional/pointer_to_unary_function.h
M libcxx/include/__functional/reference_wrapper.h
M libcxx/include/__functional/unary_negate.h
M libcxx/include/__hash_table
M libcxx/include/__iterator/access.h
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__iterator/cpp17_iterator_concepts.h
M libcxx/include/__iterator/iter_swap.h
M libcxx/include/__iterator/move_iterator.h
M libcxx/include/__iterator/reverse_iterator.h
M libcxx/include/__iterator/wrap_iter.h
M libcxx/include/__locale_dir/locale_base_api/locale_guard.h
M libcxx/include/__math/exponential_functions.h
M libcxx/include/__math/fdim.h
M libcxx/include/__math/fma.h
M libcxx/include/__math/hypot.h
M libcxx/include/__math/inverse_trigonometric_functions.h
M libcxx/include/__math/min_max.h
M libcxx/include/__math/modulo.h
M libcxx/include/__math/remainder.h
M libcxx/include/__math/rounding_functions.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__mdspan/layout_left.h
M libcxx/include/__mdspan/layout_right.h
M libcxx/include/__mdspan/layout_stride.h
M libcxx/include/__mdspan/mdspan.h
M libcxx/include/__memory/allocate_at_least.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__memory/swap_allocator.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__mutex/lock_guard.h
M libcxx/include/__numeric/gcd_lcm.h
M libcxx/include/__ostream/basic_ostream.h
M libcxx/include/__ranges/access.h
M libcxx/include/__ranges/all.h
M libcxx/include/__ranges/common_view.h
M libcxx/include/__ranges/counted.h
M libcxx/include/__ranges/data.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/ref_view.h
M libcxx/include/__ranges/rend.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__split_buffer
M libcxx/include/__thread/thread.h
M libcxx/include/__tree
M libcxx/include/__tuple/sfinae_helpers.h
M libcxx/include/__tuple/tuple_size.h
M libcxx/include/__type_traits/invoke.h
M libcxx/include/__type_traits/is_literal_type.h
M libcxx/include/__type_traits/is_swappable.h
M libcxx/include/__utility/exception_guard.h
M libcxx/include/__utility/forward_like.h
M libcxx/include/__utility/is_pointer_in_range.h
M libcxx/include/__utility/pair.h
M libcxx/include/__utility/swap.h
M libcxx/include/__verbose_abort
M libcxx/include/any
M libcxx/include/array
M libcxx/include/barrier
M libcxx/include/cmath
M libcxx/include/codecvt
M libcxx/include/coroutine
M libcxx/include/deque
M libcxx/include/experimental/propagate_const
M libcxx/include/forward_list
M libcxx/include/fstream
M libcxx/include/future
M libcxx/include/ios
M libcxx/include/iosfwd
M libcxx/include/istream
M libcxx/include/limits
M libcxx/include/list
M libcxx/include/locale
M libcxx/include/map
M libcxx/include/mutex
M libcxx/include/new
M libcxx/include/optional
M libcxx/include/print
M libcxx/include/queue
M libcxx/include/regex
M libcxx/include/scoped_allocator
M libcxx/include/set
M libcxx/include/shared_mutex
M libcxx/include/span
M libcxx/include/stack
M libcxx/include/streambuf
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/strstream
M libcxx/include/tuple
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/valarray
M libcxx/include/variant
M libcxx/include/vector
R libcxx/test/configs/apple-libc++-shared.cfg.in
M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/transcoding.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_posix.pass.cpp
M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_windows.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.functions/escaped_output.ascii.pass.cpp
M libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/locale-specific_form.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.sh.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.fsigned-char.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_swappable_include_order.pass.cpp
M libcxx/test/support/nasty_containers.h
M libcxx/test/support/poisoned_hash_helper.h
M libcxx/utils/ci/apple-install-libcxx.sh
R libcxxabi/test/configs/apple-libc++abi-shared.cfg.in
M lld/COFF/Chunks.cpp
M lld/COFF/Chunks.h
M lld/COFF/Driver.cpp
M lld/COFF/ICF.cpp
M lld/COFF/InputFiles.cpp
M lld/COFF/InputFiles.h
M lld/COFF/MarkLive.cpp
M lld/COFF/SymbolTable.cpp
M lld/COFF/SymbolTable.h
M lld/COFF/Writer.cpp
M lld/MachO/ObjC.cpp
M lld/MachO/ObjC.h
A lld/test/COFF/arm64ec-entry-thunk.s
A lld/test/COFF/arm64ec-hybmp.s
M lld/test/COFF/pdb-type-server-simple.test
M lldb/include/lldb/API/SBStatisticsOptions.h
M lldb/include/lldb/DataFormatters/ValueObjectPrinter.h
M lldb/include/lldb/Interpreter/OptionArgParser.h
M lldb/include/lldb/Target/Statistics.h
M lldb/include/lldb/Utility/SupportFile.h
M lldb/source/API/SBStatisticsOptions.cpp
M lldb/source/Commands/CommandObjectStats.cpp
M lldb/source/Commands/Options.td
M lldb/source/Interpreter/OptionArgParser.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Symbol/DWARFCallFrameInfo.cpp
M lldb/source/Symbol/LineEntry.cpp
M lldb/source/Target/InstrumentationRuntime.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/commands/statistics/basic/TestStats.py
M lldb/test/API/lit.cfg.py
M lldb/test/Shell/Process/UnsupportedLanguage.test
M lldb/test/requirements.txt
M lldb/unittests/Interpreter/TestOptionArgParser.cpp
M llvm/bindings/ocaml/debuginfo/debuginfo_ocaml.c
M llvm/docs/HowToReleaseLLVM.rst
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.rst
M llvm/docs/RemoveDIsDebugInfo.md
M llvm/docs/Security.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/docs/WritingAnLLVMPass.rst
M llvm/include/llvm-c/DebugInfo.h
M llvm/include/llvm/ADT/ilist_base.h
M llvm/include/llvm/ADT/ilist_iterator.h
M llvm/include/llvm/ADT/ilist_node.h
M llvm/include/llvm/ADT/ilist_node_base.h
M llvm/include/llvm/ADT/ilist_node_options.h
M llvm/include/llvm/Analysis/IndirectCallPromotionAnalysis.h
M llvm/include/llvm/Analysis/MLInlineAdvisor.h
M llvm/include/llvm/BinaryFormat/COFF.h
M llvm/include/llvm/ExecutionEngine/JITLink/x86_64.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/ConstantRange.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/ValueSymbolTable.h
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/Support/SuffixTree.h
M llvm/include/llvm/Support/SuffixTreeNode.h
M llvm/include/llvm/Target/TargetMachine.h
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/DevelopmentModeInlineAdvisor.cpp
M llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
M llvm/lib/Analysis/LazyValueInfo.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/MLInlineAdvisor.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Analysis/models/gen-inline-oz-test-model.py
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
M llvm/lib/CodeGen/MachineOutliner.cpp
M llvm/lib/CodeGen/RegisterPressure.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
M llvm/lib/ExecutionEngine/JITLink/x86_64.cpp
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/ConstantRange.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/Support/SuffixTree.cpp
M llvm/lib/Support/SuffixTreeNode.cpp
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/lib/Target/AArch64/AArch64GenRegisterBankInfo.def
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/TargetParser/AArch64TargetParser.cpp
M llvm/lib/Transforms/CMakeLists.txt
R llvm/lib/Transforms/Hello/CMakeLists.txt
R llvm/lib/Transforms/Hello/Hello.cpp
R llvm/lib/Transforms/Hello/Hello.exports
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
A llvm/test/Analysis/ScalarEvolution/trip-count-scalable-stride.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/atomics-gmir.mir
R llvm/test/Bindings/llvm-c/debug_info.ll
M llvm/test/Bindings/llvm-c/debug_info_new_format.ll
A llvm/test/Bitcode/attr-btf_tag-dibasic.ll
A llvm/test/Bitcode/attr-btf_tag-disubroutine.ll
M llvm/test/CMakeLists.txt
M llvm/test/CodeGen/AArch64/GlobalISel/ret-vec-promote.ll
A llvm/test/CodeGen/AArch64/GlobalISel/sve-formal-argument-multiple.ll
A llvm/test/CodeGen/AArch64/GlobalISel/sve-formal-argument.ll
A llvm/test/CodeGen/AArch64/GlobalISel/translate-sve-formal-argument-multiple.ll
A llvm/test/CodeGen/AArch64/GlobalISel/translate-sve-formal-argument.ll
A llvm/test/CodeGen/AArch64/GlobalISel/vec-param.ll
M llvm/test/CodeGen/AArch64/aarch64-load-ext.ll
M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
M llvm/test/CodeGen/AArch64/machine-outliner-cfi-tail-some.mir
A llvm/test/CodeGen/AArch64/machine-outliner-leaf-descendants.ll
M llvm/test/CodeGen/AArch64/machine-outliner-overlap.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-sp-mod.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-thunk.ll
M llvm/test/CodeGen/AArch64/machine-outliner-throw2.ll
M llvm/test/CodeGen/AArch64/machine-outliner-thunk.ll
M llvm/test/CodeGen/AArch64/machine-outliner.mir
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
A llvm/test/CodeGen/AArch64/sitofp-to-tbl.ll
M llvm/test/CodeGen/AArch64/sme-disable-gisel-fisel.ll
M llvm/test/CodeGen/AArch64/sme-framelower-use-bp.ll
M llvm/test/CodeGen/AArch64/sme-lazy-save-call.ll
M llvm/test/CodeGen/AArch64/sme-shared-za-interface.ll
A llvm/test/CodeGen/AArch64/sme-za-lazy-save-buffer.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/stack-tagging-initializer-merge.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/function-returns.v2i65.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.v2i65.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
M llvm/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/fp-atomic-to-s_denormmode.mir
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx1200.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
A llvm/test/CodeGen/AMDGPU/invalid-inline-asm-constraint-crash.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
M llvm/test/CodeGen/AMDGPU/sgpr-regalloc-flags.ll
M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
M llvm/test/CodeGen/NVPTX/f16-instructions.ll
M llvm/test/CodeGen/PowerPC/tocdata-firm-alignment.ll
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
M llvm/test/CodeGen/RISCV/machineoutliner-pcrel-lo.mir
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.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-unaligned.ll
A llvm/test/CodeGen/RISCV/rvv/pr93587.ll
A llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-O0.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/rsqrt.ll
A llvm/test/CodeGen/X86/cmpf-avx.ll
M llvm/test/CodeGen/X86/win64-jumptable.ll
M llvm/test/DebugInfo/attr-btf_type_tag.ll
A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_R_X86_64_PC8.s
A llvm/test/ExecutionEngine/Orc/global-ctor-order.ll
M llvm/test/Instrumentation/InstrProfiling/runtime-counter-relocation.ll
M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
A llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-fp128.ll
A llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i128.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmax.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fmin.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-system.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-agent.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-system.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-fp-vector.ll
A llvm/test/Transforms/Attributor/recursive_globals.ll
M llvm/test/Transforms/CodeGenPrepare/X86/statepoint-relocate.ll
M llvm/test/Transforms/CorrelatedValuePropagation/icmp.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
A llvm/test/Transforms/Inline/ML/bypass.ll
M llvm/test/Transforms/InstCombine/icmp-add.ll
M llvm/test/Transforms/InstCombine/shuffle_select.ll
M llvm/test/Transforms/InstSimplify/ConstProp/logf128.ll
A llvm/test/Transforms/LICM/hoist-speculatable-load.ll
A llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/PGOProfile/counter_promo_with_bias.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-matching-LCS.ll
M llvm/test/Transforms/SimplifyCFG/ForwardSwitchConditionToPHI.ll
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
M llvm/test/tools/llvm-cov/Inputs/showProjectSummary.test
M llvm/test/tools/llvm-cov/showLineExecutionCounts.cpp
M llvm/test/tools/llvm-cov/showTemplateInstantiations.cpp
M llvm/tools/llvm-c-test/debuginfo.c
M llvm/tools/llvm-c-test/llvm-c-test.h
M llvm/tools/llvm-c-test/main.c
M llvm/tools/llvm-cov/SourceCoverageView.cpp
M llvm/tools/llvm-cov/SourceCoverageView.h
M llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
M llvm/tools/llvm-cov/SourceCoverageViewHTML.h
M llvm/tools/llvm-cov/SourceCoverageViewText.cpp
M llvm/tools/llvm-cov/SourceCoverageViewText.h
M llvm/unittests/ADT/IListBaseTest.cpp
M llvm/unittests/ADT/IListIteratorBitsTest.cpp
M llvm/unittests/ADT/IListIteratorTest.cpp
M llvm/unittests/ADT/IListNodeBaseTest.cpp
M llvm/unittests/ADT/IListNodeTest.cpp
M llvm/unittests/IR/ConstantRangeTest.cpp
M llvm/unittests/Support/SuffixTreeTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/utils/TableGen/ARMTargetDefEmitter.cpp
M llvm/utils/emacs/llvm-mode.el
M llvm/utils/git/code-format-helper.py
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
R llvm/utils/gn/secondary/llvm/lib/Transforms/Hello/BUILD.gn
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
M llvm/utils/release/build_llvm_release.bat
M mlir/include/mlir-c/Rewrite.h
M mlir/include/mlir/Dialect/GPU/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
A mlir/include/mlir/Dialect/GPU/IR/GPUDeviceMappingAttr.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/GPU/TransformOps/CMakeLists.txt
R mlir/include/mlir/Dialect/GPU/TransformOps/GPUDeviceMappingAttr.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensor.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/include/mlir/Dialect/SparseTensor/Pipelines/Passes.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
M mlir/include/mlir/Interfaces/TilingInterface.h
M mlir/include/mlir/Interfaces/TilingInterface.td
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/IR/InferIntRangeInterfaceImpls.cpp
M mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.h
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Conversion/ArithToLLVM/convert-nd-vector-to-llvmir.mlir
M mlir/test/Conversion/ArithToSPIRV/arith-to-spirv.mlir
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
M mlir/test/Conversion/IndexToLLVM/index-to-llvm.mlir
M mlir/test/Conversion/IndexToSPIRV/index-to-spirv.mlir
M mlir/test/Conversion/MathToSPIRV/math-to-core-spirv.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
M mlir/test/Conversion/VectorToLLVM/vector-scalable-memcpy.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/GPU/int-range-interface.mlir
M mlir/test/Dialect/GPU/invalid.mlir
M mlir/test/Dialect/GPU/outlining.mlir
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
M mlir/test/Dialect/SCF/bufferize.mlir
M mlir/test/Dialect/SparseTensor/fuse_sparse_pad_with_consumer.mlir
M mlir/test/Dialect/SparseTensor/sparse_2d.mlir
M mlir/test/Dialect/SparseTensor/sparse_3d.mlir
M mlir/test/Dialect/SparseTensor/sparse_affine.mlir
M mlir/test/Dialect/SparseTensor/sparse_batch.mlir
M mlir/test/Dialect/SparseTensor/sparse_broadcast.mlir
M mlir/test/Dialect/SparseTensor/sparse_concat.mlir
M mlir/test/Dialect/SparseTensor/sparse_fill_zero.mlir
M mlir/test/Dialect/SparseTensor/sparse_fp_ops.mlir
M mlir/test/Dialect/SparseTensor/sparse_fusion.mlir
M mlir/test/Dialect/SparseTensor/sparse_int_ops.mlir
M mlir/test/Dialect/SparseTensor/sparse_iteration_to_scf.mlir
M mlir/test/Dialect/SparseTensor/sparse_kernels.mlir
A mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir
M mlir/test/Dialect/SparseTensor/sparse_lower_inplace.mlir
M mlir/test/Dialect/SparseTensor/sparse_matmul_codegen.mlir
M mlir/test/Dialect/SparseTensor/sparse_nd.mlir
M mlir/test/Dialect/SparseTensor/sparse_out.mlir
M mlir/test/Dialect/SparseTensor/sparse_outbuf.mlir
M mlir/test/Dialect/SparseTensor/sparse_parallel_reduce.mlir
M mlir/test/Dialect/SparseTensor/sparse_perm.mlir
M mlir/test/Dialect/SparseTensor/sparse_reshape.mlir
M mlir/test/Dialect/SparseTensor/sparse_sddmm.mlir
M mlir/test/Dialect/SparseTensor/sparse_sddmm_org.mlir
M mlir/test/Dialect/SparseTensor/sparse_tensor_reshape.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector_chain.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector_index.mlir
M mlir/test/Dialect/SparseTensor/spy_sddmm_bsr.mlir
M mlir/test/Dialect/SparseTensor/vectorize_reduction.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/Dialect/Vector/vector-transfer-to-vector-load-store.mlir
A mlir/test/Integration/Dialect/SparseTensor/CPU/iterator-based-sqsum.mlir
M mlir/test/Target/LLVMIR/openmp-parallel-reduction-cleanup.mlir
M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir
M mlir/test/mlir-tblgen/rewriter-static-matcher.td
A mlir/test/mlir-vulkan-runner/vector-deinterleave.mlir
M mlir/tools/mlir-tblgen/RewriterGen.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Merge branch 'main' into users/Enna1/BPI-use-isEHPad
Compare: https://github.com/llvm/llvm-project/compare/7a75779b267e...e8f1a571bd3e
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