[all-commits] [llvm/llvm-project] 606712: Revert "[mlir][vector] Add a pattern to fuse extra...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Fri Mar 1 08:31:41 PST 2024
Branch: refs/heads/users/fhahn/slp-early-exit
Home: https://github.com/llvm/llvm-project
Commit: 6067129fbe8944d5bd39dc1bc2331ce5ed6ecee8
https://github.com/llvm/llvm-project/commit/6067129fbe8944d5bd39dc1bc2331ce5ed6ecee8
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
Revert "[mlir][vector] Add a pattern to fuse extract(constant_mask) (#81057)" (#83275)
This reverts commit 5cdb8c0c8854d08ac7ca131ce3e8d78a32eb6716.
This pattern is producing incorrect IR. For example,
```mlir
func.func @extract_subvector_from_constant_mask() -> vector<16xi1> {
%mask = vector.constant_mask [2, 3] : vector<16x16xi1>
%extract = vector.extract %mask[8] : vector<16xi1> from vector<16x16xi1>
return %extract : vector<16xi1>
}
```
Canonicalizes to
```mlir
func.func @extract_subvector_from_constant_mask() -> vector<16xi1> {
%0 = vector.constant_mask [3] : vector<16xi1>
return %0 : vector<16xi1>
}
```
Where it should be a zero mask because the extraction index (8) is
greater than the constant mask size along that dim (2).
Commit: 80cff273906b200eed2f779913f49a64cad8c0c6
https://github.com/llvm/llvm-project/commit/80cff273906b200eed2f779913f49a64cad8c0c6
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV][NFC]Fix a misprint, NFC.
Commit: 4623c114fb51e48b5cbb352adecb60d76077cb0a
https://github.com/llvm/llvm-project/commit/4623c114fb51e48b5cbb352adecb60d76077cb0a
Author: Diego Caballero <diegocaballero at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Dialect/Vector/vector-transforms.mlir
Log Message:
-----------
[mlir][Vector] Support vector.insert in bubbling bitcast patterns (#82843)
This PR is adds support for `vector.insert` to the patterns that bubble up and down `vector.bitcat` ops across `vector.extract/extract_slice/insert_slice` ops.
Commit: 3fac0562f8bdf193f039945eb40c51a5e6c24de1
https://github.com/llvm/llvm-project/commit/3fac0562f8bdf193f039945eb40c51a5e6c24de1
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Reset trip count when replacing ExpandSCEV recipe.
Otherwise accessing the trip count may accesses freed memory.
Fixes https://lab.llvm.org/buildbot/#/builders/74/builds/26239 and
others.
Commit: 64422cf826354ee1d586c2484ec72d66db898e75
https://github.com/llvm/llvm-project/commit/64422cf826354ee1d586c2484ec72d66db898e75
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
A flang/test/Integration/OpenMP/copyprivate.f90
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
Log Message:
-----------
[llvm][mlir][OMPIRBuilder] Translate omp.single's copyprivate (#80488)
Use the new copyprivate list from omp.single to emit calls to
__kmpc_copyprivate, during the creation of the single operation
in OMPIRBuilder.
This is patch 4 of 4, to add support for COPYPRIVATE in Flang.
Original PR: https://github.com/llvm/llvm-project/pull/73128
Commit: cd344a4c20e295d49f8163ec9a0656c1061a6e42
https://github.com/llvm/llvm-project/commit/cd344a4c20e295d49f8163ec9a0656c1061a6e42
Author: Walter Erquinigo <a20012251 at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/source/Host/common/Editline.cpp
M lldb/test/API/repl/clang/TestClangREPL.py
Log Message:
-----------
[LLDB] Fix completion of space-only lines in the REPL on Linux (#83203)
https://github.com/modularml/mojo/issues/1796 discovered that if you try
to complete a space-only line in the REPL on Linux, LLDB crashes. I
suspect that editline doesn't behave the same way on linux and on
darwin, because I can't replicate this on darwin.
Adding a boundary check in the completion code prevents the crash from
happening.
Commit: 26402777ebf4eb3d8f3d5a45943b451c740b2d76
https://github.com/llvm/llvm-project/commit/26402777ebf4eb3d8f3d5a45943b451c740b2d76
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret.ll
Log Message:
-----------
[AArch64] Optimized generated assembly for bool to svbool_t conversions (#83001)
In certain cases Legalizer was generating `AND(WHILELO, SPLAT 1)` instruction pattern, when `WHILELO` would be sufficient.
Commit: 634b0243b8f7acc85af4f16b70e91d86ded4dc83
https://github.com/llvm/llvm-project/commit/634b0243b8f7acc85af4f16b70e91d86ded4dc83
Author: SivanShani-Arm <sivan.shani at arm.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMInstrFormats.td
M llvm/lib/Target/ARM/ARMInstrVFP.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
M llvm/test/CodeGen/ARM/cmse-vlldm-no-reorder.mir
M llvm/test/CodeGen/ARM/vlldm-vlstm-uops.mir
M llvm/test/MC/ARM/thumbv8m.s
A llvm/test/MC/ARM/vlstm-vlldm-8.1m.s
A llvm/test/MC/ARM/vlstm-vlldm-8m.s
A llvm/test/MC/ARM/vlstm-vlldm-diag.s
A llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.1.main.txt
A llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.main.txt
M llvm/unittests/Target/ARM/MachineInstrTest.cpp
Log Message:
-----------
[llvm][arm] add T1 and T2 assembly options for vlldm and vlstm (#83116)
T1 allows for an optional registers list, the register list must be {d0-d15}.
T2 defines a mandatory register list, the register list must be {d0-d31}.
The requirements for T1/T2 are as follows:
T1 T2
Require: v8-M.Main, v8.1-M.Main,
secure state secure state
16 D Regs valid valid
32 D Regs UNDEFINED valid
No D Regs NOP NOP
Commit: 28162b7832b87c85faedfca661e47d60e74337e9
https://github.com/llvm/llvm-project/commit/28162b7832b87c85faedfca661e47d60e74337e9
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M flang/test/Integration/OpenMP/copyprivate.f90
Log Message:
-----------
[flang][OpenMP] Fix copyprivate test on ppc64le
Commit: 95e036956f0a610027907df9a8f99d1f3c3b4cf5
https://github.com/llvm/llvm-project/commit/95e036956f0a610027907df9a8f99d1f3c3b4cf5
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.h
M clang/test/AST/Interp/cxx20.cpp
Log Message:
-----------
[clang][Interp] Note UB when converting Inf to integer
The F.isFinite() check here was introduced back when the first
floating point implementation was pushed, but I don't think it's
necessary and it fixes the attached test case.
Commit: b6f4dd9ee8cd4aa2c41622d75790df9341d9e043
https://github.com/llvm/llvm-project/commit/b6f4dd9ee8cd4aa2c41622d75790df9341d9e043
Author: srcarroll <50210727+srcarroll at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
A mlir/test/Dialect/Linalg/flatten-elementwise.mlir
Log Message:
-----------
[mlir][transform] Implement `FlattenElementwiseLinalgOp` transform op (#81431)
A `transform.structured.flatten_elementwise` op is implemented for
flattening the iteration space and (applicable) operands/results to a
single dimension.
Commit: 15b6908afa9b74ae62821ff44179d659277eef69
https://github.com/llvm/llvm-project/commit/15b6908afa9b74ae62821ff44179d659277eef69
Author: Paul T Robinson <paul.robinson at sony.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/fmaintrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/prfchwintrin.h
M clang/lib/Headers/smmintrin.h
M clang/lib/Headers/tmmintrin.h
Log Message:
-----------
[Headers][X86] Make brief descriptions briefer (#82422)
In Sony's document processing, the first "paragraph" of the description
is duplicated into a Brief Description section. Add paragraph breaks to make
those brief descriptions less verbose.
In fmaintrin.h we were including the \code blocks, which are
inappropriate for a brief description. While I was in there, change
\code to \code{.operation} which the Intel document processing wants.
Commit: 9da9b5f86750fc5286a89cc75f5f731affec7dfa
https://github.com/llvm/llvm-project/commit/9da9b5f86750fc5286a89cc75f5f731affec7dfa
Author: Michael Jones <michaelrj at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libc/docs/dev/undefined_behavior.rst
Log Message:
-----------
[libc][docs] Document policy for non-standard func (#83212)
As encountered with <sys/queue.h>, we need a policy for how to handle
implementing functions that users need, but has no specific standard. In
that case, we should treat existing implementations as the standard and
try to match their behavior as best as possible.
Commit: 46bd65a0509fefdf50d44f63640a7b8bd8ad0d14
https://github.com/llvm/llvm-project/commit/46bd65a0509fefdf50d44f63640a7b8bd8ad0d14
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir
Log Message:
-----------
[mlir][LinAlg] Vectorize reverse-like ops using vector.gather ops. (#83205)
The reverse op is treated as a VectorMemoryAccessKind::Contiguous load.
It is contiguous slice, but we'll need to compute indices differently
and apply a reverse at vector level. It takes non-trivial efforts for
the approach. The revision flips the case to use vector.gather.
Otherwise there are functionality issues. E.g., the below example loaded
`2, 3, 4` (which is a bug), but what we want is `2, 1, 0`.
Before vectorization:
```mlir
func.func @vectorize_reverse_like_tensor_extract(%arg0: tensor<1x2x3xf32>, %arg1: tensor<1x1x3xf32>, %arg2: index) -> tensor<1x1x3xf32> {
%c1 = arith.constant 1 : index
%c0 = arith.constant 0 : index
%c2 = arith.constant 2 : index
%0 = linalg.generic {indexing_maps = [#map], iterator_types = ["parallel", "parallel", "parallel"]} outs(%arg1 : tensor<1x1x3xf32>) {
^bb0(%out: f32):
%1 = linalg.index 1 : index
%2 = linalg.index 0 : index
%3 = affine.apply #map1(%1, %2, %arg2)
%4 = linalg.index 2 : index
%5 = arith.subi %c2, %4 : index
%extracted = tensor.extract %arg0[%c0, %3, %5] : tensor<1x2x3xf32>
linalg.yield %extracted : f32
} -> tensor<1x1x3xf32>
return %0 : tensor<1x1x3xf32>
}
```
Partial IR after vectorization:
```
%5 = vector.constant_mask [1, 1, 3] : vector<1x1x4xi1>
%6 = vector.broadcast %arg0 : index to vector<1x1x4xindex>
%7 = vector.shape_cast %6 : vector<1x1x4xindex> to vector<4xindex>
%8 = vector.extractelement %7[%c0_i32 : i32] : vector<4xindex>
%9 = vector.transfer_read %3[%c0, %8, %c2], %cst, %5 {in_bounds = [true, true, true]} : tensor<1x2x3xf32>, vector<1x1x4xf32>
```
Commit: ad43ea3328dad844c245caf93509c2facba1ec32
https://github.com/llvm/llvm-project/commit/ad43ea3328dad844c245caf93509c2facba1ec32
Author: Jason Eckhardt <jeckhardt at nvidia.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
A llvm/test/TableGen/HwModeEncodeDecode3.td
M llvm/utils/TableGen/CodeEmitterGen.cpp
M llvm/utils/TableGen/CodeGenHwModes.h
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen] Add support for DefaultMode in per-HwMode encode/decode. (#83029)
Currently the decoder and encoder emitters will crash if DefaultMode is
used within an EncodingByHwMode. As can be done today for
RegInfoByHwMode and ValueTypeByHwMode, this patch adds support for this
usage in EncodingByHwMode:
let EncodingInfos =
EncodingByHwMode<[ModeA, DefaultMode], [EncA, EncDefault]>;
Commit: c6cbf81c84b00ab0107a09f5b2d0183458a367b8
https://github.com/llvm/llvm-project/commit/c6cbf81c84b00ab0107a09f5b2d0183458a367b8
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/include/clang/InstallAPI/Context.h
A clang/include/clang/InstallAPI/Frontend.h
M clang/include/clang/InstallAPI/HeaderFile.h
A clang/include/clang/InstallAPI/Visitor.h
M clang/lib/InstallAPI/CMakeLists.txt
A clang/lib/InstallAPI/Frontend.cpp
A clang/lib/InstallAPI/Visitor.cpp
M clang/test/InstallAPI/basic.test
A clang/test/InstallAPI/variables.test
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
Log Message:
-----------
[InstallAPI] Hookup Input files & basic ASTVisitor (#82552)
This patch takes in json files as input to determine that header files
to process, and in which order, to pass along for CC1 invocations. This
patch also includes an ASTVisitor to collect simple global variables.
Commit: b42b7c8a123863d86db9abc8b6a1340b920f6573
https://github.com/llvm/llvm-project/commit/b42b7c8a123863d86db9abc8b6a1340b920f6573
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfo.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/Targets/AArch64.cpp
Log Message:
-----------
[clang] Refactor target attribute mangling. (#81893)
Before this patch all of the 'target', 'target_version' and
'target_clones' attributes were sharing a common mangling logic across
different targets. However we would like to differenciate this logic,
therefore I have moved the default path to ABIInfo and provided
overrides for AArch64. This way we can resolve feature aliases without
affecting the name mangling. The PR #80540 demonstrates a motivating
case.
Commit: f9b079972c234c90df4b28990d5b2e51184e0b64
https://github.com/llvm/llvm-project/commit/f9b079972c234c90df4b28990d5b2e51184e0b64
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/InstallAPI/BUILD.gn
Log Message:
-----------
[gn build] Port c6cbf81c84b0
Commit: 6101cf3164d77cfa4e2df75bf5262da9a2fb3d0a
https://github.com/llvm/llvm-project/commit/6101cf3164d77cfa4e2df75bf5262da9a2fb3d0a
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/tools/clang-installapi/CMakeLists.txt
Log Message:
-----------
[InstallAPI] add missing link to clangAST
Appeases bots.
Commit: 1c211bc76e8b6a3261c62e5b6c2b75b7b90386b0
https://github.com/llvm/llvm-project/commit/1c211bc76e8b6a3261c62e5b6c2b75b7b90386b0
Author: Nilanjana Basu <n_basu at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/PowerPC/interleave_IC.ll
Log Message:
-----------
[LV] Remove unused configuration option (#82955)
Recent set of changes (PR #67725) in loop interleaving algorithm caused removal of the loop trip count threshold for allowing interleaving. Therefore configuration option interleave-small-loop-scalar-reduction is no longer needed.
Commit: c1b8c6cf41df4a148e7a89c3a3c7e8049b0a47af
https://github.com/llvm/llvm-project/commit/c1b8c6cf41df4a148e7a89c3a3c7e8049b0a47af
Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-compare-results-i16.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/fill-2d.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/use-too-many-tiles.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/test-setArmSVLBits.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-store-128-bit-tile.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-load-vertical.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-multi-tile-transpose.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f32.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f64.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-read-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-write-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transpose.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/tile_fill.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-load-store.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/arrays-of-scalable-vectors.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-print-str.mlir
Log Message:
-----------
[mlir][vector][print] do not append newline to printing pure strings (#83213)
Since the vector.print str provides no punctuation control, it is
slightly more flexible to let the client of this operation decide
whether there should be a trailing newline. This allows for printing
like
vector.print str "nse = "
vector.print %nse : index
as
nse = 42
Commit: baf6725b38491222f40a3c40bd27e57b0dd7f1f9
https://github.com/llvm/llvm-project/commit/baf6725b38491222f40a3c40bd27e57b0dd7f1f9
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M flang/include/flang/Runtime/reduction.h
M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
M flang/runtime/Float128Math/CMakeLists.txt
M flang/runtime/Float128Math/math-entries.h
A flang/runtime/Float128Math/norm2.cpp
M flang/runtime/extrema.cpp
M flang/runtime/reduction-templates.h
M flang/runtime/tools.h
M flang/test/Lower/Intrinsics/norm2.f90
Log Message:
-----------
[flang][runtime] Support NORM2 for REAL(16) with FortranFloat128Math lib. (#83219)
Changed the lowering to call Norm2DimReal16 for REAL(16).
Added the corresponding entry point to FortranFloat128Math,
which required some restructuring in the related templates.
Commit: 6244dfef5cd45f1395c66abbe061c6a7eb002676
https://github.com/llvm/llvm-project/commit/6244dfef5cd45f1395c66abbe061c6a7eb002676
Author: Kevin Frei <kevinfrei at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/include/llvm/DebugInfo/DIContext.h
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
Log Message:
-----------
llvm-dwarfdump --verify aggregated output to JSON file (#81762)
In order to make tooling around dwarf health easier, I've added an `--verify-json` option to `llvm-dwarfdump --verify` that will spit out error summary data with counts to a JSON file.
I've added the same capability to `llvm-gsymutil` in a [different PR.](https://github.com/llvm/llvm-project/pull/81763)
The format of the json is:
``` json
{
"error-categories": {
"<first category description>": {"count": 1234},
"<next category description>": {"count":4321}
},
"error-count": 5555
}
```
for a clean run:
``` json
{
"error-categories": {},
"error-count": 0
}
```
---------
Co-authored-by: Kevin Frei <freik at meta.com>
Commit: b4bc19e2e6b7d0de9cb5f0578269085a76e99d3f
https://github.com/llvm/llvm-project/commit/b4bc19e2e6b7d0de9cb5f0578269085a76e99d3f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/test/CodeGen/X86/combine-sse41-intrinsics.ll
Log Message:
-----------
[X86] Add tests showing failure to demand only the sign bit of a sitofp/uitofp node
sitofp - if we only demand the signbit, then we can try to use the source integer
uitofp - signbit is guaranteed to be zero
Noticed while reviewing #82290
Commit: 782147e82ab3e2d0e22f729ea4e54eeed7b3cb96
https://github.com/llvm/llvm-project/commit/782147e82ab3e2d0e22f729ea4e54eeed7b3cb96
Author: Patrick Dougherty <patrick.dougherty.0208 at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/modules/AddLLVM.cmake
M llvm/docs/CMake.rst
Log Message:
-----------
[CMake][LIT] Add option to run lit testsuites in parallel (#82899)
Currently `add_lit_target` sets the `USES_TERMINAL` CMake option. When
using Ninja, this forces all lit testsuite targets into the
single-threaded `console` pool.
This PR adds a new option `LLVM_PARALLEL_LIT` which drops the
`USES_TERMINAL` flag, allowing Ninja to run them in parallel.
The default setting (`LLVM_PARALLEL_LIT=OFF`) retains the existing
behavior of serial testsuite execution.
Commit: 2eb63982e88b9ed8336158d35884b1a1d04a0f78
https://github.com/llvm/llvm-project/commit/2eb63982e88b9ed8336158d35884b1a1d04a0f78
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/phi-and-select.ll
M llvm/test/Transforms/SROA/phi-gep.ll
Log Message:
-----------
[SROA] Unfold gep of index phi (#83087)
If a gep has only one phi as one of its operands and the remaining
indexes are constant, we can unfold `gep ptr, (phi idx1, idx2)` to `phi
((gep ptr, idx1), (gep ptr, idx2))`.
Take care not to unfold recursive phis.
Followup to #80983.
Commit: 9c7cde64e6556f8a04dc4a14cbfb2b277d5ab4d9
https://github.com/llvm/llvm-project/commit/9c7cde64e6556f8a04dc4a14cbfb2b277d5ab4d9
Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/mlir-cpu-runner/expand-arith-ops.mlir
Log Message:
-----------
Fix the lowering of `arith.truncf : f32 to bf16`. (#83180)
This lowering was not correctly handling the case where saturation of
the mantissa results in an increase of the exponent value. The new code
borrows, with credit, the idea from
https://github.com/pytorch/pytorch/blob/e1502c0cdbfd17548c612f25d5a65b1e4b86224d/c10/util/BFloat16.h#L60-L79
and adds comments to explain the magic trick going on here and why it's
correct. Hat tip to its original author, whom I believe to be
@Maratyszcza.
A testcase was also requiring a tie to be broken upwards in a case where
"to nearest-even" required going downward. The fact that it used to pass
suggests that there was another bug in the old code.
Commit: 777ac46ddbc318b5d5820d278a2e4dc2213699d8
https://github.com/llvm/llvm-project/commit/777ac46ddbc318b5d5820d278a2e4dc2213699d8
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Passes/PassBuilderPipelines.cpp
Log Message:
-----------
[llvm] Remove pipeline checks for optsize for DFAJumpThreadingPass
The pass itself checks whether to apply the optimization based on the
minsize attribute, so there isn't much functional benefit to preventing
the pass from being added. Gating the pass gets added to the pass
pipeline complicates the interaction with -enable-dfa-jump-thread, as
well.
Reviewers: aeubanks
Reviewed By: aeubanks
Pull Request: https://github.com/llvm/llvm-project/pull/83318
Commit: 21c7bc51e9ed2402a3a2f7a88d63cc8f5c2e303c
https://github.com/llvm/llvm-project/commit/21c7bc51e9ed2402a3a2f7a88d63cc8f5c2e303c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libcxx/include/__utility/integer_sequence.h
R libcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.pass.cpp
R libcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.verify.cpp
Log Message:
-----------
[libc++] Use __integer_pack to implement integer_sequence on GCC (#82983)
This significantly simplifies the implementation.
Commit: b81bb0e1d0acc3db64557ed699ccba751b8b511a
https://github.com/llvm/llvm-project/commit/b81bb0e1d0acc3db64557ed699ccba751b8b511a
Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/ops.mlir
A mlir/test/Target/Cpp/logical_operators.mlir
Log Message:
-----------
[mlir][EmitC] Add logical operators (#83123)
This adds operations for the logical operators AND, NOT and OR.
Commit: 2cacc7a61095577ff42177373d46c8cb8df0cb1f
https://github.com/llvm/llvm-project/commit/2cacc7a61095577ff42177373d46c8cb8df0cb1f
Author: Zequan Wu <zequanwu at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/databreakpoint/TestDAP_setDataBreakpoints.py
M lldb/tools/lldb-dap/Watchpoint.cpp
M lldb/tools/lldb-dap/Watchpoint.h
M lldb/tools/lldb-dap/lldb-dap.cpp
Log Message:
-----------
[lldb-dap] Deduplicate watchpoints starting at the same address on SetDataBreakpointsRequest. (#83192)
If a SetDataBreakpointsRequest contains a list data breakpoints which
have duplicate starting addresses, the current behaviour is returning
`{verified: true}` to both watchpoints with duplicated starting
addresses. This confuses the client and what actually happens in lldb is
the second one overwrite the first one.
This fixes it by letting the last watchpoint at given address have
`{verified: true}` and all previous watchpoints at the same address
should have `{verfied: false}` at response.
Commit: 1a7776abe6ca01996e8050dcdc8350d686a5749f
https://github.com/llvm/llvm-project/commit/1a7776abe6ca01996e8050dcdc8350d686a5749f
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/allocator_common.h
M compiler-rt/lib/scudo/standalone/primary32.h
M compiler-rt/lib/scudo/standalone/primary64.h
M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
Log Message:
-----------
Reland "[scudo] Store more blocks in each TransferBatch" (#83078) (#83081)
This reverts commit 056d62be38c5db3d8332ac300c4ff29214126697.
Fixed the number of bytes copied in moveNToArray()
Commit: 153003416696c2464d296594dac5a36a5a60bac5
https://github.com/llvm/llvm-project/commit/153003416696c2464d296594dac5a36a5a60bac5
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libcxx/include/__atomic/aliases.h
M libcxx/include/__config
M libcxx/include/__thread/support/pthread.h
M libcxx/include/atomic
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
Log Message:
-----------
[libc++] Remove unnecessary includes from <atomic> (#82880)
This reduces the include time of `<atomic>` from 135ms to 88ms.
Commit: b339c88120429df738d198d7535bc59f65f11edb
https://github.com/llvm/llvm-project/commit/b339c88120429df738d198d7535bc59f65f11edb
Author: David Green <david.green at arm.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/aes.ll
Log Message:
-----------
[AArch64] Add some base aes intrinsic tests. NFC
Including commutative tests.
Commit: d37affb06f2709ee46a86568a77ae6fea7fb4424
https://github.com/llvm/llvm-project/commit/d37affb06f2709ee46a86568a77ae6fea7fb4424
Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
A mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
Log Message:
-----------
[mlir][sparse] add a sparse_tensor.print operation (#83321)
This operation is mainly used for testing and debugging purposes but
provides a very convenient way to quickly inspect the contents of a
sparse tensor (all components over all stored levels).
Example:
[ [ 1, 0, 2, 0, 0, 0, 0, 0 ],
[ 0, 0, 0, 0, 0, 0, 0, 0 ],
[ 0, 0, 0, 0, 0, 0, 0, 0 ],
[ 0, 0, 3, 4, 0, 5, 0, 0 ]
when stored sparse as DCSC prints as
---- Sparse Tensor ----
nse = 5
pos[0] : ( 0, 4, )
crd[0] : ( 0, 2, 3, 5, )
pos[1] : ( 0, 1, 3, 4, 5, )
crd[1] : ( 0, 0, 3, 3, 3, )
values : ( 1, 2, 3, 4, 5, )
----
Commit: d1f04443b14f3cfc565656fb14d283f729d95344
https://github.com/llvm/llvm-project/commit/d1f04443b14f3cfc565656fb14d283f729d95344
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Port clangInstallAPI changes #82293 and #82552
Commit: 330793c91d08e6ac60334e4813746db898b9407e
https://github.com/llvm/llvm-project/commit/330793c91d08e6ac60334e4813746db898b9407e
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libc/include/__llvm-libc-common.h
M libc/include/llvm-libc-macros/containerof-macro.h
M libc/include/llvm-libc-macros/fcntl-macros.h
M libc/include/llvm-libc-macros/features-macros.h
M libc/include/llvm-libc-macros/fenv-macros.h
M libc/include/llvm-libc-macros/file-seek-macros.h
M libc/include/llvm-libc-macros/float-macros.h
M libc/include/llvm-libc-macros/generic-error-number-macros.h
M libc/include/llvm-libc-macros/gpu/time-macros.h
M libc/include/llvm-libc-macros/inttypes-macros.h
M libc/include/llvm-libc-macros/limits-macros.h
M libc/include/llvm-libc-macros/linux/fcntl-macros.h
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-macros/linux/signal-macros.h
M libc/include/llvm-libc-macros/linux/sys-ioctl-macros.h
M libc/include/llvm-libc-macros/linux/sys-random-macros.h
M libc/include/llvm-libc-macros/linux/sys-resource-macros.h
M libc/include/llvm-libc-macros/linux/sys-socket-macros.h
M libc/include/llvm-libc-macros/linux/sys-stat-macros.h
M libc/include/llvm-libc-macros/linux/sys-time-macros.h
M libc/include/llvm-libc-macros/linux/sys-wait-macros.h
M libc/include/llvm-libc-macros/linux/termios-macros.h
M libc/include/llvm-libc-macros/linux/time-macros.h
M libc/include/llvm-libc-macros/linux/unistd-macros.h
M libc/include/llvm-libc-macros/math-macros.h
M libc/include/llvm-libc-macros/null-macro.h
M libc/include/llvm-libc-macros/offsetof-macro.h
M libc/include/llvm-libc-macros/sched-macros.h
M libc/include/llvm-libc-macros/signal-macros.h
M libc/include/llvm-libc-macros/stdckdint-macros.h
M libc/include/llvm-libc-macros/stdfix-macros.h
M libc/include/llvm-libc-macros/stdio-macros.h
M libc/include/llvm-libc-macros/stdlib-macros.h
M libc/include/llvm-libc-macros/sys-auxv-macros.h
M libc/include/llvm-libc-macros/sys-ioctl-macros.h
M libc/include/llvm-libc-macros/sys-mman-macros.h
M libc/include/llvm-libc-macros/sys-queue-macros.h
M libc/include/llvm-libc-macros/sys-random-macros.h
M libc/include/llvm-libc-macros/sys-resource-macros.h
M libc/include/llvm-libc-macros/sys-select-macros.h
M libc/include/llvm-libc-macros/sys-socket-macros.h
M libc/include/llvm-libc-macros/sys-stat-macros.h
M libc/include/llvm-libc-macros/sys-time-macros.h
M libc/include/llvm-libc-macros/sys-wait-macros.h
M libc/include/llvm-libc-macros/termios-macros.h
M libc/include/llvm-libc-macros/time-macros.h
M libc/include/llvm-libc-macros/unistd-macros.h
M libc/include/llvm-libc-macros/wchar-macros.h
M libc/include/llvm-libc-types/ACTION.h
M libc/include/llvm-libc-types/DIR.h
M libc/include/llvm-libc-types/ENTRY.h
M libc/include/llvm-libc-types/FILE.h
M libc/include/llvm-libc-types/__atexithandler_t.h
M libc/include/llvm-libc-types/__atfork_callback_t.h
M libc/include/llvm-libc-types/__bsearchcompare_t.h
M libc/include/llvm-libc-types/__call_once_func_t.h
M libc/include/llvm-libc-types/__exec_argv_t.h
M libc/include/llvm-libc-types/__exec_envp_t.h
M libc/include/llvm-libc-types/__futex_word.h
M libc/include/llvm-libc-types/__getoptargv_t.h
M libc/include/llvm-libc-types/__mutex_type.h
M libc/include/llvm-libc-types/__pthread_once_func_t.h
M libc/include/llvm-libc-types/__pthread_start_t.h
M libc/include/llvm-libc-types/__pthread_tss_dtor_t.h
M libc/include/llvm-libc-types/__qsortcompare_t.h
M libc/include/llvm-libc-types/__qsortrcompare_t.h
M libc/include/llvm-libc-types/__sighandler_t.h
M libc/include/llvm-libc-types/__thread_type.h
M libc/include/llvm-libc-types/blkcnt_t.h
M libc/include/llvm-libc-types/blksize_t.h
M libc/include/llvm-libc-types/cc_t.h
M libc/include/llvm-libc-types/clock_t.h
M libc/include/llvm-libc-types/clockid_t.h
M libc/include/llvm-libc-types/cnd_t.h
M libc/include/llvm-libc-types/cookie_io_functions_t.h
M libc/include/llvm-libc-types/cpu_set_t.h
M libc/include/llvm-libc-types/dev_t.h
M libc/include/llvm-libc-types/div_t.h
M libc/include/llvm-libc-types/double_t.h
M libc/include/llvm-libc-types/fd_set.h
M libc/include/llvm-libc-types/fenv_t.h
M libc/include/llvm-libc-types/fexcept_t.h
M libc/include/llvm-libc-types/float128.h
M libc/include/llvm-libc-types/float_t.h
M libc/include/llvm-libc-types/gid_t.h
M libc/include/llvm-libc-types/ino_t.h
M libc/include/llvm-libc-types/jmp_buf.h
M libc/include/llvm-libc-types/ldiv_t.h
M libc/include/llvm-libc-types/lldiv_t.h
M libc/include/llvm-libc-types/mode_t.h
M libc/include/llvm-libc-types/mtx_t.h
M libc/include/llvm-libc-types/nlink_t.h
M libc/include/llvm-libc-types/off64_t.h
M libc/include/llvm-libc-types/off_t.h
M libc/include/llvm-libc-types/once_flag.h
M libc/include/llvm-libc-types/pid_t.h
M libc/include/llvm-libc-types/posix_spawn_file_actions_t.h
M libc/include/llvm-libc-types/posix_spawnattr_t.h
M libc/include/llvm-libc-types/pthread_attr_t.h
M libc/include/llvm-libc-types/pthread_key_t.h
M libc/include/llvm-libc-types/pthread_mutex_t.h
M libc/include/llvm-libc-types/pthread_mutexattr_t.h
M libc/include/llvm-libc-types/pthread_once_t.h
M libc/include/llvm-libc-types/pthread_t.h
M libc/include/llvm-libc-types/rlim_t.h
M libc/include/llvm-libc-types/rpc_opcodes_t.h
M libc/include/llvm-libc-types/sa_family_t.h
M libc/include/llvm-libc-types/sig_atomic_t.h
M libc/include/llvm-libc-types/siginfo_t.h
M libc/include/llvm-libc-types/sigset_t.h
M libc/include/llvm-libc-types/size_t.h
M libc/include/llvm-libc-types/socklen_t.h
M libc/include/llvm-libc-types/speed_t.h
M libc/include/llvm-libc-types/ssize_t.h
M libc/include/llvm-libc-types/stack_t.h
M libc/include/llvm-libc-types/struct_dirent.h
M libc/include/llvm-libc-types/struct_epoll_data.h
M libc/include/llvm-libc-types/struct_epoll_event.h
M libc/include/llvm-libc-types/struct_hsearch_data.h
M libc/include/llvm-libc-types/struct_rlimit.h
M libc/include/llvm-libc-types/struct_rusage.h
M libc/include/llvm-libc-types/struct_sched_param.h
M libc/include/llvm-libc-types/struct_sigaction.h
M libc/include/llvm-libc-types/struct_sockaddr.h
M libc/include/llvm-libc-types/struct_sockaddr_un.h
M libc/include/llvm-libc-types/struct_stat.h
M libc/include/llvm-libc-types/struct_timespec.h
M libc/include/llvm-libc-types/struct_timeval.h
M libc/include/llvm-libc-types/struct_tm.h
M libc/include/llvm-libc-types/struct_utsname.h
M libc/include/llvm-libc-types/suseconds_t.h
M libc/include/llvm-libc-types/tcflag_t.h
M libc/include/llvm-libc-types/test_rpc_opcodes_t.h
M libc/include/llvm-libc-types/thrd_start_t.h
M libc/include/llvm-libc-types/thrd_t.h
M libc/include/llvm-libc-types/time_t.h
M libc/include/llvm-libc-types/tss_dtor_t.h
M libc/include/llvm-libc-types/tss_t.h
M libc/include/llvm-libc-types/uid_t.h
M libc/include/llvm-libc-types/union_sigval.h
M libc/include/llvm-libc-types/wchar_t.h
M libc/include/llvm-libc-types/wint_t.h
M libc/include/sys/queue.h
M libc/src/__support/CPP/type_traits/is_fixed_point.h
M libc/src/__support/FPUtil/fpbits_str.h
M libc/src/__support/GPU/generic/utils.h
M libc/src/__support/GPU/utils.h
M libc/src/__support/HashTable/table.h
M libc/src/__support/OSUtil/gpu/io.h
M libc/src/__support/RPC/rpc_util.h
M libc/src/__support/StringUtil/message_mapper.h
M libc/src/__support/StringUtil/platform_errors.h
M libc/src/__support/StringUtil/platform_signals.h
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
M libc/src/__support/StringUtil/tables/linux_extension_signals.h
M libc/src/__support/StringUtil/tables/linux_platform_errors.h
M libc/src/__support/StringUtil/tables/linux_platform_signals.h
M libc/src/__support/StringUtil/tables/minimal_platform_errors.h
M libc/src/__support/StringUtil/tables/minimal_platform_signals.h
M libc/src/__support/StringUtil/tables/posix_errors.h
M libc/src/__support/StringUtil/tables/posix_signals.h
M libc/src/__support/StringUtil/tables/signal_table.h
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/__support/StringUtil/tables/stdc_signals.h
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/__support/fixed_point/fx_rep.h
M libc/src/__support/memory_size.h
M libc/src/__support/threads/gpu/mutex.h
M libc/src/assert/assert.h
M libc/src/gpu/rpc_host_call.h
M libc/src/math/amdgpu/declarations.h
M libc/src/math/amdgpu/platform.h
M libc/src/math/copysignf128.h
M libc/src/math/generic/exp_utils.h
M libc/src/math/nvptx/declarations.h
M libc/src/math/nvptx/nvptx.h
M libc/src/search/hsearch/global.h
M libc/src/string/memory_utils/aarch64/inline_memcpy.h
M libc/src/string/memory_utils/riscv/inline_memmove.h
M libc/test/UnitTest/ExecuteFunction.h
M libc/test/UnitTest/FPExceptMatcher.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/UnitTest/LibcTest.h
M libc/test/UnitTest/MemoryMatcher.h
M libc/test/UnitTest/PlatformDefs.h
M libc/test/UnitTest/RoundingModeUtils.h
M libc/test/UnitTest/StringUtils.h
M libc/test/UnitTest/Test.h
M libc/test/integration/src/spawn/test_binary_properties.h
M libc/test/src/math/FAbsTest.h
M libc/test/src/math/FMaxTest.h
M libc/test/src/math/FMinTest.h
M libc/test/src/math/FloorTest.h
M libc/test/src/math/RandUtils.h
M libc/test/src/math/RoundTest.h
M libc/test/src/math/TruncTest.h
M libc/test/src/math/differential_testing/Timer.h
M libc/test/src/math/in_float_range_test_helper.h
M libc/test/src/math/smoke/CeilTest.h
M libc/test/src/math/smoke/CopySignTest.h
M libc/test/src/math/smoke/FAbsTest.h
M libc/test/src/math/smoke/FMaxTest.h
M libc/test/src/math/smoke/FMinTest.h
M libc/test/src/math/smoke/FloorTest.h
M libc/test/src/math/smoke/RIntTest.h
M libc/test/src/math/smoke/RoundTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/TruncTest.h
M libc/test/src/time/TmHelper.h
M libc/utils/MPFRWrapper/MPFRUtils.h
Log Message:
-----------
[libc] fix clang-tidy llvm-header-guard warnings (#82679)
Towards the goal of getting `ninja libc-lint` back to green, fix the numerous
instances of:
warning: header guard does not follow preferred style [llvm-header-guard]
This is because many of our header guards start with `__LLVM` rather than
`LLVM`.
To filter just these warnings:
$ ninja -k2000 libc-lint 2>&1 | grep llvm-header-guard
To automatically apply fixits:
$ find libc/src libc/include libc/test -name \*.h | \
xargs -n1 -I {} clang-tidy {} -p build/compile_commands.json \
-checks='-*,llvm-header-guard' --fix --quiet
Some manual cleanup is still necessary as headers that were missing header
guards outright will have them inserted before the license block (we prefer
them after).
Commit: 249cf356ef21d0b6ed0d1fa962f3fc5a9e3fcc9e
https://github.com/llvm/llvm-project/commit/249cf356ef21d0b6ed0d1fa962f3fc5a9e3fcc9e
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/CMakeLists.txt
M lldb/use_lldb_suite_root.py
M lldb/utils/lldb-dotest/CMakeLists.txt
M lldb/utils/lldb-dotest/lldb-dotest.in
Log Message:
-----------
[lldb][test][NFC] Add option to exclude third_party packages (#83191)
The goal here is to remove the third_party/Python/module tree, which
LLDB tests only use to `import pexpect`. This package is available on
`pip`, and I believe should not be hard to obtain.
However, in case it isn't easily available, deleting the tree right now
could cause disruption. This introduces a
`LLDB_TEST_USE_VENDOR_PACKAGES` cmake param that can be enabled, and the
tests will continue loading that tree. By default, it is enabled,
meaning there's really no change here. A followup change will disable it
by default once all known build bots are updated to include this
package. When disabled, an eager cmake check runs that makes sure
`pexpect` is available before waiting for the test to fail in an obscure
way.
Later, this option will go away, and when it does, we can delete the
tree too. Ideally this is not disruptive, and we can remove it in a week
or two.
Commit: 5b91647e3f82c9747c42c3239b7d7f3ade4542a7
https://github.com/llvm/llvm-project/commit/5b91647e3f82c9747c42c3239b7d7f3ade4542a7
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/test/MC/AArch64/cfi-bad-nesting-darwin.s
Log Message:
-----------
Allow .alt_entry symbols to pass the .cfi nesting check (#82268)
A symbol with an `N_ALT_ENTRY` attribute may be defined in the middle of
a subsection, so it is reasonable to opt them out of the
`.cfi_{start,end}proc` nesting check.
Fixes: https://github.com/llvm/llvm-project/issues/82261
Commit: 4df364bc93af49ae413ec1ae8328f34ac70730c4
https://github.com/llvm/llvm-project/commit/4df364bc93af49ae413ec1ae8328f34ac70730c4
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libc/src/assert/assert.h
Log Message:
-----------
[libc] remove header guard for assert.h (#83334)
It's meant to be included multiple times! Maybe use a NOLINT rule to
suppress
clang-tidy's llvm-header-guard lint warning.
Commit: caca8d33a9d5e6fe75980c4ae1cb13de2e460590
https://github.com/llvm/llvm-project/commit/caca8d33a9d5e6fe75980c4ae1cb13de2e460590
Author: Joe Nash <Sisyph at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/utils/vim/syntax/mir.vim
Log Message:
-----------
[vim] Fix command already exists on opening multiple mir buffers (#82410)
When using the vim syntax for mir, an error occurs in nvim when opening
multiple .mir buffers. delcommand HiLink in the mir syntax file to avoid
the issue.
To reproduce:
Open an .mir file, for example
llvm/test/Codegen/X86/expand-post-ra-pseudo.mir
Open another mir file from within nvim, for example peephole.mir
```
Error detected while processing function 335[30]..<SNR>43_callback[25]..function 335[30]..<SNR>43_callback:
line 23:
Vim(command):E174: Command already exists: add ! to replace it: HiLink hi def link <args>
```
Commit: 1977404d20ab29ff78a58d8c0f1f4c5e7aef6b16
https://github.com/llvm/llvm-project/commit/1977404d20ab29ff78a58d8c0f1f4c5e7aef6b16
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M openmp/CMakeLists.txt
Log Message:
-----------
[OpenMP] Respect LLVM per-target install directories (#83282)
Summary:
One recurring problem we have with the OpenMP libraries is that they are
potentially conflicting with ones found on the system, this occurs when
there are two copies and one is used for linking that it not attached to
the correspoding clang compiler. LLVM already uses target specific
directories for this, like with libc++, which are always searched first.
This patch changes the install directory to be
`lib/x86_64-unknown-linux-gnu` for example.
Notable changes would be that users will need to change their
LD_LIBRARY_PATH settings optionally, or use default rt-rpath options.
This should fix problems were users are linking the wrong versions of
static libraries
Commit: 68f0edfa359fde3fb4f5ec391a4afe96f3905aaf
https://github.com/llvm/llvm-project/commit/68f0edfa359fde3fb4f5ec391a4afe96f3905aaf
Author: Petr Hosek <phosek at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libc/config/baremetal/api.td
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/arm/headers.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/baremetal/riscv/headers.txt
Log Message:
-----------
[libc] Include assert.h on baremetal targets (#83324)
Many baremetal applications use asserts.
Commit: 8394ec9ff1d58b361961e3a8990d0e080ba6c7f2
https://github.com/llvm/llvm-project/commit/8394ec9ff1d58b361961e3a8990d0e080ba6c7f2
Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
Log Message:
-----------
[mlir][sparse] add a few more cases to sparse_tensor.print test (#83338)
Commit: 14faf0d4aa841aafd0d1982391114bc35fda7e59
https://github.com/llvm/llvm-project/commit/14faf0d4aa841aafd0d1982391114bc35fda7e59
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/lib/InstallAPI/Visitor.cpp
M llvm/include/llvm/TextAPI/RecordsSlice.h
Log Message:
-----------
[TextAPI][InstallAPI] Fix documentation typos, NFC
Commit: dc456ce4f2ad6ebe883c301758d8eb95fcd16a0a
https://github.com/llvm/llvm-project/commit/dc456ce4f2ad6ebe883c301758d8eb95fcd16a0a
Author: Nico Weber <thakis at chromium.org>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port 249cf356ef21
Commit: e3b93a16201d96745a2c64523801a2b1eb43b4c0
https://github.com/llvm/llvm-project/commit/e3b93a16201d96745a2c64523801a2b1eb43b4c0
Author: Max191 <44243577+Max191 at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir] Fix bug in pack and unpack op canonicalization for folding dynamic dims (#82539)
This PR fixes a bug in the inference of pack and unpack static shapes
that should be using an inverse permutation.
Commit: fc8d48106387b8b79531902788ef93571f924da7
https://github.com/llvm/llvm-project/commit/fc8d48106387b8b79531902788ef93571f924da7
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGen/builtins.c
M clang/test/Sema/builtin-popcountg.c
Log Message:
-----------
[clang] Fix __builtin_popcountg not matching GCC (#83313)
Our implementation previously accepted signed arguments and performed
integer promotion on the argument. GCC's implementation requires an
unsigned argument and does not perform integer promotion on it.
Commit: 6f8d826b746242802a2368cac26896dfebd6f5a1
https://github.com/llvm/llvm-project/commit/6f8d826b746242802a2368cac26896dfebd6f5a1
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libc/.clang-tidy
M libc/src/__support/FPUtil/FPBits.h
M libc/src/string/memory_utils/aarch64/inline_bcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/generic/aligned_access.h
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/op_aarch64.h
M libc/src/string/memory_utils/op_builtin.h
M libc/src/string/memory_utils/op_generic.h
M libc/src/string/memory_utils/utils.h
M libc/src/string/memory_utils/x86_64/inline_bcmp.h
M libc/src/string/memory_utils/x86_64/inline_memcmp.h
Log Message:
-----------
[libc] fix readability-identifier-naming.ConstexprFunctionCase (#83345)
Codify that we use lower_case for
readability-identifier-naming.ConstexprFunctionCase and then fix the 11
violations (rather than codify UPPER_CASE and have to fix the 170 violations).
Commit: 8dfa1d878d015dd7f466d6eadbaca6c46fc8d7a9
https://github.com/llvm/llvm-project/commit/8dfa1d878d015dd7f466d6eadbaca6c46fc8d7a9
Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/test/Dialect/SparseTensor/invalid.mlir
M mlir/test/Dialect/SparseTensor/roundtrip.mlir
Log Message:
-----------
[mlir][sparse] add roundtrip and invalid tests for sparse_tensor.print (#83349)
Commit: e7a303e3cf7f205184c9d9d878791661260f9852
https://github.com/llvm/llvm-project/commit/e7a303e3cf7f205184c9d9d878791661260f9852
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Log Message:
-----------
[SelectionDAG] Remove unused getIndexedStridedLoadVP/getIndexedStridedStoreVP functions. NFC (#82847)
These appear to have been copied from getIndexedLoadVP/getIndexedStoreVP
which in turn were copied from the non-VP versions.
Commit: c345198c7a68cb76e82dbc04d0e91476cb0edc70
https://github.com/llvm/llvm-project/commit/c345198c7a68cb76e82dbc04d0e91476cb0edc70
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
Log Message:
-----------
[RISCV] Add a command line option to disable cost per use for compressed registers. (#83320)
I've seen cases where the cost per use increase the number of spills.
Disabling improves the codegen for #79918.
I propose adding this option to allow easier experimentation.
Commit: ff07c9b701dc6372f82d989d01768051e848b30d
https://github.com/llvm/llvm-project/commit/ff07c9b701dc6372f82d989d01768051e848b30d
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/include/clang/Driver/Driver.h
M clang/test/Driver/darwin-header-search-libcxx.cpp
M clang/test/Driver/mingw-sysroot.cpp
M clang/test/Driver/no-canonical-prefixes.c
M clang/test/Driver/program-path-priority.c
M clang/test/Driver/rocm-detect.hip
M clang/tools/driver/driver.cpp
Log Message:
-----------
[Driver] Unify InstalledDir and Dir (#80527)
`Driver::ClangExecutable` is derived from:
* (-canonical-prefixes default): `realpath` on the executable path
* (-no-canonical-prefixes) argv[0] (consult PATH if argv[0] is a word)
`Dir` and `ResourceDir` are derived from `ClangExecutable`. Both
variables are used to derive certain include and library paths.
`InstalledDir` is a related concept used to derive certain other paths.
`InstalledDir` is weird in the -canonical-prefixes mode: Clang
calls `make_absolute` but does not follow symlinks
(FIXME from 9ade6a9a747c49383ac747bd8ffaa6a0beaef71c).
This causes some search and library paths to be mix-and-matched.
The "Do a PATH lookup, if there are no directory components." logic
makes things worse.
`InstalledDir` is different when you invoke it via `PATH`:
```
% which clang
/usr/bin/clang
% clang -v |& grep InstalledDir
InstalledDir: /usr/bin
% /usr/lib/llvm-16/bin/clang -v |& grep InstalledDir
InstalledDir: /usr/lib/llvm-16/bin
```
I believe `InstalledDir` was a partial solution to
`-no-canonical-prefixes` and should be eventually removed.
This patch removes `SetInstallDir` and relies on Driver::Driver to set
`InstalledDir` to `Dir`. The behavior for regular file `clang` or
`-no-canonical-prefixes` is unchanged.
If a user creates a symlink to the regular file `clang` and uses the
default `-canonical-prefixes`, they now consistently get search and
library paths relative to the regular file `clang`, not mix-and-match
paths.
If a user creates a symlink to the regular file `clang` and replaces
some directorys from the actual installation, they should change the
symlink to a wrapper that calls the underlying clang with
`-no-canonical-prefixes`.
Commit: 0f76d9fb5fbfea92da7647af70d78165c71c0700
https://github.com/llvm/llvm-project/commit/0f76d9fb5fbfea92da7647af70d78165c71c0700
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/tools/clang-installapi/ClangInstallAPI.cpp
Log Message:
-----------
clang-installapi: remove setInstalledDir
Commit: d3173f4ab61c17337908eb7df3f1c515ddcd428c
https://github.com/llvm/llvm-project/commit/d3173f4ab61c17337908eb7df3f1c515ddcd428c
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/test/Shell/Driver/TestHelp.test
M lldb/tools/driver/Driver.cpp
M lldb/tools/driver/Driver.h
Log Message:
-----------
[lldb] Remove -d(ebug) mode from the lldb driver (#83330)
The -d(ebug) option broke 5 years ago when I migrated the driver to
libOption. Since then, we were never check if the option is set. We were
incorrectly toggling the internal variable (m_debug_mode) based on
OPT_no_use_colors instead.
Given that the functionality doesn't seem particularly useful and nobody
noticed it has been broken for 5 years, I'm just removing the flag.
Commit: d7b73c8d012cd19bcbd35a33df9e45e3cdddbfad
https://github.com/llvm/llvm-project/commit/d7b73c8d012cd19bcbd35a33df9e45e3cdddbfad
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOPInstructions.td
Log Message:
-----------
[AMDGPU] Copy WaveSizePredicate into VOP3_Real. NFCI. (#83352)
Commit: 191fd2d9db46ba41308f0b2b342b2dc268d7be6f
https://github.com/llvm/llvm-project/commit/191fd2d9db46ba41308f0b2b342b2dc268d7be6f
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/div_i128.ll
A llvm/test/CodeGen/AMDGPU/rem_i128.ll
Log Message:
-----------
[NFC][AMDGPU] Move the rem tests in `div_i128.ll` into `rem_i128.ll` (#83307)
Commit: 43b7dfcc1dbdf904b1c507e03e5c34d527b5a344
https://github.com/llvm/llvm-project/commit/43b7dfcc1dbdf904b1c507e03e5c34d527b5a344
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/phi-and-select.ll
M llvm/test/Transforms/SROA/phi-gep.ll
Log Message:
-----------
Revert "[SROA] Unfold gep of index phi (#83087)"
This reverts commit 2eb63982e88b9ed8336158d35884b1a1d04a0f78.
This caused verifier error
```
Instruction does not dominate all uses!
```
for some projects using Halide.
The verifier error happens inside `Halide::Internal::CodeGen_LLVM::optimize_module`
and looks like a genuine SROA issue.
Commit: 6bc7c9df7f45642071f2b59a222ba009dc81eb99
https://github.com/llvm/llvm-project/commit/6bc7c9df7f45642071f2b59a222ba009dc81eb99
Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_3d.mlir
Log Message:
-----------
[mlir][sparse] infer returned type for sparse_tensor.to_[buffer] ops (#83343)
The sparse structure buffers might not always be memrefs with rank == 1
with the presence of batch levels.
Commit: 97281708ac176e0464b770686ee314af4da0a3d5
https://github.com/llvm/llvm-project/commit/97281708ac176e0464b770686ee314af4da0a3d5
Author: jimingham <jingham at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/Options.td
Log Message:
-----------
Change `image list -r` so that it actually shows the ref count and whether the image is in the shared cache. (#83341)
The help for the `-r` option to `image list` says:
-r[<width>] ( --ref-count=[<width>] )
Display the reference count if the module is still in the shared module
cache.
but that's not what it actually does. It unconditionally shows the
use_count for all Module shared pointers, regardless of whether they are
still in the shared module cache or whether they are just in the
ModuleCollection and other entities are keeping them alive. That seems
like a more useful behavior, but then it is also useful to know what's
in the shared cache, so I changed this to:
-r[<width>] ( --ref-count=[<width>] )
Display whether the module is still in the the shared module cache
(Y/N), and its shared pointer use_count.
So instead of just `{5}` you will see `{Y 5}` if it is in the shared
cache and `{N 5}` if not.
I didn't add tests for this because I'm not sure how much we want to fix
shared cache behavior in the testsuite.
Commit: f83f7128b3c98e5d1d1995bfa18c43c6b32c18bb
https://github.com/llvm/llvm-project/commit/f83f7128b3c98e5d1d1995bfa18c43c6b32c18bb
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/allocator_common.h
Log Message:
-----------
[scudo][NFC] Explicit type casting to avoid compiler warning (#83355)
Commit: fdf44b37774ede4e15b12508753aca16008b718d
https://github.com/llvm/llvm-project/commit/fdf44b37774ede4e15b12508753aca16008b718d
Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/block.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/block_majors.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_f16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_re_im.mlir
Log Message:
-----------
[mlir][sparse] migrate integration tests to sparse_tensor.print (#83357)
This is first step (of many) cleaning up our tests to use the new and
exciting sparse_tensor.print operation instead of lengthy extraction +
print ops.
Commit: f7a544dd5f515c2f9b312142f573806cc8e64145
https://github.com/llvm/llvm-project/commit/f7a544dd5f515c2f9b312142f573806cc8e64145
Author: Alex Langford <alangford at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/bindings/CMakeLists.txt
Log Message:
-----------
[lldb] Ignore swig warnings about shadowed overloads (#83317)
This specifically addresses the warnings:
$LLVM/lldb/include/lldb/API/SBCommandReturnObject.h:119: Warning 509:
Overloaded method lldb::SBCommandReturnObject::PutCString(char const *)
effectively ignored,
$LLVM/lldb/include/lldb/API/SBCommandReturnObject.h:119: Warning 509: as
it is shadowed by lldb::SBCommandReturnObject::PutCString(char const
*,int).
There is exactly one declaration of SBCommandReturnObject::PutCString.
The second parameter (of type `int`) has default value `-1`. Without
investigating why SWIG believes there are 2 method declarations, I
believe it is safe to ignore this warning. It does not appear to
actually impact functionality in any way.
rdar://117744660
Commit: 1a0986f0f7a18cef78852e91e73ec577ea05d8c4
https://github.com/llvm/llvm-project/commit/1a0986f0f7a18cef78852e91e73ec577ea05d8c4
Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
Log Message:
-----------
[mlir][sparse] code cleanup (using inferred type to construct to_[buf… (#83361)
…fer] op).
Commit: 2679d3793b264b2884cf5c9492e3311f08f41de3
https://github.com/llvm/llvm-project/commit/2679d3793b264b2884cf5c9492e3311f08f41de3
Author: Uday Bondhugula <uday at polymagelabs.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/Affine/Analysis/LoopAnalysis.h
M mlir/lib/Dialect/Affine/Analysis/LoopAnalysis.cpp
A mlir/test/Dialect/Affine/access-analysis.mlir
M mlir/test/lib/Dialect/Affine/CMakeLists.txt
A mlir/test/lib/Dialect/Affine/TestAccessAnalysis.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[MLIR][Affine] Add test pass for affine isContiguousAccess (#82923)
`isContiguousAccess` is an important affine analysis utility but is only
tested very indirectly via passes like vectorization and is not exposed.
Expose it and add a test pass for it that'll make it easier/feasible to
write test cases. This is especially needed since the utility can be
significantly enhanced in power, and we need a test pass to exercise it
directly.
This pass can in the future be used to test the utility of invariant
accesses as well.
Commit: 6a65b44322ee7ba816283c31f8d71559592ca5e7
https://github.com/llvm/llvm-project/commit/6a65b44322ee7ba816283c31f8d71559592ca5e7
Author: Henrik G. Olsson <hnrklssn at gmail.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/global_remove_same.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/global_remove_same.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/global_remove_same.test
M llvm/utils/UpdateTestChecks/common.py
M llvm/utils/update_test_checks.py
Log Message:
-----------
[UTC] Don't leave dangling CHECK-SAME when removing CHECK lines (#82569)
When removing only lines that are global value CHECK lines, a related
CHECK-SAME line could be left dangling without a previous line to belong
to.
Resolves #78517
Commit: 27352e600aab6a50939db77a6eacc94a5057d66f
https://github.com/llvm/llvm-project/commit/27352e600aab6a50939db77a6eacc94a5057d66f
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M libc/src/string/memory_utils/generic/byte_per_byte.h
Log Message:
-----------
[libc] fix typo introduced in inline_bcmp_byte_per_byte (#83356)
My global find+replace was overzealous and broke post submit unit tests.
Link: #83345
Commit: 0fe4b9dae81695dd44c3392e52e1454864a9c001
https://github.com/llvm/llvm-project/commit/0fe4b9dae81695dd44c3392e52e1454864a9c001
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
AMDGPU: Copy a few Predicates from Pseudo to Real (#83365)
WaveSizePredicate for DS_Reaf and FLAT_Real
OtherPredicates for MTBUF_Real
Commit: 5784bf85bc5143266565586ece0113cd773a8616
https://github.com/llvm/llvm-project/commit/5784bf85bc5143266565586ece0113cd773a8616
Author: jimingham <jingham at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/test/API/commands/command/script/TestCommandScript.py
A lldb/test/API/commands/command/script/cmd_file.lldb
Log Message:
-----------
Fix interactive use of "command script add". (#83350)
There was a think-o in a previous commit that made us only able to
define 1 line commands when using command script add interactively.
There was also no test for this feature, so I fixed the think-o and
added a test.
Commit: 273cfd377b96f721c9e280bdc67c6f9e6e2e383b
https://github.com/llvm/llvm-project/commit/273cfd377b96f721c9e280bdc67c6f9e6e2e383b
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
Log Message:
-----------
[X86][NFC] Avoid duplicated code in X86ExpandPseudo.cpp by using macro GET_EGPR_IF_ENABLED
Commit: 265e49d1f41766b66883327a3306b7cd5caeec6e
https://github.com/llvm/llvm-project/commit/265e49d1f41766b66883327a3306b7cd5caeec6e
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
Log Message:
-----------
[X86][NFC] Lowercase first letter of function names in X86ExpandPseudo.cpp
Commit: daf3079222b09683a24dd5b11815f6467ae41b8d
https://github.com/llvm/llvm-project/commit/daf3079222b09683a24dd5b11815f6467ae41b8d
Author: lifengxiang1025 <lifengxiang.1025 at bytedance.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/test/ThinLTO/X86/visibility-elf.ll
M llvm/test/ThinLTO/X86/visibility-macho.ll
M llvm/test/Transforms/FunctionImport/funcimport.ll
M llvm/test/Transforms/Inline/inline_stats.ll
Log Message:
-----------
[ThinLTO] Add metedata 'thinlto_src_module' and 'thinlto_src_file' (#83110)
Originally, when `EnableImportMetadata` enabled, `SourceFileName` will
be recorded as `thinlto_src_module`. Now `SourceFileName` will be
recorded as `thinlto_src_file` and `ModuleIdentifier` will be recorded
as `thinlto_src_module`.
Commit: 7d8b50aaab8e0f935e3cb1f3f397e98b9e3ee241
https://github.com/llvm/llvm-project/commit/7d8b50aaab8e0f935e3cb1f3f397e98b9e3ee241
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M clang/test/CodeGen/fat-lto-objects.c
Log Message:
-----------
[clang][fat-lto-objects] Make module flags match non-FatLTO pipelines (#83159)
In addition to being rather hard to follow, there isn't a good reason
why FatLTO shouldn't just share the same code for setting module flags
for (Thin)LTO. This patch simplifies the logic and makes sure we use set
these flags in a consistent way, independent of FatLTO.
Additionally, we now test that output in the .llvm.lto section actually
matches the output from Full and Thin LTO compilation.
Commit: f0484e08bdcf64106592808e3ca80404937b4657
https://github.com/llvm/llvm-project/commit/f0484e08bdcf64106592808e3ca80404937b4657
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
A llvm/test/tools/llvm-mca/AMDGPU/gfx940.s
Log Message:
-----------
AMDGPU: Add scheduling test for gfx940 (#83220)
I'm not sure the f64 fma cases are correct.
Commit: ffa48f0c945be3c1680b0830d5c0cac146cb954c
https://github.com/llvm/llvm-project/commit/ffa48f0c945be3c1680b0830d5c0cac146cb954c
Author: XinWang10 <108658776+XinWang10 at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrSystem.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86InstrVMX.td
A llvm/test/MC/Disassembler/X86/apx/IgnoreW.txt
M llvm/utils/TableGen/X86DisassemblerTables.cpp
Log Message:
-----------
[X86][MC] Teach disassembler to recognize apx instructions which ignores W bit (#82747)
Extended VMX instructions and 8 bit apx extended instructions don't need
W bit, they are marked as W ignored in spec.
RFC:
https://discourse.llvm.org/t/rfc-design-for-apx-feature-egpr-and-ndd-support/73031/4
Commit: 3f2a9e5910c2f485ce18a6d348af30cd44474b48
https://github.com/llvm/llvm-project/commit/3f2a9e5910c2f485ce18a6d348af30cd44474b48
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT] Sort TakenBranches immediately before use. NFCI (#83333)
Move code that sorts TakenBranches right before the branches are used.
We can populate TakenBranches in pre-CFG post-processing and hence have
to postpone the sorting to a later point in the processing pipeline.
Will add such a pass later. For now it's NFC.
Commit: d7d564b2fccbdf5b124f93c03c36ae8bfd849589
https://github.com/llvm/llvm-project/commit/d7d564b2fccbdf5b124f93c03c36ae8bfd849589
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT] Add BinaryFunction::registerBranch(). NFC (#83337)
Add an external interface to register a branch in a function that is in
disassembled state. Allows to make custom modifications to the
disassembler. E.g., a pre-CFG pass can add an instruction and register a
branch that will later be used during the CFG construction.
Commit: 14d8c4563e045fc3da82cb7268b1066cfd1bb6f0
https://github.com/llvm/llvm-project/commit/14d8c4563e045fc3da82cb7268b1066cfd1bb6f0
Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
Log Message:
-----------
[RISCV] Add more intrinsics into canSplatOperand. (#83106)
This patch adds smin/smax/umin/umax/sadd_sat/ssub_sat/uadd_sat/usub_sat
into canSplatOperand. It can help llvm fold vv instructions with one
splat operand to vx instructions.
Commit: c36cbba6fbe926a4a73f5df318fab991dad7fcc0
https://github.com/llvm/llvm-project/commit/c36cbba6fbe926a4a73f5df318fab991dad7fcc0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/docs/LangRef.rst
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Target/GenericOpcodes.td
Log Message:
-----------
Update IEEE-754 2018 draft references to IEEE-754 2019
Commit: 793300988b7c723bacadce67879ea8bf71c87e70
https://github.com/llvm/llvm-project/commit/793300988b7c723bacadce67879ea8bf71c87e70
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb] Add pexpect to LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS
This executed Alex' idea [1] of adding pexpect to the list of "strict
test requirements" as we're planning to stop vendoring it. This will
ensure all the bots have the package before we toggle the default.
[1] https://github.com/llvm/llvm-project/pull/83191
Commit: 81d94cad6d655d66adb08805a3bbef5a58125999
https://github.com/llvm/llvm-project/commit/81d94cad6d655d66adb08805a3bbef5a58125999
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
Revert "[lldb] Add pexpect to LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS"
This reverts commit 793300988b7c723bacadce67879ea8bf71c87e70 as pexpect
is not available on any of the GreenDragon bots.
Commit: 71c06bbb251371b6285f2a0fa337299bbf96a935
https://github.com/llvm/llvm-project/commit/71c06bbb251371b6285f2a0fa337299bbf96a935
Author: Dávid Ferenc Szabó <30732159+dfszabo at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
A llvm/test/CodeGen/AArch64/GlobalISel/combine-2-icmps-of-0-and-or.mir
Log Message:
-----------
[GlobalISel] Combine (X == 0) & (Y == 0) -> (X | Y) == 0 (#71949)
Also combine (X != 0) | (Y != 0) -> (X | Y) != 0
Commit: 95aab69c109adf29e183090c25dc95c773215746
https://github.com/llvm/llvm-project/commit/95aab69c109adf29e183090c25dc95c773215746
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.rst
M llvm/lib/Support/RISCVISAInfo.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/atomic-rmw.ll
M llvm/test/CodeGen/RISCV/atomic-signext.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/rv32zacas-invalid.s
M llvm/test/MC/RISCV/rv32zacas-valid.s
M llvm/test/MC/RISCV/rv64zacas-valid.s
M llvm/test/MC/RISCV/rvzabha-zacas-valid.s
M llvm/unittests/Support/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Remove experimental from Zacas. (#83195)
Document that we don't use the double compare and swap instructions due
to ABI concerns.
Commit: 230b06b44e6c7f710ae4817e1f34709454f420c5
https://github.com/llvm/llvm-project/commit/230b06b44e6c7f710ae4817e1f34709454f420c5
Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/lib/CodeGen/CGStmtOpenMP.cpp
A clang/test/OpenMP/interop_codegen.cpp
Log Message:
-----------
[OpenMP] Clang Codegen Interop : Accept multiple init (#82604)
Modifying clang/lib/CodeGen/CGStmtOpenMP.cpp to accept multiple `init`
clauses with `interop` directive.
---------
Co-authored-by: Sunil Kuravinakop
Commit: 3246c44789546fa926784911e349202d8fd8e33b
https://github.com/llvm/llvm-project/commit/3246c44789546fa926784911e349202d8fd8e33b
Author: Animesh Kumar <108114634+animeshk-amd at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/OpenMP/scan_ast_print.cpp
Log Message:
-----------
[OpenMP][Clang] Enable inscan modifier for generic datatypes (#82220)
This patch fixes the #67002 ([OpenMP][Clang] Scan Directive not
supported for Generic types). It disables the Sema checks/analysis that
are run on the helper arrays which go into the implementation of the
`omp scan` directive until the template instantiation happens.
Grateful to @alexey-bataev for suggesting these changes.
Commit: 6ee9c8afbcc05f61c64c0938281ff11a5e3221cb
https://github.com/llvm/llvm-project/commit/6ee9c8afbcc05f61c64c0938281ff11a5e3221cb
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
Log Message:
-----------
[RISCV][CostModel] Updates reduction and shuffle cost (#77342)
- Make `andi` cost 1 in SK_Broadcast
- Query the cost of VID_V, VRSUB_VX/VRSUB_VI which would scale with LMUL
Commit: d1a461dbb2293d9258d400b5426f610bb5191228
https://github.com/llvm/llvm-project/commit/d1a461dbb2293d9258d400b5426f610bb5191228
Author: Dominik Wójt <dominik.wojt at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libcxx/cmake/config-ix.cmake
M libcxx/test/std/time/time.clock/time.clock.file/to_from_sys.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.hires/now.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.system/from_time_t.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.system/now.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.system/to_time_t.pass.cpp
M libcxx/test/std/time/time.point/time.point.nonmember/op_-duration.pass.cpp
Log Message:
-----------
[libc++] tests with picolibc: prevent looking for unneeded "rt" library (#82262)
Picolibc does not provide the clock_gettime function nor the "rt" library.
check_library_exists was invalidly detecting the "rt" library due to cmake issue
present, when cross-compiling[1]. This resulted with "chrono.cpp" trying to link
to the "rt" library and following error:
unable to find library from dependent library specifier: rt
[1] https://gitlab.kitware.com/cmake/cmake/-/issues/18121
Commit: 325f51237252e6dab8e4e1ea1fa7acbb4faee1cd
https://github.com/llvm/llvm-project/commit/325f51237252e6dab8e4e1ea1fa7acbb4faee1cd
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M flang/include/flang/Lower/LoweringOptions.def
M flang/test/Driver/flang-experimental-polymorphism-flag.f90
Log Message:
-----------
[flang] Set polymorphic entity lowering option on by default (#83308)
Preliminary patch for https://github.com/llvm/llvm-project/pull/83285 to
turn polymorphism on by default.
Will give a few days warning for people to remove the flag from their
workflow using flang-new.
Also easier to revert if issues with the gfortran test suites.
Commit: ddfc7e225474558613db3604c053fd73f1fdedac
https://github.com/llvm/llvm-project/commit/ddfc7e225474558613db3604c053fd73f1fdedac
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
M clang/test/AST/Interp/arrays.cpp
M clang/test/AST/Interp/c.c
M clang/test/AST/Interp/cxx98.cpp
Log Message:
-----------
[clang][Interp] Emit more dummy pointers in C++ mode
Commit: c757ca74176716ff99f340e82e50f0b6a6c9a7e8
https://github.com/llvm/llvm-project/commit/c757ca74176716ff99f340e82e50f0b6a6c9a7e8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Log Message:
-----------
AMDGPU: Remove dead declaration
Commit: 53bd411e5144937acec45080697957bf5b22de54
https://github.com/llvm/llvm-project/commit/53bd411e5144937acec45080697957bf5b22de54
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/cmake/modules/compiler_features/check_float128.cpp
M libc/docs/dev/code_style.rst
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/type_traits/is_floating_point.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/macros/properties/CMakeLists.txt
R libc/src/__support/macros/properties/float.h
A libc/src/__support/macros/properties/types.h
M libc/src/math/ceilf128.h
M libc/src/math/copysignf128.h
M libc/src/math/fabsf128.h
M libc/src/math/fdimf128.h
M libc/src/math/floorf128.h
M libc/src/math/fmaxf128.h
M libc/src/math/fminf128.h
M libc/src/math/frexpf128.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/ilogbf128.h
M libc/src/math/ldexpf128.h
M libc/src/math/llogb.h
M libc/src/math/llogbf.h
M libc/src/math/llogbf128.h
M libc/src/math/llogbl.h
M libc/src/math/logbf128.h
M libc/src/math/roundf128.h
M libc/src/math/sqrtf128.h
M libc/src/math/truncf128.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][NFC] rename `float.h` macro file to `types.h` (#83190)
Commit: bd595d54219e434acce2c05e97440847d30b5240
https://github.com/llvm/llvm-project/commit/bd595d54219e434acce2c05e97440847d30b5240
Author: kadir çetinkaya <kadircet at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
Log Message:
-----------
[include-cleaner] Generate references from explicit functiontemplate specializations (#83392)
Commit: de5518836e16be3fbfce78394adc96d9bf70f2a5
https://github.com/llvm/llvm-project/commit/de5518836e16be3fbfce78394adc96d9bf70f2a5
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/source/Symbol/Variable.cpp
M lldb/test/API/functionalities/completion/TestCompletion.py
M lldb/test/API/functionalities/completion/main.cpp
Log Message:
-----------
[LLDB] Fix crash when using tab completion on class variables (#83234)
We weren't checking to see if the partial_path was empty before adding
completions and this led to crashes when the class object and a variable
both start with the same substring.
Fixes [#81536](https://github.com/llvm/llvm-project/issues/81536)
---------
Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>
Commit: 03420f570e92ee96133baa8feabc43148e322963
https://github.com/llvm/llvm-project/commit/03420f570e92ee96133baa8feabc43148e322963
Author: Tomas Matheson <tomas.matheson at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMInstrFormats.td
M llvm/lib/Target/ARM/ARMInstrVFP.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
M llvm/test/CodeGen/ARM/cmse-vlldm-no-reorder.mir
M llvm/test/CodeGen/ARM/vlldm-vlstm-uops.mir
M llvm/test/MC/ARM/thumbv8m.s
R llvm/test/MC/ARM/vlstm-vlldm-8.1m.s
R llvm/test/MC/ARM/vlstm-vlldm-8m.s
R llvm/test/MC/ARM/vlstm-vlldm-diag.s
R llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.1.main.txt
R llvm/test/MC/Disassembler/ARM/armv8.1m-vlldm_vlstm-8.main.txt
M llvm/unittests/Target/ARM/MachineInstrTest.cpp
Log Message:
-----------
Revert "[llvm][arm] add T1 and T2 assembly options for vlldm and vlstm (#83116)"
This reverts commit 634b0243b8f7acc85af4f16b70e91d86ded4dc83.
Failing EXPENSIVE_CHECKS builds with "undefined physical register".
Commit: 3196005f6bedbed61a86626a9e4f8fee7437a914
https://github.com/llvm/llvm-project/commit/3196005f6bedbed61a86626a9e4f8fee7437a914
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/CodeGen/PowerPC/crsave.ll
Log Message:
-----------
[NFC][PowerPC] use script to regenerate the CHECK lines
Commit: bfcd3fa825dde06e49235620fd157540c6c1b7d7
https://github.com/llvm/llvm-project/commit/bfcd3fa825dde06e49235620fd157540c6c1b7d7
Author: Alexander Belyaev <32522095+pifon2a at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/test/Dialect/GPU/ops.mlir
M mlir/test/python/dialects/gpu/dialect.py
Log Message:
-----------
[mlir] Add result name for gpu.block_id and gpu.thread_id ops. (#83393)
expand-arith-ops.mlir fails on windows, but this is unrelated to this PR
Commit: afa6b5e5763059c65f21ca2e612df3d02e71ad00
https://github.com/llvm/llvm-project/commit/afa6b5e5763059c65f21ca2e612df3d02e71ad00
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/matmul.mlir
Log Message:
-----------
[mlir][ArmSME] Fix matmul.mlir test after #83213
Commit: 30b63def5096cbee448176cc82ca5f6c995f16c4
https://github.com/llvm/llvm-project/commit/30b63def5096cbee448176cc82ca5f6c995f16c4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/CodeGen/X86/avx512fp16-fp-logic.ll
M llvm/test/CodeGen/X86/pr34605.ll
M llvm/test/CodeGen/X86/pr38803.ll
M llvm/test/CodeGen/X86/pr43509.ll
M llvm/test/CodeGen/X86/pr57340.ll
M llvm/test/CodeGen/X86/pr78897.ll
M llvm/test/CodeGen/X86/select-of-fp-constants.ll
M llvm/test/CodeGen/X86/select-of-half-constants.ll
Log Message:
-----------
[X86] Regenerate tests to add missing avx512 constant comments
Commit: 7ff3f9760da7d7c8fe9209280aefb05168efcf20
https://github.com/llvm/llvm-project/commit/7ff3f9760da7d7c8fe9209280aefb05168efcf20
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
M llvm/test/CodeGen/X86/half.ll
M llvm/test/CodeGen/X86/pr31088.ll
M llvm/test/CodeGen/X86/pr57340.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
Log Message:
-----------
[X86] getFauxShuffleMask - handle insert_vector_elt(bitcast(extract_vector_elt(x))) shuffle patterns
If the bitcast is between types of equal scalar size (i.e. fp<->int bitcasts), then we can safely peek through them
Fixes #83289
Commit: ee297a73b590ee63f0f4ec9f21c5114c106c8467
https://github.com/llvm/llvm-project/commit/ee297a73b590ee63f0f4ec9f21c5114c106c8467
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/test/API/functionalities/completion/TestCompletion.py
Log Message:
-----------
[LLDB] Fix test failure introduced by #83234 (#83406)
Missed adding a . in the test check
Commit: 6cfd3439d4b99be85f647849168e1076a9737170
https://github.com/llvm/llvm-project/commit/6cfd3439d4b99be85f647849168e1076a9737170
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
M llvm/test/CodeGen/AMDGPU/fminnum.ll
M llvm/test/Transforms/InstCombine/maxnum.ll
M llvm/test/Transforms/InstCombine/minnum.ll
M llvm/test/Transforms/InstSimplify/ConstProp/min-max.ll
M llvm/unittests/ADT/APFloatTest.cpp
Log Message:
-----------
APFloat: Fix signed zero handling in minnum/maxnum (#83376)
Follow the 2019 rules and order -0 as less than +0 and +0 as greater
than -0. As currently defined this isn't required for the intrinsics,
but is a better QoI.
This will avoid the workaround in libc added by #83158
Commit: fb3e4e78c65ea22b5eda1b4f7e2b5a5e8c6dd5b4
https://github.com/llvm/llvm-project/commit/fb3e4e78c65ea22b5eda1b4f7e2b5a5e8c6dd5b4
Author: Alexander Belyaev <32522095+pifon2a at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
Log Message:
-----------
[mlir] Remove assert from GPUOps.td. (#83410)
it changes behaviour for debug vs release builds.
Commit: 02bad7a858e763be49c257d957dfd70fab18af9e
https://github.com/llvm/llvm-project/commit/02bad7a858e763be49c257d957dfd70fab18af9e
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/BUFInstructions.td
Log Message:
-----------
[AMDGPU] Simplify !if condition. NFC.
Commit: 72a60e770cee713a47876483798747cb7db58da6
https://github.com/llvm/llvm-project/commit/72a60e770cee713a47876483798747cb7db58da6
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-inline-asm.ll
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-unwind-inline-asm.ll
M llvm/test/CodeGen/AArch64/aarch64-sme2-asm.ll
M llvm/test/CodeGen/AArch64/callbr-asm-outputs-indirect-isel.ll
M llvm/test/CodeGen/AArch64/emit_fneg_with_non_register_operand.mir
M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
Log Message:
-----------
[AArch64][NFC] Use regexes in register class tests
Some MIR and IR tests include checks for register class IDs, which are
unnecessary since the register class name is also checked for and that
doesn't change when new classes are added. This patch replaces the
hard-coded register class ID checks with regexes so they don't have to
be updated every time a new class is added.
Commit: 31295bbe83c3ea9d8a3372efe34342a299d1018a
https://github.com/llvm/llvm-project/commit/31295bbe83c3ea9d8a3372efe34342a299d1018a
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
R llvm/test/tools/llvm-mca/AMDGPU/gfx940.s
Log Message:
-----------
Revert "AMDGPU: Add scheduling test for gfx940 (#83220)"
This reverts commit f0484e08bdcf64106592808e3ca80404937b4657.
Reason: Broke the sanitizer build bots. See the github comments on
https://github.com/llvm/llvm-project/commit/f0484e08bdcf64106592808e3ca80404937b4657
for more information
Commit: 20fe83bc852e15b2928a168635972a5d29689a49
https://github.com/llvm/llvm-project/commit/20fe83bc852e15b2928a168635972a5d29689a49
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/test/MC/AMDGPU/gfx11_unsupported.s
M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s
Log Message:
-----------
[AMDGPU] Add new aliases ds_subrev_rtn_u32/u64 for ds_rsub_rtn_u32/u64 (#83408)
Following on from #83118, this adds aliases for the "rtn" forms of these
instructions. The fact that they were missing from SP3 was an oversight
which has been fixed now.
Commit: c57002db6afcd2474247d066fae71f696ce31947
https://github.com/llvm/llvm-project/commit/c57002db6afcd2474247d066fae71f696ce31947
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/unittests/IR/VerifierTest.cpp
Log Message:
-----------
Verifier: More helpful error message for cross-function references (#82906)
This came up on Discourse.
See:
https://discourse.llvm.org/t/module-verification-failed-instruction-does-not-dominate-all-uses/77207/
Commit: b50b50bfbf55b883dcd290027cfd6ca5904b0495
https://github.com/llvm/llvm-project/commit/b50b50bfbf55b883dcd290027cfd6ca5904b0495
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/CodeGen/X86/cmov-fp.ll
Log Message:
-----------
[X86] cmov-fp.ll - regenerate with common 'NOSSE' prefix to reduce duplication
Commit: 139bcda542514b7a064fe9225014ec4268bb2b65
https://github.com/llvm/llvm-project/commit/139bcda542514b7a064fe9225014ec4268bb2b65
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
M llvm/test/CodeGen/X86/cvt16.ll
M llvm/test/CodeGen/X86/f16c-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/X86/fp-roundeven.ll
M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
M llvm/test/CodeGen/X86/half.ll
M llvm/test/CodeGen/X86/pr31088.ll
M llvm/test/CodeGen/X86/pr57340.ll
M llvm/test/CodeGen/X86/prefer-fpext-splat.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
Log Message:
-----------
[X86] SimplifyDemandedVectorEltsForTargetNode - add basic CVTPH2PS/CVTPS2PH handling
Allows us to peek through the F16 conversion nodes, mainly to simplify shuffles
An easy part of #83414
Commit: 4d525f2b9a42fee4bd3a3c45873fc38b35dd8004
https://github.com/llvm/llvm-project/commit/4d525f2b9a42fee4bd3a3c45873fc38b35dd8004
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[VPlan] Remove unneeded InsertPointGuard (NFCI).
getBlockInMask now simply returns an already computed mask, hence
there's no need to adjust the builder insert point.
Commit: 23f3651c7c5653781249ca0f87809dde76ceeac7
https://github.com/llvm/llvm-project/commit/23f3651c7c5653781249ca0f87809dde76ceeac7
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/src/math/amdgpu/fmax.cpp
M libc/src/math/amdgpu/fmaxf.cpp
M libc/src/math/amdgpu/fmin.cpp
M libc/src/math/amdgpu/fminf.cpp
M libc/src/math/nvptx/fmax.cpp
M libc/src/math/nvptx/fmaxf.cpp
M libc/src/math/nvptx/fmin.cpp
M libc/src/math/nvptx/fminf.cpp
Log Message:
-----------
[libc] Remove workaround for fmin / fmax after being fixed in LLVM (#83421)
Summary:
These hacks can be removed now that
https://github.com/llvm/llvm-project/pull/83376 fixed the underlying
problem.
Commit: dbca8a49b6dbbb79913d6a1bc1d59f4947353e96
https://github.com/llvm/llvm-project/commit/dbca8a49b6dbbb79913d6a1bc1d59f4947353e96
Author: David Green <david.green at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/AArch64/setcc_knownbits.ll
M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
Log Message:
-----------
[DAG] Improve known bits of Zext/Sext loads with range metadata (#80829)
This extends the known bits for extending loads which have range
metadata, handling the range metadata on the original memory type,
extending that to the correct BitWidth.
Commit: 6c2eec5ceadf26ce8d732d718a8906d075a7d6c7
https://github.com/llvm/llvm-project/commit/6c2eec5ceadf26ce8d732d718a8906d075a7d6c7
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir
Log Message:
-----------
AMDGPU/GlobalISel: lane masks merging (#73337)
Basic implementation of lane mask merging for GlobalISel.
Lane masks on GlobalISel are registers with sgpr register class
and S1 LLT - required by machine uniformity analysis.
Implements equivalent of lowerPhis from SILowerI1Copies.cpp in:
patch 1: https://github.com/llvm/llvm-project/pull/75340
patch 2: https://github.com/llvm/llvm-project/pull/75349
patch 3: https://github.com/llvm/llvm-project/pull/80003
patch 4: https://github.com/llvm/llvm-project/pull/78431
patch 5: is in this commit:
AMDGPU/GlobalISelDivergenceLowering: constrain incoming registers
Previously, in PHIs that represent lane masks, incoming registers
taken as-is were not selected as lane masks. Such registers are not
being merged with another lane mask and most often only have S1 LLT.
Implement constrainAsLaneMask by constraining incoming registers
taken as-is with lane mask attributes, essentially transforming them
to lane masks. This is final step in having PHI instructions created
in this pass to be fully instruction-selected.
Commit: 7e88d5176060fa4d86376460db8310083b7c0e2d
https://github.com/llvm/llvm-project/commit/7e88d5176060fa4d86376460db8310083b7c0e2d
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
Log Message:
-----------
[NFC][RemoveDIs] Have CreateNeg only accept iterators (#82999)
Removing debug-intrinsics requires that we always insert with an
iterator, not with an instruction position. To enforce that, we need to
eliminate the `Instruction *` taking functions. It's safe to leave the
insert-at-end-of-block functions as the intention is clear for debug
info purposes (i.e., insert after both instructions and debug-info at
the end of the function).
This patch demonstrates how that needs to happen. At a variety of
call-sites to the `CreateNeg` constructor we need to consider:
* Has this instruction been selected because of the operation it
performs? In that case, just call `getIterator` and pass an iterator in.
* Has this instruction been selected because of it's position? If so, we
need to keep the iterator identifying that position (see the 3rd hunk
changing Reassociate.cpp, although it's coincidentally not debug-info
significant).
This also demonstrates what we'll try and do with the constructor
methods going forwards: have one fully explicit set of parameters
including iterator, and another with default-arguments where the
block-to-insert-into argument defaults to nullptr / no-position,
creating an instruction that hasn't been inserted yet.
Commit: 780d55690ec5d8cd5c0e5fa4af799155d5d00534
https://github.com/llvm/llvm-project/commit/780d55690ec5d8cd5c0e5fa4af799155d5d00534
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/test-setArmVLBits.mlir
Log Message:
-----------
[mlir][ArmSVE] Fix test-setArmVLBits.mlir after #83213
Commit: e08fe575d5953b6ca0d7a578c1afa00247f0a12f
https://github.com/llvm/llvm-project/commit/e08fe575d5953b6ca0d7a578c1afa00247f0a12f
Author: Dani <daniel.kiss at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
Log Message:
-----------
[NFC][ARM][AArch64] Deduplicated code. (#82785)
Add the SignReturnAddressScopeKind to the BranchProtectionInfo class.
Commit: 86f4b4dfde543287c1b29ecae27cc1bee470eebb
https://github.com/llvm/llvm-project/commit/86f4b4dfde543287c1b29ecae27cc1bee470eebb
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/test/SemaOpenACC/no-branch-in-out.c
Log Message:
-----------
[OpenACC] Implement Compute Construct 'goto' in/out logic (#83326)
Compute Constructs do not permit jumping in/out of them, so this patch
implements this for 'goto' as a followup to the other patches that have
done the same thing.
It does this by modifying the JumpDiagnostics to work with this, plus
setting the function to needing jump diagnostics if we discover a goto
or label inside of a Compute Construct.
Commit: 6f7d824b804b272335d55f5b899295db833f3829
https://github.com/llvm/llvm-project/commit/6f7d824b804b272335d55f5b899295db833f3829
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
M clang/test/SemaCXX/warn-bool-conversion.cpp
Log Message:
-----------
[Clang][Sema]: Diagnose lambda to bool implicit casts (#83152)
Adds diagnostics for lambda expressions being cast to boolean values,
which results in the expression always evaluating to true.
Earlier, Clang allowed compilation of such erroneous programs, but now
emits a warning through `-Wpointer-bool-conversion`.
Fixes #82512
Commit: b1c8b9f89cac91db857b9123838ac6b6aeb0ae74
https://github.com/llvm/llvm-project/commit/b1c8b9f89cac91db857b9123838ac6b6aeb0ae74
Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.h
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
Log Message:
-----------
[DirectX][NFC] Leverage LLVM and DirectX intrinsic description in DXIL Op records (#83193)
* Leverage TableGen record descriptions of LLVM or DirectX intrinsics
that can be directly mapped in DXIL Ops TableGen description. As a
result, such DXIL Ops can be succinctly described without duplication.
DXILEmitter backend can derive the properties of DXIL Ops accordingly.
* Ensured that corresponding lit tests pass.
Commit: ec95379df363253ffcbbda21297417e703d5ccca
https://github.com/llvm/llvm-project/commit/ec95379df363253ffcbbda21297417e703d5ccca
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb][test] Clear pexpect found var before checking again
If you run cmake without pexpect installed it errors as expected.
However, if you just `pip install pexpect` and cmake again it still
doesn't find it because it cached the result of the search.
Unset the result before looking for pexpect. So that this works
as expected:
cmake ...
pip3 install pexpect
cmake ...
Commit: aadd7650447b301f8d08fe94a886df05971adecb
https://github.com/llvm/llvm-project/commit/aadd7650447b301f8d08fe94a886df05971adecb
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
Log Message:
-----------
[DebugInfo][RemoveDIs] Prevent duplicate DPValues from being returned by findDbgIntrinsics (#82764)
Fixes the error described here:
https://github.com/llvm/llvm-project/commit/a93a4ec7dd205b965ee5597314bb376520cd736c#commitcomment-138965199
The function `findDbgIntrinsics` is used to return a list of debug
intrinsics and DPValues that use a given value, with the intent that no
duplicates are returned in either list. For DPValues, we've guarded
against DPValues that use a value multiple times as part of a DIArgList,
but we have not guarded against DPValues that use a value multiple times
as separate operands (currently only possible for `dbg_assign`s,
something I missed in my implementation of that type!). This patch adds
a guard, and also updates a test to cover this case.
Commit: 0d572c41f941a4c9b3744a3b849ec35cd26bae2b
https://github.com/llvm/llvm-project/commit/0d572c41f941a4c9b3744a3b849ec35cd26bae2b
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-phi.mir
Log Message:
-----------
AMDGPU\GlobalISel: remove amdgpu-global-isel-risky-select flag (#83426)
AMDGPUInstructionSelector should no longer attempt to select S1 G_PHIs.
Remove MIR test that attempts to inst-select divergent vcc(S1) G_PHI.
Lane mask merging algorithm for GlobalISel is now responsible for
selecting divergent S1 G_PHIs in AMDGPUGlobalISelDivergenceLowering.
Uniform S1 G_PHIs should be lowered to S32 G_PHIs in reg bank select
pass. In summary S1 G_PHIs should not reach AMDGPUInstructionSelector.
Commit: 85dc3dfb1fa2c6720bdfbaaab012ebd96cbe3a58
https://github.com/llvm/llvm-project/commit/85dc3dfb1fa2c6720bdfbaaab012ebd96cbe3a58
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
Log Message:
-----------
[DebugInfo][RemoveDIs] Fix incorrect test expect
Fixes: aadd7650447b
The above commit landed with an incorrect test expect, missing a `metadata`
prefix. This patch adds the expected prefix to the test.
Commit: a872a35251b833aaddec2172710ff234236afbd8
https://github.com/llvm/llvm-project/commit/a872a35251b833aaddec2172710ff234236afbd8
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/IR/Instructions.cpp
Log Message:
-----------
[NFC][RemoveDIs] Add bodies for inst-constructors taking iterators
In a previous commit I added declarations for all these functions, but
forgot to add bodies for them (as nothing uses them yet). These
iterator-taking constructors are necessary for the future where we only
use iterators for insertion, preserving some debug-info properties.
Also adds two extra declarations I missed in 76dd4bc036f
Commit: 1e6627ecef42fa8e36dae71589fc17d3adbd18aa
https://github.com/llvm/llvm-project/commit/1e6627ecef42fa8e36dae71589fc17d3adbd18aa
Author: RicoAfoat <51285519+RicoAfoat at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
A llvm/test/CodeGen/X86/inline-asm-memop.ll
Log Message:
-----------
[X86] matchAddressRecursively - ensure dead nodes are replaced before matching the index register (#82881)
Fixes #82431 - see #82431 for more information.
Commit: 4f132dca711f4b425f9d370f5d59efb766b8bffa
https://github.com/llvm/llvm-project/commit/4f132dca711f4b425f9d370f5d59efb766b8bffa
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/test/CodeGen/RISCV/machine-combiner.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll
Log Message:
-----------
[RISCV] Enable PostRAScheduler for SiFive7 (#83166)
Based on numbers collected in our downstream toolchain.
Commit: 99824cf7967922bdd9ac895c949f330bb8d6b85a
https://github.com/llvm/llvm-project/commit/99824cf7967922bdd9ac895c949f330bb8d6b85a
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/test/API/macosx/nslog/TestDarwinNSLogOutput.py
M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py
Log Message:
-----------
[lldb][test] Use pexpect spawn instead of spawnu
This is marked deprecated from at least 4.6 onward:
Deprecated: pass encoding to spawn() instead.
Commit: e60ebbd0001f2e66cb9f76874ddd69290e2086c1
https://github.com/llvm/llvm-project/commit/e60ebbd0001f2e66cb9f76874ddd69290e2086c1
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaChecking.cpp
A clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/lerp.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
Log Message:
-----------
[HLSL] implementation of lerp intrinsic (#83077)
This is the start of implementing the lerp intrinsic
https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-lerp
Builtins.td - defines the builtin
hlsl_intrinsics.h - defines the lerp api
DiagnosticSemaKinds.td - needed a new error to be inclusive for more
than two operands.
CGBuiltin.cpp - add the lerp intrinsic lowering
SemaChecking.cpp - type checks for lerp builtin
IntrinsicsDirectX.td - define the lerp intrinsic
this change implements the first half of #70102
Co-authored-by: Xiang Li <python3kgae at outlook.com>
Commit: 37dca605c9bd41732da010ee97ed15ad9585a37d
https://github.com/llvm/llvm-project/commit/37dca605c9bd41732da010ee97ed15ad9585a37d
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libcxx/include/__assert
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__charconv/from_chars_integral.h
M libcxx/include/__charconv/to_chars_base_10.h
M libcxx/include/__charconv/to_chars_integral.h
M libcxx/include/__charconv/traits.h
M libcxx/include/__config
M libcxx/include/__format/formatter_floating_point.h
M libcxx/include/__numeric/saturation_arithmetic.h
M libcxx/include/__random/negative_binomial_distribution.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__string/char_traits.h
M libcxx/include/algorithm
M libcxx/include/any
M libcxx/include/array
M libcxx/include/atomic
M libcxx/include/barrier
M libcxx/include/bit
M libcxx/include/bitset
M libcxx/include/cassert
M libcxx/include/ccomplex
M libcxx/include/cctype
M libcxx/include/cerrno
M libcxx/include/cfenv
M libcxx/include/cfloat
M libcxx/include/charconv
M libcxx/include/chrono
M libcxx/include/cinttypes
M libcxx/include/ciso646
M libcxx/include/climits
M libcxx/include/clocale
M libcxx/include/cmath
M libcxx/include/codecvt
M libcxx/include/compare
M libcxx/include/complex
M libcxx/include/concepts
M libcxx/include/condition_variable
M libcxx/include/coroutine
M libcxx/include/csetjmp
M libcxx/include/csignal
M libcxx/include/cstdarg
M libcxx/include/cstdbool
M libcxx/include/cstddef
M libcxx/include/cstdint
M libcxx/include/cstdio
M libcxx/include/cstdlib
M libcxx/include/cstring
M libcxx/include/ctgmath
M libcxx/include/ctime
M libcxx/include/cuchar
M libcxx/include/cwchar
M libcxx/include/cwctype
M libcxx/include/deque
M libcxx/include/exception
M libcxx/include/execution
M libcxx/include/expected
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/vec_ext.h
M libcxx/include/experimental/iterator
M libcxx/include/experimental/propagate_const
M libcxx/include/experimental/simd
M libcxx/include/experimental/type_traits
M libcxx/include/experimental/utility
M libcxx/include/ext/hash_map
M libcxx/include/ext/hash_set
M libcxx/include/filesystem
M libcxx/include/format
M libcxx/include/forward_list
M libcxx/include/fstream
M libcxx/include/functional
M libcxx/include/future
M libcxx/include/initializer_list
M libcxx/include/iomanip
M libcxx/include/ios
M libcxx/include/iosfwd
M libcxx/include/iostream
M libcxx/include/istream
M libcxx/include/iterator
M libcxx/include/latch
M libcxx/include/limits
M libcxx/include/list
M libcxx/include/locale
M libcxx/include/map
M libcxx/include/memory
M libcxx/include/mutex
M libcxx/include/new
M libcxx/include/numbers
M libcxx/include/numeric
M libcxx/include/optional
M libcxx/include/ostream
M libcxx/include/print
M libcxx/include/queue
M libcxx/include/random
M libcxx/include/ranges
M libcxx/include/ratio
M libcxx/include/regex
M libcxx/include/scoped_allocator
M libcxx/include/semaphore
M libcxx/include/set
M libcxx/include/shared_mutex
M libcxx/include/span
M libcxx/include/sstream
M libcxx/include/stack
M libcxx/include/stdexcept
M libcxx/include/stop_token
M libcxx/include/streambuf
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/strstream
M libcxx/include/system_error
M libcxx/include/thread
M libcxx/include/tuple
M libcxx/include/type_traits
M libcxx/include/typeindex
M libcxx/include/typeinfo
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/utility
M libcxx/include/valarray
M libcxx/include/variant
M libcxx/include/vector
M libcxx/include/version
M libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
R libcxx/test/libcxx/assertions/headers_declare_verbose_abort.gen.py
M libcxx/test/libcxx/assertions/modes/none.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Clean up includes of <__assert> (#80091)
Originally, we used __libcpp_verbose_abort to handle assertion failures.
That function was declared from all public headers. Since we don't use
that mechanism anymore, we don't need to declare __libcpp_verbose_abort
from all public headers, and we can clean up a lot of unnecessary
includes.
This patch also moves the definition of the various assertion categories
to the <__assert> header, since we now rely on regular IWYU for these
assertion macros.
rdar://105510916
Commit: 92e5f13ad19ace968309e31146e00e76b87c5a2d
https://github.com/llvm/llvm-project/commit/92e5f13ad19ace968309e31146e00e76b87c5a2d
Author: Tuan Chuong Goh <chuong.goh at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/shufflevector.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors (#83038)
Commit: 80a328b0118faa691137d6325b0eed4199060adc
https://github.com/llvm/llvm-project/commit/80a328b0118faa691137d6325b0eed4199060adc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/horizontal-reduce-umax.ll
M llvm/test/CodeGen/X86/horizontal-reduce-umin.ll
M llvm/test/CodeGen/X86/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/X86/test-shrink-bug.ll
M llvm/test/CodeGen/X86/urem-seteq-vec-nonzero.ll
M llvm/test/CodeGen/X86/urem-seteq-vec-tautological.ll
M llvm/test/CodeGen/X86/vector-reduce-umax.ll
M llvm/test/CodeGen/X86/vector-reduce-umin.ll
M llvm/test/CodeGen/X86/vselect.ll
Log Message:
-----------
[X86] SimplifyDemandedVectorEltsForTargetNode - add basic PCMPEQ/PCMPGT handling
Commit: 5bd01ac822d1d700623790ef146fb78216576616
https://github.com/llvm/llvm-project/commit/5bd01ac822d1d700623790ef146fb78216576616
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/SMEInstrFormats.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-declare.mir
M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-value.mir
M llvm/test/CodeGen/AArch64/live-debugvalues-sve.mir
M llvm/test/CodeGen/AArch64/sve-localstackalloc.mir
M llvm/test/CodeGen/AArch64/sve-pfalse-machine-cse.mir
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilege.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilegt.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehi.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehs.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilele.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelo.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilels.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelt.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilerw.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilewr.mir
M llvm/test/CodeGen/AArch64/sve2p1_copy_pnr.mir
Log Message:
-----------
[AArch64] Re-enable rematerialization for streaming-mode-changing functions. (#83235)
We can add implicit defs/uses of the 'VG' register to the instructions
to prevent the register allocator from rematerializing values in between
streaming-mode changes, as the def/use of VG will further nail down the
ordering that comes out of ISel. This avoids the heavy-handed approach
to prevent any kind of rematerialization.
While we could add 'VG' as a Use to all SVE instructions, we only really
need to do this for instructions that are rematerializable, as the
smstart/smstop instructions and pseudos act as scheduling barriers which
is sufficient to prevent other instructions from being scheduled in
between the streaming-mode-changing call sequence. However, we may
revisit this in the future.
Commit: c66f2d0c4a46ba66fb98a2cab4e63ad90888a261
https://github.com/llvm/llvm-project/commit/c66f2d0c4a46ba66fb98a2cab4e63ad90888a261
Author: Devajith Valaparambil Sreeramaswamy <devajithvs at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
M mlir/include/mlir/Query/Matcher/MatchersInternal.h
M mlir/lib/Query/Matcher/Diagnostics.cpp
M mlir/lib/Query/Matcher/Parser.cpp
M mlir/lib/Query/Matcher/Parser.h
M mlir/lib/Query/Matcher/RegistryManager.cpp
M mlir/lib/Query/Matcher/RegistryManager.h
M mlir/lib/Query/Query.cpp
A mlir/test/mlir-query/function-extraction.mlir
Log Message:
-----------
[mlir-query] Add function extraction feature to mlir-query
This enables specifying the extract modifier to extract all matches into
a function. This currently does this very directly by converting all
operands to function arguments (ones due to results of other matched ops
are dropped) and all results as return values.
Differential Revision: https://reviews.llvm.org/D158693
Commit: 58e476f757775313d8b2649dedb9a7c5d30d8e19
https://github.com/llvm/llvm-project/commit/58e476f757775313d8b2649dedb9a7c5d30d8e19
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libcxx/include/libcxx.imp
M libcxx/utils/generate_iwyu_mapping.py
Log Message:
-----------
[libc++] Map forward declaration headers for iostreams to <iosfwd> (#83327)
This seems more appropriate than mapping them to the headers that
contain actual definitions.
Commit: 962f3e4e5bbdbfacb8c857a15013dae09bc49956
https://github.com/llvm/llvm-project/commit/962f3e4e5bbdbfacb8c857a15013dae09bc49956
Author: Sumanth Gundapaneni <sgundapa at quicinc.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
Log Message:
-----------
[Hexagon] Use the correct call to detect debug instructions (#83373)
Commit: 147dc81c1d220a54e9e7d0d4dba7f4b69708ffb7
https://github.com/llvm/llvm-project/commit/147dc81c1d220a54e9e7d0d4dba7f4b69708ffb7
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParser.def
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/ARM/ARM.td
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[ARM][AArch64] Enable FEAT_FHM for Arm Neoverse N2 (#82613)
Correct an issue with Arm Neoverse N2 after it was
changed to a v9a core in change
f576cbe44eabb8a5ac0af817424a0d1e7c8fbf85:
* FEAT_FHM should be enabled for this core.
Commit: 310ed337092d6afc78594e1d8e32e6f44fff5568
https://github.com/llvm/llvm-project/commit/310ed337092d6afc78594e1d8e32e6f44fff5568
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Support/Path.cpp
Log Message:
-----------
[Support] Use all_read | all_write for createTemporaryFile (#83360)
In a04879ce7dd6, dsymutil switched from using TempFile to
createTemporaryFile. This caused a regression because the two use
different permissions:
- TempFile opens the file as all_read | all_write
- createTemporaryFile opens the file as owner_read | owner_write
The latter turns out to be problematic for dsymutil because it either
promotes the temporary to a proper output file, or it would pass it to
`lipo` to create a universal binary and `lipo` preserves the permissions
of the input files. Either way, this caused issues when the build system
was run as a different user than the one ingesting the resulting
binaries.
I did some version control archeology and I couldn't find evidence that
these permissions were chosen purposely. Both could be considered
reasonable default.
This patch changes the permissions to `all read | all write` to make the
two consistent and match the one currently used by the higher level
abstraction (TempFile).
rdar://123722848
Commit: 5a0bd2a36591fe48c24de220a5f8ddef9ce6f0b1
https://github.com/llvm/llvm-project/commit/5a0bd2a36591fe48c24de220a5f8ddef9ce6f0b1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb] Add pexpect to LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS
This executed Alex' idea [1] of adding pexpect to the list of "strict
test requirements" as we're planning to stop vendoring it. This will
ensure all the bots have the package before we toggle the default.
[1] https://github.com/llvm/llvm-project/pull/83191
Commit: a344db793aca6881379c7c83f5112d2870dbf958
https://github.com/llvm/llvm-project/commit/a344db793aca6881379c7c83f5112d2870dbf958
Author: chuongg3 <chuong.goh at arm.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
M llvm/test/CodeGen/AArch64/shufflevector.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors (#83038)
Legalize Smaller/Larger than legal vectors with i8 and i16 element
sizes.
Vectors with elements smaller than i8 will get widened to i8 elements.
Commit: 9491aecd235da9674150fe56bd0f29c3a22472c4
https://github.com/llvm/llvm-project/commit/9491aecd235da9674150fe56bd0f29c3a22472c4
Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/utils/TableGen/CodeGenTarget.cpp
Log Message:
-----------
[TableGen][CodeGenTarget] Add support for v3i8 and v3i1 MVTs. [NFCI] (#83140)
Commit: 3fda50d3915b2163a54a37b602be7783a89dd808
https://github.com/llvm/llvm-project/commit/3fda50d3915b2163a54a37b602be7783a89dd808
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Transforms/CFGuard/CFGuard.cpp
M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
M llvm/lib/Transforms/Utils/LowerInvoke.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/lib/Transforms/Utils/LowerSwitch.cpp
M llvm/lib/Transforms/Utils/MatrixUtils.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
M llvm/tools/bugpoint/Miscompilation.cpp
Log Message:
-----------
[NFC][RemoveDIs] Bulk update utilities to insert with iterators
As part of the RemoveDIs project we need LLVM to insert instructions using
iterators wherever possible, so that the iterators can carry a bit of
debug-info. This commit implements some of that by updating the contents of
llvm/lib/Transforms/Utils to always use iterator-versions of instruction
constructors.
There are two general flavours of update:
* Almost all call-sites just call getIterator on an instruction
* Several make use of an existing iterator (scenarios where the code is
actually significant for debug-info)
The underlying logic is that any call to getFirstInsertionPt or similar
APIs that identify the start of a block need to have that iterator passed
directly to the insertion function, without being converted to a bare
Instruction pointer along the way.
I've also switched DemotePHIToStack to take an optional iterator: it needs
to take an iterator, and having a no-insert-location behaviour appears to
be important. The constructors for ICmpInst and FCmpInst have been updated
too. They're the only instructions that take block _references_ rather than
pointers for certain calls, and a future patch is going to make use of
default-null block insertion locations.
All of this should be NFC.
Commit: c4c35d9522d19a0a511ee2cc011a21661e69f3c0
https://github.com/llvm/llvm-project/commit/c4c35d9522d19a0a511ee2cc011a21661e69f3c0
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
A clang/test/SemaCXX/restrict-this.cpp
Log Message:
-----------
[Clang] [Sema] Handle `this` in `__restrict`-qualified member functions properly (#83187)
When resolving the type of `this` inside a member function, we were
attaching all qualifiers present on the member function to the class
type and then making it a pointer; however, `__restrict`, unlike `const`
and `volatile`, needs to be attached to the pointer type rather than the
pointee type.
This fixes #82941, #42411, and #18121.
Commit: 6c7805d5d186a6d1263f90b8033ad85e2d2633d7
https://github.com/llvm/llvm-project/commit/6c7805d5d186a6d1263f90b8033ad85e2d2633d7
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Transforms/CFGuard/CFGuard.cpp
M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
M llvm/lib/Transforms/Utils/LowerInvoke.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/lib/Transforms/Utils/LowerSwitch.cpp
M llvm/lib/Transforms/Utils/MatrixUtils.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
M llvm/tools/bugpoint/Miscompilation.cpp
Log Message:
-----------
Revert "[NFC][RemoveDIs] Bulk update utilities to insert with iterators"
This reverts commit 3fda50d3915b2163a54a37b602be7783a89dd808.
Apparently I've missed a hunk while staging this; will back out for now.
Picked up here: https://lab.llvm.org/buildbot/#/builders/139/builds/60429/steps/6/logs/stdio
Commit: 6afda56faa6260cff4e6e9264226737d96d952c1
https://github.com/llvm/llvm-project/commit/6afda56faa6260cff4e6e9264226737d96d952c1
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h
Log Message:
-----------
[RISCV] Store RVC and TSO ELF flags explicitly in RISCVTargetStreamer. NFCI (#83344)
Instead of caching STI in the RISCVELFTargetStreamer, store the two
flags we need from it.
My goal is to allow RISCVAsmPrinter to override these flags using IR
module metadata for LTO. So they need to be separated from the STI used
to construct the TargetStreamer.
This patch should be NFC as long as no one is changing the contents of
the STI that was used to construct the TargetStreamer between the
constructor and the use of the flags.
Commit: 2d61979137cfea8f016e618dd17f5be8e7d865bf
https://github.com/llvm/llvm-project/commit/2d61979137cfea8f016e618dd17f5be8e7d865bf
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/test/SemaOpenACC/no-branch-in-out.cpp
Log Message:
-----------
[OpenACC] Add dependent test for break/continue compute construct diag
I discovered while debugging something else that this could possibly
cause an assert if I'm not careful with followup patches, so add the
tests.
Commit: 0699749cb45db77e8393f198b1837945a958aebf
https://github.com/llvm/llvm-project/commit/0699749cb45db77e8393f198b1837945a958aebf
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M flang/runtime/Float128Math/CMakeLists.txt
M flang/runtime/Float128Math/acos.cpp
M flang/runtime/Float128Math/acosh.cpp
M flang/runtime/Float128Math/asin.cpp
M flang/runtime/Float128Math/asinh.cpp
M flang/runtime/Float128Math/atan.cpp
M flang/runtime/Float128Math/atan2.cpp
M flang/runtime/Float128Math/atanh.cpp
M flang/runtime/Float128Math/cabs.cpp
M flang/runtime/Float128Math/ceil.cpp
M flang/runtime/Float128Math/cos.cpp
M flang/runtime/Float128Math/cosh.cpp
M flang/runtime/Float128Math/erf.cpp
M flang/runtime/Float128Math/erfc.cpp
M flang/runtime/Float128Math/exp.cpp
A flang/runtime/Float128Math/exponent.cpp
M flang/runtime/Float128Math/floor.cpp
A flang/runtime/Float128Math/fraction.cpp
M flang/runtime/Float128Math/hypot.cpp
M flang/runtime/Float128Math/j0.cpp
M flang/runtime/Float128Math/j1.cpp
M flang/runtime/Float128Math/jn.cpp
M flang/runtime/Float128Math/lgamma.cpp
M flang/runtime/Float128Math/llround.cpp
M flang/runtime/Float128Math/log.cpp
M flang/runtime/Float128Math/log10.cpp
M flang/runtime/Float128Math/lround.cpp
M flang/runtime/Float128Math/math-entries.h
A flang/runtime/Float128Math/mod-real.cpp
A flang/runtime/Float128Math/modulo-real.cpp
A flang/runtime/Float128Math/nearest.cpp
M flang/runtime/Float128Math/norm2.cpp
A flang/runtime/Float128Math/numeric-template-specs.h
M flang/runtime/Float128Math/pow.cpp
M flang/runtime/Float128Math/round.cpp
A flang/runtime/Float128Math/rrspacing.cpp
A flang/runtime/Float128Math/scale.cpp
A flang/runtime/Float128Math/set-exponent.cpp
M flang/runtime/Float128Math/sin.cpp
M flang/runtime/Float128Math/sinh.cpp
A flang/runtime/Float128Math/spacing.cpp
M flang/runtime/Float128Math/sqrt.cpp
M flang/runtime/Float128Math/tan.cpp
M flang/runtime/Float128Math/tanh.cpp
M flang/runtime/Float128Math/tgamma.cpp
M flang/runtime/Float128Math/trunc.cpp
M flang/runtime/Float128Math/y0.cpp
M flang/runtime/Float128Math/y1.cpp
M flang/runtime/Float128Math/yn.cpp
M flang/runtime/extrema.cpp
A flang/runtime/numeric-templates.h
M flang/runtime/numeric.cpp
M flang/runtime/reduction-templates.h
Log Message:
-----------
[flang][runtime] Moved support for some REAL(16) intrinsics to Float128Math. (#83383)
This adds support for 128-bit float versions of SCALE, NEAREST, MOD,
MODULO, SET_EXPONENT, EXPONENT, FRACTION, SPACING and RRSPACING.
Commit: 0869ffa6bd6e9562b35bc93e48207d11261d67df
https://github.com/llvm/llvm-project/commit/0869ffa6bd6e9562b35bc93e48207d11261d67df
Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/test/OpenMP/interop_codegen.cpp
Log Message:
-----------
[OpenMP] Clang Codegen Interop : Accept multiple use & destroy clauses (#83398)
Modified clang/lib/CodeGen/CGStmtOpenMP.cpp to accept multiple use &
destroy clauses with interop directive.
Modified clang/test/OpenMP/interop_codegen.cpp to check for the changes.
Co-authored-by: Sunil Kuravinakop <kuravina at pe28vega.us.cray.com>
Commit: a6d9b7ba2722953960b83fbacda1757349f00156
https://github.com/llvm/llvm-project/commit/a6d9b7ba2722953960b83fbacda1757349f00156
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/cmake/modules/AddLLDB.cmake
Log Message:
-----------
[lldb] Don't cache lldb_find_python_module result
Don't cache lldb_find_python_module result as that requires you to do a
clean build after installing the dependency.
Commit: 3e0425c76c894c2ed538978140f59bd4a14acabd
https://github.com/llvm/llvm-project/commit/3e0425c76c894c2ed538978140f59bd4a14acabd
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
Log Message:
-----------
[SLP][NFC]Add a test showing incorrect transformation, NFC.
Commit: be8f987d8cddd2d1df5ed1afff64fd9a730ec97a
https://github.com/llvm/llvm-project/commit/be8f987d8cddd2d1df5ed1afff64fd9a730ec97a
Author: Jason Eckhardt <jeckhardt at nvidia.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/utils/TableGen/SearchableTableEmitter.cpp
Log Message:
-----------
[TableGen] Use consistent field kind checking in getNumericKey. (#83284)
Fields GenericField::IsInstruction and GenericField::Enum can be
simultaneously active for a given field. Methods compareBy and
primaryRepresentation both order the checking of IsInstruction before
GenericField::Enum. Do the same in getNumericKey for consistency.
Commit: 856ce495e52b8ea8855d7f34d84346c82b1fddc2
https://github.com/llvm/llvm-project/commit/856ce495e52b8ea8855d7f34d84346c82b1fddc2
Author: Kalesh Singh <kaleshsingh96 at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/test/Driver/android-link.cpp
Log Message:
-----------
ANDROID: AArch64: Change default max-page-size from 4k to 16k (#70251)
File size increase were found negligible from sparseness and zero
block compression in f2fs and ext4 (supported filesystems for
Android's userdata partition).
Signed-off-by: Kalesh Singh <kaleshsingh at google.com>
Co-authored-by: Kalesh Singh <kaleshsingh at google.com>
Commit: 489eadd142e858dc28e375320da774eba53d21bb
https://github.com/llvm/llvm-project/commit/489eadd142e858dc28e375320da774eba53d21bb
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGenHLSL/builtins/dot.hlsl
A clang/test/CodeGenHLSL/builtins/frac.hlsl
M clang/test/CodeGenHLSL/builtins/lerp.hlsl
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
M llvm/include/llvm/IR/IntrinsicsDirectX.td
Log Message:
-----------
[HLSL] Implementation of the frac intrinsic (#83315)
This change implements the frontend for #70099
Builtins.td - add the frac builtin
CGBuiltin.cpp - add the builtin to DirectX intrinsic mapping
hlsl_intrinsics.h - add the frac api
SemaChecking.cpp - add type checks for builtin
IntrinsicsDirectX.td - add the frac intrinsic
The backend changes for this are going to be very simple:
https://github.com/llvm/llvm-project/commit/f309a0eb558b65dfaff0d1d23b7d07fb07e27121
They were not included because llvm/lib/Target/DirectX/DXIL.td is going
through a major refactor.
Commit: c9b1f1c337ce7c12664b670c0ba1022e5d5b8001
https://github.com/llvm/llvm-project/commit/c9b1f1c337ce7c12664b670c0ba1022e5d5b8001
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
Log Message:
-----------
[HLSL] standardize builtin unit tests (#83340)
This PR brings best practices mentioned to me on other prs and adds them
to the existing builtin tests.
Note to reviewers: I put this up in two commits because the clang-format
changes is making it hard to tell what actually changed.
use the first commit to check for correctness.
Commit: de8e2b7b8649ffa516d357a646eacbce8e69e39e
https://github.com/llvm/llvm-project/commit/de8e2b7b8649ffa516d357a646eacbce8e69e39e
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/Transforms/SROA/vector-promotion.ll
Log Message:
-----------
[test][SROA] Regenerate vector-promotion.ll
Commit: 1ca65dd74a4370e5788c69e939106b53da13dbf6
https://github.com/llvm/llvm-project/commit/1ca65dd74a4370e5788c69e939106b53da13dbf6
Author: Yinying Li <107574043+yinying-lisa-li at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
Log Message:
-----------
[mlir][sparse] Migration to sparse_tensor.print (#83377)
Continuous efforts following #83357.
Commit: 45d82f33af9334907dde39cc69921c679299114e
https://github.com/llvm/llvm-project/commit/45d82f33af9334907dde39cc69921c679299114e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
Log Message:
-----------
[SLP]Fix miscompilation, cause by incorrect final node reordering.
Need to use the regular reordering from the correct node for the final
store/insertelement node to avoid miscommilation.
Commit: 73aab2f69773324ef0250f093bd4d782beee921a
https://github.com/llvm/llvm-project/commit/73aab2f69773324ef0250f093bd4d782beee921a
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/benchmarks/automemcpy/lib/CMakeLists.txt
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/cmake/modules/compiler_features/check_fixed_point.cpp
M libc/fuzzing/stdio/printf_fixed_conv_fuzz.cpp
M libc/include/llvm-libc-types/float128.h
M libc/src/__support/CPP/limits.h
M libc/src/__support/CPP/type_traits/is_fixed_point.h
M libc/src/__support/HashTable/table.h
M libc/src/__support/RPC/rpc_client.h
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/__support/fixed_point/fx_rep.h
M libc/src/__support/fixed_point/sqrt.h
M libc/src/__support/macros/properties/types.h
M libc/src/stdfix/abshk.h
M libc/src/stdfix/abshr.h
M libc/src/stdfix/absk.h
M libc/src/stdfix/abslk.h
M libc/src/stdfix/abslr.h
M libc/src/stdfix/absr.h
M libc/src/stdfix/roundhk.h
M libc/src/stdfix/roundhr.h
M libc/src/stdfix/roundk.h
M libc/src/stdfix/roundlk.h
M libc/src/stdfix/roundlr.h
M libc/src/stdfix/roundr.h
M libc/src/stdfix/rounduhk.h
M libc/src/stdfix/rounduhr.h
M libc/src/stdfix/rounduk.h
M libc/src/stdfix/roundulk.h
M libc/src/stdfix/roundulr.h
M libc/src/stdfix/roundur.h
M libc/src/stdfix/sqrtuhk.h
M libc/src/stdfix/sqrtuhr.h
M libc/src/stdfix/sqrtuk.h
M libc/src/stdfix/sqrtulr.h
M libc/src/stdfix/sqrtur.h
M libc/src/stdio/printf_core/fixed_converter.h
M libc/src/stdio/printf_core/parser.h
M libc/src/sys/epoll/epoll_pwait.h
M libc/src/sys/epoll/epoll_pwait2.h
M libc/src/sys/epoll/epoll_wait.h
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/LibcTest.cpp
M libc/test/include/stdbit_test.cpp
M libc/test/include/stdckdint_test.cpp
M libc/test/include/sys/queue_test.cpp
M libc/test/integration/startup/CMakeLists.txt
M libc/test/integration/startup/gpu/rpc_interface_test.cpp
M libc/test/integration/startup/gpu/rpc_stream_test.cpp
M libc/test/integration/startup/gpu/rpc_test.cpp
M libc/test/src/__support/fixed_point/fx_bits_test.cpp
M libc/test/src/compiler/stack_chk_guard_test.cpp
M libc/test/src/math/differential_testing/CMakeLists.txt
M libc/utils/LibcTableGenUtil/CMakeLists.txt
M libc/utils/gpu/loader/Loader.h
Log Message:
-----------
[libc] Revert https://github.com/llvm/llvm-project/pull/83199 since it broke Fuchsia. (#83374)
With some header fix forward for GPU builds.
Commit: 525fe4492bbecf357d3580d879f2092bf99c12a2
https://github.com/llvm/llvm-project/commit/525fe4492bbecf357d3580d879f2092bf99c12a2
Author: Danny Mösch <danny.moesch at icloud.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
Log Message:
-----------
[clang-tidy] Add new check `modernize-use-designated-initializers` (#80541)
Commit: 920094ea3b84a9f99f3e4d014c3eac062a617efe
https://github.com/llvm/llvm-project/commit/920094ea3b84a9f99f3e4d014c3eac062a617efe
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/utils/BUILD.gn
Log Message:
-----------
[gn build] Port 525fe4492bbe
Commit: 22f5e30c1798280c7476c0374280342b48880bb5
https://github.com/llvm/llvm-project/commit/22f5e30c1798280c7476c0374280342b48880bb5
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/macros/properties/types.h
Log Message:
-----------
[libc][NFC] Rename `LIBC_COMPILER_HAS_C23_FLOAT16` to `LIBC_TYPES_HAS_FLOAT16` (#83396)
Umbrella bug #83182
Commit: cff36bb198759c4fe557adc594eabc097cf7d565
https://github.com/llvm/llvm-project/commit/cff36bb198759c4fe557adc594eabc097cf7d565
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/ADT/SmallString.h
M llvm/unittests/ADT/SmallStringTest.cpp
Log Message:
-----------
[ADT] Add std::string_view conversion to SmallString (#83397)
This patch adds a std::string_view conversion to SmallString which we've
recently found a use for downstream in a project that is using c++
standard library IO.
Commit: 21be2fbd17f9ff6f3f04e0ababc91c9cdd5aed85
https://github.com/llvm/llvm-project/commit/21be2fbd17f9ff6f3f04e0ababc91c9cdd5aed85
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Fix buffer overflow in modernize-use-designated-initializers
Instance of DenseMap were copied into local variable,
and as a result reference to string stored in that local
variable were returned from function. At the end fix-it
were applied with already destroyed string causing some
non utf-8 characters to be printed.
Related to #80541
Commit: 75fb825bccaa1e0f1ca9f76f9c72434a26d9966a
https://github.com/llvm/llvm-project/commit/75fb825bccaa1e0f1ca9f76f9c72434a26d9966a
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/cmake/modules/CheckCompilerFeatures.cmake
M libc/cmake/modules/compiler_features/check_float128.cpp
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/dev/code_style.rst
M libc/spec/stdc.td
M libc/src/__support/CPP/type_traits/is_floating_point.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/macros/properties/types.h
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/__support/uint_test.cpp
Log Message:
-----------
[libc][NFC] Rename `LIBC_COMPILER_HAS_FLOAT128` to `LIBC_TYPES_HAS_FLOAT128` (#83395)
Umbrella bug #83182
Commit: 5225901ecd53ba1e3f1519f3edea7d1aec15502d
https://github.com/llvm/llvm-project/commit/5225901ecd53ba1e3f1519f3edea7d1aec15502d
Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang] Add [[maybe_unused]] to fix -Werror build (#83456)
Add the [[maybe_unused]] attribute to a variable in
lib/Lower/OpenMP/OpenMP.cpp to avoid a (possibly bogus) unused variable
warning when building with GCC 9.3.0.
Commit: 81578477645b7f2e97744d53a4cea962872925b0
https://github.com/llvm/llvm-project/commit/81578477645b7f2e97744d53a4cea962872925b0
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libcxx/src/new.cpp
Log Message:
-----------
[libc++] Include missing <__assert> after #80091 (#83480)
_LIBCPP_ASSERT_SHIM used by the -fno-exceptions and
LIBCXX_ENABLE_NEW_DELETE_DEFINITIONS=on configuration
needs _LIBCPP_ASSERT from <__assert>.
Commit: 82c1bfc44ecee97425582f345d04e787f066b899
https://github.com/llvm/llvm-project/commit/82c1bfc44ecee97425582f345d04e787f066b899
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
Log Message:
-----------
Increase timeout to reduce test failure rate. (#83312)
The timeout for this test was set to 1.0s which is very low, it should
be a default of 10s and be increased by a factor of 10 if ASAN is
enabled. This will help reduce the falkiness of the test, especially in
ASAN builds.
Commit: de55c2f869925a3ed7f26e168424021c6bc46799
https://github.com/llvm/llvm-project/commit/de55c2f869925a3ed7f26e168424021c6bc46799
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
M mlir/include/mlir/Query/Matcher/MatchersInternal.h
M mlir/lib/Query/Matcher/Diagnostics.cpp
M mlir/lib/Query/Matcher/Parser.cpp
M mlir/lib/Query/Matcher/Parser.h
M mlir/lib/Query/Matcher/RegistryManager.cpp
M mlir/lib/Query/Matcher/RegistryManager.h
M mlir/lib/Query/Query.cpp
R mlir/test/mlir-query/function-extraction.mlir
Log Message:
-----------
Revert "[mlir-query] Add function extraction feature to mlir-query"
This reverts commit c66f2d0c4a46ba66fb98a2cab4e63ad90888a261.
The bot is broken.
Commit: 5abbe8ec9edcc034fad383ab69046e8c0d13c97d
https://github.com/llvm/llvm-project/commit/5abbe8ec9edcc034fad383ab69046e8c0d13c97d
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/ADT/SmallString.h
M llvm/unittests/ADT/SmallStringTest.cpp
Log Message:
-----------
Revert "[ADT] Add std::string_view conversion to SmallString (#83397)"
This reverts commit cff36bb198759c4fe557adc594eabc097cf7d565.
This patch was causing build failures in certain configurations.
Commit: ac267081a387a53d83ec9e3bfccedb27c21a050f
https://github.com/llvm/llvm-project/commit/ac267081a387a53d83ec9e3bfccedb27c21a050f
Author: Teresa Johnson <tejohnson at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/test/Transforms/MemProfContextDisambiguation/inlined3.ll
Log Message:
-----------
[MemProf][NFC] Make new test actually check cold attributes
The test added by PR81322 didn't actually check the coldness of the
attributes being matched on the IR. Add that checking.
Commit: 8c1003266520ac396ce2a9e799f318af30efdd19
https://github.com/llvm/llvm-project/commit/8c1003266520ac396ce2a9e799f318af30efdd19
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h
Log Message:
-----------
[lldb][NFC] Move helpers to import record layout into ClangASTImporter (#83291)
This patch moves the logic for copying the layout info of a
`RecordDecl`s origin into a target AST.
A follow-up patch re-uses the logic from within the `ClangASTImporter`,
so the natural choice was to move it there.
Commit: 4d12f708967f932b584be5fc4efd17ad3272f87c
https://github.com/llvm/llvm-project/commit/4d12f708967f932b584be5fc4efd17ad3272f87c
Author: Reid Kleckner <rnk at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/docs/CodeOfConduct.rst
Log Message:
-----------
Add guidance on bans to the CoC section and link to the developer policy (#82551)
This seemed like relevant information to include in the code of conduct.
Commit: 07ffb7e294767b74e43f90e9ab3d713da929b907
https://github.com/llvm/llvm-project/commit/07ffb7e294767b74e43f90e9ab3d713da929b907
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
A lldb/test/API/lang/cpp/gmodules/alignment/Makefile
A lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
A lldb/test/API/lang/cpp/gmodules/alignment/main.cpp
A lldb/test/API/lang/cpp/gmodules/alignment/pch.h
Log Message:
-----------
[lldb][ClangASTImporter] Import record layouts from origin if available (#83295)
Layout information for a record gets stored in the `ClangASTImporter`
associated with the `DWARFASTParserClang` that originally parsed the
record. LLDB sometimes moves clang types from one AST to another (in the
reproducer the origin AST was a precompiled-header and the destination
was the AST backing the executable). When clang then asks LLDB to
`layoutRecordType`, it will do so with the help of the
`ClangASTImporter` the type is associated with. If the type's origin is
actually in a different LLDB module (and thus a different
`DWARFASTParserClang` was used to set its layout info), we won't find
the layout info in our local `ClangASTImporter`.
In the reproducer this meant we would drop the alignment info of the
origin type and misread a variable's contents with `frame var` and
`expr`.
There is logic in `ClangASTSource::layoutRecordType` to import an
origin's layout info. This patch re-uses that infrastructure to import
an origin's layout from one `ClangASTImporter` instance to another.
rdar://123274144
Commit: 91895f59f43217b120506bf98327a13adfc4c598
https://github.com/llvm/llvm-project/commit/91895f59f43217b120506bf98327a13adfc4c598
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
[pr-subscribers] added `third-party:benchmark` to `new-prs-labeler` (#83486)
Commit: 2fef685363e13e0640b624cc3d07b1006f12113c
https://github.com/llvm/llvm-project/commit/2fef685363e13e0640b624cc3d07b1006f12113c
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/test/Transforms/LoopRotate/oz-disable.ll
A llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
Log Message:
-----------
[llvm][loop-rotate] Allow forcing loop-rotation (#82828)
Many profitable optimizations cannot be performed at -Oz, due to
unrotated loops. While this is worse for size (minimally), many of the
optimizations significantly reduce code size, such as memcpy
optimizations and other patterns found by loop idiom recognition.
Related discussion can be found in issue #50308.
This patch adds an experimental, backend-only flag to allow loop header
duplication, regardless of the optimization level. Downstream consumers
can experiment with this flag, and if it is profitable, we can adjust
the compiler's defaults accordingly, and expose any useful frontend
flags to opt into the new behavior.
Commit: 5b07fd479902b485cdc6f9fb61738fb05ed65095
https://github.com/llvm/llvm-project/commit/5b07fd479902b485cdc6f9fb61738fb05ed65095
Author: Leon Clark <PeddleSpam at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
Log Message:
-----------
[AMDGPU] Fix OpenCL conformance test failures for ctlz. (#83170)
Remove LSH transform and restore previous lowering.
Fixes conformance issue in
[77615](https://github.com/llvm/llvm-project/pull/77615) where OpenCL
integer_ops tests fail for integer_clz.
Co-authored-by: Leon Clark <leoclark at amd.com>
Commit: c5cdf3432a3928de8f111a7483962f0e5103546f
https://github.com/llvm/llvm-project/commit/c5cdf3432a3928de8f111a7483962f0e5103546f
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M flang/runtime/Float128Math/exponent.cpp
M flang/runtime/Float128Math/fraction.cpp
M flang/runtime/Float128Math/mod-real.cpp
M flang/runtime/Float128Math/modulo-real.cpp
M flang/runtime/Float128Math/nearest.cpp
M flang/runtime/Float128Math/rrspacing.cpp
M flang/runtime/Float128Math/scale.cpp
M flang/runtime/Float128Math/set-exponent.cpp
M flang/runtime/Float128Math/spacing.cpp
M flang/runtime/numeric-templates.h
M flang/runtime/numeric.cpp
Log Message:
-----------
[flang][runtime] Partial revert of #83383. (#83478)
For `LDBL_MANT_DIG == 113` targets the REAL(16) versions of F18
runtime APIs can stay and should better stay in FortranRuntime.
This way, no additional linking actions are required, because
glibc provides all that is needed.
I thought I would isolate all REAL(16) implementations (both
via `__float128` and `long double`) into Float128Math library,
but that was a bad idea.
This should fix aarch64 buildbots failing gfortran tests.
Commit: 8466ab98ca5353e22eab0ae6d9885a65091786fb
https://github.com/llvm/llvm-project/commit/8466ab98ca5353e22eab0ae6d9885a65091786fb
Author: Matthias Braun <matze at braunis.de>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/tools/llvm-profgen/PerfReader.cpp
Log Message:
-----------
llvm-profgen: Fix race condition (#83489)
Fix race condition when multiple instances of `llvm-progen` read from
the same inputs.
Commit: ca9d2e923b28adec9ae1754f0bb61b2e8ada025e
https://github.com/llvm/llvm-project/commit/ca9d2e923b28adec9ae1754f0bb61b2e8ada025e
Author: Sumanth Gundapaneni <sgundapa at quicinc.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/test/CodeGen/builtins-hexagon.c
M llvm/lib/Target/Hexagon/CMakeLists.txt
A llvm/lib/Target/Hexagon/HexagonLoopAlign.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.h
A llvm/test/CodeGen/Hexagon/loop-balign.ll
A llvm/test/CodeGen/Hexagon/loop_align_count.ll
A llvm/test/CodeGen/Hexagon/loop_align_count.mir
A llvm/test/CodeGen/Hexagon/v6-haar-balign32.ll
Log Message:
-----------
[Hexagon] Add Loop Alignment pass. (#83379)
Inspect a basic block and if its single basic block loop with a small
number of instructions, set the Loop Alignment to 32 bytes. This will
avoid the cache line break in the first packet of loop which will cause
a stall per each execution of loop.
Commit: 6137f482fca8b57d9c075b41cc4959b4e63a74f1
https://github.com/llvm/llvm-project/commit/6137f482fca8b57d9c075b41cc4959b4e63a74f1
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
Log Message:
-----------
[gn build] Port ca9d2e923b28
Commit: 71eead512eb1e3c19d940678a82712ef05cdd994
https://github.com/llvm/llvm-project/commit/71eead512eb1e3c19d940678a82712ef05cdd994
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
Log Message:
-----------
Revert "[mlir][sparse] Migration to sparse_tensor.print" (#83499)
Reverts llvm/llvm-project#83377
The test does not pass on the bot.
Commit: bf0f874e4883a98ab69cff3da323713a5fe80dfd
https://github.com/llvm/llvm-project/commit/bf0f874e4883a98ab69cff3da323713a5fe80dfd
Author: Andrei Homescu <ahomescu at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/secondary.h
Log Message:
-----------
[scudo] Avoid splitting aligned allocations on Trusty (#69281)
Don't use multiple tagged pages at the beginning of an allocation, since
it prevents using such allocations for memrefs, and mappings aren't
reused anyway since Trusty uses MapAllocatorNoCache.
Upstreamed from https://r.android.com/2537251.
Co-authored-by: Marco Nelissen <marcone at google.com>
Commit: b9b8333ed51b67ab73f8bc4cf25ce400d91e7008
https://github.com/llvm/llvm-project/commit/b9b8333ed51b67ab73f8bc4cf25ce400d91e7008
Author: Florian Mayer <fmayer at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
A compiler-rt/test/hwasan/TestCases/longjmp-out-of-range.c
Log Message:
-----------
[HWASan] add test for hwasan_handle_longjmp ignore logic (#83359)
Commit: 3be05d898ffd1e687bd67dcd5fe0c8c16ff2d4d7
https://github.com/llvm/llvm-project/commit/3be05d898ffd1e687bd67dcd5fe0c8c16ff2d4d7
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/test/mlir-cpu-runner/expand-arith-ops.mlir
Log Message:
-----------
[MLIR] Fix test on Windows
Windows folds to 1.01563 and linux to 1.01562, let's just check the prefix here.
Commit: 1a2960bab6381f2b288328e2371829b460ac020c
https://github.com/llvm/llvm-project/commit/1a2960bab6381f2b288328e2371829b460ac020c
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
Log Message:
-----------
[pgo][nfc] Model `Count` as a `std::optional` in `PGOUseBBInfo` (#83364)
Simpler code, compared to tracking state of 2 variables and the ambiguity of "0" CountValue (is it 0 or is it invalid?)
Commit: d1924f0474b65fe3189ffd658a12f452e4696c28
https://github.com/llvm/llvm-project/commit/d1924f0474b65fe3189ffd658a12f452e4696c28
Author: Kai Luo <lkail at cn.ibm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/test/CodeGen/PowerPC/2008-10-28-f128-i32.ll
M llvm/test/CodeGen/PowerPC/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/PowerPC/ctrloops-pseudo.ll
M llvm/test/CodeGen/PowerPC/expand-isel-to-branch.ll
M llvm/test/CodeGen/PowerPC/fp-strict-fcmp-spe.ll
M llvm/test/CodeGen/PowerPC/fp-to-int-to-fp.ll
M llvm/test/CodeGen/PowerPC/fptoui-be-crash.ll
M llvm/test/CodeGen/PowerPC/funnel-shift-rot.ll
M llvm/test/CodeGen/PowerPC/funnel-shift.ll
M llvm/test/CodeGen/PowerPC/i1-to-double.ll
M llvm/test/CodeGen/PowerPC/ppcf128-constrained-fp-intrinsics.ll
M llvm/test/CodeGen/PowerPC/pr43976.ll
M llvm/test/CodeGen/PowerPC/pr49509.ll
M llvm/test/CodeGen/PowerPC/save-crbp-ppc32svr4.ll
M llvm/test/CodeGen/PowerPC/select-cc-no-isel.ll
M llvm/test/CodeGen/PowerPC/select.ll
M llvm/test/CodeGen/PowerPC/select_const.ll
M llvm/test/CodeGen/PowerPC/smulfixsat.ll
M llvm/test/CodeGen/PowerPC/spe.ll
M llvm/test/CodeGen/PowerPC/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/PowerPC/umulfixsat.ll
M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll
M llvm/test/CodeGen/PowerPC/varargs.ll
M llvm/test/CodeGen/PowerPC/wide-scalar-shift-by-byte-multiple-legalization.ll
M llvm/test/CodeGen/PowerPC/wide-scalar-shift-legalization.ll
Log Message:
-----------
[PowerPC] Do not generate `isel` instruction if target doesn't have this instruction (#72845)
When expand `select_cc` in finalize-isel, we should not generate `isel`
for targets not feature it.
Commit: 7d7d4752a8f3d7b83586c10a882f974d821c0c53
https://github.com/llvm/llvm-project/commit/7d7d4752a8f3d7b83586c10a882f974d821c0c53
Author: ZijunZhaoCCK <88353225+ZijunZhaoCCK at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Set feature test macros __cpp_lib_ranges_contains and__cpp_lib_ranges_starts_ends_with (#81816)
ranges::contains: fdd089b50063
ranges::starts_with: 205175578e0d
ranges::ends_with: 0218ea4aaa54
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 5b058709536dd883980722ee000bb7b8c7b2cd8b
https://github.com/llvm/llvm-project/commit/5b058709536dd883980722ee000bb7b8c7b2cd8b
Author: Felix (Ting Wang) <Ting.Wang.SH at ibm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/CodeGen/PowerPC/aix-tls-model.cpp
M clang/test/Sema/aix-attr-tls_model.c
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/XCOFFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
M llvm/lib/Target/PowerPC/PPC.h
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
M llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
M llvm/test/CodeGen/PowerPC/aix-tls-gd-double.ll
M llvm/test/CodeGen/PowerPC/aix-tls-gd-int.ll
M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
A llvm/test/CodeGen/PowerPC/aix-tls-ld-xcoff-reloc-large.ll
A llvm/test/CodeGen/PowerPC/aix-tls-local-dynamic.ll
M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc-large.ll
M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc.ll
Log Message:
-----------
[PowerPC] Support local-dynamic TLS relocation on AIX (#66316)
Supports TLS local-dynamic on AIX, generates below sequence of code:
```
.tc foo[TC],foo[TL]@ld # Variable offset, ld relocation specifier
.tc mh[TC],mh[TC]@ml # Module handle for the caller
lwz 3,mh[TC]\(2\) $$ For 64-bit: ld 3,mh[TC]\(2\)
bla .__tls_get_mod # Modifies r0,r3,r4,r5,r11,lr,cr0
#r3 = &TLS for module
lwz 4,foo[TC]\(2\) $$ For 64-bit: ld 4,foo[TC]\(2\)
add 5,3,4 # Compute &foo
.rename mh[TC], "\_$TLSML" # Symbol for the module handle must have the name "_$TLSML"
```
---------
Co-authored-by: tingwang <tingwang at tingwangs-MBP.lan>
Co-authored-by: tingwang <tingwang at tingwangs-MacBook-Pro.local>
Commit: 5899599b01d86545896bd21bd15fb5cb619bd6c7
https://github.com/llvm/llvm-project/commit/5899599b01d86545896bd21bd15fb5cb619bd6c7
Author: Yinying Li <107574043+yinying-lisa-li at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
Log Message:
-----------
[mlir][sparse] Migration to sparse_tensor.print (#83506)
Continuous efforts #83357. Previously reverted #83377.
Commit: 9a12b0a60084b2b92f728e1bddec884a47458459
https://github.com/llvm/llvm-project/commit/9a12b0a60084b2b92f728e1bddec884a47458459
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Utility/AddressableBits.h
M lldb/include/lldb/lldb-defines.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/API/SBProcess.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Utility/AddressableBits.cpp
A lldb/test/API/python_api/process/address-masks/Makefile
A lldb/test/API/python_api/process/address-masks/TestAddressMasks.py
A lldb/test/API/python_api/process/address-masks/main.c
Log Message:
-----------
[lldb] Add SBProcess methods for get/set/use address masks (#83095)
I'm reviving a patch from phabracator, https://reviews.llvm.org/D155905
which was approved but I wasn't thrilled with all the API I was adding
to SBProcess for all of the address mask types / memory regions. In this
update, I added enums to control type address mask type (code, data,
any) and address space specifiers (low, high, all) with defaulted
arguments for the most common case.
This patch is also fixing a bug in the "addressable bits to address
mask" calculation I added in AddressableBits::SetProcessMasks. If lldb
were told that 64 bits are valid for addressing, this method would
overflow the calculation and set an invalid mask. Added tests to check
this specific bug while I was adding these APIs.
rdar://123530562
Commit: 7ceb74f5b74fa4a0b68ad911afd3cad945f640a3
https://github.com/llvm/llvm-project/commit/7ceb74f5b74fa4a0b68ad911afd3cad945f640a3
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
Log Message:
-----------
[compiler-rt] fix BSD procmaps stack frame size limit warning. (#82887)
Commit: e8ce864a36ba02ddb63877905d49f1e9ac60b544
https://github.com/llvm/llvm-project/commit/e8ce864a36ba02ddb63877905d49f1e9ac60b544
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Utility/AddressableBits.h
M lldb/include/lldb/lldb-defines.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/API/SBProcess.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Utility/AddressableBits.cpp
R lldb/test/API/python_api/process/address-masks/Makefile
R lldb/test/API/python_api/process/address-masks/TestAddressMasks.py
R lldb/test/API/python_api/process/address-masks/main.c
Log Message:
-----------
Revert "[lldb] Add SBProcess methods for get/set/use address masks (#83095)"
This reverts commit 9a12b0a60084b2b92f728e1bddec884a47458459.
TestAddressMasks fails its first test on lldb-x86_64-debian,
lldb-arm-ubuntu, lldb-aarch64-ubuntu bots. Reverting while
investigating.
Commit: e7c3cd245665042bbae163f7280aceed35f0fee5
https://github.com/llvm/llvm-project/commit/e7c3cd245665042bbae163f7280aceed35f0fee5
Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll
Log Message:
-----------
[HWASAN] Implement selective instrumentation based on profiling information (#83503)
Commit: 2cdf611c02392112860e661e8251efa8b1335cc2
https://github.com/llvm/llvm-project/commit/2cdf611c02392112860e661e8251efa8b1335cc2
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
Log Message:
-----------
[compiler-rt][Fuzzer] SetThreadName windows implementation new try. (#76761)
SetThreadDescription symbol needs to be dynamically loaded before usage.
Then using a wide string buffer, since we re using a null terminated
string, we can use MultiByteToWideChar -1 as 4th argument to finally set
the thread name.
Previously `SetThreadDescription` was called directly causing crash.
It was reverted in dd3aa26fc8e9de37a39611f7a6a602bcb4153784
Commit: cf68c0427d9d3816eefcfe7d3d648a98146c07cf
https://github.com/llvm/llvm-project/commit/cf68c0427d9d3816eefcfe7d3d648a98146c07cf
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/include/llvm-libc-macros/float-macros.h
Log Message:
-----------
[libc] Ignore -Winclude-next-absolute-path warning in float-macros.h (#83513)
Commit: 5b6e58c565cf809e4133a10ff9d9b096754bea1e
https://github.com/llvm/llvm-project/commit/5b6e58c565cf809e4133a10ff9d9b096754bea1e
Author: Alexander M <iammorjj at gmail.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/test/API/lang/c/local_variables/TestLocalVariables.py
Log Message:
-----------
Revert "XFAIL TestLocalVariables.py on Windows" (#83454)
This reverts commit 3434472ed74141848634b5eb3cd625d651e22562.
Closes #43097.
Commit: 39c24c52f641849a648e3b01310ed7c3f2c8d91b
https://github.com/llvm/llvm-project/commit/39c24c52f641849a648e3b01310ed7c3f2c8d91b
Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCArchitectures.cmake
Log Message:
-----------
[libc] Allow libc to build on Red Hat (#83517)
Currently, `libc` fails when building on redhat because the triple
format uses `redhat` instead of `linux` (The same problem as openSUSE).
This PR changes `libc` to accept `redhat` as a valid Linux triple.
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 8171f6d12eafbd4a67ad263770c142d51504d834
https://github.com/llvm/llvm-project/commit/8171f6d12eafbd4a67ad263770c142d51504d834
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/include/lldb/Core/Progress.h
Log Message:
-----------
[lldb][progress][NFC] Fix Doxygen information (#83502)
Commit: 2023a230d122d6971c5ff90615c128e7e711b08f
https://github.com/llvm/llvm-project/commit/2023a230d122d6971c5ff90615c128e7e711b08f
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/test/CodeGen/RISCV/pr69586.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vcopysign-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vcopysign-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
Log Message:
-----------
[RISCV] Move V0 to the end of register allocation order (#82967)
According to
https://riscv-optimization-guide-riseproject-c94355ae3e6872252baa952524.gitlab.io/riscv-optimization-guide.html:
> The v0 register defined by the RISC-V vector extension is special in
> that it can be used both as a general purpose vector register and also
> as a mask register. As a preference, use registers other than v0 for
> non-mask values. Otherwise data will have to be moved out of v0 when a
> mask is required in an operation. v0 may be used when all other
> registers are in use, and using v0 would avoid spilling register state
> to memory.
And using V0 register may stall masking pipeline and stop chaining
for some microarchitectures.
So we should try to not use V0 and register groups contained it as
much as possible. We achieve this via moving V0 to the end of RA
order.
Commit: 4551f53523074cd4e2f93a6f79313ca2cdcc40d2
https://github.com/llvm/llvm-project/commit/4551f53523074cd4e2f93a6f79313ca2cdcc40d2
Author: Jason Molenda <jmolenda at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/debugserver/source/RNBRemote.h
Log Message:
-----------
[lldb] [debugserver] fix qLaunchSuccess error, add QErrorStringInPacketSupported (#82593)
Pavel added an extension to lldb's gdb remote serial protocol that
allows the debug stub to append an error message (ascii hex encoded)
after an error response packet Exx. This was added in 2017 in
https://reviews.llvm.org/D34945 . lldb sends the
QErrorStringInPacketSupported packet and then the remote stub may add
these error strings.
debugserver has two bugs in its use of extended error messages: the
vAttach family would send the extended error string without checking if
the mode had been enabled. And qLaunchSuccess would not properly format
its error response packet (missing the hex digits, did not asciihex
encode the string).
There is also a bug in the HandlePacket_D (detach) packet where the
error packets did not include hex digits, but this one does not append
an error string.
I'm adding a new RNBRemote::SendErrorPacket() and routing all error
packet returns though this one method. It takes an optional second
string which is the longer error message; it now handles appending it to
the Exx response or not, depending on the QErrorStringInPacketSupported
state. I updated all packets to send their errors via this method.
Commit: 8fd011ecc61fa83b9520a971aba1fa651a011bff
https://github.com/llvm/llvm-project/commit/8fd011ecc61fa83b9520a971aba1fa651a011bff
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/lib/TargetParser/RISCVTargetParser.cpp
Log Message:
-----------
[RISCV] Add getFeaturesForCPU function support (#83269)
This function parse the cpu and return it's supported
features placed in EnabledFeatures. It is same as the
one in X86TargetParser and also is used in IREE.
Commit: 8116dfb8b58a65e78e341f09f5728d345f086b7b
https://github.com/llvm/llvm-project/commit/8116dfb8b58a65e78e341f09f5728d345f086b7b
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M clang/lib/InstallAPI/Frontend.cpp
Log Message:
-----------
[InstallAPI] Use unique identifiers for input buffers (#83523)
Commit: 346766eae8cb8949c2c13b85c0d1e6ff4869a77e
https://github.com/llvm/llvm-project/commit/346766eae8cb8949c2c13b85c0d1e6ff4869a77e
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-29 (Thu, 29 Feb 2024)
Changed paths:
M llvm/include/llvm/TextAPI/Record.h
M llvm/lib/TextAPI/RecordVisitor.cpp
Log Message:
-----------
[TextAPI] Fixup symbol names of ivars from extensions (#83525)
Commit: edd0ef4f3cb0ebc4eadc7a207edb9c849e894fc3
https://github.com/llvm/llvm-project/commit/edd0ef4f3cb0ebc4eadc7a207edb9c849e894fc3
Author: Douglas Yung <douglas.yung at sony.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/test/CodeGen/Hexagon/loop_align_count.ll
M llvm/test/CodeGen/Hexagon/loop_align_count.mir
Log Message:
-----------
Add "REQUIRES: asserts" to 2 tests added in #83379 using "-debug-only" run arguments.
Commit: dca32a3b594b3c91f9766a9312b5d82534910fa1
https://github.com/llvm/llvm-project/commit/dca32a3b594b3c91f9766a9312b5d82534910fa1
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
M mlir/include/mlir/IR/PDLPatternMatch.h.inc
M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
M mlir/lib/Dialect/PDL/IR/PDL.cpp
M mlir/lib/Rewrite/ByteCode.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
A mlir/test/Conversion/PDLToPDLInterp/use-constraint-result.mlir
M mlir/test/Dialect/PDL/ops.mlir
M mlir/test/Rewrite/pdl-bytecode.mlir
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
M mlir/test/mlir-pdll/Parser/constraint-failure.pdll
M mlir/test/mlir-pdll/Parser/constraint.pdll
M mlir/test/python/dialects/pdl_ops.py
Log Message:
-----------
[mlir][PDL] Add support for native constraints with results (#82760)
>From https://reviews.llvm.org/D153245
This adds support for native PDL (and PDLL) C++ constraints to return
results.
This is useful for situations where a pattern checks for certain
constraints of multiple interdependent attributes and computes a new
attribute value based on them. Currently, for such an example it is
required to escape to C++ during matching to perform the check and after
a successful match again escape to native C++ to perform the computation
during the rewriting part of the pattern. With this work we can do the
computation in C++ during matching and use the result in the rewriting
part of the pattern. Effectively this enables a choice in the trade-off
of memory consumption during matching vs recomputation of values.
This is an example of a situation where this is useful: We have two
operations with certain attributes that have interdependent constraints.
For instance `attr_foo: one_of [0, 2, 4, 8], attr_bar: one_of [0, 2, 4,
8]` and `attr_foo == attr_bar`. The pattern should only match if all
conditions are true. The new operation should be created with a new
attribute which is computed from the two matched attributes e.g.
`attr_baz = attr_foo * attr_bar`. For the check we already escape to
native C++ and have all values at hand so it makes sense to directly
compute the new attribute value as well:
```
Constraint checkAndCompute(attr0: Attr, attr1: Attr) -> Attr;
Pattern example with benefit(1) {
let foo = op<test.foo>() {attr = attr_foo : Attr};
let bar = op<test.bar>(foo) {attr = attr_bar : Attr};
let attr_baz = checkAndCompute(attr_foo, attr_bar);
rewrite bar with {
let baz = op<test.baz> {attr=attr_baz};
replace bar with baz;
};
}
```
To achieve this the following notable changes were necessary:
PDLL:
- Remove check in PDLL parser that prevented native constraints from
returning results
PDL:
- Change PDL definition of pdl.apply_native_constraint to allow variadic
results
PDL_interp:
- Change PDL_interp definition of pdl_interp.apply_constraint to allow
variadic results
PDLToPDLInterp Pass:
The input to the pass is an arbitrary number of PDL patterns. The pass
collects the predicates that are required to match all of the pdl
patterns and establishes an ordering that allows creation of a single
efficient matcher function to match all of them. Values that are matched
and possibly used in the rewriting part of a pattern are represented as
positions. This allows fusion and thus reusing a single position for
multiple matching patterns. Accordingly, we introduce
ConstraintPosition, which records the type and index of the result of
the constraint. The problem is for the corresponding value to be used in
the rewriting part of a pattern it has to be an input to the
pdl_interp.record_match operation, which is generated early during the
pass such that its surrounding block can be referred to by branching
operations. In consequence the value has to be materialized after the
original pdl.apply_native_constraint has been deleted but before we get
the chance to generate the corresponding pdl_interp.apply_constraint
operation. We solve this by emitting a placeholder value when a
ConstraintPosition is evaluated. These placeholder values (due to fusion
there may be multiple for one constraint result) are replaced later when
the actual pdl_interp.apply_constraint operation is created.
Changes since the phabricator review:
- Addressed all comments
- In particular, removed registerConstraintFunctionWithResults and
instead changed registerConstraintFunction so that contraint functions
always have results (empty by default)
- Thus we don't need to reuse `rewriteFunctions` to store constraint
functions with results anymore, and can instead use
`constraintFunctions`
- Perform a stable sort of ConstraintQuestion, so that
ConstraintQuestion appear before other ConstraintQuestion that use their
results.
- Don't create placeholders for pdl_interp::ApplyConstraintOp. Instead
generate the `pdl_interp::ApplyConstraintOp` before generating the
successor block.
- Fixed a test failure in the pdl python bindings
Original code by @martin-luecke
Co-authored-by: martin-luecke <martinpaul.luecke at amd.com>
Commit: c80e6edba4a9593f0587e27fa0ac825ebe174afd
https://github.com/llvm/llvm-project/commit/c80e6edba4a9593f0587e27fa0ac825ebe174afd
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
M mlir/include/mlir/IR/PDLPatternMatch.h.inc
M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
M mlir/lib/Dialect/PDL/IR/PDL.cpp
M mlir/lib/Rewrite/ByteCode.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
R mlir/test/Conversion/PDLToPDLInterp/use-constraint-result.mlir
M mlir/test/Dialect/PDL/ops.mlir
M mlir/test/Rewrite/pdl-bytecode.mlir
M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
M mlir/test/mlir-pdll/Parser/constraint-failure.pdll
M mlir/test/mlir-pdll/Parser/constraint.pdll
M mlir/test/python/dialects/pdl_ops.py
Log Message:
-----------
Revert "[mlir][PDL] Add support for native constraints with results (#82760)"
Due to buildbot failure https://lab.llvm.org/buildbot/#/builders/88/builds/72130
This reverts commit dca32a3b594b3c91f9766a9312b5d82534910fa1.
Commit: 012b697e7c3633ae17639b086414fd6c02127810
https://github.com/llvm/llvm-project/commit/012b697e7c3633ae17639b086414fd6c02127810
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/test/Analysis/stream-note.c
Log Message:
-----------
[clang][analyzer] Add StreamChecker note tags for "indeterminate stream position". (#83288)
If a stream operation fails the position can become "indeterminate".
This may cause warning from the checker at a later operation. The new
note tag shows the place where the position becomes "indeterminate",
this is where a failure occurred.
Commit: 43bcedd1f09134478b7c8582bac86c78e2dbeb28
https://github.com/llvm/llvm-project/commit/43bcedd1f09134478b7c8582bac86c78e2dbeb28
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
Log Message:
-----------
[compiler-rt] fix __sanitizer_siginfo type on freebsd. (#77379)
mostly interested in the first half of the type, adding also compile
time check.
Commit: 6c39fa9e9f198498ff7cf9646081437a0fc0882a
https://github.com/llvm/llvm-project/commit/6c39fa9e9f198498ff7cf9646081437a0fc0882a
Author: Dhruv Chawla (work) <dhruvc at nvidia.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/abs.ll
Log Message:
-----------
[AArch64][GlobalISel] Expand abs.v4i8 to v4i16 and abs.v2s16 to v2s32 (#81231)
GISel was currently falling back to SDAG for these functions, and this
matches the way SDAG currently generates code for these functions.
Commit: 420928b2fa8b00f23f0adcb19328014592455698
https://github.com/llvm/llvm-project/commit/420928b2fa8b00f23f0adcb19328014592455698
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/test/CodeGen/X86/apx/compress-evex.mir
Log Message:
-----------
[X86][CodeGen] Fix compile crash in EVEX compression for corner case
The base register of OPmi_ND may be allocated to the same physic
register as the ND operand.
OPmi_ND is not compressible b/c it has different semnatic from OPmi.
In this case, `isRedundantNewDataDest` should return false, otherwise
we would get error
Assertion `!IsNDLike && "Missing entry for ND-like instruction"' failed.
Commit: 128780b06f5bd0e586ee81e1e0e75f63c5664cfc
https://github.com/llvm/llvm-project/commit/128780b06f5bd0e586ee81e1e0e75f63c5664cfc
Author: martinboehme <mboehme at google.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Correctly treat empty initializer lists for unions. (#82986)
This fixes a crash introduced by
https://github.com/llvm/llvm-project/pull/82348
but also adds additional handling to make sure that we treat empty
initializer
lists for both unions and structs/classes correctly (see tests added in
this
patch).
Commit: 40c9a01773507e485f35aa76d3e31cf3ea8c3011
https://github.com/llvm/llvm-project/commit/40c9a01773507e485f35aa76d3e31cf3ea8c3011
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Context.h
Log Message:
-----------
[clang][Interp][NFC] Add an assertion to classify(Expr*)
NFC but makes the backtrace easier to read in case the expression
somehow ends up being null.
Commit: ba8e9ace13c3c2dedf5c496455de822cba931862
https://github.com/llvm/llvm-project/commit/ba8e9ace13c3c2dedf5c496455de822cba931862
Author: Nick Anderson <nickleus27 at gmail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
Log Message:
-----------
[AMDGPU] promote i1 arg type for amdgpu_cs (#82971)
fixes #68087
Not sure where to put regression tests for this pr? Also, should i1 args
not in reg also be promoted?
Commit: 4a5ec3cec8316234667897d99fa4ef1b1a132c43
https://github.com/llvm/llvm-project/commit/4a5ec3cec8316234667897d99fa4ef1b1a132c43
Author: chuongg3 <chuong.goh at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
M llvm/test/CodeGen/AArch64/shufflevector.ll
Log Message:
-----------
Revert "[AArch64][GlobalISel] Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors" (#83544)
Reverts llvm/llvm-project#83038 due to failing build in Fuchsia build
https://lab.llvm.org/staging/#/builders/187/builds/1695
Commit: b051277d5ed8b22fce558272bf3bbbafb95245a5
https://github.com/llvm/llvm-project/commit/b051277d5ed8b22fce558272bf3bbbafb95245a5
Author: Pravin Jagtap <prjagtap at amd.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
Log Message:
-----------
Add llvm_v6i32_ty. NFC. (#83522)
Authored-by: Pravin Jagtap <Pravin.Jagtap at amd.com>
Commit: e81ef463f10851bfbcd56a4f3450821f1e7c862f
https://github.com/llvm/llvm-project/commit/e81ef463f10851bfbcd56a4f3450821f1e7c862f
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
Log Message:
-----------
[FMV] Use lexicographic order of feature names when mangling. (#83464)
This decouples feature priorities from name mangling. Doing so will
prevent ABI breakages in case we change the feature priorities.
Formalized in ACLE here: https://github.com/ARM-software/acle/pull/303.
Commit: 990dbf2b7ebb1ddf1a53eb0b25061a0ea42f4ae1
https://github.com/llvm/llvm-project/commit/990dbf2b7ebb1ddf1a53eb0b25061a0ea42f4ae1
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
Log Message:
-----------
[clang][Interp] OpaqueValueExprs can have null subexprs
Commit: 062d78ef58ac26e1c6f82201151428d0b89cca21
https://github.com/llvm/llvm-project/commit/062d78ef58ac26e1c6f82201151428d0b89cca21
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
Log Message:
-----------
[compiler-rt][fuzzer] windows build unbreak proposal. (#83538)
shuffling the order of its includes.
Commit: 2a67c28abe8cfde47c5058abbeb4b5ff9a393192
https://github.com/llvm/llvm-project/commit/2a67c28abe8cfde47c5058abbeb4b5ff9a393192
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Module.h
Log Message:
-----------
[IR] Update getOrInsertFunction() docs for opaque pointers (NFC)
This can no longer return a bitcast, but the function type in
FunctionCallee may differ from the function type of the function.
Commit: 6ed67ca14cd05596a8253eeceb247d2743e00f6e
https://github.com/llvm/llvm-project/commit/6ed67ca14cd05596a8253eeceb247d2743e00f6e
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/CodeGen/Targets/AArch64.cpp
Log Message:
-----------
[clang] Remove unused-lambda-capture in AArch64.cpp (NFC)
llvm-project/clang/lib/CodeGen/Targets/AArch64.cpp:886:26:
error: lambda capture 'TI' is not used [-Werror,-Wunused-lambda-capture]
886 | llvm::sort(Features, [&TI](const StringRef LHS, const StringRef RHS) {
| ~^~
1 error generated.
Commit: ec8df555702d85511290742388d28016b69468de
https://github.com/llvm/llvm-project/commit/ec8df555702d85511290742388d28016b69468de
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M lldb/test/CMakeLists.txt
Log Message:
-----------
[lldb][test][Windows] Don't check for pexpect with LLDB_ENFORCE_STRICT_TEST_REQUIREMENTS
See https://github.com/llvm/llvm-project/issues/22648 for why we don't use it on
Windows. Any pexpect tests are skipped there.
Commit: d50dec6f413ce1953bede94bdd11261b6684c7c4
https://github.com/llvm/llvm-project/commit/d50dec6f413ce1953bede94bdd11261b6684c7c4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
Log Message:
-----------
Fix MSVC "not all control paths return a value" warnings. NFC.
Commit: 199bbe2b380b6fa4a23932739ae55f8890af459b
https://github.com/llvm/llvm-project/commit/199bbe2b380b6fa4a23932739ae55f8890af459b
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
Log Message:
-----------
[MC] Teach checkAsmTiedOperandConstraints about optional operands (#81381)
At some point in the past, optional operands have become allowed in the
middle of an instruction. However, `checkAsmTiedOperandConstrains`
hasn't been modified to support this. This patch adds the support by
pulling operand offsets counting out of `convertToMCInst` and reusing it
in `checkAsmTiedOperandConstrains`.
Commit: 195744cca7fd7f1b33971e0f2cf07b8ae47f16b5
https://github.com/llvm/llvm-project/commit/195744cca7fd7f1b33971e0f2cf07b8ae47f16b5
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/test/Dialect/Linalg/transform-op-peel-and-vectorize.mlir
Log Message:
-----------
[mlir][VectorOps][nfc] Add result pretty printing to `vector.vscale` (#83439)
This will now print the value of `vector.vscale` as `%vscale` in IR
dumps which makes it easier to spot where things are scalable.
One test that depended on the value names has also been fixed.
Commit: 185b1df1b1f7bd88ff0159bc51d5ddaeca27106a
https://github.com/llvm/llvm-project/commit/185b1df1b1f7bd88ff0159bc51d5ddaeca27106a
Author: Pavel Iliin <Pavel.Iliin at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGen/aarch64-cpu-supports.c
M clang/test/Misc/warning-flags.c
M clang/test/Sema/aarch64-cpu-supports.c
M clang/test/Sema/builtin-cpu-supports.c
Log Message:
-----------
[X86][AArch64][PowerPC] __builtin_cpu_supports accepts unknown options. (#83515)
The patch fixes https://github.com/llvm/llvm-project/issues/83407
modifing __builtin_cpu_supports behaviour so that it returns false if
unsupported features names provided in parameter and issue a warning.
__builtin_cpu_supports is target independent, but currently supported by
X86, AArch64 and PowerPC only.
Commit: 4c8c335bcdb93e02b1bc08c5dbc7070af9bc91b5
https://github.com/llvm/llvm-project/commit/4c8c335bcdb93e02b1bc08c5dbc7070af9bc91b5
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/BUFInstructions.td
Log Message:
-----------
[AMDGPU] Rename hasGFX12Enc to hasRestrictedSOffset in BUF definitions. NFC. (#83434)
This just renames a tablegen argument to match the corresponding
subtarget feature.
Commit: 44c0bdb402271522a17704b4a18c8bf5efb55c4f
https://github.com/llvm/llvm-project/commit/44c0bdb402271522a17704b4a18c8bf5efb55c4f
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
M flang/test/HLFIR/all-lowering.fir
M flang/test/HLFIR/any-lowering.fir
M flang/test/HLFIR/count-lowering-default-int-kinds.fir
M flang/test/HLFIR/count-lowering.fir
M flang/test/HLFIR/dot_product-lowering.fir
M flang/test/HLFIR/extents-of-shape-of.f90
M flang/test/HLFIR/matmul-lowering.fir
M flang/test/HLFIR/maxloc-lowering.fir
M flang/test/HLFIR/maxval-lowering.fir
M flang/test/HLFIR/minloc-lowering.fir
M flang/test/HLFIR/minval-lowering.fir
M flang/test/HLFIR/mul_transpose.f90
M flang/test/HLFIR/product-lowering.fir
M flang/test/HLFIR/sum-lowering.fir
M flang/test/HLFIR/transpose-lowering.fir
M flang/test/Lower/convert.f90
Log Message:
-----------
[flang][HLFIR] Use GreedyPatternRewriter in LowerHLFIRIntrinsics (#83438)
In #83253 @matthias-springer pointed out that LowerHLFIRIntrinsics.cpp
should not be using rewrite patterns with the dialect conversion driver.
The intention of this pass is to lower HLFIR intrinsic operations into
FIR so it conceptually fits dialect conversion. However, dialect
conversion is much stricter about changing types when replacing
operations. This pass sometimes looses track of array bounds, resulting
in replacements with operations with different but compatible types
(expressions of the same rank and element types but with or without
compile time known array bounds). This is difficult to accommodate with
the dialect conversion driver and so I have changed to use the greedy
pattern rewriter.
There is a lot of test churn because the greedy pattern rewriter also
performs canonicalization.
Commit: 4c642b62b99fa128c180f28278637b32be5e5576
https://github.com/llvm/llvm-project/commit/4c642b62b99fa128c180f28278637b32be5e5576
Author: Martin Storsjö <martin at martin.st>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/test/ExecutionEngine/JITLink/Generic/sectcreate.test
Log Message:
-----------
[llvm-jitlink] [test] Add an XFAIL for a JITLink test on MinGW
This testcase fails on MinGW targets, because when compiling the
main() function, it gets an implicit call to __main(), which is
missing in this context.
Commit: d458a1931769aa4bcdb3fcd537c4ee946507ff1a
https://github.com/llvm/llvm-project/commit/d458a1931769aa4bcdb3fcd537c4ee946507ff1a
Author: David Green <david.green at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/aes.ll
M llvm/test/CodeGen/AArch64/misched-fusion-aes.ll
Log Message:
-----------
[AArch64] Mark AESD and AESE instructions as commutative. (#83390)
This come from
https://discourse.llvm.org/t/combining-aes-and-xor-can-be-improved-further/77248.
These instructions start out with:
```
XOR Vd, Vn
<some complicated math>
```
The initial XOR means that they can be treated as commutative, removing
some of the unnecessary mov's introduced during register allocation.
Commit: d1538c15f9c65a70f4650bd724972536f00f5094
https://github.com/llvm/llvm-project/commit/d1538c15f9c65a70f4650bd724972536f00f5094
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
Log Message:
-----------
Revert fuzzer windows changes (#83551)
Commit: 8511b320807085e88a10ae7275c2255da9d0172a
https://github.com/llvm/llvm-project/commit/8511b320807085e88a10ae7275c2255da9d0172a
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
Log Message:
-----------
[clang] Remove unused lambda capture. (#83550)
Fixes the `sanitizer-x86_64-linux-android` buildbot.
Commit: 0e9a102129c07d31dccec06cb45f6e2a74c6e590
https://github.com/llvm/llvm-project/commit/0e9a102129c07d31dccec06cb45f6e2a74c6e590
Author: David Green <david.green at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
Log Message:
-----------
[AArch64] Remove unused AArch64ISD::BIT. NFC
These were last used in the fcopysign lowering, which now uses AArch64ISD::BSP.
Commit: 2d98d763a8e627b2d1a18a9cdd1c62a4b58be3aa
https://github.com/llvm/llvm-project/commit/2d98d763a8e627b2d1a18a9cdd1c62a4b58be3aa
Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/crash_clear_undefs.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-nodes-to-shuffle.ll
Log Message:
-----------
[SLP]Fix the cost model for extracts combined with later shuffle.
If the buildvector node contains extract, which later should be combined
with some other nodes by shuffling, need to estimate the cost of this
shuffle before building the mask after shuffle.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/83442
Commit: 7ac03e8a369d8ac74a2c4d97a9e2a41221428abd
https://github.com/llvm/llvm-project/commit/7ac03e8a369d8ac74a2c4d97a9e2a41221428abd
Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/test/Dialect/EmitC/ops.mlir
A mlir/test/Target/Cpp/bitwise_operators.mlir
Log Message:
-----------
[mlir][EmitC] Add bitwise operators (#83387)
This adds operations for bitwise operators. Furthermore, an UnaryOp
class and a helper to print unary operations are introduced.
Commit: f28c4b4bacfc3fdc66b525b9a959c6b91a29d882
https://github.com/llvm/llvm-project/commit/f28c4b4bacfc3fdc66b525b9a959c6b91a29d882
Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
Log Message:
-----------
[SLP]Fix/improve potential masked gather loads analysis.
When do the analysis for the (potential) masked gather node, we check
that not greater than half of the pointer operands are loop invariants
or potentially vectorizable.
Need to check actually, that we have a loop at first
and do better check for the potentially vectorizable
pointers.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/83472
Commit: 756166e342a3692fd8de1ad1c5620df516bac33a
https://github.com/llvm/llvm-project/commit/756166e342a3692fd8de1ad1c5620df516bac33a
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
A llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null-vector.ll
A llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.addrspacecast.nonnull.ll
Log Message:
-----------
[AMDGPU] Improve detection of non-null addrspacecast operands (#82311)
Use IR analysis to infer when an addrspacecast operand is nonnull, then
lower it to an intrinsic that the DAG can use to skip the null check.
I did this using an intrinsic as it's non-intrusive. An alternative
would have been to allow something like `!nonnull` on `addrspacecast`
then lower that to a custom opcode (or add an operand to the
addrspacecast MIR/DAG opcodes), but it's a lot of boilerplate for just
one target's use case IMO.
I'm hoping that when we switch to GISel that we can move all this logic
to the MIR level without losing info, but currently the DAG doesn't see
enough so we need to act in CGP.
Fixes: SWDEV-316445
Commit: b8e0f3e81e579ea6db439d39ced3926d6ae4f563
https://github.com/llvm/llvm-project/commit/b8e0f3e81e579ea6db439d39ced3926d6ae4f563
Author: Alfie Richards <156316945+AlfieRichardsArm at users.noreply.github.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
Log Message:
-----------
[ARM] Change the type of CC and VCC code in `splitMnemonic`. (#83413)
This changes the type of `PredicationCode` and `VPTPredicationCode` from
`unsigned` to `ARMCC::CondCodes` and `ARMVCC::VPTCodes` resp' for
clarity and correctness.
Commit: 924ad198f52508ff19e7944d856ba1a2fca81961
https://github.com/llvm/llvm-project/commit/924ad198f52508ff19e7944d856ba1a2fca81961
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/test/CodeGen/X86/apx/sub.ll
Log Message:
-----------
[X86][CodeGen] Add missing patterns for APX NDD instructions about encoding trick
Commit: dfec4ef1a2ff8dc6685594813bcf14c27db9d5bc
https://github.com/llvm/llvm-project/commit/dfec4ef1a2ff8dc6685594813bcf14c27db9d5bc
Author: Martin Wehking <martin.wehking at codeplay.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
Log Message:
-----------
Use object directly instead of accessing ArrayRef (#83263)
Use RegOp directly inside debug code to silence a static analyzer that
warns about accessing it through its ArrayRef wrapper.
Commit: b873847a53ae638e2146e3657fe33efe30c2afe1
https://github.com/llvm/llvm-project/commit/b873847a53ae638e2146e3657fe33efe30c2afe1
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/test/Preprocessor/has_attribute.cpp
M clang/test/SemaCXX/attr-declspec-ignored.cpp
M clang/test/SemaCXX/attr-gnu.cpp
A clang/test/SemaCXX/cxx03-cxx11-attr.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[Clang] Fix __has_cpp_attribute and C++11 attributes with arguments in C++03 (#83065)
The values for `__has_cpp_attribute` don't have to be guarded behind
`LangOpts.CPlusPlus` because `__has_cpp_attribute` isn't available if
Clang isn't in a C++ mode.
Fixes #82995
Commit: 3034632a2708f3b79aa30f895dc42f35569c3647
https://github.com/llvm/llvm-project/commit/3034632a2708f3b79aa30f895dc42f35569c3647
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-readobj.rst
M llvm/test/tools/llvm-readobj/XCOFF/loader-section-relocation.test
M llvm/test/tools/llvm-readobj/XCOFF/loader-section-symbol.test
M llvm/test/tools/llvm-readobj/XCOFF/relocations.test
M llvm/test/tools/llvm-readobj/XCOFF/symbols.test
M llvm/tools/llvm-readobj/XCOFFDumper.cpp
Log Message:
-----------
[llvm-readobj] enable demangle option for the xcoff object file (#78455)
enable `--demangle` option for the xcoff object file for llvm-readobj
Commit: 18d2ff4be7898eaf666564dcca07ad6bd38ababf
https://github.com/llvm/llvm-project/commit/18d2ff4be7898eaf666564dcca07ad6bd38ababf
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Context.cpp
Log Message:
-----------
[clang][Interp] Allow recursive intepretation
This shouldn't be a problem in general, but we used to have some
sanity checks that prevented it from working. Remove those and
only do them on the non-recursive calls instead.
Commit: dbf3d779bdb3cc22652b6ab24ac9827e9f228f4e
https://github.com/llvm/llvm-project/commit/dbf3d779bdb3cc22652b6ab24ac9827e9f228f4e
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Context.cpp
M clang/lib/AST/Interp/EvalEmitter.cpp
M clang/lib/AST/Interp/EvalEmitter.h
Log Message:
-----------
[clang][Interp][NFC] Remove unused paramter
We manage the Result through EvaluationResult now.
Commit: 765a5d62bc59971d267a9effee2bfc0cee036182
https://github.com/llvm/llvm-project/commit/765a5d62bc59971d267a9effee2bfc0cee036182
Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-popcnt-128-ult-ugt.ll
Log Message:
-----------
[X86] Pre-SSE42 v2i64 sgt lowering - check if representable as v2i32 (#83560)
Without PCMPGTQ, if the i64 elements are sign-extended enough to be representable as i32 then we can compare the lower i32 bits with PCMPGTD and splat the results into the upper elements.
Value tracking has meant we already get pretty close with this, but this allows us to remove a lot of unnecessary bit flipping.
Commit: 6ecd26132bbb92cceeb92524bf880bd11a2d3033
https://github.com/llvm/llvm-project/commit/6ecd26132bbb92cceeb92524bf880bd11a2d3033
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] Use ScopeExit to update Operands/PrevDist on all paths. (NFC) (#83490)
Use ScopeExit to make sure Operands/PrevDist are updated on all paths in
the loop. This makes it easier to ensure they are updated correctly if
new early continues are added.
Split off from https://github.com/llvm/llvm-project/pull/83283
PR: https://github.com/llvm/llvm-project/pull/83490
Commit: 5bafb8d95220895ca76742db297cbb75dc0fa162
https://github.com/llvm/llvm-project/commit/5bafb8d95220895ca76742db297cbb75dc0fa162
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Add/use single UsesLimit constant, NFC.
Commit: 3fc277f665f520c351b203faf3273552e77508f8
https://github.com/llvm/llvm-project/commit/3fc277f665f520c351b203faf3273552e77508f8
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] Make the insert/extractvector PHICompare a strict-weak ordering (#83571)
This was tripping off STL implementations that check for it (like libc++
with debug checking). The goal of this sort is to cluster operations on
the same values so preserve that property but sort everything else based
on the existing numbering.
Commit: e59681d96327e2ed1963ec1c0f2bc3d40df26443
https://github.com/llvm/llvm-project/commit/e59681d96327e2ed1963ec1c0f2bc3d40df26443
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/Opcodes.td
M clang/test/AST/Interp/literals.cpp
M clang/test/SemaCXX/bool.cpp
Log Message:
-----------
[clang][Interp] Allow inc/dec on boolean values
The warnings or errors are emitted in Sema, but we still need to
do the operation and provide a reasonable result.
Commit: f651f134bbaec069968f6b12bdcdb5f7752fd700
https://github.com/llvm/llvm-project/commit/f651f134bbaec069968f6b12bdcdb5f7752fd700
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Context.cpp
Log Message:
-----------
[clang][Interp][NFC] Add precondition assertions
All three of these need to be non-null.
Commit: f15d799f16092918b948536775475dfd8675c7d9
https://github.com/llvm/llvm-project/commit/f15d799f16092918b948536775475dfd8675c7d9
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/functions.cpp
Log Message:
-----------
[clang][Interp] Fix variadic operator calls
Operator calls pass their instance member explicitly, so remove
it from NumParams when calling a variadic function
Commit: b0181be36cace3460e4ec5d0d11ecbf49484cc55
https://github.com/llvm/llvm-project/commit/b0181be36cace3460e4ec5d0d11ecbf49484cc55
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/include/clang/Sema/Scope.h
M clang/lib/Sema/SemaStmt.cpp
M clang/test/SemaOpenACC/no-branch-in-out.c
M clang/test/SemaOpenACC/no-branch-in-out.cpp
Log Message:
-----------
[OpenACC] Implement Duffs-Device restriction for Compute Constructs (#83460)
Like the last few patches, branching in/out of a compute construct is
not valid. This patch implements checking to ensure that a 'case' or
'default' statement cannot jump into a Compute Construct (in the style
of a duff's device!).
Commit: a038f9758e02812803b7efce10ecf784f9842bbb
https://github.com/llvm/llvm-project/commit/a038f9758e02812803b7efce10ecf784f9842bbb
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.h
M clang/test/SemaCXX/undefined-internal.cpp
Log Message:
-----------
[clang][Interp] Fix virtual calls with reference instance pointers
getCXXRecordType() on those types does not return the type we need.
Use getPointeeCXXRecordType() instead in those cases.
Commit: 06bd74ba4ac5229f01b64772b49e025be5eb7b53
https://github.com/llvm/llvm-project/commit/06bd74ba4ac5229f01b64772b49e025be5eb7b53
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
A clang/test/SemaCXX/GH83461.cpp
Log Message:
-----------
Fix implementation of [temp.param]p14's first sentence. (#83487)
The first sentence says:
If a template-parameter of a class template, variable template, or alias
template has a default template-argument, each subsequent
template-parameter shall either have a default template-argument
supplied or be a template parameter pack.
However, we were only testing for "not a function function template",
and referring to an older version of the standard. As far as I can tell,
CWG2032 added the variable-template, and the alias-template pre-dates
the standard on github.
This patch started as a bug fix for #83461 , but ended up fixing a
number of similar cases, so those are validated as well.
Commit: 601a9587a1a7eb8dd6377c4ab332edd3bce97a98
https://github.com/llvm/llvm-project/commit/601a9587a1a7eb8dd6377c4ab332edd3bce97a98
Author: Mats Petersson <mats.petersson at arm.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M flang/docs/Directives.md
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/Fortran-parsers.cpp
M flang/lib/Parser/unparse.cpp
A flang/test/Parser/assume-aligned.f90
Log Message:
-----------
[Flang] Add support for assume_aligned directive (#81747)
This adds the parsing (and unparse) of the compiler drective assume_aligned.
The compiler will issue a warning that the directive is ignored.
Commit: 2b4d67bf59d609321701540a15f48eda04688652
https://github.com/llvm/llvm-project/commit/2b4d67bf59d609321701540a15f48eda04688652
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/warn-unused-variables.cpp
Log Message:
-----------
[Clang][Sema]: Allow copy constructor side effects (#81127)
Copy constructors can have initialization with side effects, and thus
clang should not emit a warning when -Wunused-variable is used in this
context. Currently however, a warning is emitted.
Now, compilation happens without warnings.
Fixes #79518
Commit: b92c3fe0274f3ba3bb7c58a8529bd9c4303a3b51
https://github.com/llvm/llvm-project/commit/b92c3fe0274f3ba3bb7c58a8529bd9c4303a3b51
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/Driver/openmp-offload-gpu.c
Log Message:
-----------
[OpenMP] Fix test after updating library search paths (#83573)
Summary:
We still use this bitcode library in one case, the NVPTX non-LTO build.
The patch updated the search paths to treat it the same as other
libraries, which unintentionally prioritized system paths over
LIBRARY_PATH which is generally not correct. Also we had a test that
relied on system state so remove that.
Commit: 92fe6c61f900d6479f7ab708784c9e62d7523768
https://github.com/llvm/llvm-project/commit/92fe6c61f900d6479f7ab708784c9e62d7523768
Author: Martin Wehking <martin.wehking at codeplay.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def
Log Message:
-----------
Silence illegal address computation warning (#83244)
Add an assertion before an access of ValMappings to ensure that it is
within the array bounds.
Silence a static analyzer warning through this.
Commit: 63b5482a724620431da2fef4e1d57b5f1cc5302b
https://github.com/llvm/llvm-project/commit/63b5482a724620431da2fef4e1d57b5f1cc5302b
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-03-01 (Fri, 01 Mar 2024)
Changed paths:
M .github/new-prs-labeler.yml
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryFunction.cpp
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
A clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
A clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
M clang-tools-extra/clangd/CMakeLists.txt
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/tool/CMakeLists.txt
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Driver/Driver.h
M clang/include/clang/InstallAPI/Context.h
A clang/include/clang/InstallAPI/Frontend.h
M clang/include/clang/InstallAPI/HeaderFile.h
A clang/include/clang/InstallAPI/Visitor.h
M clang/include/clang/Sema/Scope.h
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/Context.cpp
M clang/lib/AST/Interp/Context.h
M clang/lib/AST/Interp/EvalEmitter.cpp
M clang/lib/AST/Interp/EvalEmitter.h
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/Opcodes.td
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfo.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/fmaintrin.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/prfchwintrin.h
M clang/lib/Headers/smmintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/lib/InstallAPI/CMakeLists.txt
A clang/lib/InstallAPI/Frontend.cpp
A clang/lib/InstallAPI/Visitor.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/test/AST/Interp/arrays.cpp
M clang/test/AST/Interp/c.c
M clang/test/AST/Interp/cxx20.cpp
M clang/test/AST/Interp/cxx98.cpp
M clang/test/AST/Interp/functions.cpp
M clang/test/AST/Interp/literals.cpp
M clang/test/Analysis/stream-note.c
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
M clang/test/CodeGen/PowerPC/aix-tls-model.cpp
M clang/test/CodeGen/aarch64-cpu-supports.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/builtins-hexagon.c
M clang/test/CodeGen/builtins.c
M clang/test/CodeGen/fat-lto-objects.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/cos.hlsl
M clang/test/CodeGenHLSL/builtins/dot.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
A clang/test/CodeGenHLSL/builtins/frac.hlsl
A clang/test/CodeGenHLSL/builtins/lerp-builtin.hlsl
A clang/test/CodeGenHLSL/builtins/lerp.hlsl
M clang/test/CodeGenHLSL/builtins/log.hlsl
M clang/test/CodeGenHLSL/builtins/log10.hlsl
M clang/test/CodeGenHLSL/builtins/log2.hlsl
M clang/test/CodeGenHLSL/builtins/max.hlsl
M clang/test/CodeGenHLSL/builtins/min.hlsl
M clang/test/CodeGenHLSL/builtins/pow.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/Driver/android-link.cpp
M clang/test/Driver/darwin-header-search-libcxx.cpp
M clang/test/Driver/mingw-sysroot.cpp
M clang/test/Driver/no-canonical-prefixes.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/program-path-priority.c
M clang/test/Driver/rocm-detect.hip
M clang/test/InstallAPI/basic.test
A clang/test/InstallAPI/variables.test
M clang/test/Misc/warning-flags.c
A clang/test/OpenMP/interop_codegen.cpp
M clang/test/OpenMP/scan_ast_print.cpp
M clang/test/Preprocessor/has_attribute.cpp
M clang/test/Preprocessor/riscv-target-features.c
M clang/test/Sema/aarch64-cpu-supports.c
M clang/test/Sema/aix-attr-tls_model.c
M clang/test/Sema/builtin-cpu-supports.c
M clang/test/Sema/builtin-popcountg.c
A clang/test/SemaCXX/GH83461.cpp
M clang/test/SemaCXX/attr-declspec-ignored.cpp
M clang/test/SemaCXX/attr-gnu.cpp
M clang/test/SemaCXX/bool.cpp
A clang/test/SemaCXX/cxx03-cxx11-attr.cpp
A clang/test/SemaCXX/restrict-this.cpp
M clang/test/SemaCXX/undefined-internal.cpp
M clang/test/SemaCXX/warn-bool-conversion.cpp
M clang/test/SemaCXX/warn-unused-variables.cpp
M clang/test/SemaHLSL/BuiltIns/dot-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/frac-errors.hlsl
A clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
M clang/test/SemaOpenACC/no-branch-in-out.c
M clang/test/SemaOpenACC/no-branch-in-out.cpp
M clang/tools/clang-installapi/CMakeLists.txt
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
M clang/tools/driver/driver.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
M compiler-rt/lib/scudo/standalone/allocator_common.h
M compiler-rt/lib/scudo/standalone/primary32.h
M compiler-rt/lib/scudo/standalone/primary64.h
M compiler-rt/lib/scudo/standalone/secondary.h
M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
A compiler-rt/test/hwasan/TestCases/longjmp-out-of-range.c
M flang/docs/Directives.md
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Runtime/reduction.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
M flang/lib/Parser/Fortran-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/runtime/Float128Math/CMakeLists.txt
M flang/runtime/Float128Math/acos.cpp
M flang/runtime/Float128Math/acosh.cpp
M flang/runtime/Float128Math/asin.cpp
M flang/runtime/Float128Math/asinh.cpp
M flang/runtime/Float128Math/atan.cpp
M flang/runtime/Float128Math/atan2.cpp
M flang/runtime/Float128Math/atanh.cpp
M flang/runtime/Float128Math/cabs.cpp
M flang/runtime/Float128Math/ceil.cpp
M flang/runtime/Float128Math/cos.cpp
M flang/runtime/Float128Math/cosh.cpp
M flang/runtime/Float128Math/erf.cpp
M flang/runtime/Float128Math/erfc.cpp
M flang/runtime/Float128Math/exp.cpp
A flang/runtime/Float128Math/exponent.cpp
M flang/runtime/Float128Math/floor.cpp
A flang/runtime/Float128Math/fraction.cpp
M flang/runtime/Float128Math/hypot.cpp
M flang/runtime/Float128Math/j0.cpp
M flang/runtime/Float128Math/j1.cpp
M flang/runtime/Float128Math/jn.cpp
M flang/runtime/Float128Math/lgamma.cpp
M flang/runtime/Float128Math/llround.cpp
M flang/runtime/Float128Math/log.cpp
M flang/runtime/Float128Math/log10.cpp
M flang/runtime/Float128Math/lround.cpp
M flang/runtime/Float128Math/math-entries.h
A flang/runtime/Float128Math/mod-real.cpp
A flang/runtime/Float128Math/modulo-real.cpp
A flang/runtime/Float128Math/nearest.cpp
A flang/runtime/Float128Math/norm2.cpp
A flang/runtime/Float128Math/numeric-template-specs.h
M flang/runtime/Float128Math/pow.cpp
M flang/runtime/Float128Math/round.cpp
A flang/runtime/Float128Math/rrspacing.cpp
A flang/runtime/Float128Math/scale.cpp
A flang/runtime/Float128Math/set-exponent.cpp
M flang/runtime/Float128Math/sin.cpp
M flang/runtime/Float128Math/sinh.cpp
A flang/runtime/Float128Math/spacing.cpp
M flang/runtime/Float128Math/sqrt.cpp
M flang/runtime/Float128Math/tan.cpp
M flang/runtime/Float128Math/tanh.cpp
M flang/runtime/Float128Math/tgamma.cpp
M flang/runtime/Float128Math/trunc.cpp
M flang/runtime/Float128Math/y0.cpp
M flang/runtime/Float128Math/y1.cpp
M flang/runtime/Float128Math/yn.cpp
M flang/runtime/extrema.cpp
A flang/runtime/numeric-templates.h
M flang/runtime/numeric.cpp
M flang/runtime/reduction-templates.h
M flang/runtime/tools.h
M flang/test/Driver/flang-experimental-polymorphism-flag.f90
M flang/test/HLFIR/all-lowering.fir
M flang/test/HLFIR/any-lowering.fir
M flang/test/HLFIR/count-lowering-default-int-kinds.fir
M flang/test/HLFIR/count-lowering.fir
M flang/test/HLFIR/dot_product-lowering.fir
M flang/test/HLFIR/extents-of-shape-of.f90
M flang/test/HLFIR/matmul-lowering.fir
M flang/test/HLFIR/maxloc-lowering.fir
M flang/test/HLFIR/maxval-lowering.fir
M flang/test/HLFIR/minloc-lowering.fir
M flang/test/HLFIR/minval-lowering.fir
M flang/test/HLFIR/mul_transpose.f90
M flang/test/HLFIR/product-lowering.fir
M flang/test/HLFIR/sum-lowering.fir
M flang/test/HLFIR/transpose-lowering.fir
A flang/test/Integration/OpenMP/copyprivate.f90
M flang/test/Lower/Intrinsics/norm2.f90
M flang/test/Lower/convert.f90
A flang/test/Parser/assume-aligned.f90
M libc/.clang-tidy
M libc/benchmarks/automemcpy/lib/CMakeLists.txt
M libc/cmake/modules/CheckCompilerFeatures.cmake
M libc/cmake/modules/LLVMLibCArchitectures.cmake
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/cmake/modules/compiler_features/check_fixed_point.cpp
M libc/cmake/modules/compiler_features/check_float128.cpp
M libc/config/baremetal/api.td
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/arm/headers.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/baremetal/riscv/headers.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/dev/code_style.rst
M libc/docs/dev/undefined_behavior.rst
M libc/fuzzing/stdio/printf_fixed_conv_fuzz.cpp
M libc/include/__llvm-libc-common.h
M libc/include/llvm-libc-macros/containerof-macro.h
M libc/include/llvm-libc-macros/fcntl-macros.h
M libc/include/llvm-libc-macros/features-macros.h
M libc/include/llvm-libc-macros/fenv-macros.h
M libc/include/llvm-libc-macros/file-seek-macros.h
M libc/include/llvm-libc-macros/float-macros.h
M libc/include/llvm-libc-macros/generic-error-number-macros.h
M libc/include/llvm-libc-macros/gpu/time-macros.h
M libc/include/llvm-libc-macros/inttypes-macros.h
M libc/include/llvm-libc-macros/limits-macros.h
M libc/include/llvm-libc-macros/linux/fcntl-macros.h
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-macros/linux/signal-macros.h
M libc/include/llvm-libc-macros/linux/sys-ioctl-macros.h
M libc/include/llvm-libc-macros/linux/sys-random-macros.h
M libc/include/llvm-libc-macros/linux/sys-resource-macros.h
M libc/include/llvm-libc-macros/linux/sys-socket-macros.h
M libc/include/llvm-libc-macros/linux/sys-stat-macros.h
M libc/include/llvm-libc-macros/linux/sys-time-macros.h
M libc/include/llvm-libc-macros/linux/sys-wait-macros.h
M libc/include/llvm-libc-macros/linux/termios-macros.h
M libc/include/llvm-libc-macros/linux/time-macros.h
M libc/include/llvm-libc-macros/linux/unistd-macros.h
M libc/include/llvm-libc-macros/math-macros.h
M libc/include/llvm-libc-macros/null-macro.h
M libc/include/llvm-libc-macros/offsetof-macro.h
M libc/include/llvm-libc-macros/sched-macros.h
M libc/include/llvm-libc-macros/signal-macros.h
M libc/include/llvm-libc-macros/stdckdint-macros.h
M libc/include/llvm-libc-macros/stdfix-macros.h
M libc/include/llvm-libc-macros/stdio-macros.h
M libc/include/llvm-libc-macros/stdlib-macros.h
M libc/include/llvm-libc-macros/sys-auxv-macros.h
M libc/include/llvm-libc-macros/sys-ioctl-macros.h
M libc/include/llvm-libc-macros/sys-mman-macros.h
M libc/include/llvm-libc-macros/sys-queue-macros.h
M libc/include/llvm-libc-macros/sys-random-macros.h
M libc/include/llvm-libc-macros/sys-resource-macros.h
M libc/include/llvm-libc-macros/sys-select-macros.h
M libc/include/llvm-libc-macros/sys-socket-macros.h
M libc/include/llvm-libc-macros/sys-stat-macros.h
M libc/include/llvm-libc-macros/sys-time-macros.h
M libc/include/llvm-libc-macros/sys-wait-macros.h
M libc/include/llvm-libc-macros/termios-macros.h
M libc/include/llvm-libc-macros/time-macros.h
M libc/include/llvm-libc-macros/unistd-macros.h
M libc/include/llvm-libc-macros/wchar-macros.h
M libc/include/llvm-libc-types/ACTION.h
M libc/include/llvm-libc-types/DIR.h
M libc/include/llvm-libc-types/ENTRY.h
M libc/include/llvm-libc-types/FILE.h
M libc/include/llvm-libc-types/__atexithandler_t.h
M libc/include/llvm-libc-types/__atfork_callback_t.h
M libc/include/llvm-libc-types/__bsearchcompare_t.h
M libc/include/llvm-libc-types/__call_once_func_t.h
M libc/include/llvm-libc-types/__exec_argv_t.h
M libc/include/llvm-libc-types/__exec_envp_t.h
M libc/include/llvm-libc-types/__futex_word.h
M libc/include/llvm-libc-types/__getoptargv_t.h
M libc/include/llvm-libc-types/__mutex_type.h
M libc/include/llvm-libc-types/__pthread_once_func_t.h
M libc/include/llvm-libc-types/__pthread_start_t.h
M libc/include/llvm-libc-types/__pthread_tss_dtor_t.h
M libc/include/llvm-libc-types/__qsortcompare_t.h
M libc/include/llvm-libc-types/__qsortrcompare_t.h
M libc/include/llvm-libc-types/__sighandler_t.h
M libc/include/llvm-libc-types/__thread_type.h
M libc/include/llvm-libc-types/blkcnt_t.h
M libc/include/llvm-libc-types/blksize_t.h
M libc/include/llvm-libc-types/cc_t.h
M libc/include/llvm-libc-types/clock_t.h
M libc/include/llvm-libc-types/clockid_t.h
M libc/include/llvm-libc-types/cnd_t.h
M libc/include/llvm-libc-types/cookie_io_functions_t.h
M libc/include/llvm-libc-types/cpu_set_t.h
M libc/include/llvm-libc-types/dev_t.h
M libc/include/llvm-libc-types/div_t.h
M libc/include/llvm-libc-types/double_t.h
M libc/include/llvm-libc-types/fd_set.h
M libc/include/llvm-libc-types/fenv_t.h
M libc/include/llvm-libc-types/fexcept_t.h
M libc/include/llvm-libc-types/float128.h
M libc/include/llvm-libc-types/float_t.h
M libc/include/llvm-libc-types/gid_t.h
M libc/include/llvm-libc-types/ino_t.h
M libc/include/llvm-libc-types/jmp_buf.h
M libc/include/llvm-libc-types/ldiv_t.h
M libc/include/llvm-libc-types/lldiv_t.h
M libc/include/llvm-libc-types/mode_t.h
M libc/include/llvm-libc-types/mtx_t.h
M libc/include/llvm-libc-types/nlink_t.h
M libc/include/llvm-libc-types/off64_t.h
M libc/include/llvm-libc-types/off_t.h
M libc/include/llvm-libc-types/once_flag.h
M libc/include/llvm-libc-types/pid_t.h
M libc/include/llvm-libc-types/posix_spawn_file_actions_t.h
M libc/include/llvm-libc-types/posix_spawnattr_t.h
M libc/include/llvm-libc-types/pthread_attr_t.h
M libc/include/llvm-libc-types/pthread_key_t.h
M libc/include/llvm-libc-types/pthread_mutex_t.h
M libc/include/llvm-libc-types/pthread_mutexattr_t.h
M libc/include/llvm-libc-types/pthread_once_t.h
M libc/include/llvm-libc-types/pthread_t.h
M libc/include/llvm-libc-types/rlim_t.h
M libc/include/llvm-libc-types/rpc_opcodes_t.h
M libc/include/llvm-libc-types/sa_family_t.h
M libc/include/llvm-libc-types/sig_atomic_t.h
M libc/include/llvm-libc-types/siginfo_t.h
M libc/include/llvm-libc-types/sigset_t.h
M libc/include/llvm-libc-types/size_t.h
M libc/include/llvm-libc-types/socklen_t.h
M libc/include/llvm-libc-types/speed_t.h
M libc/include/llvm-libc-types/ssize_t.h
M libc/include/llvm-libc-types/stack_t.h
M libc/include/llvm-libc-types/struct_dirent.h
M libc/include/llvm-libc-types/struct_epoll_data.h
M libc/include/llvm-libc-types/struct_epoll_event.h
M libc/include/llvm-libc-types/struct_hsearch_data.h
M libc/include/llvm-libc-types/struct_rlimit.h
M libc/include/llvm-libc-types/struct_rusage.h
M libc/include/llvm-libc-types/struct_sched_param.h
M libc/include/llvm-libc-types/struct_sigaction.h
M libc/include/llvm-libc-types/struct_sockaddr.h
M libc/include/llvm-libc-types/struct_sockaddr_un.h
M libc/include/llvm-libc-types/struct_stat.h
M libc/include/llvm-libc-types/struct_timespec.h
M libc/include/llvm-libc-types/struct_timeval.h
M libc/include/llvm-libc-types/struct_tm.h
M libc/include/llvm-libc-types/struct_utsname.h
M libc/include/llvm-libc-types/suseconds_t.h
M libc/include/llvm-libc-types/tcflag_t.h
M libc/include/llvm-libc-types/test_rpc_opcodes_t.h
M libc/include/llvm-libc-types/thrd_start_t.h
M libc/include/llvm-libc-types/thrd_t.h
M libc/include/llvm-libc-types/time_t.h
M libc/include/llvm-libc-types/tss_dtor_t.h
M libc/include/llvm-libc-types/tss_t.h
M libc/include/llvm-libc-types/uid_t.h
M libc/include/llvm-libc-types/union_sigval.h
M libc/include/llvm-libc-types/wchar_t.h
M libc/include/llvm-libc-types/wint_t.h
M libc/include/sys/queue.h
M libc/spec/stdc.td
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/limits.h
M libc/src/__support/CPP/type_traits/is_fixed_point.h
M libc/src/__support/CPP/type_traits/is_floating_point.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/fpbits_str.h
M libc/src/__support/GPU/generic/utils.h
M libc/src/__support/GPU/utils.h
M libc/src/__support/HashTable/table.h
M libc/src/__support/OSUtil/gpu/io.h
M libc/src/__support/RPC/rpc_client.h
M libc/src/__support/RPC/rpc_util.h
M libc/src/__support/StringUtil/message_mapper.h
M libc/src/__support/StringUtil/platform_errors.h
M libc/src/__support/StringUtil/platform_signals.h
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
M libc/src/__support/StringUtil/tables/linux_extension_signals.h
M libc/src/__support/StringUtil/tables/linux_platform_errors.h
M libc/src/__support/StringUtil/tables/linux_platform_signals.h
M libc/src/__support/StringUtil/tables/minimal_platform_errors.h
M libc/src/__support/StringUtil/tables/minimal_platform_signals.h
M libc/src/__support/StringUtil/tables/posix_errors.h
M libc/src/__support/StringUtil/tables/posix_signals.h
M libc/src/__support/StringUtil/tables/signal_table.h
M libc/src/__support/StringUtil/tables/stdc_errors.h
M libc/src/__support/StringUtil/tables/stdc_signals.h
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/__support/fixed_point/fx_rep.h
M libc/src/__support/fixed_point/sqrt.h
M libc/src/__support/macros/properties/CMakeLists.txt
R libc/src/__support/macros/properties/float.h
A libc/src/__support/macros/properties/types.h
M libc/src/__support/memory_size.h
M libc/src/__support/threads/gpu/mutex.h
M libc/src/assert/assert.h
M libc/src/gpu/rpc_host_call.h
M libc/src/math/amdgpu/declarations.h
M libc/src/math/amdgpu/fmax.cpp
M libc/src/math/amdgpu/fmaxf.cpp
M libc/src/math/amdgpu/fmin.cpp
M libc/src/math/amdgpu/fminf.cpp
M libc/src/math/amdgpu/platform.h
M libc/src/math/ceilf128.h
M libc/src/math/copysignf128.h
M libc/src/math/fabsf128.h
M libc/src/math/fdimf128.h
M libc/src/math/floorf128.h
M libc/src/math/fmaxf128.h
M libc/src/math/fminf128.h
M libc/src/math/frexpf128.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp_utils.h
M libc/src/math/ilogbf128.h
M libc/src/math/ldexpf128.h
M libc/src/math/llogb.h
M libc/src/math/llogbf.h
M libc/src/math/llogbf128.h
M libc/src/math/llogbl.h
M libc/src/math/logbf128.h
M libc/src/math/nvptx/declarations.h
M libc/src/math/nvptx/fmax.cpp
M libc/src/math/nvptx/fmaxf.cpp
M libc/src/math/nvptx/fmin.cpp
M libc/src/math/nvptx/fminf.cpp
M libc/src/math/nvptx/nvptx.h
M libc/src/math/roundf128.h
M libc/src/math/sqrtf128.h
M libc/src/math/truncf128.h
M libc/src/search/hsearch/global.h
M libc/src/stdfix/abshk.h
M libc/src/stdfix/abshr.h
M libc/src/stdfix/absk.h
M libc/src/stdfix/abslk.h
M libc/src/stdfix/abslr.h
M libc/src/stdfix/absr.h
M libc/src/stdfix/roundhk.h
M libc/src/stdfix/roundhr.h
M libc/src/stdfix/roundk.h
M libc/src/stdfix/roundlk.h
M libc/src/stdfix/roundlr.h
M libc/src/stdfix/roundr.h
M libc/src/stdfix/rounduhk.h
M libc/src/stdfix/rounduhr.h
M libc/src/stdfix/rounduk.h
M libc/src/stdfix/roundulk.h
M libc/src/stdfix/roundulr.h
M libc/src/stdfix/roundur.h
M libc/src/stdfix/sqrtuhk.h
M libc/src/stdfix/sqrtuhr.h
M libc/src/stdfix/sqrtuk.h
M libc/src/stdfix/sqrtulr.h
M libc/src/stdfix/sqrtur.h
M libc/src/stdio/printf_core/fixed_converter.h
M libc/src/stdio/printf_core/parser.h
M libc/src/string/memory_utils/aarch64/inline_bcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcpy.h
M libc/src/string/memory_utils/generic/aligned_access.h
M libc/src/string/memory_utils/generic/byte_per_byte.h
M libc/src/string/memory_utils/op_aarch64.h
M libc/src/string/memory_utils/op_builtin.h
M libc/src/string/memory_utils/op_generic.h
M libc/src/string/memory_utils/riscv/inline_memmove.h
M libc/src/string/memory_utils/utils.h
M libc/src/string/memory_utils/x86_64/inline_bcmp.h
M libc/src/string/memory_utils/x86_64/inline_memcmp.h
M libc/src/sys/epoll/epoll_pwait.h
M libc/src/sys/epoll/epoll_pwait2.h
M libc/src/sys/epoll/epoll_wait.h
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/ExecuteFunction.h
M libc/test/UnitTest/FPExceptMatcher.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/UnitTest/LibcTest.cpp
M libc/test/UnitTest/LibcTest.h
M libc/test/UnitTest/MemoryMatcher.h
M libc/test/UnitTest/PlatformDefs.h
M libc/test/UnitTest/RoundingModeUtils.h
M libc/test/UnitTest/StringUtils.h
M libc/test/UnitTest/Test.h
M libc/test/include/stdbit_test.cpp
M libc/test/include/stdckdint_test.cpp
M libc/test/include/sys/queue_test.cpp
M libc/test/integration/src/spawn/test_binary_properties.h
M libc/test/integration/startup/CMakeLists.txt
M libc/test/integration/startup/gpu/rpc_interface_test.cpp
M libc/test/integration/startup/gpu/rpc_stream_test.cpp
M libc/test/integration/startup/gpu/rpc_test.cpp
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/__support/fixed_point/fx_bits_test.cpp
M libc/test/src/__support/uint_test.cpp
M libc/test/src/compiler/stack_chk_guard_test.cpp
M libc/test/src/math/FAbsTest.h
M libc/test/src/math/FMaxTest.h
M libc/test/src/math/FMinTest.h
M libc/test/src/math/FloorTest.h
M libc/test/src/math/RandUtils.h
M libc/test/src/math/RoundTest.h
M libc/test/src/math/TruncTest.h
M libc/test/src/math/differential_testing/CMakeLists.txt
M libc/test/src/math/differential_testing/Timer.h
M libc/test/src/math/in_float_range_test_helper.h
M libc/test/src/math/smoke/CeilTest.h
M libc/test/src/math/smoke/CopySignTest.h
M libc/test/src/math/smoke/FAbsTest.h
M libc/test/src/math/smoke/FMaxTest.h
M libc/test/src/math/smoke/FMinTest.h
M libc/test/src/math/smoke/FloorTest.h
M libc/test/src/math/smoke/RIntTest.h
M libc/test/src/math/smoke/RoundTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/TruncTest.h
M libc/test/src/time/TmHelper.h
M libc/utils/LibcTableGenUtil/CMakeLists.txt
M libc/utils/MPFRWrapper/MPFRUtils.h
M libc/utils/gpu/loader/Loader.h
M libcxx/cmake/config-ix.cmake
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/include/__assert
M libcxx/include/__atomic/aliases.h
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__charconv/from_chars_integral.h
M libcxx/include/__charconv/to_chars_base_10.h
M libcxx/include/__charconv/to_chars_integral.h
M libcxx/include/__charconv/traits.h
M libcxx/include/__config
M libcxx/include/__format/formatter_floating_point.h
M libcxx/include/__numeric/saturation_arithmetic.h
M libcxx/include/__random/negative_binomial_distribution.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__string/char_traits.h
M libcxx/include/__thread/support/pthread.h
M libcxx/include/__utility/integer_sequence.h
M libcxx/include/algorithm
M libcxx/include/any
M libcxx/include/array
M libcxx/include/atomic
M libcxx/include/barrier
M libcxx/include/bit
M libcxx/include/bitset
M libcxx/include/cassert
M libcxx/include/ccomplex
M libcxx/include/cctype
M libcxx/include/cerrno
M libcxx/include/cfenv
M libcxx/include/cfloat
M libcxx/include/charconv
M libcxx/include/chrono
M libcxx/include/cinttypes
M libcxx/include/ciso646
M libcxx/include/climits
M libcxx/include/clocale
M libcxx/include/cmath
M libcxx/include/codecvt
M libcxx/include/compare
M libcxx/include/complex
M libcxx/include/concepts
M libcxx/include/condition_variable
M libcxx/include/coroutine
M libcxx/include/csetjmp
M libcxx/include/csignal
M libcxx/include/cstdarg
M libcxx/include/cstdbool
M libcxx/include/cstddef
M libcxx/include/cstdint
M libcxx/include/cstdio
M libcxx/include/cstdlib
M libcxx/include/cstring
M libcxx/include/ctgmath
M libcxx/include/ctime
M libcxx/include/cuchar
M libcxx/include/cwchar
M libcxx/include/cwctype
M libcxx/include/deque
M libcxx/include/exception
M libcxx/include/execution
M libcxx/include/expected
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/vec_ext.h
M libcxx/include/experimental/iterator
M libcxx/include/experimental/propagate_const
M libcxx/include/experimental/simd
M libcxx/include/experimental/type_traits
M libcxx/include/experimental/utility
M libcxx/include/ext/hash_map
M libcxx/include/ext/hash_set
M libcxx/include/filesystem
M libcxx/include/format
M libcxx/include/forward_list
M libcxx/include/fstream
M libcxx/include/functional
M libcxx/include/future
M libcxx/include/initializer_list
M libcxx/include/iomanip
M libcxx/include/ios
M libcxx/include/iosfwd
M libcxx/include/iostream
M libcxx/include/istream
M libcxx/include/iterator
M libcxx/include/latch
M libcxx/include/libcxx.imp
M libcxx/include/limits
M libcxx/include/list
M libcxx/include/locale
M libcxx/include/map
M libcxx/include/memory
M libcxx/include/mutex
M libcxx/include/new
M libcxx/include/numbers
M libcxx/include/numeric
M libcxx/include/optional
M libcxx/include/ostream
M libcxx/include/print
M libcxx/include/queue
M libcxx/include/random
M libcxx/include/ranges
M libcxx/include/ratio
M libcxx/include/regex
M libcxx/include/scoped_allocator
M libcxx/include/semaphore
M libcxx/include/set
M libcxx/include/shared_mutex
M libcxx/include/span
M libcxx/include/sstream
M libcxx/include/stack
M libcxx/include/stdexcept
M libcxx/include/stop_token
M libcxx/include/streambuf
M libcxx/include/string
M libcxx/include/string_view
M libcxx/include/strstream
M libcxx/include/system_error
M libcxx/include/thread
M libcxx/include/tuple
M libcxx/include/type_traits
M libcxx/include/typeindex
M libcxx/include/typeinfo
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/utility
M libcxx/include/valarray
M libcxx/include/variant
M libcxx/include/vector
M libcxx/include/version
M libcxx/src/new.cpp
M libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
R libcxx/test/libcxx/assertions/headers_declare_verbose_abort.gen.py
M libcxx/test/libcxx/assertions/modes/none.pass.cpp
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.file/to_from_sys.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.hires/now.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.system/from_time_t.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.system/now.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.system/to_time_t.pass.cpp
M libcxx/test/std/time/time.point/time.point.nonmember/op_-duration.pass.cpp
R libcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.pass.cpp
R libcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.verify.cpp
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_iwyu_mapping.py
M lldb/bindings/CMakeLists.txt
M lldb/cmake/modules/AddLLDB.cmake
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/include/lldb/Core/Progress.h
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/Options.td
M lldb/source/Host/common/Editline.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/test/API/commands/command/script/TestCommandScript.py
A lldb/test/API/commands/command/script/cmd_file.lldb
M lldb/test/API/functionalities/completion/TestCompletion.py
M lldb/test/API/functionalities/completion/main.cpp
M lldb/test/API/lang/c/local_variables/TestLocalVariables.py
A lldb/test/API/lang/cpp/gmodules/alignment/Makefile
A lldb/test/API/lang/cpp/gmodules/alignment/TestPchAlignment.py
A lldb/test/API/lang/cpp/gmodules/alignment/main.cpp
A lldb/test/API/lang/cpp/gmodules/alignment/pch.h
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/API/macosx/nslog/TestDarwinNSLogOutput.py
M lldb/test/API/repl/clang/TestClangREPL.py
M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py
M lldb/test/API/tools/lldb-dap/databreakpoint/TestDAP_setDataBreakpoints.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/CMakeLists.txt
M lldb/test/Shell/Driver/TestHelp.test
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/debugserver/source/RNBRemote.h
M lldb/tools/driver/Driver.cpp
M lldb/tools/driver/Driver.h
M lldb/tools/lldb-dap/Watchpoint.cpp
M lldb/tools/lldb-dap/Watchpoint.h
M lldb/tools/lldb-dap/lldb-dap.cpp
M lldb/use_lldb_suite_root.py
M lldb/utils/lldb-dotest/CMakeLists.txt
M lldb/utils/lldb-dotest/lldb-dotest.in
M llvm/CMakeLists.txt
M llvm/cmake/modules/AddLLVM.cmake
M llvm/docs/CMake.rst
M llvm/docs/CodeOfConduct.rst
M llvm/docs/CommandGuide/llvm-readobj.rst
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/DebugInfo/DIContext.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/InstrTypes.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/Module.h
M llvm/include/llvm/MC/MCExpr.h
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParser.def
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/TextAPI/Record.h
M llvm/include/llvm/TextAPI/RecordsSlice.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/XCOFFObjectWriter.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Support/Path.cpp
M llvm/lib/Support/RISCVISAInfo.cpp
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/SMEInstrFormats.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARM.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.h
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/Hexagon/CMakeLists.txt
M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
A llvm/lib/Target/Hexagon/HexagonLoopAlign.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.h
M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
M llvm/lib/Target/PowerPC/PPC.h
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
M llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrSystem.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86InstrVMX.td
M llvm/lib/TargetParser/RISCVTargetParser.cpp
M llvm/lib/TextAPI/RecordVisitor.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
A llvm/test/CodeGen/AArch64/GlobalISel/combine-2-icmps-of-0-and-or.mir
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-inline-asm.ll
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-unwind-inline-asm.ll
M llvm/test/CodeGen/AArch64/aarch64-sme2-asm.ll
M llvm/test/CodeGen/AArch64/abs.ll
A llvm/test/CodeGen/AArch64/aes.ll
M llvm/test/CodeGen/AArch64/callbr-asm-outputs-indirect-isel.ll
M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-declare.mir
M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-value.mir
M llvm/test/CodeGen/AArch64/emit_fneg_with_non_register_operand.mir
M llvm/test/CodeGen/AArch64/live-debugvalues-sve.mir
M llvm/test/CodeGen/AArch64/misched-fusion-aes.ll
M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
M llvm/test/CodeGen/AArch64/setcc_knownbits.ll
A llvm/test/CodeGen/AArch64/shufflevector.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret.ll
M llvm/test/CodeGen/AArch64/sve-localstackalloc.mir
M llvm/test/CodeGen/AArch64/sve-pfalse-machine-cse.mir
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilege.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilegt.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehi.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehs.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilele.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelo.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilels.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelt.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilerw.mir
M llvm/test/CodeGen/AArch64/sve-ptest-removal-whilewr.mir
M llvm/test/CodeGen/AArch64/sve2p1_copy_pnr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-phi.mir
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
A llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null-vector.ll
A llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
M llvm/test/CodeGen/AMDGPU/fminnum.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.addrspacecast.nonnull.ll
A llvm/test/CodeGen/AMDGPU/rem_i128.ll
A llvm/test/CodeGen/Hexagon/loop-balign.ll
A llvm/test/CodeGen/Hexagon/loop_align_count.ll
A llvm/test/CodeGen/Hexagon/loop_align_count.mir
A llvm/test/CodeGen/Hexagon/v6-haar-balign32.ll
M llvm/test/CodeGen/PowerPC/2008-10-28-f128-i32.ll
M llvm/test/CodeGen/PowerPC/aix-tls-gd-double.ll
M llvm/test/CodeGen/PowerPC/aix-tls-gd-int.ll
M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
A llvm/test/CodeGen/PowerPC/aix-tls-ld-xcoff-reloc-large.ll
A llvm/test/CodeGen/PowerPC/aix-tls-local-dynamic.ll
M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc-large.ll
M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc.ll
M llvm/test/CodeGen/PowerPC/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/PowerPC/crsave.ll
M llvm/test/CodeGen/PowerPC/ctrloops-pseudo.ll
M llvm/test/CodeGen/PowerPC/expand-isel-to-branch.ll
M llvm/test/CodeGen/PowerPC/fp-strict-fcmp-spe.ll
M llvm/test/CodeGen/PowerPC/fp-to-int-to-fp.ll
M llvm/test/CodeGen/PowerPC/fptoui-be-crash.ll
M llvm/test/CodeGen/PowerPC/funnel-shift-rot.ll
M llvm/test/CodeGen/PowerPC/funnel-shift.ll
M llvm/test/CodeGen/PowerPC/i1-to-double.ll
M llvm/test/CodeGen/PowerPC/ppcf128-constrained-fp-intrinsics.ll
M llvm/test/CodeGen/PowerPC/pr43976.ll
M llvm/test/CodeGen/PowerPC/pr49509.ll
M llvm/test/CodeGen/PowerPC/save-crbp-ppc32svr4.ll
M llvm/test/CodeGen/PowerPC/select-cc-no-isel.ll
M llvm/test/CodeGen/PowerPC/select.ll
M llvm/test/CodeGen/PowerPC/select_const.ll
M llvm/test/CodeGen/PowerPC/smulfixsat.ll
M llvm/test/CodeGen/PowerPC/spe.ll
M llvm/test/CodeGen/PowerPC/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/PowerPC/umulfixsat.ll
M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll
M llvm/test/CodeGen/PowerPC/varargs.ll
M llvm/test/CodeGen/PowerPC/wide-scalar-shift-by-byte-multiple-legalization.ll
M llvm/test/CodeGen/PowerPC/wide-scalar-shift-legalization.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/atomic-rmw.ll
M llvm/test/CodeGen/RISCV/atomic-signext.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/machine-combiner.ll
M llvm/test/CodeGen/RISCV/pr69586.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vcopysign-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
M llvm/test/CodeGen/RISCV/rvv/vcopysign-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfmax-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmin-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfwnmsac-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll
M llvm/test/CodeGen/X86/apx/compress-evex.mir
M llvm/test/CodeGen/X86/apx/sub.ll
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
M llvm/test/CodeGen/X86/avx512fp16-fp-logic.ll
M llvm/test/CodeGen/X86/cmov-fp.ll
M llvm/test/CodeGen/X86/combine-sse41-intrinsics.ll
M llvm/test/CodeGen/X86/cvt16.ll
M llvm/test/CodeGen/X86/f16c-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/X86/fp-roundeven.ll
M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
M llvm/test/CodeGen/X86/half.ll
M llvm/test/CodeGen/X86/horizontal-reduce-umax.ll
M llvm/test/CodeGen/X86/horizontal-reduce-umin.ll
A llvm/test/CodeGen/X86/inline-asm-memop.ll
M llvm/test/CodeGen/X86/pr31088.ll
M llvm/test/CodeGen/X86/pr34605.ll
M llvm/test/CodeGen/X86/pr38803.ll
M llvm/test/CodeGen/X86/pr43509.ll
M llvm/test/CodeGen/X86/pr57340.ll
M llvm/test/CodeGen/X86/pr78897.ll
M llvm/test/CodeGen/X86/prefer-fpext-splat.ll
M llvm/test/CodeGen/X86/select-of-fp-constants.ll
M llvm/test/CodeGen/X86/select-of-half-constants.ll
M llvm/test/CodeGen/X86/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/X86/test-shrink-bug.ll
M llvm/test/CodeGen/X86/urem-seteq-vec-nonzero.ll
M llvm/test/CodeGen/X86/urem-seteq-vec-tautological.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-popcnt-128-ult-ugt.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-umax.ll
M llvm/test/CodeGen/X86/vector-reduce-umin.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
M llvm/test/CodeGen/X86/vselect.ll
M llvm/test/ExecutionEngine/JITLink/Generic/sectcreate.test
A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll
M llvm/test/MC/AArch64/cfi-bad-nesting-darwin.s
M llvm/test/MC/AMDGPU/gfx11_unsupported.s
M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s
A llvm/test/MC/Disassembler/X86/apx/IgnoreW.txt
M llvm/test/MC/RISCV/rv32zacas-invalid.s
M llvm/test/MC/RISCV/rv32zacas-valid.s
M llvm/test/MC/RISCV/rv64zacas-valid.s
M llvm/test/MC/RISCV/rvzabha-zacas-valid.s
A llvm/test/TableGen/HwModeEncodeDecode3.td
M llvm/test/ThinLTO/X86/visibility-elf.ll
M llvm/test/ThinLTO/X86/visibility-macho.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
M llvm/test/Transforms/FunctionImport/funcimport.ll
M llvm/test/Transforms/Inline/inline_stats.ll
M llvm/test/Transforms/InstCombine/maxnum.ll
M llvm/test/Transforms/InstCombine/minnum.ll
M llvm/test/Transforms/InstSimplify/ConstProp/min-max.ll
M llvm/test/Transforms/LoopRotate/oz-disable.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/interleave_IC.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/MemProfContextDisambiguation/inlined3.ll
A llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_clear_undefs.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-nodes-to-shuffle.ll
A llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
M llvm/test/Transforms/SROA/vector-promotion.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/global_remove_same.ll
A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/global_remove_same.ll.expected
A llvm/test/tools/UpdateTestChecks/update_test_checks/global_remove_same.test
M llvm/test/tools/llvm-readobj/XCOFF/loader-section-relocation.test
M llvm/test/tools/llvm-readobj/XCOFF/loader-section-symbol.test
M llvm/test/tools/llvm-readobj/XCOFF/relocations.test
M llvm/test/tools/llvm-readobj/XCOFF/symbols.test
M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
M llvm/tools/llvm-profgen/PerfReader.cpp
M llvm/tools/llvm-readobj/XCOFFDumper.cpp
M llvm/unittests/ADT/APFloatTest.cpp
M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/IR/VerifierTest.cpp
M llvm/unittests/Support/RISCVISAInfoTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/CodeEmitterGen.cpp
M llvm/utils/TableGen/CodeGenHwModes.h
M llvm/utils/TableGen/CodeGenTarget.cpp
M llvm/utils/TableGen/DXILEmitter.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/SearchableTableEmitter.cpp
M llvm/utils/TableGen/X86DisassemblerTables.cpp
M llvm/utils/UpdateTestChecks/common.py
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/utils/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/InstallAPI/BUILD.gn
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
M llvm/utils/update_test_checks.py
M llvm/utils/vim/syntax/mir.vim
M mlir/include/mlir/Dialect/Affine/Analysis/LoopAnalysis.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Dialect/Affine/Analysis/LoopAnalysis.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Dialect/Affine/access-analysis.mlir
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/ops.mlir
M mlir/test/Dialect/GPU/ops.mlir
A mlir/test/Dialect/Linalg/flatten-elementwise.mlir
M mlir/test/Dialect/Linalg/transform-op-peel-and-vectorize.mlir
M mlir/test/Dialect/Linalg/vectorize-tensor-extract.mlir
M mlir/test/Dialect/SparseTensor/invalid.mlir
M mlir/test/Dialect/SparseTensor/roundtrip.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/vector-transforms.mlir
M mlir/test/Integration/Dialect/Arith/CPU/test-wide-int-emulation-compare-results-i16.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/fill-2d.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/use-too-many-tiles.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/block.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/block_majors.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_f16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_3d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
A mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_re_im.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/test-setArmSVLBits.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-store-128-bit-tile.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-load-vertical.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-multi-tile-transpose.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f32.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f64.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-read-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-write-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transpose.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/tile_fill.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-load-store.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/test-setArmVLBits.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/arrays-of-scalable-vectors.mlir
M mlir/test/Integration/Dialect/Vector/CPU/test-print-str.mlir
A mlir/test/Target/Cpp/bitwise_operators.mlir
A mlir/test/Target/Cpp/logical_operators.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/lib/Dialect/Affine/CMakeLists.txt
A mlir/test/lib/Dialect/Affine/TestAccessAnalysis.cpp
M mlir/test/mlir-cpu-runner/expand-arith-ops.mlir
M mlir/test/python/dialects/gpu/dialect.py
M mlir/tools/mlir-opt/mlir-opt.cpp
M openmp/CMakeLists.txt
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Merge remote-tracking branch 'origin/main' into users/fhahn/slp-early-exit
Compare: https://github.com/llvm/llvm-project/compare/89c1415d99fe...63b5482a7246
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