[all-commits] [llvm/llvm-project] 2d616e: [mlir] Initial patch to add an MPI dialect (#68892)
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Mon Feb 19 07:32:45 PST 2024
Branch: refs/heads/users/alexey-bataev/spr/lvnfcpreselect-folding-style-before-choosing-maxing-vf-nfc
Home: https://github.com/llvm/llvm-project
Commit: 2d616ec4f040141e103965f98456ba523762735d
https://github.com/llvm/llvm-project/commit/2d616ec4f040141e103965f98456ba523762735d
Author: Anton Lydike <me at AntonLydike.de>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/IR/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/IR/MPI.h
A mlir/include/mlir/Dialect/MPI/IR/MPI.td
A mlir/include/mlir/Dialect/MPI/IR/MPIOps.td
A mlir/include/mlir/Dialect/MPI/IR/MPITypes.td
M mlir/include/mlir/InitAllDialects.h
M mlir/lib/Dialect/CMakeLists.txt
A mlir/lib/Dialect/MPI/CMakeLists.txt
A mlir/lib/Dialect/MPI/IR/CMakeLists.txt
A mlir/lib/Dialect/MPI/IR/MPI.cpp
A mlir/lib/Dialect/MPI/IR/MPIOps.cpp
A mlir/test/Dialect/MPI/ops.mlir
Log Message:
-----------
[mlir] Initial patch to add an MPI dialect (#68892)
This patch introduces the new MPI dialect into MLIR. The Message Passing
Interface (MPI) is a widely-used standard for distributed programs to
exchange data. This PR goes together with a talk later at today's LLVM
Dev Meeting.
This is just a first, small patch to get going and add the necessary
base files, so that we can add more operations in further patches.
Here's the documentation as generated by `ninja mlir-doc`:
# 'mpi' Dialect
This dialect models the Message Passing Interface (MPI), version
4.0. It is meant to serve as an interfacing dialect that is targeted
by higher-level dialects. The MPI dialect itself can be lowered to
multiple MPI implementations and hide differences in ABI. The dialect
models the functions of the MPI specification as close to 1:1 as
possible
while preserving SSA value semantics where it makes sense, and uses
`memref` types instead of bare pointers.
This dialect is under active development, and while stability is an
eventual goal, it is not guaranteed at this juncture. Given the early
state, it is recommended to inquire further prior to using this dialect.
For an in-depth documentation of the MPI library interface, please refer
to official documentation such as the
[OpenMPI online documentation](https://www.open-mpi.org/doc/current/).
[TOC]
## Operation definition
### `mpi.comm_rank` (mpi::CommRankOp)
_Get the current rank, equivalent to `MPI_Comm_rank(MPI_COMM_WORLD,
&rank)`_
Syntax:
```
operation ::= `mpi.comm_rank` attr-dict `:` type(results)
```
Communicators other than `MPI_COMM_WORLD` are not supported for now.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
| `rank` | 32-bit signless integer
### `mpi.error_class` (mpi::ErrorClassOp)
_Get the error class from an error code, equivalent to the
`MPI_Error_class` function_
Syntax:
```
operation ::= `mpi.error_class` $val attr-dict `:` type($val)
```
`MPI_Error_class` maps return values from MPI calls to a set of
well-known
MPI error classes.
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `val` | MPI function call return value
#### Results:
| Result | Description |
| :----: | ----------- |
| `errclass` | MPI function call return value
### `mpi.finalize` (mpi::FinalizeOp)
_Finalize the MPI library, equivalent to `MPI_Finalize()`_
Syntax:
```
operation ::= `mpi.finalize` attr-dict (`:` type($retval)^)?
```
This function cleans up the MPI state. Afterwards, no MPI methods may
be invoked (excpet for MPI_Get_version, MPI_Initialized, and
MPI_Finalized).
Notably, MPI_Init cannot be called again in the same program.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
### `mpi.init` (mpi::InitOp)
_Initialize the MPI library, equivalent to `MPI_Init(NULL, NULL)`_
Syntax:
```
operation ::= `mpi.init` attr-dict (`:` type($retval)^)?
```
This operation must preceed most MPI calls (except for very few
exceptions,
please consult with the MPI specification on these).
Passing &argc, &argv is not supported currently.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
### `mpi.recv` (mpi::RecvOp)
_Equivalent to `MPI_Recv(ptr, size, dtype, dest, tag, MPI_COMM_WORLD,
MPI_STATUS_IGNORE)`_
Syntax:
```
operation ::= `mpi.recv` `(` $ref `,` $tag `,` $rank `)` attr-dict `:` type($ref) `,` type($tag) `,` type($rank)(`->` type($retval)^)?
```
MPI_Recv performs a blocking receive of `size` elements of type `dtype`
from rank `dest`. The `tag` value and communicator enables the library
to
determine the matching of multiple sends and receives between the same
ranks.
Communicators other than `MPI_COMM_WORLD` are not supprted for now.
The MPI_Status is set to `MPI_STATUS_IGNORE`, as the status object
is not yet ported to MLIR.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `ref` | memref of any type values
| `tag` | 32-bit signless integer
| `rank` | 32-bit signless integer
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
### `mpi.retval_check` (mpi::RetvalCheckOp)
_Check an MPI return value against an error class_
Syntax:
```
operation ::= `mpi.retval_check` $val `=` $errclass attr-dict `:` type($res)
```
This operation compares MPI status codes to known error class
constants such as `MPI_SUCCESS`, or `MPI_ERR_COMM`.
#### Attributes:
<table>
<tr><th>Attribute</th><th>MLIR Type</th><th>Description</th></tr>
<tr><td><code>errclass</code></td><td>::mlir::mpi::MPI_ErrorClassEnumAttr</td><td><details><summary>MPI
error class name</summary>{{% markdown %}}Enum cases:
* MPI_SUCCESS (`MPI_SUCCESS`)
* MPI_ERR_ACCESS (`MPI_ERR_ACCESS`)
* MPI_ERR_AMODE (`MPI_ERR_AMODE`)
* MPI_ERR_ARG (`MPI_ERR_ARG`)
* MPI_ERR_ASSERT (`MPI_ERR_ASSERT`)
* MPI_ERR_BAD_FILE (`MPI_ERR_BAD_FILE`)
* MPI_ERR_BASE (`MPI_ERR_BASE`)
* MPI_ERR_BUFFER (`MPI_ERR_BUFFER`)
* MPI_ERR_COMM (`MPI_ERR_COMM`)
* MPI_ERR_CONVERSION (`MPI_ERR_CONVERSION`)
* MPI_ERR_COUNT (`MPI_ERR_COUNT`)
* MPI_ERR_DIMS (`MPI_ERR_DIMS`)
* MPI_ERR_DISP (`MPI_ERR_DISP`)
* MPI_ERR_DUP_DATAREP (`MPI_ERR_DUP_DATAREP`)
* MPI_ERR_ERRHANDLER (`MPI_ERR_ERRHANDLER`)
* MPI_ERR_FILE (`MPI_ERR_FILE`)
* MPI_ERR_FILE_EXISTS (`MPI_ERR_FILE_EXISTS`)
* MPI_ERR_FILE_IN_USE (`MPI_ERR_FILE_IN_USE`)
* MPI_ERR_GROUP (`MPI_ERR_GROUP`)
* MPI_ERR_INFO (`MPI_ERR_INFO`)
* MPI_ERR_INFO_KEY (`MPI_ERR_INFO_KEY`)
* MPI_ERR_INFO_NOKEY (`MPI_ERR_INFO_NOKEY`)
* MPI_ERR_INFO_VALUE (`MPI_ERR_INFO_VALUE`)
* MPI_ERR_IN_STATUS (`MPI_ERR_IN_STATUS`)
* MPI_ERR_INTERN (`MPI_ERR_INTERN`)
* MPI_ERR_IO (`MPI_ERR_IO`)
* MPI_ERR_KEYVAL (`MPI_ERR_KEYVAL`)
* MPI_ERR_LOCKTYPE (`MPI_ERR_LOCKTYPE`)
* MPI_ERR_NAME (`MPI_ERR_NAME`)
* MPI_ERR_NO_MEM (`MPI_ERR_NO_MEM`)
* MPI_ERR_NO_SPACE (`MPI_ERR_NO_SPACE`)
* MPI_ERR_NO_SUCH_FILE (`MPI_ERR_NO_SUCH_FILE`)
* MPI_ERR_NOT_SAME (`MPI_ERR_NOT_SAME`)
* MPI_ERR_OP (`MPI_ERR_OP`)
* MPI_ERR_OTHER (`MPI_ERR_OTHER`)
* MPI_ERR_PENDING (`MPI_ERR_PENDING`)
* MPI_ERR_PORT (`MPI_ERR_PORT`)
* MPI_ERR_PROC_ABORTED (`MPI_ERR_PROC_ABORTED`)
* MPI_ERR_QUOTA (`MPI_ERR_QUOTA`)
* MPI_ERR_RANK (`MPI_ERR_RANK`)
* MPI_ERR_READ_ONLY (`MPI_ERR_READ_ONLY`)
* MPI_ERR_REQUEST (`MPI_ERR_REQUEST`)
* MPI_ERR_RMA_ATTACH (`MPI_ERR_RMA_ATTACH`)
* MPI_ERR_RMA_CONFLICT (`MPI_ERR_RMA_CONFLICT`)
* MPI_ERR_RMA_FLAVOR (`MPI_ERR_RMA_FLAVOR`)
* MPI_ERR_RMA_RANGE (`MPI_ERR_RMA_RANGE`)
* MPI_ERR_RMA_SHARED (`MPI_ERR_RMA_SHARED`)
* MPI_ERR_RMA_SYNC (`MPI_ERR_RMA_SYNC`)
* MPI_ERR_ROOT (`MPI_ERR_ROOT`)
* MPI_ERR_SERVICE (`MPI_ERR_SERVICE`)
* MPI_ERR_SESSION (`MPI_ERR_SESSION`)
* MPI_ERR_SIZE (`MPI_ERR_SIZE`)
* MPI_ERR_SPAWN (`MPI_ERR_SPAWN`)
* MPI_ERR_TAG (`MPI_ERR_TAG`)
* MPI_ERR_TOPOLOGY (`MPI_ERR_TOPOLOGY`)
* MPI_ERR_TRUNCATE (`MPI_ERR_TRUNCATE`)
* MPI_ERR_TYPE (`MPI_ERR_TYPE`)
* MPI_ERR_UNKNOWN (`MPI_ERR_UNKNOWN`)
* MPI_ERR_UNSUPPORTED_DATAREP (`MPI_ERR_UNSUPPORTED_DATAREP`)
* MPI_ERR_UNSUPPORTED_OPERATION (`MPI_ERR_UNSUPPORTED_OPERATION`)
* MPI_ERR_VALUE_TOO_LARGE (`MPI_ERR_VALUE_TOO_LARGE`)
* MPI_ERR_WIN (`MPI_ERR_WIN`)
* MPI_ERR_LASTCODE (`MPI_ERR_LASTCODE`){{% /markdown
%}}</details></td></tr>
</table>
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `val` | MPI function call return value
#### Results:
| Result | Description |
| :----: | ----------- |
| `res` | 1-bit signless integer
### `mpi.send` (mpi::SendOp)
_Equivalent to `MPI_Send(ptr, size, dtype, dest, tag, MPI_COMM_WORLD)`_
Syntax:
```
operation ::= `mpi.send` `(` $ref `,` $tag `,` $rank `)` attr-dict `:` type($ref) `,` type($tag) `,` type($rank)(`->` type($retval)^)?
```
MPI_Send performs a blocking send of `size` elements of type `dtype` to
rank
`dest`. The `tag` value and communicator enables the library to
determine
the matching of multiple sends and receives between the same ranks.
Communicators other than `MPI_COMM_WORLD` are not supprted for now.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `ref` | memref of any type values
| `tag` | 32-bit signless integer
| `rank` | 32-bit signless integer
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
## Attribute definition
### MPI_ErrorClassEnumAttr
MPI error class name
Syntax:
```
#mpi.errclass<
::mlir::mpi::MPI_ErrorClassEnum # value
>
```
Enum cases:
* MPI_SUCCESS (`MPI_SUCCESS`)
* MPI_ERR_ACCESS (`MPI_ERR_ACCESS`)
* MPI_ERR_AMODE (`MPI_ERR_AMODE`)
* ... *all other MPI error codes*
#### Parameters:
| Parameter | C++ type | Description |
| :-------: | :-------: | ----------- |
| value | `::mlir::mpi::MPI_ErrorClassEnum` | an enum of type
MPI_ErrorClassEnum |
## Type definition
### RetvalType
MPI function call return value
Syntax: `!mpi.retval`
This type represents a return value from an MPI function vall.
This value can be MPI_SUCCESS, MPI_ERR_IN_STATUS, or any error code.
This return value can be compared agains the known MPI error classes
represented by `#mpi.errclass` using the `mpi.retval_check` operation.
Commit: 356400049064e1de5579a755a0feb174c0e561ef
https://github.com/llvm/llvm-project/commit/356400049064e1de5579a755a0feb174c0e561ef
Author: David Green <david.green at arm.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/test/CodeGen/AArch64/neon-mov.ll
Log Message:
-----------
[AArch64][GlobalISel] FNeg constant materialization (#80643)
This is a Global ISel equivalent of #80641, creating fneg(movi) instead
of the alternative constant pool load or gpr dup.
Commit: e6b52a2fe61d6cbc1ea3496cb826da25de0529ad
https://github.com/llvm/llvm-project/commit/e6b52a2fe61d6cbc1ea3496cb826da25de0529ad
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/src/__support/UInt.h
Log Message:
-----------
[libc][NFC] Cleanup unnecessary template parameters in BigInt (#81871)
Commit: c81929e9a843447fa52d21f7ce2e6788d740f2f4
https://github.com/llvm/llvm-project/commit/c81929e9a843447fa52d21f7ce2e6788d740f2f4
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
Log Message:
-----------
[clang][Interp][NFC] Return std::nullopt explicitly.
Commit: 9c6a2de24b6a9f01efd68546f7ab8c36f71a2352
https://github.com/llvm/llvm-project/commit/9c6a2de24b6a9f01efd68546f7ab8c36f71a2352
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Clean up functions for checking inline literals (#81282)
This patch cleans up functions for checking inline literals.
Commit: 54826d4980db5782dac2d7326c29ad60cd017e56
https://github.com/llvm/llvm-project/commit/54826d4980db5782dac2d7326c29ad60cd017e56
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/functions.cpp
Log Message:
-----------
[clang][Interp] Emit dummy pointers for unknown static locals
We used to emit dummy pointers for unknown declarations in certain
cases in C, but this is also necessary in C++.
I'm limiting this to static local variables for now.
Commit: 6cfbf8ccce8295b5d130c48a76a134da5f6194ae
https://github.com/llvm/llvm-project/commit/6cfbf8ccce8295b5d130c48a76a134da5f6194ae
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/spec/spec.td
M libc/spec/stdc.td
M libc/utils/HdrGen/PublicAPICommand.cpp
M libc/utils/HdrGen/PublicAPICommand.h
Log Message:
-----------
[libc] add support for function level attributes (#79891)
See discussion at
https://discourse.llvm.org/t/rfc-support-function-attributes-in-user-interface/76624
Demo macro:
```c++
#if !defined(__LIBC_CONST_ATTR) && defined(__cplusplus) && defined(__GNUC__)
#if __has_attribute(const)
#define __LIBC_CONST_ATTR [[gnu::const]]
#endif
#endif
#if !defined(__LIBC_CONST_ATTR) && defined(__GNUC__)
#if __has_attribute(const)
#define __LIBC_CONST_ATTR __attribute__((const))
#endif
#endif
#if !defined(__LIBC_CONST_ATTR)
#define __LIBC_CONST_ATTR
#endif
```
Commit: d485317357376ba6335fe7116efec8edcebd689c
https://github.com/llvm/llvm-project/commit/d485317357376ba6335fe7116efec8edcebd689c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[TargetLowering] Emit SIGN_EXTEND_INREG instead of shift pair from optimizeSetCCOfSignedTruncationCheck. (#81785)
sext_inreg is our canonical form of shift pair before op legalization so
DAG combiner will probably create it anyway. If it isn't legal
LegalizeDAG will expand to shifts later.
Commit: 537500995a1396a65c37d575216d81a33bd99656
https://github.com/llvm/llvm-project/commit/537500995a1396a65c37d575216d81a33bd99656
Author: Jacob Lambert <jacob.lambert at amd.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/include/llvm/Support/CommandLine.h
Log Message:
-----------
[llvm][Support] Add quotes around option name (#81784)
Commit: a1d4c69344f5a2c55043fdc0e43ebf76459eda95
https://github.com/llvm/llvm-project/commit/a1d4c69344f5a2c55043fdc0e43ebf76459eda95
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/src/__support/integer_literals.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/expm1.cpp
M libc/src/math/generic/log.cpp
M libc/src/math/generic/log10.cpp
M libc/src/math/generic/log1p.cpp
M libc/src/math/generic/log2.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/__support/integer_to_string_test.cpp
M libc/test/src/__support/str_to_long_double_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
Log Message:
-----------
Revert "[reland][libc][NFC] Use user defined literals to build 128 and 256 bit constants" (#81882)
Reverts llvm/llvm-project#81835
This is breaking arm32 which does not support 64 bit types.
Commit: 2eaeae7e9a298b8a4c9a313f914c42f1e0b82c39
https://github.com/llvm/llvm-project/commit/2eaeae7e9a298b8a4c9a313f914c42f1e0b82c39
Author: Derek Schuff <dschuff at chromium.org>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/Wasm.h
M llvm/include/llvm/Object/Wasm.h
M llvm/lib/Object/WasmObjectFile.cpp
M llvm/test/tools/llvm-nm/wasm/exports.yaml
M llvm/test/tools/llvm-nm/wasm/weak-symbols.yaml
M llvm/test/tools/llvm-objdump/wasm/linked-symbol-table-namesec.yaml
Log Message:
-----------
[Object][Wasm] Use offset instead of index for Global address and store size (#81781)
Currently the address reported by binutils for a global is its index;
but its offset (in the file or section) is more useful for binary size
attribution.
This PR treats globals similarly to functions, and tracks their offset
and size. It also centralizes the logic differentiating linked from object
and dylib files (where section addresses are 0).
Commit: f905877f2039e97479425e4d78cbfde72f360b4d
https://github.com/llvm/llvm-project/commit/f905877f2039e97479425e4d78cbfde72f360b4d
Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
Log Message:
-----------
[LLVM][DWARF] Fix for memory leak (#81828)
This is followup to https://github.com/llvm/llvm-project/pull/8120.
Missed a destuctor.
Commit: 8bda8cfae6aa3c32cca7997ab64771e6a78f3e61
https://github.com/llvm/llvm-project/commit/8bda8cfae6aa3c32cca7997ab64771e6a78f3e61
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/test/CXX/drs/dr23xx.cpp
Log Message:
-----------
[clang][NFC] Fix buildbot failure in drs/23xx.cpp
This is a follow-up to 630548a11423a40c5496cec78001374bfb8ff741, which fixed builtbot failure https://lab.llvm.org/buildbot/#/builders/188/builds/41930
Commit: 1fe8e2b6dbf16f60b3c6cc5f81c62be8a0e91e5b
https://github.com/llvm/llvm-project/commit/1fe8e2b6dbf16f60b3c6cc5f81c62be8a0e91e5b
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/CMakeLists.txt
R mlir/include/mlir/Dialect/MPI/CMakeLists.txt
R mlir/include/mlir/Dialect/MPI/IR/CMakeLists.txt
R mlir/include/mlir/Dialect/MPI/IR/MPI.h
R mlir/include/mlir/Dialect/MPI/IR/MPI.td
R mlir/include/mlir/Dialect/MPI/IR/MPIOps.td
R mlir/include/mlir/Dialect/MPI/IR/MPITypes.td
M mlir/include/mlir/InitAllDialects.h
M mlir/lib/Dialect/CMakeLists.txt
R mlir/lib/Dialect/MPI/CMakeLists.txt
R mlir/lib/Dialect/MPI/IR/CMakeLists.txt
R mlir/lib/Dialect/MPI/IR/MPI.cpp
R mlir/lib/Dialect/MPI/IR/MPIOps.cpp
R mlir/test/Dialect/MPI/ops.mlir
Log Message:
-----------
Revert "[mlir] Initial patch to add an MPI dialect (#68892)" (#81884)
This reverts commit 2d616ec4f040141e103965f98456ba523762735d.
Buildbot failures:
https://lab.llvm.org/buildbot/#/builders/177/builds/29364
Commit: f872706615cb928ec35ea35280536b59a22a2bf2
https://github.com/llvm/llvm-project/commit/f872706615cb928ec35ea35280536b59a22a2bf2
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M compiler-rt/test/profile/instrprof-block-coverage.c
M compiler-rt/test/profile/instrprof-entry-coverage.c
Log Message:
-----------
[InstrProf] Test that entry coverage counts accumulate (#81806)
Commit: 24144d726fefefb0245eb1c2700606002355f4fe
https://github.com/llvm/llvm-project/commit/24144d726fefefb0245eb1c2700606002355f4fe
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/CMakeLists.txt
A clang/lib/Sema/SemaOpenACC.cpp
Log Message:
-----------
[OpenACC][NFC] Implement basic OpenACC Sema infrastructure (#81874)
This patch is split off from #81659, and contains just the Sema
infrastructure that we can later use to implement semantic analysis of
OpenACC constructs.
Commit: 9b514235fc383e1b76b8044da273cc04bf5160a8
https://github.com/llvm/llvm-project/commit/9b514235fc383e1b76b8044da273cc04bf5160a8
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
Log Message:
-----------
Apply clang-tidy fixes for bugprone-argument-comment in ValueBoundsOpInterface.cpp (NFC)
Commit: de2f5bcd797a22bfa38791ac4e769ec194850560
https://github.com/llvm/llvm-project/commit/de2f5bcd797a22bfa38791ac4e769ec194850560
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/IR/AsmPrinter.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-qualified-auto in AsmPrinter.cpp (NFC)
Commit: b39958c2e8b9b4e357facabdc303cda4cbf2bc0d
https://github.com/llvm/llvm-project/commit/b39958c2e8b9b4e357facabdc303cda4cbf2bc0d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/IR/BuiltinDialectBytecode.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-else-after-return in BuiltinDialectBytecode.cpp (NFC)
Commit: e8d09a5b44de95f8cc675fce21b06dd45955e05a
https://github.com/llvm/llvm-project/commit/e8d09a5b44de95f8cc675fce21b06dd45955e05a
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/IR/Operation.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-identifier-naming in Operation.cpp (NFC)
Commit: 6f2414261beddd111a460a6f48666ec6032db6f5
https://github.com/llvm/llvm-project/commit/6f2414261beddd111a460a6f48666ec6032db6f5
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/Support/Timing.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-include-order in Timing.cpp (NFC)
Commit: e82659fff2f07b5ea1d94e0d8bcb9c540d6bede1
https://github.com/llvm/llvm-project/commit/e82659fff2f07b5ea1d94e0d8bcb9c540d6bede1
Author: Chris B <chris.bieneman at me.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_basic_types.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
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/reversebits.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
Log Message:
-----------
[HLSL] Expose `half` types and intrinsics always (#81782)
We previously made an implmenetation error when adding `half` overloads
for HLSL library functionalitly. The `half` type is always defined in
HLSL and `half` intrinsics should not be conditionally included.
When native 16-bit types are disabled `half` is a unique 32-bit float
type with lesser promotion rank than `float`.
Fixes #81049
Commit: 267d6b5ed2f0a4b1fcf7ac0138427905e431a3e1
https://github.com/llvm/llvm-project/commit/267d6b5ed2f0a4b1fcf7ac0138427905e431a3e1
Author: Usman Nadeem <mnadeem at quicinc.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-uzp1.ll
Log Message:
-----------
[AArch64][SVE] Instcombine uzp1/reinterpret svbool to use vector.insert (#81069)
Concatenating two predictes using uzp1 after converting to double length
using sve.convert.to/from.svbool is optimized poorly in the backend,
resulting in additional `and` instructions to zero the lanes. See
https://github.com/llvm/llvm-project/pull/78623/
Combine this pattern to use `llvm.vector.insert` to concatenate and get
rid of convert to/from svbools.
Commit: 08fe7df600aeff45917eb865d103d6c431f42285
https://github.com/llvm/llvm-project/commit/08fe7df600aeff45917eb865d103d6c431f42285
Author: Po-yao Chang <poyaoc97 at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libcxx/include/__format/parser_std_format_spec.h
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h
Log Message:
-----------
[libc++][format] Don't treat a closing '}' as part of format-spec (#81305)
This allows:
```
std::println("{}>42", std::thread::id{});
std::println("{}>42", std::span<int>{});
std::println("{}>42", std::pair{42, "Hello"sv});
std::println("{:}>42", std::thread::id{});
std::println("{:}>42", std::span<int>{});
std::println("{:}>42", std::pair{42, "Hello"sv});
```
to compile and run.
Commit: 0f1847cb2c5462a09d65a9b5ac24904ac3c15a0f
https://github.com/llvm/llvm-project/commit/0f1847cb2c5462a09d65a9b5ac24904ac3c15a0f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
Log Message:
-----------
[RISCV] Use RISCVSubtarget::hasStdExtCOrZcd() in HasStdExtCOrZcd tablgen Predicate. NFC
Commit: fc027e10ba3d343b583264776c8f4f8e82ad4560
https://github.com/llvm/llvm-project/commit/fc027e10ba3d343b583264776c8f4f8e82ad4560
Author: LRFLEW <LRFLEW at aol.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libcxx/include/__random/linear_congruential_engine.h
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/alg.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/assign.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/copy.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/default.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/values.pass.cpp
Log Message:
-----------
linear_congruential_engine: Fixes for __lce_alg_picker (#81080)
This fixes two major mistakes in the implementation of
`linear_congruential_engine` that allowed it to produce incorrect
output. Specifically, these mistakes are in `__lce_alg_picker`, which is
used to determine whether Schrage's algorithm is valid and needed.
The first mistake is in the definition of `_OverflowOK`. The code
comment and the description of [D65041](https://reviews.llvm.org/D65041)
both indicate that it's supposed to be true iff `m` is a power of two.
However, the definition used does not work out to that, and instead is
true whenever `m` is even. This could result in
`linear_congruential_engine` using an invalid implementation, as it
would incorrectly assume that any integer overflow can't change the
result. I changed the implementation to one that accurately checks if
`m` is a power of two. Technically, this implementation has an edge case
where it considers `0` to be a power of two, but in this case this is
actually accurate behavior, as `m = 0` indicates a modulus of 2^w where
w is the size of `result_type` in bits, which *is* a power of two.
The second mistake is in the static assert. The original static assert
erroneously included an unnecessary `a != 0 || m != 0`. Combined with
the `|| !_MightOverflow`, this actually resulted in the static assert
being impossible to fail. Applying De Morgan's law and expanding
`_MightOverflow` gives that the only way this static assert can be
triggered is if `a == 0 && m == 0 && a != 0 && m != 0 && ...`, which
clearly cannot be true. I simply removed the explicit checks against `a`
and `m`, as the intended checks are already included in `_MightOverflow`
and `_SchrageOK`, and their inclusion doesn't provide any obvious
semantic benefit.
This should fix all the current instances where
`linear_congruential_engine` uses an invalid implementation. This
technically isn't a complete implementation, though, since the static
assert will cause some instantiations of `linear_congruential_engine`
not disallowed by the standard from compiling. However, this should
still be an improvement, as all compiling instantiations of
`linear_congruential_engine` should use a valid implementation. Fixing
the cases where the static assert triggers will require adding
additional implementations, some of which will be fairly non-trivial, so
I'd rather leave those for another PR so they don't hold up these more
important fixes.
Fixes #33554
Commit: b57ba8ec514190b38eced26d541e8e25af66c485
https://github.com/llvm/llvm-project/commit/b57ba8ec514190b38eced26d541e8e25af66c485
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/condops.ll
Log Message:
-----------
[RISCV] Use APInt in useInversedSetcc to prevent crashes when mask is larger than UINT64_MAX. (#81888)
There are no checks that the type is legal so we need to handle any
type.
Commit: 04381c106f1cb0d3219ddabe231fe900113a9474
https://github.com/llvm/llvm-project/commit/04381c106f1cb0d3219ddabe231fe900113a9474
Author: erman-gurses <99776114+erman-gurses at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Transforms.h
M mlir/lib/Dialect/AMDGPU/CMakeLists.txt
M mlir/lib/Dialect/AMDGPU/Transforms/OptimizeSharedMemory.cpp
M mlir/test/Dialect/AMDGPU/transform_optimize_shmem_reads_writes.mlir
Log Message:
-----------
[MLIR][AMDGPU]Add refactoring for shared-mem optimization (#81791)
Addressing the issues in this PR:
https://github.com/llvm/llvm-project/pull/81550
Commit: 495c57ffedfedc98751f07295b7b6ce95bf3eb9c
https://github.com/llvm/llvm-project/commit/495c57ffedfedc98751f07295b7b6ce95bf3eb9c
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/src/__support/math_extras.h
Log Message:
-----------
[libc] Make add_with_carry and sub_with_borrow constexpr. (#81898)
Commit: f086d80d9a14cd9cd8908347bf34a8dfbcfecde9
https://github.com/llvm/llvm-project/commit/f086d80d9a14cd9cd8908347bf34a8dfbcfecde9
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M .github/workflows/docs.yml
Log Message:
-----------
[Github] Run documentation test build on change to the workflow
This makes it so that the documentation test build workflow will run
when the workflow itself is changed. This makes it much easier to test
inside of PRs that modify the workflow.
Commit: efad1885bfbda7f456e0e6e1db660fe55515a4b9
https://github.com/llvm/llvm-project/commit/efad1885bfbda7f456e0e6e1db660fe55515a4b9
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
Log Message:
-----------
Fix uncounted-obj-arg.cpp for Windows. (#81903)
Commit: a1155f68f5d5c7013ca1deb312a2e1e4f71ef544
https://github.com/llvm/llvm-project/commit/a1155f68f5d5c7013ca1deb312a2e1e4f71ef544
Author: Chris Bieneman <chris.bieneman at me.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
[NFC] Clang-format const array declarations
This just updates indentation of constant array declarations to be
style conformant.
Commit: 6a8ab129300bfdf7cc58e023b06e0aada4458205
https://github.com/llvm/llvm-project/commit/6a8ab129300bfdf7cc58e023b06e0aada4458205
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/Interp.cpp
M clang/test/AST/Interp/cxx20.cpp
M clang/test/AST/Interp/records.cpp
Log Message:
-----------
[clang][Interp] Properly emit call ops to invalid functions
Just like everywhere else, we can't just abort compilation because
a function is invalid. We need to emit the Call op and let later
interpretation handle the failure.
This fixes a long standing FIXME comment.
Commit: 3e004d1e8bcf07e66ecccd17ac56882fbe9a5c41
https://github.com/llvm/llvm-project/commit/3e004d1e8bcf07e66ecccd17ac56882fbe9a5c41
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M .github/workflows/docs.yml
Log Message:
-----------
[Github] Enable warnings as errors on flang sphinx build (#72723)
Now that the number of warnings in the flang sphinx build has come down
significantly, we can turn on warnings as errors in the sphinx build,
which is the default configuration in CMake.
Commit: 4d273b948ef064230091e41cf81f4c1b91d5beb4
https://github.com/llvm/llvm-project/commit/4d273b948ef064230091e41cf81f4c1b91d5beb4
Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
M mlir/test/Dialect/SparseTensor/torch_linalg.mlir
Log Message:
-----------
[mlir][sparse] ensure [dis]assembler wrapper methods properly inline (#81907)
Commit: df81055955d564dccfd43a9faeb2f54c8c998f68
https://github.com/llvm/llvm-project/commit/df81055955d564dccfd43a9faeb2f54c8c998f68
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/test/CXX/drs/dr12xx.cpp
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/CXX/drs/dr20xx.cpp
M clang/test/CXX/drs/dr2335.cpp
M clang/test/CXX/drs/dr24xx.cpp
M clang/test/CXX/drs/dr25xx.cpp
M clang/test/CXX/drs/dr4xx.cpp
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
Log Message:
-----------
[clang] Do less advertising for unresolved issues in `cxx_dr_status.html` (#78836)
This patch places additional requirement on tests for open issues to
specify what do they test, and reduce their advertising on
`cxx_dr_status.html`.
Tests for open issues have to either provide date of the proposed
resolution they test, or a paper number that attempts to resolve the
issue. Examples from this patch: `// dr1223: 17 drafting 2023-05-12`,
`// dr2049: 18 drafting P2308R1`, `// dr2335: no drafting 2018-06`.
Tests for open issues are no longer advertised in `cxx_dr_status.html`
as tests for resolved issues. Instead, they are specified as `Not
Resolved*` (note the asterisk). Such statuses have a tooltip with the
following kind of text:
`Clang 17 implements 2023-05-12 resolution`
`Clang does not implement 2018-06-04 resolution`
`Clang 18 implements P2308R1 resolution`
I admit that the wording is a bit crude, but I tried to minimize amount
of boilerplate in the `make_cxx_dr_status`. Hopefully, this whole setup
matches [C++ compiler
support](https://en.cppreference.com/w/cpp/compiler_support) page on
cppreference enough for people to catch up.
This patch also implement a quality-of-life feature for users of
`make_cxx_dr_status`: now script is able to report multiple bad `// dr`
comments in a single run.
This has also been discussed in a PR for CWG472 test:
https://github.com/llvm/llvm-project/pull/67948
Commit: 65c25a4c40865a0e460c0fecb1b33f7cf7455573
https://github.com/llvm/llvm-project/commit/65c25a4c40865a0e460c0fecb1b33f7cf7455573
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
Log Message:
-----------
[lldb][test] Skip TestDAP_commands.py test due to flakiness
Commit: 82a4a41614f4943e6b2e85bbc8cb8507d2236524
https://github.com/llvm/llvm-project/commit/82a4a41614f4943e6b2e85bbc8cb8507d2236524
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/src/__support/fixed_point/CMakeLists.txt
M libc/src/__support/fixed_point/fx_rep.h
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/LibcTest.cpp
M libc/test/UnitTest/LibcTest.h
Log Message:
-----------
[libc][stdfix] Add support for fixed point types in the testing infrastructure. (#81819)
Commit: b4972341462b4e892b4f24abe3f6970054f28b16
https://github.com/llvm/llvm-project/commit/b4972341462b4e892b4f24abe3f6970054f28b16
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/function-args.ll
M llvm/test/CodeGen/AMDGPU/hard-clauses.mir
A llvm/test/CodeGen/AMDGPU/max-hard-clause-length.ll
M llvm/test/CodeGen/AMDGPU/select.f16.ll
Log Message:
-----------
[AMDGPU] Make maximum hard clause size a subtarget feature (#81287)
gfx11 chips may, in some conditions, behave incorrectly with S_CLAUSE
instructions (hard clauses) containing more than 32 operations (that is,
whose arguments exceed 0x1f). However, gfx10 targets will work
successfully with clauses of up to length 63.
Therefore, define the MaxHardClauseLength property on GCNSubtarget and
make it a subtarget feature via tablegen, thus allowing us to specify,
both now and in the future, the maximum viable size of clauses on
various hardware from the tablegen definition. If MaxHardClauseLength is
0, which is the default, the hardware does not support hard clauses.
Commit: db4ea21dfde307f4fc873a6fe56791cd7ae3f0a1
https://github.com/llvm/llvm-project/commit/db4ea21dfde307f4fc873a6fe56791cd7ae3f0a1
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/ParserOpenACC/parse-cache-construct.c
M clang/test/ParserOpenACC/parse-cache-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/ParserOpenACC/parse-wait-clause.c
M clang/test/ParserOpenACC/parse-wait-construct.c
M clang/test/ParserOpenACC/unimplemented.c
M clang/test/ParserOpenACC/unimplemented.cpp
Log Message:
-----------
[OpenACC] Change 'not implemented' diagnostic to be more specific
Currently we just emit a generic 'not implemented' diagnostic for all
OpenACC pragmas. This patch moves the diagnostic to 'Sema' and diagnoses
for a specific clause or construct, in preperation of implementing Sema
for constructs.
Commit: 235ec0f791749d94ac1ca1441b8b06d4ba09792c
https://github.com/llvm/llvm-project/commit/235ec0f791749d94ac1ca1441b8b06d4ba09792c
Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
M mlir/lib/CAPI/Dialect/SparseTensor.cpp
M mlir/lib/Dialect/SparseTensor/IR/Detail/LvlTypeParser.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
M mlir/unittests/Dialect/SparseTensor/MergerTest.cpp
Log Message:
-----------
[mlir][sparse] remove LevelType enum, construct LevelType from LevelF… (#81799)
…ormat and properties instead.
Commit: 55e6c1901576716658b3c1b6ceaf018958331f24
https://github.com/llvm/llvm-project/commit/55e6c1901576716658b3c1b6ceaf018958331f24
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/UInt.h
M libc/src/__support/integer_utils.h
M libc/src/__support/number_pair.h
Log Message:
-----------
[libc][NFC] Annotate LIBC_INLINE and constexpr to BigInt and DyadicFloat methods. (#81912)
Commit: d2c9a19dd8048801ef1d8238948c39ad4fcdcf95
https://github.com/llvm/llvm-project/commit/d2c9a19dd8048801ef1d8238948c39ad4fcdcf95
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT][NFC] Pass BF/BB hashes to BAT
Test Plan: NFC
Reviewers: dcci, rafaelauler, maksfb, ayermolo
Reviewed By: rafaelauler
Pull Request: https://github.com/llvm/llvm-project/pull/76906
Commit: 5b51d45f496f10a74dea5a100cf18b33b45493dc
https://github.com/llvm/llvm-project/commit/5b51d45f496f10a74dea5a100cf18b33b45493dc
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
A llvm/test/CodeGen/X86/code-model-elf-merge-sections.ll
Log Message:
-----------
[X86] Use ".lrodata" prefix for large mergeable constants (#81900)
Otherwise with a small enough large-data-threshold, we can get .rodata.*
sections marked large, making .rodata large in the final binary.
Commit: 834d11c21541c8bf92ef598c1171e8163b69e8c7
https://github.com/llvm/llvm-project/commit/834d11c21541c8bf92ef598c1171e8163b69e8c7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-15 (Thu, 15 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-extract_subvector.ll
Log Message:
-----------
Revert "[RISCV][TTI] Extract subvector at index zero is free (#81751)"
This reverts commit 3a626937b1b652e3c87cd0050df9c24cc5127d3b.
Causes tests added by fc0b67e1d79d1f199687f8f06d619984d9520230 to fail.
Commit: edfc859af89e44207bf499b5d702aa26a7357da4
https://github.com/llvm/llvm-project/commit/edfc859af89e44207bf499b5d702aa26a7357da4
Author: David Goldman <dallasftball at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/Rename.h
M clang-tools-extra/clangd/test/rename.test
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
Log Message:
-----------
Add support for renaming objc methods, even those with multiple selector pieces (#76466)
This adds support for renaming Objective-C methods, which are unique since their method names can be split across multiple tokens.
Commit: 5c57fd717d5d6a285efeb8402c6fe0c8f70592f3
https://github.com/llvm/llvm-project/commit/5c57fd717d5d6a285efeb8402c6fe0c8f70592f3
Author: Chris B <chris.bieneman at me.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/include/clang/AST/OperationKinds.def
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Overload.h
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
A clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
A clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
M clang/test/SemaHLSL/Types/BuiltinVector/ScalarSwizzles.hlsl
A clang/test/SemaHLSL/VectorOverloadResolution.hlsl
A clang/test/SemaHLSL/standard_conversion_sequences.hlsl
Log Message:
-----------
[HLSL] Vector standard conversions (#71098)
HLSL supports vector truncation and element conversions as part of
standard conversion sequences. The vector truncation conversion is a C++
second conversion in the conversion sequence. If a vector truncation is
in a conversion sequence an element conversion may occur after it before
the standard C++ third conversion.
Vector element conversions can be boolean conversions, floating point or
integral conversions or promotions.
[HLSL Draft
Specification](https://microsoft.github.io/hlsl-specs/specs/hlsl.pdf)
---------
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Commit: e3f88a9e587a6924054def5e26b3c976dcb31453
https://github.com/llvm/llvm-project/commit/e3f88a9e587a6924054def5e26b3c976dcb31453
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Rewrite `getVOP3DPPSrcForVT` with `!cond` (#81889)
`!cond` is much more clear than nested `!if`.
Commit: dc3258c617420e83caff63c93d548e0923b10791
https://github.com/llvm/llvm-project/commit/dc3258c617420e83caff63c93d548e0923b10791
Author: Boian Petkantchin <boian.petkantchin at amd.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/Affine/Utils.h
M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
M mlir/include/mlir/Dialect/Mesh/Transforms/Transforms.h
M mlir/include/mlir/IR/Builders.h
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Mesh/Transforms/Simplifications.cpp
M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
M mlir/lib/Dialect/Mesh/Transforms/Transforms.cpp
A mlir/lib/Dialect/Mesh/Transforms/TransformsDetail.h
M mlir/lib/IR/Builders.cpp
A mlir/test/Dialect/Mesh/all-scatter-op-lowering.mlir
M mlir/test/Dialect/Mesh/canonicalization.mlir
M mlir/test/Dialect/Mesh/invalid.mlir
M mlir/test/Dialect/Mesh/ops.mlir
M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
M mlir/test/Dialect/Mesh/spmdization.mlir
M mlir/test/lib/Dialect/Mesh/CMakeLists.txt
A mlir/test/lib/Dialect/Mesh/TestOpLowering.cpp
R mlir/test/lib/Dialect/Mesh/TestProcessMultiIndexOpLowering.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][mesh] Add all-slice operation (#81218)
This op is the inverse of all-gather. It is useful to have an explicit
concise representation instead of having a blob of slicing logic.
Add lowering for the op that slices from the tensor based on the
in-group process index.
Make resharding generate an all-slice instead of inserting the slicing
logic directly.
Commit: 60cb09ba4f0ad6602483b40625a272eeebdcdc45
https://github.com/llvm/llvm-project/commit/60cb09ba4f0ad6602483b40625a272eeebdcdc45
Author: Yitzhak Mandelbaum <ymand at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Fix crash on unions introduced in ba279934c6ab09d5394a89d8318651aefd8d565b (#81918)
The commit was itself a crash fix, but inadvertently changed the
behavior for unions, which results in crashes.
Commit: 2a9b86cc10c3883cca51a5166aad6e2b755fa958
https://github.com/llvm/llvm-project/commit/2a9b86cc10c3883cca51a5166aad6e2b755fa958
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/test/Transforms/SROA/tbaa-struct3.ll
Log Message:
-----------
[SROA] Extend !tbaa.struct test coverage with multiple missing cases.
Add tests to cover missing cases for
https://github.com/llvm/llvm-project/pull/81289 and
https://github.com/llvm/llvm-project/pull/81313.
Commit: 513448d28e57535d71ea7eeda209db98ad3a1ee1
https://github.com/llvm/llvm-project/commit/513448d28e57535d71ea7eeda209db98ad3a1ee1
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
M mlir/lib/CAPI/Dialect/SparseTensor.cpp
M mlir/lib/Dialect/SparseTensor/IR/Detail/LvlTypeParser.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
M mlir/unittests/Dialect/SparseTensor/MergerTest.cpp
Log Message:
-----------
Revert "[mlir][sparse] remove LevelType enum, construct LevelType from LevelF…" (#81923)
Reverts llvm/llvm-project#81799 ; this broke the mlir gcc7 bot.
Commit: 79213da0313f07bd46882d72ed30973f16947953
https://github.com/llvm/llvm-project/commit/79213da0313f07bd46882d72ed30973f16947953
Author: Derek Schuff <dschuff at chromium.org>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/docs/ReleaseNotes.rst
Log Message:
-----------
Update release notes for Wasm improvements to nm and objdump (#81924)
Describes improvements made for #76107
Commit: 4bf50e02554460df86903791380fb5ca17a28bdc
https://github.com/llvm/llvm-project/commit/4bf50e02554460df86903791380fb5ca17a28bdc
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp
M llvm/lib/ToolDrivers/llvm-dlltool/Options.td
M llvm/test/tools/llvm-dlltool/arm64ec.test
Log Message:
-----------
[llvm-dlltool] Use -N for input native def option to avoid conflict with GNU dlltool --no-delete option. (#81847)
Commit: 69a96ae0e80f0e62c1f25a1c255a3f46ff7dc9e8
https://github.com/llvm/llvm-project/commit/69a96ae0e80f0e62c1f25a1c255a3f46ff7dc9e8
Author: Haopeng Liu <haopliu at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
add initialized attribute LangRef
Commit: 1d03d59aff07d40420a08af13ee74fed9846d7d8
https://github.com/llvm/llvm-project/commit/1d03d59aff07d40420a08af13ee74fed9846d7d8
Author: Haopeng Liu <haopliu at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
Revert "add initialized attribute LangRef"
This reverts commit 69a96ae0e80f0e62c1f25a1c255a3f46ff7dc9e8.
Commit: 761113a18b720d1264d4a9d676577191b0a0e0cc
https://github.com/llvm/llvm-project/commit/761113a18b720d1264d4a9d676577191b0a0e0cc
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/test/Driver/unknown-arg.c
M clang/tools/driver/driver.cpp
Log Message:
-----------
[clang][driver] Add missing integrated tool option in error message, NFC (#81926)
Commit: aaf916456aeb2d748e74ddbcd394de153e19b112
https://github.com/llvm/llvm-project/commit/aaf916456aeb2d748e74ddbcd394de153e19b112
Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
M mlir/lib/CAPI/Dialect/SparseTensor.cpp
M mlir/lib/Dialect/SparseTensor/IR/Detail/LvlTypeParser.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
M mlir/unittests/Dialect/SparseTensor/MergerTest.cpp
Log Message:
-----------
Reapply "[mlir][sparse] remove LevelType enum, construct LevelType from LevelFormat and Properties" (#81923) (#81934)
Commit: 340b1ab9dc6322439353d3275fa16d1cf0b4da60
https://github.com/llvm/llvm-project/commit/340b1ab9dc6322439353d3275fa16d1cf0b4da60
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M bolt/include/bolt/Profile/BoltAddressTranslation.h
Log Message:
-----------
[BOLT] Add missing include
Address the comment in
https://github.com/llvm/llvm-project/pull/76906#issuecomment-1947335336
Commit: 2c45bda8029289bbc6b09f349c203059a61609ce
https://github.com/llvm/llvm-project/commit/2c45bda8029289bbc6b09f349c203059a61609ce
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/stdfix.rst
M libc/spec/spec.td
M libc/spec/stdc_ext.td
M libc/src/CMakeLists.txt
M libc/src/__support/fixed_point/CMakeLists.txt
A libc/src/__support/fixed_point/fx_bits.h
A libc/src/stdfix/CMakeLists.txt
A libc/src/stdfix/abshk.cpp
A libc/src/stdfix/abshk.h
A libc/src/stdfix/abshr.cpp
A libc/src/stdfix/abshr.h
A libc/src/stdfix/absk.cpp
A libc/src/stdfix/absk.h
A libc/src/stdfix/abslk.cpp
A libc/src/stdfix/abslk.h
A libc/src/stdfix/abslr.cpp
A libc/src/stdfix/abslr.h
A libc/src/stdfix/absr.cpp
A libc/src/stdfix/absr.h
M libc/test/src/CMakeLists.txt
A libc/test/src/stdfix/AbsTest.h
A libc/test/src/stdfix/CMakeLists.txt
A libc/test/src/stdfix/abshk_test.cpp
A libc/test/src/stdfix/abshr_test.cpp
A libc/test/src/stdfix/absk_test.cpp
A libc/test/src/stdfix/abslk_test.cpp
A libc/test/src/stdfix/abslr_test.cpp
A libc/test/src/stdfix/absr_test.cpp
Log Message:
-----------
[libc][stdfix] Add abs functions for signed fixed point types. (#81823)
Commit: fbacf70f647e4f0af3904ec0d35d94f4974bd6b5
https://github.com/llvm/llvm-project/commit/fbacf70f647e4f0af3904ec0d35d94f4974bd6b5
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M compiler-rt/lib/hwasan/hwasan_report.cpp
Log Message:
-----------
[NFC][hwasan] Add CHECK_LT(fp, kRecordFPModulus)
Commit: 72e14fb33fa8f0c9b08b328367fb3abd1f7d1a49
https://github.com/llvm/llvm-project/commit/72e14fb33fa8f0c9b08b328367fb3abd1f7d1a49
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M compiler-rt/lib/hwasan/hwasan_report.cpp
Log Message:
-----------
[NFC][hwasan] Reduce nesting in function
Commit: 327d2f8c6cee019d4f915036f40041b5369b61e5
https://github.com/llvm/llvm-project/commit/327d2f8c6cee019d4f915036f40041b5369b61e5
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M lldb/include/lldb/Core/Progress.h
M lldb/source/Core/Progress.cpp
Log Message:
-----------
[lldb][progress] Add progress manager class (#81319)
Per discussions from https://github.com/llvm/llvm-project/pull/81026, it
was decided that having a class that manages a map of progress reports
would be beneficial in order to categorize them. This class is a part of
the overall `Progress` class and utilizes a map that keeps a count of
how many times a progress report category has been sent. This would be
used with the new debugger broadcast bit added in
https://github.com/llvm/llvm-project/pull/81169 so that a user listening
with that bit will receive grouped progress reports.
Commit: 692566a8b236827ed9f109d46b21c250522a3751
https://github.com/llvm/llvm-project/commit/692566a8b236827ed9f109d46b21c250522a3751
Author: Hiroshi Yamauchi <56735936+hjyamauchi at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
A llvm/test/CodeGen/AArch64/swifttail-funclet.ll
Log Message:
-----------
Fix an assert failure with a funclet in a swifttailcc function. (#78806)
The failure happens in the livedebugvalues pass.
Commit: dfe1759614a591601609ae0a948a681cd919c0f6
https://github.com/llvm/llvm-project/commit/dfe1759614a591601609ae0a948a681cd919c0f6
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/TableGen/CodeGenHelpers.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-qualified-auto in CodeGenHelpers.cpp (NFC)
Commit: 1f97219a9099b56c18d2e339db8b4aa7964825fd
https://github.com/llvm/llvm-project/commit/1f97219a9099b56c18d2e339db8b4aa7964825fd
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/TableGen/Pattern.cpp
Log Message:
-----------
Apply clang-tidy fixes for performance-move-const-arg in Pattern.cpp (NFC)
Commit: 867678dd81031edc36e1acc7a7f7cda01e2e0514
https://github.com/llvm/llvm-project/commit/867678dd81031edc36e1acc7a7f7cda01e2e0514
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/Target/LLVM/NVVM/Target.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-qualified-auto in Target.cpp (NFC)
Commit: 332a5049855a3bf3752288c2ba0e0a41f0c4fe39
https://github.com/llvm/llvm-project/commit/332a5049855a3bf3752288c2ba0e0a41f0c4fe39
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/Target/LLVM/NVVM/Target.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-container-size-empty in Target.cpp (NFC)
Commit: eb0c8de1eed7c8198e397c56aa12b30abad42cf5
https://github.com/llvm/llvm-project/commit/eb0c8de1eed7c8198e397c56aa12b30abad42cf5
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-else-after-return in SerializeOps.cpp (NFC)
Commit: 3e77871c220e4d4c91956060b15ff28e27b2b764
https://github.com/llvm/llvm-project/commit/3e77871c220e4d4c91956060b15ff28e27b2b764
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
Log Message:
-----------
[libc] Tempporarily disable fixed point entry points until #80757 is merged. (#81945)
Commit: d0c2c0ab6d7e52ae52fdf73b843cad607f5a85e6
https://github.com/llvm/llvm-project/commit/d0c2c0ab6d7e52ae52fdf73b843cad607f5a85e6
Author: Michael Jones <71531609+michaelrj-google at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
A libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/test/UnitTest/CMakeLists.txt
Log Message:
-----------
[libc] Move compile options to new cmake file (#81917)
The cmake test generator needed to be updated to support the same flags
as the source. To simplify the code, I moved it to a new file.
Commit: a057506b7b06f74ce45865d46c4107952f5ab261
https://github.com/llvm/llvm-project/commit/a057506b7b06f74ce45865d46c4107952f5ab261
Author: Youngsuk Kim <joseph942010 at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/docs/NVPTXUsage.rst
Log Message:
-----------
[docs][NVPTX] Use opaque pointers in IR examples (NFC) (#81941)
Replace outdated typed-pointer notation in LLVM IR examples. NFC.
Commit: feee627974df81e4cbf15537e4c4688aed66b12f
https://github.com/llvm/llvm-project/commit/feee627974df81e4cbf15537e4c4688aed66b12f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
A llvm/test/CodeGen/RISCV/branch-opt.mir
Log Message:
-----------
[RISCV] Make sure ADDI replacement in optimizeCondBranch has a virtual reg destination. (#81938)
If it isn't virtual, we may extend the live range of the physical
register past were it is valid. For example, across a call.
Found while trying to enable -riscv-enable-sink-fold which enables some
copy propagation in machine sink that led to ADDIs with physical
register destinations.
Commit: 088c7ce429197a809f8943e5699a7fd0650fe9f7
https://github.com/llvm/llvm-project/commit/088c7ce429197a809f8943e5699a7fd0650fe9f7
Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
M mlir/lib/Dialect/SparseTensor/IR/Detail/LvlTypeParser.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/test/Dialect/SparseTensor/invalid_encoding.mlir
M mlir/test/Dialect/SparseTensor/roundtrip_encoding.mlir
Log Message:
-----------
[mlir][sparse] introduce SoA level property on singleton level. (#81942)
Commit: 55b5ac8917b4a1e0ceb79bee4c4c6f7d35b95526
https://github.com/llvm/llvm-project/commit/55b5ac8917b4a1e0ceb79bee4c4c6f7d35b95526
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Remove X0 handling from RISCVInstrInfo::optimizeCondBranch. (#81931)
This was trying to rewrite a branch that uses X0 to a branch that uses a
register produced by LI of 1 or -1. Using X0 is free so there is no
reason to rewrite it. Doing so would just extend the live range of the
LI register increasing register pressure.
In practice this might not have triggered often because we were calling
MRI.hasOneUse on X0. I'm not sure what the returns for a physical
reigster.
Commit: 2549c24142816073b195abc294cfc3a546ecb7a0
https://github.com/llvm/llvm-project/commit/2549c24142816073b195abc294cfc3a546ecb7a0
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-02-15 (Thu, 15 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/rvv-vectorextract.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-extract_subvector.ll
Log Message:
-----------
Reapply "[RISCV][TTI] Extract subvector at index zero is free (#81751)"
This reverts commit 834d11c21541c8bf92ef598c1171e8163b69e8c7 which was
a revert of my 3a626937b1b652e3c87cd0050df9c24cc5127d3b. I had failed
to rebase after new tests added overnight by
fc0b67e1d79d1f199687f8f06d619984d9520230.
Original commit message follows:
Extracing a subvector at index zero corresponds to a type conversion and
possibly a subregister operation. We will not emit a vslidedown. As such,
they are free.
As an aside, it looks like we're not passing an index in for cases where
the subvec type is scalable. For at least index zero, we probably should be.
Revert "Revert "[RISCV][TTI] Extract subvector at index zero is free (#81751)""
Commit: 0065161c720c37e8ab545979aed6a03d944a3176
https://github.com/llvm/llvm-project/commit/0065161c720c37e8ab545979aed6a03d944a3176
Author: Chris Bieneman <chris.bieneman at me.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
Log Message:
-----------
Remove assert introduced in #71098
This should effectively preserve the old behavior for non-HLSL code.
Commit: 39e32b451ca1bf6ae06da10682c053c9a5659b9a
https://github.com/llvm/llvm-project/commit/39e32b451ca1bf6ae06da10682c053c9a5659b9a
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M compiler-rt/lib/hwasan/hwasan_report.cpp
M compiler-rt/test/hwasan/TestCases/stack-uas.c
Log Message:
-----------
[hwasan] Fix stack tag mismatch report (#81939)
Existing code worked only for local, recorder FP, and the faulty address
are the same 1 MiB page.
Now, instead of guessing FP, we guess variable address.
We need to try just two cases of addresses around of faulty one.
Fixes https://github.com/google/sanitizers/issues/1723
Commit: ac452204aade6abfa44324c3f1db4890a63eb941
https://github.com/llvm/llvm-project/commit/ac452204aade6abfa44324c3f1db4890a63eb941
Author: Shoaib Meenai <smeenai at fb.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
M llvm/lib/Target/ARM/ARMTargetObjectFile.h
A llvm/test/MC/ELF/rtti-proxy-arm-got-prel.ll
Log Message:
-----------
[llvm] Support indirect symbol replacement with R_ARM_GOT_PREL (#81916)
R_ARM_GOT_PREL is equivalent to GOTPCREL on other architectures, so we
can use it for indirect symbol replacement the same way. This is the
equivalent of https://github.com/llvm/llvm-project/pull/67754 for x86_64
and https://github.com/llvm/llvm-project/pull/78003 for AArch64 and
64-bit RISC-V.
Commit: cc23574184335df187275ca0e716bf79b93b75f1
https://github.com/llvm/llvm-project/commit/cc23574184335df187275ca0e716bf79b93b75f1
Author: akshaykumars614 <88362922+akshaykumars614 at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/lib/Lex/Lexer.cpp
A clang/test/Lexer/raw-string-dlim-invalid.cpp
Log Message:
-----------
bad error message on incorrect string literal #18079 (#81670)
(bad error message on incorrect string literal)
Fixed the error message for incorrect string literal
before:
```
test.cpp:1:19: error: invalid character '
' character in raw string delimiter; use PREFIX( )PREFIX to delimit raw string
char const* a = R"
^
```
now:
```
test.cpp:1:19: error: invalid newline character in raw string delimiter; use PREFIX( )PREFIX to delimit raw string
1 | char const* a = R"
| ^
```
---------
Co-authored-by: Jon Roelofs <jroelofs at gmail.com>
Commit: e606dc1dafead794f92a677fd92b2ea8e5a3fb4f
https://github.com/llvm/llvm-project/commit/e606dc1dafead794f92a677fd92b2ea8e5a3fb4f
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/include/clang/AST/Availability.h
M clang/include/clang/ExtractAPI/API.h
R clang/include/clang/ExtractAPI/AvailabilityInfo.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
A clang/lib/AST/Availability.cpp
M clang/lib/AST/CMakeLists.txt
R clang/lib/ExtractAPI/AvailabilityInfo.cpp
M clang/lib/ExtractAPI/CMakeLists.txt
Log Message:
-----------
[clang] Move `AvailabilityInfo` into AST library (#81897)
Previously this class was only used by ExtractAPI, but it will soon also
be needed by InstallAPI. This patch should not change availability
behavior but just centralizes the information next to what already is
captured about availability for AST traversal.
Commit: e9cec392398ca5c7ce56ba52f9abb90f42a16c24
https://github.com/llvm/llvm-project/commit/e9cec392398ca5c7ce56ba52f9abb90f42a16c24
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
Log Message:
-----------
[clang-tidy] fix incorrect hint for InitListExpr in prefer-member-initializer (#81560)
Commit: 2f516d4b31cd16b720ddabde09676d0c2ded7571
https://github.com/llvm/llvm-project/commit/2f516d4b31cd16b720ddabde09676d0c2ded7571
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
Log Message:
-----------
[gn build] Port 24144d726fef
Commit: 9150858b828511af507ffd6ef4d0813bd49d211f
https://github.com/llvm/llvm-project/commit/9150858b828511af507ffd6ef4d0813bd49d211f
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/ExtractAPI/BUILD.gn
Log Message:
-----------
[gn build] Port e606dc1dafea
Commit: 3af5c98200e0b1268f755c3f289be4f73aac4214
https://github.com/llvm/llvm-project/commit/3af5c98200e0b1268f755c3f289be4f73aac4214
Author: azhan92 <alisonxzhang at gmail.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/utils/release/test-release.sh
Log Message:
-----------
[Release] Install compiler-rt builtins during Phase 1 on AIX (#81485)
The current test-release.sh script does not install the necessary
compiler-rt builtin's during Phase 1 on AIX, resulting on a
non-functional Phase 1 clang. Futhermore, the installation is also
necessary for Phase 2 on AIX.
Co-authored-by: Alison Zhang <alisonzhang at ibm.com>
Commit: ceaf09cd1a1fb7811e394ab7a5a9da4e513129b0
https://github.com/llvm/llvm-project/commit/ceaf09cd1a1fb7811e394ab7a5a9da4e513129b0
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/Analysis/Checkers/WebKit/mock-types.h
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
Log Message:
-----------
[alpha.webkit.UncountedCallArgsChecker] Detect more trivial functions (#81829)
Allow address-of operator (&), enum constant, and a reference to
constant as well as materializing temporqary expression and an
expression with cleanups to appear within a trivial function.
Commit: 118a2a52fd465b7576c54bd102ee2e417a3b9a71
https://github.com/llvm/llvm-project/commit/118a2a52fd465b7576c54bd102ee2e417a3b9a71
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
Log Message:
-----------
[MLIR][OpenMP] Support `llvm` conversion for `omp.private` regions (#81414)
Introduces conversion of `omp.private`'s regions to the LLVM dialect.
This reuses the already existing conversion pattern for
`ReducetionDeclareOp` and repurposes it to be used for multi-region ops
as well.
Commit: 096c530ab3ea5c96526451181117f30db17b4b1d
https://github.com/llvm/llvm-project/commit/096c530ab3ea5c96526451181117f30db17b4b1d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M lldb/test/API/commands/command/script/add/TestAddParsedCommand.py
M lldb/test/API/commands/command/script/add/test_commands.py
M lldb/test/API/commands/expression/nested/TestNestedExpressions.py
M lldb/test/API/commands/process/attach/TestProcessAttach.py
M lldb/test/API/functionalities/data-formatter/data-formatter-advanced/TestDataFormatterAdv.py
M lldb/test/API/functionalities/executable_first/TestExecutableFirst.py
M lldb/test/API/functionalities/inline-sourcefile/TestInlineSourceFiles.py
M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
M lldb/test/API/functionalities/type_find_first/TestFindFirstType.py
M lldb/test/API/functionalities/vtable/TestVTableValue.py
M lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py
M lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py
M lldb/test/API/lang/objc/charstar_dyntype/TestCharStarDynType.py
M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
M lldb/test/API/python_api/process/cancel_attach/TestCancelAttach.py
M lldb/test/API/python_api/value/TestValueAPI.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_logpoints.py
Log Message:
-----------
[lldb] Fix Python test formatting (NFC)
Commit: 266bbc203da2d0bc880e643560fb48aff4830478
https://github.com/llvm/llvm-project/commit/266bbc203da2d0bc880e643560fb48aff4830478
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
Log Message:
-----------
[lldb] Re-enable TestStepOverWatchpoint on macOS 14.4 and later
Commit: 67282077ea460cbeec3f837b1a448a1bc958ec10
https://github.com/llvm/llvm-project/commit/67282077ea460cbeec3f837b1a448a1bc958ec10
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/InterpBuiltin.cpp
M clang/test/AST/Interp/builtin-functions.cpp
Log Message:
-----------
[clang][Interp] Implement __builtin_launder
Just forward the pointer.
Copy tests from SemaCXX
Commit: 6abf5e5be2be8834183163f1db33a6cff696f13e
https://github.com/llvm/llvm-project/commit/6abf5e5be2be8834183163f1db33a6cff696f13e
Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[MLIR] NFC: Change dyn_cast to isa to prevent warning (#81899)
This is to avoid warnings when invoked from the flang documentation
generation build.
The warning can be seen in the CI
(https://lab.llvm.org/buildbot/#/builders/89/builds/57451).
```
/home/buildbot/as-worker-4/publish-sphinx-docs/llvm-project/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp:2956:38: warning: unused variable ‘operand’ [-Wunused-variable]
```
Commit: 1807e02b8c280af10628538d69e9511d3df3ed5f
https://github.com/llvm/llvm-project/commit/1807e02b8c280af10628538d69e9511d3df3ed5f
Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
A llvm/test/DebugInfo/fixed-point.ll
Log Message:
-----------
[llvm] Fix assertion error where we didn't check fixed point types. (#80757)
This fixes https://github.com/llvm/llvm-project/issues/81555
Commit: a300a1a71119008e6e54299e52824fbca4bf2a75
https://github.com/llvm/llvm-project/commit/a300a1a71119008e6e54299e52824fbca4bf2a75
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.rst
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZa.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
Log Message:
-----------
[RISCV][ISel] Add codegen support for the experimental zabha extension (#80192)
This patch implements the codegen support of zabha (Byte and Halfword
Atomic Memory Operations) v1.0-rc1 extension.
See also https://github.com/riscv/riscv-zabha/blob/v1.0-rc1/zabha.adoc.
---------
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Commit: 42b5037cc403c09ebf9b4d65ee41422ded79e054
https://github.com/llvm/llvm-project/commit/42b5037cc403c09ebf9b4d65ee41422ded79e054
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
Log Message:
-----------
[clang][analyzer] Simplify code of StreamChecker (NFC). (#79312)
A class is added that contains common functions and data members that are used in many of the "eval" functions. This results in shorter "eval" functions and less code repetition.
Commit: d26a6464f85fc224dc2f3ddb67d404ba82a331fa
https://github.com/llvm/llvm-project/commit/d26a6464f85fc224dc2f3ddb67d404ba82a331fa
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M flang/include/flang/Runtime/descriptor.h
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/ignore-missing-type-descriptor.fir
M flang/test/Fir/polymorphic.fir
M flang/test/Fir/tbaa.fir
M flang/test/Fir/type-descriptor.fir
M flang/test/Lower/allocatable-polymorphic.f90
Log Message:
-----------
[flang] Do not leave length parameters uninitialized in descriptor addendums (#81858)
Descriptor addendum have a field to hold length parameters (currently
only one). This field is currently never used because flang does not
lowered derived types with length parameters.
However, leaving it uninitialized is causing bugs in code like gFTL
where the code is trying to sort POINTERs (see [1]). More precisely, it
is an issue when two pointers should compare equal (same base address),
because the uninitialized values in the addendum may differ depending on
the "stack history" and optimization level.
Always initialized the length parameters field in the addendum to zero.
[1]:
https://github.com/Goddard-Fortran-Ecosystem/gFTL/blob/dc93a5fc2fe2b487590580d9f0a17d77ca3fe5c1/include/v1/templates/set_impl.inc#L312
The type being transferred to an integer array may look like:
```
TYPE :: localwrapper
TYPE(T), POINTER :: item
END TYPE localwrapper
```
Which in flang case ends-up transferring a descriptor to an integer
array, the code in gFTL later compare the integer arrays. This logic is
used when building set data structures in gFTL.
Commit: 4cf458c696047d6d2991c121da7a5c165ff747ce
https://github.com/llvm/llvm-project/commit/4cf458c696047d6d2991c121da7a5c165ff747ce
Author: Jason Molenda <jason at molenda.com>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M lldb/source/Core/CoreProperties.td
Log Message:
-----------
Fix help doc for 'enable-background-lookup' obsolete setting
The setting name that was settled on is symbols.auto-download.
Commit: f2329a38de03e331c97fb5ed36e4286dfc5c2309
https://github.com/llvm/llvm-project/commit/f2329a38de03e331c97fb5ed36e4286dfc5c2309
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
Log Message:
-----------
[AMDGPU] Reimplement V_READFIRSTLANE_B32 as a normal VOP1 Pseudo. NFCI. (#81877)
Commit: b6c453c13f9dca064ac06b8b2cff80946225aa47
https://github.com/llvm/llvm-project/commit/b6c453c13f9dca064ac06b8b2cff80946225aa47
Author: Matthias Springer <me at m-sp.org>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_0.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cast.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cmp.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_1d_nwc_wcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_55.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_block.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_coo_test.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_dot.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_expand.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_filter_conv2d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_flatten.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_generate.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_index_dense.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_mttkrp.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_reduction.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_permute.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pooling_nhwc.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_quantized_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_prod.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_sum.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_min.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_prod.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_mm_fusion.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_scf_nested.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_select.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_semiring_select.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_c32.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_f16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tanh.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tensor_mul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_unary.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_vector_ops.mlir
Log Message:
-----------
[mlir][sparse] Fix memory leaks (part 1) (#81843)
This commit fixes memory leaks in sparse tensor integration tests by
adding `bufferization.dealloc_tensor` ops.
Note: Buffer deallocation will be automated in the future with the
ownership-based buffer deallocation pass, making `dealloc_tensor`
obsolete (only codegen path, not when using the runtime library).
Commit: 8ba915fe1096de290f5e569d6de97a8bcc8652f7
https://github.com/llvm/llvm-project/commit/8ba915fe1096de290f5e569d6de97a8bcc8652f7
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
Log Message:
-----------
[AMDGPU] Set DecoderNamespace consistently for GFX10+ MIMG instructions (#81881)
This was done inconsistently before. Many instructions used the default
"AMDGPU" namespace which I would like to remove.
Commit: 92ef40874d58d4fca4b7657c31ab2538e1301f26
https://github.com/llvm/llvm-project/commit/92ef40874d58d4fca4b7657c31ab2538e1301f26
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Delete a redundant newline at the end of a test case
It slipped in from commit fa6025e25b57.
Commit: 3b6e25048f188692c27e7788f4e4453a3963306d
https://github.com/llvm/llvm-project/commit/3b6e25048f188692c27e7788f4e4453a3963306d
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
M llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll
Log Message:
-----------
[TBAA] Only clear TBAAStruct if field can be extracted. (#81285)
Retain TBAAStruct if we fail to match the access to a single field. All
users at the moment use this when using the full size of the original
access. SROA also retains the original TBAAStruct when accessing parts
at offset 0.
Motivation for this and follow-on patches is to improve codegen for
libc++, where using memcpy limits optimizations, like vectorization for
code iteration over std::vector<std::complex<float>>:
https://godbolt.org/z/f3vqYos3c
Depends on https://github.com/llvm/llvm-project/pull/81284
Commit: 8c2033719a843a1880427a5e8caa5563248bce78
https://github.com/llvm/llvm-project/commit/8c2033719a843a1880427a5e8caa5563248bce78
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/asan/asan_interceptors.cpp
Log Message:
-----------
[asan] Intercept __makecontext_v2 on Solaris/SPARC (#81588)
As detailed in [GCC PR
sanitizer/113785](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113785),
the GCC test `c-c++-common/asan/swapcontext-test-1.c` `FAIL`s on
Solaris/sparc.
This is due to the fact that Solaris 10/SPARC changed the semantics of
`makecontext` so `ucontext_t.uc_stack.ss_sp` refers to the stack base
address. To maintain binary compatiblity, the external name was changed
to `__makecontext_v2`, keeping the old version.
To match this, `__makecontext_v2` needs to be intercepted instead of
`makecontext`.
Tested on GCC trunk on `sparc-sun-solaris2.11`, `i386-pc-solaris2.11`,
and `x86_64-pc-linux-gnu`.
Also tested on the same targets on LLVM `main`. However, this only
proves that Linux/x86_64 isn't broken, since all `makecontext` tests are
Linux-specific.
Commit: 3c02cb7492fc78fb678264cebf57ff88e478e14f
https://github.com/llvm/llvm-project/commit/3c02cb7492fc78fb678264cebf57ff88e478e14f
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/test/tools/llvm-objcopy/ELF/binary-output-target.test
M llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test
M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
Log Message:
-----------
[llvm-objcopy] Add SystemZ support (#81841)
This is also necessary for enabling ClangBuiltLinux:
https://github.com/ClangBuiltLinux/linux/issues/1530
Commit: 2e43ca49d06d4cf78a3fd86e1e41175fde083708
https://github.com/llvm/llvm-project/commit/2e43ca49d06d4cf78a3fd86e1e41175fde083708
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Context.cpp
M clang/lib/AST/Interp/EvalEmitter.cpp
M clang/lib/AST/Interp/EvalEmitter.h
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/lib/AST/Interp/EvaluationResult.h
M clang/test/AST/Interp/c.c
Log Message:
-----------
[clang][Interp] Check variable initialization in Ret op
Just like we did with the l-to-r conversion, we need to do this
while the data is still alive.
Commit: bf471c915d14035a24ec027fb2bb0373cefdabe1
https://github.com/llvm/llvm-project/commit/bf471c915d14035a24ec027fb2bb0373cefdabe1
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-objcopy.rst
Log Message:
-----------
[docs][llvm-objcopy] Add missing formats (#81981)
Bring list of supported formats in docs back in sync with the code.
Commit: c681ea6623082324bcf3f7e1966495ce01817c59
https://github.com/llvm/llvm-project/commit/c681ea6623082324bcf3f7e1966495ce01817c59
Author: J. Ryan Stinnett <jryans at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/docs/_themes/llvm-theme/static/llvm-theme.css
Log Message:
-----------
[Docs] Fix large vertical space at top of pages (#81599)
This fixes a large vertical blank space at the top of the page that was caused
by the floating sidebar.
Commit: 0ea64ad88abcbb939547a92000d98efb2b00d95f
https://github.com/llvm/llvm-project/commit/0ea64ad88abcbb939547a92000d98efb2b00d95f
Author: Pierrick Bouvier <pierrick.bouvier at linaro.org>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/intrin.h
M clang/test/CodeGen/arm64-microsoft-intrinsics.c
M clang/test/CodeGen/ms-intrinsics-other.c
M clang/test/CodeGen/ms-intrinsics-underaligned.c
Log Message:
-----------
[COFF][Aarch64] Add _InterlockedAdd64 intrinsic (#81849)
Found when compiling openssl master branch using clang-cl.
This commit introduces usage of InterlockedAdd64:
https://github.com/openssl/openssl/commit/d0e1a0ae701cfaca7f3dd3bf28a3f934a6408813
https://learn.microsoft.com/en-us/cpp/intrinsics/interlockedadd-intrinsic-functions
Commit: 2ed2a3ad90934efac12cbeb01cf73afebc01d963
https://github.com/llvm/llvm-project/commit/2ed2a3ad90934efac12cbeb01cf73afebc01d963
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/CodeGen/ExpandReductions.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
Log Message:
-----------
[Transforms][Utils] Add helpers to map between Reduction IntrinsicID and Arithmetic Instruction Opcode and MinMax IntrinsicID / RecurKind
Noticed on #81852
Commit: 181d9602f35c476201ecc72c26c00042ad949544
https://github.com/llvm/llvm-project/commit/181d9602f35c476201ecc72c26c00042ad949544
Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
A mlir/test/Dialect/Affine/SuperVectorize/vectorize_affine_apply.mlir
Log Message:
-----------
[mlir][vectorize] Support affine.apply in SuperVectorize (#77968)
We have no need to vectorize affine.apply inside the vectorizing loop.
However, we still need to generate it in the original scalar form. We
have to replace all its operands with the generated scalar operands in
the vectorizing loop, e.g., induction variables.
Commit: f06e07be9a41978e39fdf22f6174194cf8382047
https://github.com/llvm/llvm-project/commit/f06e07be9a41978e39fdf22f6174194cf8382047
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
Log Message:
-----------
[clang][Interp][NFC] Check pointer compound assign operators for errors
This needs to be done but we didn't use to do it.
Commit: 7dcca6213258bf2df2dd8a7d555c9a12c1484759
https://github.com/llvm/llvm-project/commit/7dcca6213258bf2df2dd8a7d555c9a12c1484759
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/ArmSVE/IR/ArmSVE.td
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/test/Dialect/ArmSVE/invalid.mlir
M mlir/test/Dialect/ArmSVE/legalize-for-llvm.mlir
M mlir/test/Dialect/ArmSVE/roundtrip.mlir
Log Message:
-----------
[mlir][ArmSVE] Add `arm_sve.zip.x2` and `arm_sve.zip.x4` ops (#81278)
This adds ops for the two and four-way SME 2 multi-vector zips.
See:
-
https://developer.arm.com/documentation/ddi0602/2023-12/SME-Instructions/ZIP--two-registers---Interleave-elements-from-two-vectors-?lang=en
-
https://developer.arm.com/documentation/ddi0602/2023-12/SME-Instructions/ZIP--four-registers---Interleave-elements-from-four-vectors-?lang=en
Commit: a52c0c770056e040390839e753dbbaccbf4d63c4
https://github.com/llvm/llvm-project/commit/a52c0c770056e040390839e753dbbaccbf4d63c4
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/arrays.cpp
Log Message:
-----------
[clang][Interp] Lazily visit constant locals in C++
While we _do_ get them registered via visitInitializer(), they
are still local, so gone on the next call to e.g. evaluateAsRValue().
Visit them lazily, similarly like we do in C.
Commit: bfda580b087a4c44e59fb05af0015d2a14c8dada
https://github.com/llvm/llvm-project/commit/bfda580b087a4c44e59fb05af0015d2a14c8dada
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
Log Message:
-----------
[bazel] Port for 0eedc85baad495fa916d1da7b20db93a29b443e1 and 82a4a41614f4943e6b2e85bbc8cb8507d2236524
Commit: 8c1c94e8c15855ad41cfec83af61a27740e6941f
https://github.com/llvm/llvm-project/commit/8c1c94e8c15855ad41cfec83af61a27740e6941f
Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTestTableGen.cpp
Log Message:
-----------
[clang-format] Support of TableGen basic format restrictions. (#81611)
- Allow/force to break the line or not.
- Allow/force to insert space or not.
Commit: 2e585c48f3a147d97b1b8d81605fd0d9ab75aa34
https://github.com/llvm/llvm-project/commit/2e585c48f3a147d97b1b8d81605fd0d9ab75aa34
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Rewrite `getVregSrcForVT` with `!cond` (#81954)
Commit: c2fea4cf38991669030f4190d17b645cec27a7c0
https://github.com/llvm/llvm-project/commit/c2fea4cf38991669030f4190d17b645cec27a7c0
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseTentative.cpp
A clang/test/SemaCXX/_Alignas.cpp
Log Message:
-----------
[C++] Fix parsing of _Alignas in local declarations (#81915)
We support '_Alignas' from C11 as an extension in C++. However, we were
not correctly parsing its use in local variable declarations. This patch
addresses that issue.
Commit: 624ea349d7fa3535760a21a05c9998c7978228a4
https://github.com/llvm/llvm-project/commit/624ea349d7fa3535760a21a05c9998c7978228a4
Author: Nico Weber <thakis at chromium.org>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lld/MachO/SyntheticSections.cpp
M lld/test/MachO/data-in-code.s
Log Message:
-----------
[lld/MachO] Fix assert on unsorted data-in-code entries (#81758)
When the data-in-code entries are in separate sections, they are not
guaranteed to be sorted. In particular, 68b1cc36f3df marked some libc++
string functions as noinline, which leads to global ctors involving
strings now producing data-in-code sections in __TEXT,__StaticInit,
which is why this now happens in practice.
Since data-in-code entries are relatively rare and small, just sort
them. No observed performance impact.
See also crbug.com/41487860
Commit: 9e5da05da7357fed26eb814275d5edeaa5561956
https://github.com/llvm/llvm-project/commit/9e5da05da7357fed26eb814275d5edeaa5561956
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Add a missing dependency for __support_fixed_point lib
Commit: 0dacba3ad1b5214ca35eda14987c0b76568a070e
https://github.com/llvm/llvm-project/commit/0dacba3ad1b5214ca35eda14987c0b76568a070e
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
Log Message:
-----------
[VPlan] Handle truncating ICMPs in truncateToMinimalBWs.
Update truncateToMinimalBitwidths to handle truncating ICMPs. For ICMPs,
the new target type will be the same as the original type. In that case,
only truncate the operands, but skip the extend. This is in line with
what the original truncateToMinimalBitwidths did for compares.
Fixes https://github.com/llvm/llvm-project/issues/81415.
Commit: 17d8a84c32b7a3ecc3080c33fe2c780f029691a3
https://github.com/llvm/llvm-project/commit/17d8a84c32b7a3ecc3080c33fe2c780f029691a3
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
Log Message:
-----------
[clang][Interp] Fix handling PointerToIntegral casts
We need to always emit the diagnostic, but still do the cast.
This is also what the current interpreter does.
Commit: 53c0e809faacfffce097c7d220836f4f41b3979a
https://github.com/llvm/llvm-project/commit/53c0e809faacfffce097c7d220836f4f41b3979a
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/test/CodeGen/aarch64-ABI-align-packed.c
M llvm/include/llvm/IR/Metadata.h
M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/tbaa-struct2.ll
M llvm/test/Transforms/SROA/tbaa-struct3.ll
Log Message:
-----------
[SROA] Use !tbaa instead of !tbaa.struct if op matches field. (#81289)
If a split memory access introduced by SROA accesses precisely a single
field of the original operation's !tbaa.struct, use the !tbaa tag for
the accessed field directly instead of the full !tbaa.struct.
InstCombine already had a similar logic.
Motivation for this and follow-on patches is to improve codegen for
libc++, where using memcpy limits optimizations, like vectorization for
code iteration over std::vector<std::complex<float>>:
https://godbolt.org/z/f3vqYos3c
Depends on https://github.com/llvm/llvm-project/pull/81285.
Commit: f55b79f59a77b4be586d649e9ced9f8667265011
https://github.com/llvm/llvm-project/commit/f55b79f59a77b4be586d649e9ced9f8667265011
Author: Hans Wennborg <hans at chromium.org>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lld/MachO/Driver.cpp
M lld/test/MachO/arm64-32-stubs.s
M lld/test/MachO/arm64-stubs.s
M lld/test/MachO/dyld-stub-binder.s
M lld/test/MachO/icf-safe.ll
M lld/test/MachO/invalid/chained-fixups-incompatible.s
M lld/test/MachO/objc-selrefs.s
Log Message:
-----------
Revert "[lld] enable fixup chains by default (#79894)"
This caused links to fail with:
lld/MachO/Symbols.cpp:97:
virtual uint64_t lld::macho::Defined::getVA() const:
Assertion `target->usesThunks()' failed.
or crash when asserts are disabled. See comment on
https://github.com/llvm/llvm-project/pull/79894
> Enable chained fixups in lld when all platform and version criteria are
> met. This is an attempt at simplifying the logic used in ld 907:
>
> https://github.com/apple-oss-distributions/ld64/blob/93d74eafc37c0558b4ffb88a8bc15c17bed44a20/src/ld/Options.cpp#L5458-L5549
>
> Some changes were made to simplify the logic:
> - only enable chained fixups for macOS from 13.0 to avoid the arch check
> - only enable chained fixups for iphonesimulator from 16.0 to avoid the
> arch check
> - don't enable chained fixups for not specifically listed platforms
> - don't enable chained fixups for arm64_32
This reverts commit 775c2856fb32868f357a3ce3f2b4139541e12578.
Commit: 2b677fa4b35368442b32c71153f8c9201522c97c
https://github.com/llvm/llvm-project/commit/2b677fa4b35368442b32c71153f8c9201522c97c
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libc/src/__support/CPP/array.h
M libc/src/__support/UInt.h
Log Message:
-----------
[libc][NFC] Simplify BigInt (#81992)
- Add a single `cmp` function to derive all comparison operators
- Use the `friend` version of the member functions for symmetry
- Add a `is_neg` function to factor sign extraction
- Implement binary op through macro expansion
Commit: 35f3298ead71bbef73ae0321055470ab761a3eb2
https://github.com/llvm/llvm-project/commit/35f3298ead71bbef73ae0321055470ab761a3eb2
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/storepairsuppress.ll
M llvm/test/CodeGen/AArch64/storepairsuppress_minsize.ll
Log Message:
-----------
[AArch64] Add extra stp suppression tests.
Add test case for store suppression that still trigger after
https://github.com/llvm/llvm-project/pull/81749
Commit: d228191c8bb80ebf337d282374941c465dabc78d
https://github.com/llvm/llvm-project/commit/d228191c8bb80ebf337d282374941c465dabc78d
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/lambda.cpp
Log Message:
-----------
[clang][Interp] Create global variables for TemplateParamObjectDecls
Commit: ff2720d190e0dbd5f157d5d3614d0ab11fe9e7b2
https://github.com/llvm/llvm-project/commit/ff2720d190e0dbd5f157d5d3614d0ab11fe9e7b2
Author: Boian Petkantchin <boian.petkantchin at amd.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Simplifications.h
M mlir/lib/Dialect/Mesh/IR/CMakeLists.txt
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
M mlir/lib/Dialect/Mesh/Transforms/Simplifications.cpp
M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
Log Message:
-----------
[mlir][mesh] Dedublicate iterator type and partial type information (#81920)
The two types duplicated mostly the same values.
Here they are decomposed to carry orthogonal and complimentary
information.
Use `utils::IteratorType` instead of `mesh::IteratorType`. It now has
only parallel and reduction values.
Rename `Partial` to `ReductionKind`.
Add `getReductionLoopIteratorKinds` method to `ShardingInterface`.
Commit: 10007eef394dedda02ca4f9359f1caec45846e5f
https://github.com/llvm/llvm-project/commit/10007eef394dedda02ca4f9359f1caec45846e5f
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
Log Message:
-----------
[libc][stdfix] Re-enable fixed point abs entry points. (#81995)
#80757 has been merged.
Commit: b334664f9f3a098b6f3fd9cfd17b856a9edfe446
https://github.com/llvm/llvm-project/commit/b334664f9f3a098b6f3fd9cfd17b856a9edfe446
Author: Anton Lydike <me at AntonLydike.de>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/IR/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/IR/MPI.h
A mlir/include/mlir/Dialect/MPI/IR/MPI.td
A mlir/include/mlir/Dialect/MPI/IR/MPIOps.td
A mlir/include/mlir/Dialect/MPI/IR/MPITypes.td
M mlir/include/mlir/InitAllDialects.h
M mlir/lib/Dialect/CMakeLists.txt
A mlir/lib/Dialect/MPI/CMakeLists.txt
A mlir/lib/Dialect/MPI/IR/CMakeLists.txt
A mlir/lib/Dialect/MPI/IR/MPI.cpp
A mlir/lib/Dialect/MPI/IR/MPIOps.cpp
A mlir/test/Dialect/MPI/ops.mlir
Log Message:
-----------
[mlir] Reland "Initial patch to add an MPI dialect" (#81975)
This patch introduces the new MPI dialect into MLIR. The Message Passing
Interface (MPI) is a widely-used standard for distributed programs to
exchange data. This PR goes together with a talk later at today's LLVM
Dev Meeting.
This is just a first, small patch to get going and add the necessary
base files, so that we can add more operations in further patches.
Here's the documentation as generated by `ninja mlir-doc`:
# 'mpi' Dialect
This dialect models the Message Passing Interface (MPI), version
4.0. It is meant to serve as an interfacing dialect that is targeted
by higher-level dialects. The MPI dialect itself can be lowered to
multiple MPI implementations and hide differences in ABI. The dialect
models the functions of the MPI specification as close to 1:1 as
possible
while preserving SSA value semantics where it makes sense, and uses
`memref` types instead of bare pointers.
This dialect is under active development, and while stability is an
eventual goal, it is not guaranteed at this juncture. Given the early
state, it is recommended to inquire further prior to using this dialect.
For an in-depth documentation of the MPI library interface, please refer
to official documentation such as the
[OpenMPI online documentation](https://www.open-mpi.org/doc/current/).
[TOC]
## Operation definition
### `mpi.comm_rank` (mpi::CommRankOp)
_Get the current rank, equivalent to `MPI_Comm_rank(MPI_COMM_WORLD,
&rank)`_
Syntax:
```
operation ::= `mpi.comm_rank` attr-dict `:` type(results)
```
Communicators other than `MPI_COMM_WORLD` are not supported for now.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
| `rank` | 32-bit signless integer
### `mpi.error_class` (mpi::ErrorClassOp)
_Get the error class from an error code, equivalent to the
`MPI_Error_class` function_
Syntax:
```
operation ::= `mpi.error_class` $val attr-dict `:` type($val)
```
`MPI_Error_class` maps return values from MPI calls to a set of
well-known
MPI error classes.
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `val` | MPI function call return value
#### Results:
| Result | Description |
| :----: | ----------- |
| `errclass` | MPI function call return value
### `mpi.finalize` (mpi::FinalizeOp)
_Finalize the MPI library, equivalent to `MPI_Finalize()`_
Syntax:
```
operation ::= `mpi.finalize` attr-dict (`:` type($retval)^)?
```
This function cleans up the MPI state. Afterwards, no MPI methods may
be invoked (excpet for MPI_Get_version, MPI_Initialized, and
MPI_Finalized).
Notably, MPI_Init cannot be called again in the same program.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
### `mpi.init` (mpi::InitOp)
_Initialize the MPI library, equivalent to `MPI_Init(NULL, NULL)`_
Syntax:
```
operation ::= `mpi.init` attr-dict (`:` type($retval)^)?
```
This operation must preceed most MPI calls (except for very few
exceptions,
please consult with the MPI specification on these).
Passing &argc, &argv is not supported currently.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
### `mpi.recv` (mpi::RecvOp)
_Equivalent to `MPI_Recv(ptr, size, dtype, dest, tag, MPI_COMM_WORLD,
MPI_STATUS_IGNORE)`_
Syntax:
```
operation ::= `mpi.recv` `(` $ref `,` $tag `,` $rank `)` attr-dict `:` type($ref) `,` type($tag) `,` type($rank)(`->` type($retval)^)?
```
MPI_Recv performs a blocking receive of `size` elements of type `dtype`
from rank `dest`. The `tag` value and communicator enables the library
to
determine the matching of multiple sends and receives between the same
ranks.
Communicators other than `MPI_COMM_WORLD` are not supprted for now.
The MPI_Status is set to `MPI_STATUS_IGNORE`, as the status object
is not yet ported to MLIR.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `ref` | memref of any type values
| `tag` | 32-bit signless integer
| `rank` | 32-bit signless integer
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
### `mpi.retval_check` (mpi::RetvalCheckOp)
_Check an MPI return value against an error class_
Syntax:
```
operation ::= `mpi.retval_check` $val `=` $errclass attr-dict `:` type($res)
```
This operation compares MPI status codes to known error class
constants such as `MPI_SUCCESS`, or `MPI_ERR_COMM`.
#### Attributes:
<table>
<tr><th>Attribute</th><th>MLIR Type</th><th>Description</th></tr>
<tr><td><code>errclass</code></td><td>::mlir::mpi::MPI_ErrorClassEnumAttr</td><td><details><summary>MPI
error class name</summary>{{% markdown %}}Enum cases:
* MPI_SUCCESS (`MPI_SUCCESS`)
* MPI_ERR_ACCESS (`MPI_ERR_ACCESS`)
* MPI_ERR_AMODE (`MPI_ERR_AMODE`)
* MPI_ERR_ARG (`MPI_ERR_ARG`)
* MPI_ERR_ASSERT (`MPI_ERR_ASSERT`)
* MPI_ERR_BAD_FILE (`MPI_ERR_BAD_FILE`)
* MPI_ERR_BASE (`MPI_ERR_BASE`)
* MPI_ERR_BUFFER (`MPI_ERR_BUFFER`)
* MPI_ERR_COMM (`MPI_ERR_COMM`)
* MPI_ERR_CONVERSION (`MPI_ERR_CONVERSION`)
* MPI_ERR_COUNT (`MPI_ERR_COUNT`)
* MPI_ERR_DIMS (`MPI_ERR_DIMS`)
* MPI_ERR_DISP (`MPI_ERR_DISP`)
* MPI_ERR_DUP_DATAREP (`MPI_ERR_DUP_DATAREP`)
* MPI_ERR_ERRHANDLER (`MPI_ERR_ERRHANDLER`)
* MPI_ERR_FILE (`MPI_ERR_FILE`)
* MPI_ERR_FILE_EXISTS (`MPI_ERR_FILE_EXISTS`)
* MPI_ERR_FILE_IN_USE (`MPI_ERR_FILE_IN_USE`)
* MPI_ERR_GROUP (`MPI_ERR_GROUP`)
* MPI_ERR_INFO (`MPI_ERR_INFO`)
* MPI_ERR_INFO_KEY (`MPI_ERR_INFO_KEY`)
* MPI_ERR_INFO_NOKEY (`MPI_ERR_INFO_NOKEY`)
* MPI_ERR_INFO_VALUE (`MPI_ERR_INFO_VALUE`)
* MPI_ERR_IN_STATUS (`MPI_ERR_IN_STATUS`)
* MPI_ERR_INTERN (`MPI_ERR_INTERN`)
* MPI_ERR_IO (`MPI_ERR_IO`)
* MPI_ERR_KEYVAL (`MPI_ERR_KEYVAL`)
* MPI_ERR_LOCKTYPE (`MPI_ERR_LOCKTYPE`)
* MPI_ERR_NAME (`MPI_ERR_NAME`)
* MPI_ERR_NO_MEM (`MPI_ERR_NO_MEM`)
* MPI_ERR_NO_SPACE (`MPI_ERR_NO_SPACE`)
* MPI_ERR_NO_SUCH_FILE (`MPI_ERR_NO_SUCH_FILE`)
* MPI_ERR_NOT_SAME (`MPI_ERR_NOT_SAME`)
* MPI_ERR_OP (`MPI_ERR_OP`)
* MPI_ERR_OTHER (`MPI_ERR_OTHER`)
* MPI_ERR_PENDING (`MPI_ERR_PENDING`)
* MPI_ERR_PORT (`MPI_ERR_PORT`)
* MPI_ERR_PROC_ABORTED (`MPI_ERR_PROC_ABORTED`)
* MPI_ERR_QUOTA (`MPI_ERR_QUOTA`)
* MPI_ERR_RANK (`MPI_ERR_RANK`)
* MPI_ERR_READ_ONLY (`MPI_ERR_READ_ONLY`)
* MPI_ERR_REQUEST (`MPI_ERR_REQUEST`)
* MPI_ERR_RMA_ATTACH (`MPI_ERR_RMA_ATTACH`)
* MPI_ERR_RMA_CONFLICT (`MPI_ERR_RMA_CONFLICT`)
* MPI_ERR_RMA_FLAVOR (`MPI_ERR_RMA_FLAVOR`)
* MPI_ERR_RMA_RANGE (`MPI_ERR_RMA_RANGE`)
* MPI_ERR_RMA_SHARED (`MPI_ERR_RMA_SHARED`)
* MPI_ERR_RMA_SYNC (`MPI_ERR_RMA_SYNC`)
* MPI_ERR_ROOT (`MPI_ERR_ROOT`)
* MPI_ERR_SERVICE (`MPI_ERR_SERVICE`)
* MPI_ERR_SESSION (`MPI_ERR_SESSION`)
* MPI_ERR_SIZE (`MPI_ERR_SIZE`)
* MPI_ERR_SPAWN (`MPI_ERR_SPAWN`)
* MPI_ERR_TAG (`MPI_ERR_TAG`)
* MPI_ERR_TOPOLOGY (`MPI_ERR_TOPOLOGY`)
* MPI_ERR_TRUNCATE (`MPI_ERR_TRUNCATE`)
* MPI_ERR_TYPE (`MPI_ERR_TYPE`)
* MPI_ERR_UNKNOWN (`MPI_ERR_UNKNOWN`)
* MPI_ERR_UNSUPPORTED_DATAREP (`MPI_ERR_UNSUPPORTED_DATAREP`)
* MPI_ERR_UNSUPPORTED_OPERATION (`MPI_ERR_UNSUPPORTED_OPERATION`)
* MPI_ERR_VALUE_TOO_LARGE (`MPI_ERR_VALUE_TOO_LARGE`)
* MPI_ERR_WIN (`MPI_ERR_WIN`)
* MPI_ERR_LASTCODE (`MPI_ERR_LASTCODE`){{% /markdown
%}}</details></td></tr>
</table>
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `val` | MPI function call return value
#### Results:
| Result | Description |
| :----: | ----------- |
| `res` | 1-bit signless integer
### `mpi.send` (mpi::SendOp)
_Equivalent to `MPI_Send(ptr, size, dtype, dest, tag, MPI_COMM_WORLD)`_
Syntax:
```
operation ::= `mpi.send` `(` $ref `,` $tag `,` $rank `)` attr-dict `:` type($ref) `,` type($tag) `,` type($rank)(`->` type($retval)^)?
```
MPI_Send performs a blocking send of `size` elements of type `dtype` to
rank
`dest`. The `tag` value and communicator enables the library to
determine
the matching of multiple sends and receives between the same ranks.
Communicators other than `MPI_COMM_WORLD` are not supprted for now.
This operation can optionally return an `!mpi.retval` value that can be
used
to check for errors.
#### Operands:
| Operand | Description |
| :-----: | ----------- |
| `ref` | memref of any type values
| `tag` | 32-bit signless integer
| `rank` | 32-bit signless integer
#### Results:
| Result | Description |
| :----: | ----------- |
| `retval` | MPI function call return value
## Attribute definition
### MPI_ErrorClassEnumAttr
MPI error class name
Syntax:
```
#mpi.errclass<
::mlir::mpi::MPI_ErrorClassEnum # value
>
```
Enum cases:
* MPI_SUCCESS (`MPI_SUCCESS`)
* MPI_ERR_ACCESS (`MPI_ERR_ACCESS`)
* MPI_ERR_AMODE (`MPI_ERR_AMODE`)
* ... *all other MPI error codes*
#### Parameters:
| Parameter | C++ type | Description |
| :-------: | :-------: | ----------- |
| value | `::mlir::mpi::MPI_ErrorClassEnum` | an enum of type
MPI_ErrorClassEnum |
## Type definition
### RetvalType
MPI function call return value
Syntax: `!mpi.retval`
This type represents a return value from an MPI function vall.
This value can be MPI_SUCCESS, MPI_ERR_IN_STATUS, or any error code.
This return value can be compared agains the known MPI error classes
represented by `#mpi.errclass` using the `mpi.retval_check` operation.
Commit: a80a01fc25afc7939f7f03227b586ad4465d4a38
https://github.com/llvm/llvm-project/commit/a80a01fc25afc7939f7f03227b586ad4465d4a38
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libc/src/__support/UInt.h
M libc/src/__support/integer_literals.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/exp10.cpp
M libc/src/math/generic/exp2.cpp
M libc/src/math/generic/expm1.cpp
M libc/src/math/generic/log.cpp
M libc/src/math/generic/log10.cpp
M libc/src/math/generic/log1p.cpp
M libc/src/math/generic/log2.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/__support/integer_to_string_test.cpp
M libc/test/src/__support/str_to_long_double_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
Log Message:
-----------
[reland][libc][NFC] Use user defined literals to build 128 and 256 bit constants (#81998)
- #81835
- Fix for platforms where uint64_t is not available
Commit: db870cfc9ed20e810308262d6d6bbb08b369c23f
https://github.com/llvm/llvm-project/commit/db870cfc9ed20e810308262d6d6bbb08b369c23f
Author: Eikansh Gupta <quic_eikagupt at quicinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
Log Message:
-----------
[InstCombine] Extract helper from matchFunnelShift (NFC)
The matchFunnelShift function was doing pattern matching and creating
the fshl/fshr instruction if needed. Moved the pattern matching code to
function convertOrOfShiftsToFunnelShift. It can be reused for other
optimizations.
Commit: 3d81d48398f04119f568206d47a29dd6a96c4a08
https://github.com/llvm/llvm-project/commit/3d81d48398f04119f568206d47a29dd6a96c4a08
Author: Eikansh Gupta <quic_eikagupt at quicinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/test/Transforms/InstCombine/fsh.ll
Log Message:
-----------
[InstCombine] Added additional funnel shift tests (NFC)
Commit: 3363d23bd39970cbd5e32bfca6892ffd97ceb023
https://github.com/llvm/llvm-project/commit/3363d23bd39970cbd5e32bfca6892ffd97ceb023
Author: Eikansh Gupta <quic_eikagupt at quicinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/test/Transforms/InstCombine/fsh.ll
Log Message:
-----------
[InstCombine] Do not simplify lshr/shl arg if it is part of a rotate pattern
fshl/fshr having first two arguments as same gets lowered to target
specific rotate. But based on the uses, one of the arguments can get
simplified resulting in different arguments performing equivalent
operation.
This patch prevents the simplification of the arguments of lshr/shl if
they are part of fshl pattern.
Closes https://github.com/llvm/llvm-project/pull/73441.
Commit: bf93f4b85fd4efbd7a3083935a2ddbbb00f1a35f
https://github.com/llvm/llvm-project/commit/bf93f4b85fd4efbd7a3083935a2ddbbb00f1a35f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/test/API/api/command-return-object/TestSBCommandReturnObject.py
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-targets/TestMultipleTargets.py
M lldb/test/API/api/multithreaded/TestMultithreaded.py
M lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py
Log Message:
-----------
[lldb] Fix and rename skipIfHostIncompatibleWithRemote
Fix and rename the broken and confusingly named decorator
skipIfHostIncompatibleWithRemote. The decorator is meant to skip test
which uses the inferior test build system (i.e. to build test inferiors)
to build host binaries (e.g. lldb drivers).
The decorator was broken on macOS, where the host and target platform
report macosx, but the decorator overwrote it with Darwin, resulting in
tests incorrectly being skipped.
The decorator was also missing on a handful of tests that use the
buildDriver helper, which this commit fixes as well.
Commit: 17040babf529da3cf20bfb1dd54bd92d1e07def3
https://github.com/llvm/llvm-project/commit/17040babf529da3cf20bfb1dd54bd92d1e07def3
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
Log Message:
-----------
Add llvm_v3i32_ty. NFC. (#81928)
Commit: 0b1c25c995cdc3e60fcbb8e0b8ff01adf9061fa6
https://github.com/llvm/llvm-project/commit/0b1c25c995cdc3e60fcbb8e0b8ff01adf9061fa6
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Fix Ins64 clamp in the VOPProfile. NFC. (#81925)
For some reason only IntClamp was added to the Ins64, but not FPClamp.
As is this is NFC, but fails to produce proper dag downstream.
Commit: 2f083b364f43fb12b2fdf23935e1f0b6958d0882
https://github.com/llvm/llvm-project/commit/2f083b364f43fb12b2fdf23935e1f0b6958d0882
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
M llvm/test/CodeGen/AArch64/arm64-stur.ll
M llvm/test/CodeGen/AArch64/merge-store.ll
M llvm/test/CodeGen/AArch64/storepairsuppress.ll
Log Message:
-----------
[AArch64] Fix resource length computation for STP. (#81749)
On some uArchs, `STP [s|d], [s|d]` first combines the 2 input registers
in a single register using a vector execution unit. IIUC
AArch64StorePairSuppress tries to prevent forming STPs in case the
critical resource are the vector units, in order to prevent adding more
pressure on those units.
The implementation however simply computes the new critical resource
length by adding resource for another STP. If load/store units are the
critical resource, this means we increase that length by one, and
incorrectly prevent forming the STP.
This patch adjusts the resource computation by also removing 2 STRs, as
introducing a STP will remove 2 single stores. This should more
accurately reflect the resource usage after introducing an STP, and does
not prevent forming STPs if load/store units are the critical resources;
in those cases, STP can actually help to reduce resource usage.
PR: https://github.com/llvm/llvm-project/pull/81749
Commit: c098f2d1669fb1ec6a5eac81277bd16b334ec956
https://github.com/llvm/llvm-project/commit/c098f2d1669fb1ec6a5eac81277bd16b334ec956
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Rewrite `getVOPSrc0ForVT` with `!cond` (#81956)
Commit: dfae16277329011aa5f1e41ecd06b9db75a0c374
https://github.com/llvm/llvm-project/commit/dfae16277329011aa5f1e41ecd06b9db75a0c374
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
Log Message:
-----------
[SLP] Update test naming to avoid FileCheck warnings
This only address the tmp name collision. We still get warnings due to
conflicting ASM. This is due to the different target attributes on the
function.
Commit: 7b7d411de9f731d2bcf6b093f6cee2cf57a5196e
https://github.com/llvm/llvm-project/commit/7b7d411de9f731d2bcf6b093f6cee2cf57a5196e
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/test/API/python_api/type/TestTypeList.py
M lldb/test/API/python_api/type/main.cpp
Log Message:
-----------
[lldb] Fix `FindDirectNestedType` not working with class templates (#81666)
This patch attempts to fix lookup in class template specialization.
The first fixed problem is that during type lookup `DeclContextGetName`
have been dropping template arguments. So when such a name was compared
against a name in `DW_AT_name`, which contains template arguments, false
mismatches have been occurring.
The second fixed problem is that LLDB's printing policy hasn't been
matching Clang's printing policy when it comes to integral non-type
template arguments. This again caused some false mismatches during type
lookup, because Clang puts e.g. `3U` in debug info for class
specializations, but LLDB has been expecting just `3`. This patch brings
printing policy in line with what Clang does.
Commit: ea226d6693022b707f6acc6e399c12da8261de11
https://github.com/llvm/llvm-project/commit/ea226d6693022b707f6acc6e399c12da8261de11
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/LoongArch/CMakeLists.txt
M llvm/lib/Target/Mips/CMakeLists.txt
M llvm/lib/Target/SystemZ/CMakeLists.txt
M llvm/lib/Target/VE/CMakeLists.txt
Log Message:
-----------
[LoongArch|Mips|SystemZ|VE] Fix shared build. NFC
Commit: 0da0966da4b813386a85cf70ae0d0efc7cb2eaea
https://github.com/llvm/llvm-project/commit/0da0966da4b813386a85cf70ae0d0efc7cb2eaea
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/test/API/api/check_public_api_headers/TestPublicAPIHeaders.py
M lldb/test/API/api/command-return-object/TestSBCommandReturnObject.py
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-targets/TestMultipleTargets.py
M lldb/test/API/api/multithreaded/TestMultithreaded.py
Log Message:
-----------
[lldb] Don't overwrite the dynamic loader library path for "driver tests"
We have a handful of tests that build a driver which links against LLDB.
When running those binaries, we overwrite the dynamic loader library
path to point to the build directory's libs dir, presumably to make sure
we load LLDB from there.
This above becomes an issue when you have libc++ enabled and the driver
is linked against the system's libc++, but the dynamic loader flag
forces it to pick up libc++ from the libs dir.
We could try to make the logic for building the driver smarter and have
it pick up the just-built libc++ like we do for our test binaries, but I
don't think we need to overwrite the library path in the first place.
The build logic to build these drivers already takes care to set the
correct RPATH in the linker.
This patch removes the logic and simplifies the tests.
Commit: cb891127974ddba9d2e31fe16220591ff9296bdb
https://github.com/llvm/llvm-project/commit/cb891127974ddba9d2e31fe16220591ff9296bdb
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/ParserOpenACC/parse-wait-clause.c
A clang/test/SemaOpenACC/compute-construct-ast.cpp
A clang/test/SemaOpenACC/parallel-assoc-stmt-inst.cpp
A clang/test/SemaOpenACC/parallel-loc-and-stmt.c
A clang/test/SemaOpenACC/parallel-loc-and-stmt.cpp
A clang/test/SemaOpenACC/unimplemented-construct.c
Log Message:
-----------
[OpenACC] Implement beginning parts of the 'parallel' Sema impl (#81659)
This patch Implements AST node creation and appertainment enforcement
for 'parallel', as well as changes the 'not implemented' messages to be
more specific. It does not deal with clauses/clause legality, nor a few
of the other rules from the standard, but this gets us most of the way
for a framework for future construct implementation.
Commit: 58946ee435dca2071ce8eec1961de29e7378ec03
https://github.com/llvm/llvm-project/commit/58946ee435dca2071ce8eec1961de29e7378ec03
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
A libc/docs/c23.rst
M libc/docs/index.rst
Log Message:
-----------
[libc][docs] start documenting c23 support (#81933)
I've been diffing the c17 vs c23 latest publicly available drafts and think I
have most of the library related differences. I haven't yet annotated what we
actually support or not.
Link: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2310.pdf (C17)
Link: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf (C23)
Commit: eb97599335be0e65de337681ce558818e57e382f
https://github.com/llvm/llvm-project/commit/eb97599335be0e65de337681ce558818e57e382f
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libc/src/__support/number_pair.h
Log Message:
-----------
[libc][NFC] Add missing constexpr (#82007)
This is a fix forward for the Fuchsia build bot
https://lab.llvm.org/buildbot/#/builders/98/builds/33515
Commit: f01ed3bc8884223bf3edbaad8d3685622444cbf5
https://github.com/llvm/llvm-project/commit/f01ed3bc8884223bf3edbaad8d3685622444cbf5
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/stdfix.rst
M libc/spec/stdc_ext.td
M libc/src/__support/fixed_point/CMakeLists.txt
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/stdfix/CMakeLists.txt
A libc/src/stdfix/roundhk.cpp
A libc/src/stdfix/roundhk.h
A libc/src/stdfix/roundhr.cpp
A libc/src/stdfix/roundhr.h
A libc/src/stdfix/roundk.cpp
A libc/src/stdfix/roundk.h
A libc/src/stdfix/roundlk.cpp
A libc/src/stdfix/roundlk.h
A libc/src/stdfix/roundlr.cpp
A libc/src/stdfix/roundlr.h
A libc/src/stdfix/roundr.cpp
A libc/src/stdfix/roundr.h
A libc/src/stdfix/rounduhk.cpp
A libc/src/stdfix/rounduhk.h
A libc/src/stdfix/rounduhr.cpp
A libc/src/stdfix/rounduhr.h
A libc/src/stdfix/rounduk.cpp
A libc/src/stdfix/rounduk.h
A libc/src/stdfix/roundulk.cpp
A libc/src/stdfix/roundulk.h
A libc/src/stdfix/roundulr.cpp
A libc/src/stdfix/roundulr.h
A libc/src/stdfix/roundur.cpp
A libc/src/stdfix/roundur.h
M libc/test/src/stdfix/CMakeLists.txt
A libc/test/src/stdfix/RoundTest.h
A libc/test/src/stdfix/roundhk_test.cpp
A libc/test/src/stdfix/roundhr_test.cpp
A libc/test/src/stdfix/roundk_test.cpp
A libc/test/src/stdfix/roundlk_test.cpp
A libc/test/src/stdfix/roundlr_test.cpp
A libc/test/src/stdfix/roundr_test.cpp
A libc/test/src/stdfix/rounduhk_test.cpp
A libc/test/src/stdfix/rounduhr_test.cpp
A libc/test/src/stdfix/rounduk_test.cpp
A libc/test/src/stdfix/roundulk_test.cpp
A libc/test/src/stdfix/roundulr_test.cpp
A libc/test/src/stdfix/roundur_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][stdfix] Add round functions for fixed point types. (#81994)
Commit: 15cccc55919d27eb2e89379a65f6c7809f679fda
https://github.com/llvm/llvm-project/commit/15cccc55919d27eb2e89379a65f6c7809f679fda
Author: Wael Yehia <44115484+w2yehia at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/profile/InstrProfilingPlatformAIX.c
A compiler-rt/test/profile/AIX/bexpfull-pgo.c
Log Message:
-----------
[AIX] Add a dummy variable in the __llvm_orderfile section (#81968)
to satisfy the __start___llvm_orderfile reference when linking with
-bexpfull and -fprofile-generate on AIX.
Commit: fc38182eab1614e6e6c067ad655935d680e72a41
https://github.com/llvm/llvm-project/commit/fc38182eab1614e6e6c067ad655935d680e72a41
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/test/AST/Interp/lambda.cpp
Log Message:
-----------
[clang][Interp][NFC] Convert test case to verify=expected,ref style
Commit: 7f45acfbfec678ad918640744229f15b9293ac79
https://github.com/llvm/llvm-project/commit/7f45acfbfec678ad918640744229f15b9293ac79
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
M clang/lib/AST/Interp/InterpBuiltin.cpp
M clang/lib/AST/Interp/PrimType.h
M clang/test/SemaCXX/builtins-overflow.cpp
Log Message:
-----------
[clang][Interp] Implement various overflow and carry builtins
Enough so we can enable SemaCXX/builtin-overflow.cpp.
Commit: 36e73e4edcf31855bf5219a750ce8e6c76a91524
https://github.com/llvm/llvm-project/commit/36e73e4edcf31855bf5219a750ce8e6c76a91524
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
Log Message:
-----------
[LICM][NFCish] Consider all calls in a presplit coroutine unsinkable/unhoistable (#81951)
NFCish since previously we'd return false for all presplit coroutines
anyway. This clarifies things a bit.
Commit: a4ce870859a2d8b5ce8b92732594089e2a81b4fb
https://github.com/llvm/llvm-project/commit/a4ce870859a2d8b5ce8b92732594089e2a81b4fb
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
Log Message:
-----------
[clang][Interp][NFC] Add missing comment
Looks like I lost this last time.
Commit: 2d9f3504491156282a3c785a562fcc0ba3c16161
https://github.com/llvm/llvm-project/commit/2d9f3504491156282a3c785a562fcc0ba3c16161
Author: Corbin Robeck <corbin.robeck at amd.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIInstrFormats.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstructions.td
Log Message:
-----------
[AMDGPU] Consolidate SGPRSpill and VGPRSpill into single Spill bit (#81901)
Follow on to #81525 in the series of consolidating bits in TSFlags.
Merge SGPRSpill and VGPRSpill into single Spill bit
Modify isSGPRSpill and isVGPRSpill helper functions to differentiate
VGPR and SGPR spills:
Spill+SALU=SGPR Spill
Spill+VALU=VGPR Spill
The only exception here is SGPR spills to VGPRs which require an
explicit instruction check.
Commit: cc673867d97aeb1151da5f7f0dc59d47eb384b45
https://github.com/llvm/llvm-project/commit/cc673867d97aeb1151da5f7f0dc59d47eb384b45
Author: Fabio D'Urso <fdurso at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/tsd_exclusive.h
M compiler-rt/lib/scudo/standalone/tsd_shared.h
Log Message:
-----------
[scudo] Add ALWAYS_INLINE to ScopedTSD ctor (#81982)
Fix for performance regression introduced by #80061 that slowed
down Fuchsia's MallocFree microbenchmark by 3.5 - 8%
Commit: 0f1f82a92e81f1c4448ff2897d5b93689b6e40f4
https://github.com/llvm/llvm-project/commit/0f1f82a92e81f1c4448ff2897d5b93689b6e40f4
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-node-with-save-values.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-cmps.ll
Log Message:
-----------
[SLP] Regen a couple of tests to reduce future diff
Commit: 831ba9540089350b740c5db61159fe23ab6872d3
https://github.com/llvm/llvm-project/commit/831ba9540089350b740c5db61159fe23ab6872d3
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/test/API/python_api/type/TestTypeList.py
M lldb/test/API/python_api/type/main.cpp
Log Message:
-----------
Revert "[lldb] Fix `FindDirectNestedType` not working with class templates (#81666)"
This reverts commit 7b7d411de9f731d2bcf6b093f6cee2cf57a5196e.
Commit: dc85719d5b4dfca528d81892eb3c853581094070
https://github.com/llvm/llvm-project/commit/dc85719d5b4dfca528d81892eb3c853581094070
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
M llvm/test/Transforms/SROA/tbaa-struct2.ll
M llvm/test/Transforms/SROA/tbaa-struct3.ll
Log Message:
-----------
[TBAA] Use !tbaa for first accessed field if it is an exact match in offset and size. (#81313)
Motivation for this and follow-on patches is to improve codegen for
libc++, where using memcpy limits optimizations, like vectorization for
code iteration over std::vector<std::complex<float>>:
https://godbolt.org/z/f3vqYos3c
Depends on https://github.com/llvm/llvm-project/pull/81289.
PR: https://github.com/llvm/llvm-project/pull/81313
Commit: 5ff8b30327245eb32a034f4e364a18cf32b0d8a4
https://github.com/llvm/llvm-project/commit/5ff8b30327245eb32a034f4e364a18cf32b0d8a4
Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
A bolt/test/X86/Inputs/dwarf5-empty-arange-helper.s
A bolt/test/X86/Inputs/dwarf5-empty-arange-main.s
A bolt/test/X86/dwarf5-empty-arange.test
Log Message:
-----------
[BOLT][DWARF] Do not emit zero low_pc address arange (#81955)
According to DWARF spec zero entires indicate end of arange. Changed so
that BOLT does not emit zero low_pc arange.
Commit: 6841395953e64002c836a724e5429358554385a3
https://github.com/llvm/llvm-project/commit/6841395953e64002c836a724e5429358554385a3
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOForceFunctionAttrs.cpp
M llvm/test/Instrumentation/PGOForceFunctionAttrs/basic.ll
Log Message:
-----------
[PGOForceFunctionAttrs] Don't mark alwaysinline function optnone (#81930)
optnone requires noinline, which is incompatible with alwaysinline.
Commit: 4214f25dccba36472c9666f1395eef894dca1bba
https://github.com/llvm/llvm-project/commit/4214f25dccba36472c9666f1395eef894dca1bba
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/test/API/python_api/type/TestTypeList.py
M lldb/test/API/python_api/type/main.cpp
Log Message:
-----------
Re-land "[lldb] Fix `FindDirectNestedType` not working with class templates (#81666)"
This patch attempts to fix lookup in class template specialization.
The first fixed problem is that during type lookup `DeclContextGetName`
have been dropping template arguments. So when such a name was compared
against a name in `DW_AT_name`, which contains template arguments, false
mismatches have been occurring.
The second fixed problem is that LLDB's printing policy hasn't been
matching Clang's printing policy when it comes to integral non-type
template arguments. This again caused some false mismatches during type
lookup, because Clang puts e.g. `3U` in debug info for class
specializations, but LLDB has been expecting just `3`. This patch brings
printing policy in line with what Clang does.
Commit: 97434cb318d170a14914126f33181b759197ba41
https://github.com/llvm/llvm-project/commit/97434cb318d170a14914126f33181b759197ba41
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Parse/Parser.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/Parser.cpp
A clang/test/Parser/c11-keywords.c
Log Message:
-----------
[C11] Diagnose C11 keywords as being incompatible w/earlier standards (#82015)
Our usual pattern when issuing an extension warning is to also issue a
default-off diagnostic about the keywords not being compatible with
standards before a certain point. This adds those diagnostics for C11
keywords.
Commit: 2de269a641e4ffbb7a44e559c4c0a91bb66df823
https://github.com/llvm/llvm-project/commit/2de269a641e4ffbb7a44e559c4c0a91bb66df823
Author: Xing Xue <xingxue at outlook.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_settings.cpp
Log Message:
-----------
[OpenMP][AIX] Set worker stack size to 2 x KMP_DEFAULT_STKSIZE if system stack size is too big (#81996)
This patch sets the stack size of worker threads to `2 x
KMP_DEFAULT_STKSIZE` (2 x 4MB) for AIX if the system stack size is too
big. Also defines maximum stack size for 32-bit AIX.
Commit: 46734aa1e5fed0c6a11855280d83c3513b794aaa
https://github.com/llvm/llvm-project/commit/46734aa1e5fed0c6a11855280d83c3513b794aaa
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-gfx11.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.bf16.bf16.ll
A llvm/test/MC/AMDGPU/bf16_imm.s
A llvm/test/MC/Disassembler/AMDGPU/bf16_imm.txt
Log Message:
-----------
[AMDGPU] Use `bf16` instead of `i16` for bfloat (#80908)
Currently we generally use `i16` to represent `bf16` in those tablegen
files. This patch is trying to use `bf16` directly.
Fix #79369.
Commit: 4265ad12154caa92d47e8ff839ed3f3876922fd6
https://github.com/llvm/llvm-project/commit/4265ad12154caa92d47e8ff839ed3f3876922fd6
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
Log Message:
-----------
[RISCV] Adjust sdloc when creating an extend for widening instructions (#82040)
We were using the SDLoc corresponding to the original arithmetic
instruction, but here using the SDLoc corresponding to the original
extend if we need to introduce a new narrower extend seems cleaner.
As can be seen in the test diffs, this very minorly impacts scheduling
and register allocation by given the scheduler a hint from original
program order.
Commit: 7c3ad9e72bc034ad655a7e16aa73b9864c58768b
https://github.com/llvm/llvm-project/commit/7c3ad9e72bc034ad655a7e16aa73b9864c58768b
Author: jkorous-apple <32549412+jkorous-apple at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-inits-ptr.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Fix fixits for span initialized from const size array (#81927)
Example:
int arr[10];
int * ptr = arr;
If ptr is unsafe and we transform it to std::span then the fixit we'd
currently provide transforms the code to:
std::span<int> ptr{arr, 10};
That's suboptimal as that repeats the size of the array in the code.
The idiomatic transformation should rely on the span constructor
that takes just the array argument and relies on template
parameter autodeduction to set the span size.
The transformed code should look like:
std::span<int> ptr = arr;
Note that it just should not change the initializer at all and that also
works for other forms of initialization like:
int * ptr {arr};
becoming:
std::span<int> ptr{arr};
This patch changes the initializer handling to the desired (empty)
fixit.
Commit: 450462cbaceddf57812ce15b5135b17f65a77654
https://github.com/llvm/llvm-project/commit/450462cbaceddf57812ce15b5135b17f65a77654
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/docs/BytecodeFormat.md
Log Message:
-----------
[MLIR] Document the stability and versioning aspect of the Bytecode (#81969)
See the two RFCs:
https://discourse.llvm.org/t/rfc-mlir-bytecode-a-stable-serialization-format/71062
https://discourse.llvm.org/t/rfc-ir-versioning/5893
Commit: d8278b682386f51dfba204849c624672a3df40c7
https://github.com/llvm/llvm-project/commit/d8278b682386f51dfba204849c624672a3df40c7
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M libcxx/include/csetjmp
Log Message:
-----------
[libc++] Only include <setjmp.h> from the C library if it exists (#81887)
In 2cea1babefbb, we removed the <setjmp.h> header provided by libc++. However, we did not conditionally include the underlying <setjmp.h>
header only if the C library provides one, which we otherwise do consistently (see e.g. 647ddc08f43c).
rdar://122978778
Commit: c92dfefd4686034667e6a7f0b012b4df421843e5
https://github.com/llvm/llvm-project/commit/c92dfefd4686034667e6a7f0b012b4df421843e5
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Remove unused function after 7c3ad9e72bc034ad655a7e16aa73b9864c58768b. NFC
Commit: 8d6b451b452f5b0568297b4638530171215716eb
https://github.com/llvm/llvm-project/commit/8d6b451b452f5b0568297b4638530171215716eb
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/LinkAllPasses.h
M llvm/include/llvm/Transforms/Scalar.h
M llvm/lib/Transforms/Scalar/LoopRotation.cpp
M llvm/lib/Transforms/Scalar/Scalar.cpp
M polly/lib/Transform/Canonicalization.cpp
Log Message:
-----------
[LegacyPM] Remove legacy LoopRotate pass
Commit: b3050f518cc57e064ab6b3f17fb00534bd5b85d6
https://github.com/llvm/llvm-project/commit/b3050f518cc57e064ab6b3f17fb00534bd5b85d6
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Preprocessor/init.c
Log Message:
-----------
[C23] Add __TYPE_FMTB__ and __TYPE_FMTb__ predefined macros (#82037)
This adds predefined formatting macros in C23 mode for printing unsigned
integers in binary format (e.g, __UINT_FAST64_FMTB__). These are used to
implement the PRIb (et al) macros in inttypes.h
Fixes https://github.com/llvm/llvm-project/issues/81896
Commit: fde4b80cb772897a8cf0b3d022f3041e10b6e816
https://github.com/llvm/llvm-project/commit/fde4b80cb772897a8cf0b3d022f3041e10b6e816
Author: jkorous-apple <32549412+jkorous-apple at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-add-assign.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-addressof-arraysubscript.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-assign-to-ptr.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-inits-ptr.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-assign-to-array-subscr-on-ptr.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-deref-simple-ptr-arith.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span-cv-qualifiers.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-multi-parm-span.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-access.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-arg-to-func-ptr-call.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-deref.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pre-increment.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-unevaluated-context.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-fixits-test.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-ptr-init-fixits.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-uuc-fixits.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-fixit.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Minimize fixit range for pointer variables (#81935)
Example:
int * const my_var = my_initializer;
Currently when transforming my_var to std::span the fixits:
- replace "int * const my_var = " with "std::span<int> const my_var {"
- add ", SIZE}" after "my_initializer" where SIZE is either inferred or
a placeholder
This patch makes that behavior less intrusive by not modifying variable
cv-qualifiers and initialization syntax.
The new behavior is:
- replace "int *" with "std::span<int>"
- add "{" before "my_initializer"
- add ", SIZE}" after "my_initializer"
This is an improvement on its own - since we don't touch the identifier,
we automatically can handle macros in them.
It also simplifies future work on initializer fixits.
Commit: 5a2988714509d96d72b64e0c64998deb705d3572
https://github.com/llvm/llvm-project/commit/5a2988714509d96d72b64e0c64998deb705d3572
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/test/X86/linux-orc.s
Log Message:
-----------
[BOLT] Add writing support for Linux kernel ORC (#80950)
Update ORC information based on the new code layout and emit
corresponding ORC sections for the Linux kernel.
We rewrite ORC sections in place, which puts a limit on the size of new
section contents. Since ORC info changes for the new code layout and the
number of ORC entries can become larger, we free up space in the tables
by removing redundant ORC terminators. As a result, we effectively emit
fewer entries and have to add duplicate terminators at the end to match
the original section sizes. Ideally, we need to update ORC boundaries to
reflect the reduced size and optimize runtime lookup, but we will need
relocations for this, and the benefits will be marginal, if any.
Commit: 24f025175d8adc5cafa277777c2361b55610eab3
https://github.com/llvm/llvm-project/commit/24f025175d8adc5cafa277777c2361b55610eab3
Author: Lei Wang <wlei at fb.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
A llvm/test/tools/llvm-profgen/Inputs/filter-ambiguous-profile.prof
A llvm/test/tools/llvm-profgen/filter-ambiguous-profile.test
M llvm/tools/llvm-profgen/ProfileGenerator.cpp
M llvm/tools/llvm-profgen/ProfileGenerator.h
Log Message:
-----------
[llvm-profgen] Filter out ambiguous cold profiles during profile generation (#81803)
For the built-in local initialization function(`__cxx_global_var_init`,
`__tls_init` prefix), there could be multiple versions of the functions
in the final binary, e.g. `__cxx_global_var_init`, which is a wrapper of
global variable ctors, the compiler could assign suffixes like
`__cxx_global_var_init.N` for different ctors.
However, in the profile generation, we call `getCanonicalFnName` to
canonicalize the names which strip the suffixes. Therefore, samples from
different functions queries the same profile(only
`__cxx_global_var_init`) and the counts are merged. As the functions are
essentially different, entries of the merged profile are ambiguous. In
sample loading, for each version of this function, the IR from one
version would be attributed towards a merged entries, which is
inaccurate, especially for fuzzy profile matching, it gets multiple
callsites(from different function) but using to match one callsite,
which mislead the matching and report a lot of false positives.
Hence, we want to filter them out from the profile map during the
profile generation time. The profiles are all cold functions, it won't
have perf impact.
Commit: 0e6a48c3e8cc53f9eb5945ec04f8e03f6d2bae37
https://github.com/llvm/llvm-project/commit/0e6a48c3e8cc53f9eb5945ec04f8e03f6d2bae37
Author: Sumanth Gundapaneni <sgundapa at quicinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/Hexagon/CMakeLists.txt
M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
A llvm/lib/Target/Hexagon/HexagonPostIncOpt.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
A llvm/test/CodeGen/Hexagon/post-inc-vec.mir
A llvm/test/CodeGen/Hexagon/post_inc_store.mir
A llvm/test/CodeGen/Hexagon/postincopt-crash.mir
A llvm/test/CodeGen/Hexagon/postincopt-dcfetch.mir
A llvm/test/CodeGen/Hexagon/valid-offset-loadbsw4.mir
Log Message:
-----------
[Hexagon] Optimize post-increment load and stores in loops. (#82011)
This patch optimizes the post-increment instructions so that we can
packetize them together.
v1 = phi(v0, v3')
v2,v3 = post_load v1, 4
v2',v3'= post_load v3, 4
This can be optimized in two ways
v1 = phi(v0, v3')
v2,v3' = post_load v1, 8
v2' = load v1, 4
Commit: 979c4e9a411a8c5116c859788a738cc1cd9f23f1
https://github.com/llvm/llvm-project/commit/979c4e9a411a8c5116c859788a738cc1cd9f23f1
Author: jkorous-apple <32549412+jkorous-apple at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage][NFC] Reintroduce lost test cases (#82060)
We likely accidentally removed these as part of conflict resolution.
Commit: 5a82daafc1a3f31f2bb76d10ae7e8c02f3d10dd7
https://github.com/llvm/llvm-project/commit/5a82daafc1a3f31f2bb76d10ae7e8c02f3d10dd7
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
Log Message:
-----------
[BOLT][NFC] Remove redundant assertion (#82056)
processLKSections() used to be a member of RewriteInstance. Since now it
is part of the LinuxKernelRewriter, the assertion is no longer needed.
Commit: 35cfaeced4ced393c3738d2ff4509e5090b771a7
https://github.com/llvm/llvm-project/commit/35cfaeced4ced393c3738d2ff4509e5090b771a7
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
Log Message:
-----------
[GlobalIsel] Lower integer constants to constant pool in `LegalizerHelper`. (#81957)
Extend LegalizerHelper's API to lower integer constants to a load from
constant pool. Previously, this lowering existed only for FP constants.
Apply this change to RISCV.
Commit: bfbd0da01dcd9bc6e3d775456f79b0f0d0c521ec
https://github.com/llvm/llvm-project/commit/bfbd0da01dcd9bc6e3d775456f79b0f0d0c521ec
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Preprocessor/init.c
Log Message:
-----------
Revert "[C23] Add __TYPE_FMTB__ and __TYPE_FMTb__ predefined macros" (#82070)
Reverts llvm/llvm-project#82037
Breaks various buildbots:
http://45.33.8.238/linux/131051/step_7.txt
https://lab.llvm.org/buildbot/#/builders/231/builds/20751
others
Commit: 691b12a2dcc12fa43517d23f2a9b6039616eebc8
https://github.com/llvm/llvm-project/commit/691b12a2dcc12fa43517d23f2a9b6039616eebc8
Author: David CARLIER <devnexen at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_getauxval.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
Log Message:
-----------
[compiler-rt] simplifying ::ReExec for freebsd. (#79711)
taking the getauxval route since elf_aux_info is available since FBSD
12.
Commit: 9c4e2fe589bf732b9bd1b3919832fb5056f5611c
https://github.com/llvm/llvm-project/commit/9c4e2fe589bf732b9bd1b3919832fb5056f5611c
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
Log Message:
-----------
[gn build] Port 0e6a48c3e8cc
Commit: 3d67cf681a728e4cf0ab9947c0dd07539dda8b74
https://github.com/llvm/llvm-project/commit/3d67cf681a728e4cf0ab9947c0dd07539dda8b74
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
Log Message:
-----------
[JITLink] Always unmap standard segments in InProcessMemoryManager::deallocate (#81943)
Right now InProcessMemoryManager only releases a standard segment (via
sys::Memory::releaseMappedMemory) in `deallocate` when there is a
DeallocAction associated, leaving residual memory pages in the process
until termination.
Despite being a de facto memory leak, it won't cause a major issue if
users only create a single LLJIT instance per process, which is the most
common use cases. It will, however, drain virtual memory pages if we
create thousands of ephemeral LLJIT instances in the same process.
This patch fixes this issue by releasing every standard segments
regardless of the attached DeallocAction.
Commit: 4bb0ca655bb65aae0a1d251ba5053aadff678101
https://github.com/llvm/llvm-project/commit/4bb0ca655bb65aae0a1d251ba5053aadff678101
Author: Alex Langford <alangford at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/include/llvm/Support/Error.h
M llvm/unittests/Support/ErrorTest.cpp
Log Message:
-----------
[Support] Introduce formatv variant of createStringError (#80493)
Many times I have found myself wanting to create a StringError with the
ability to interpolate a StringRef into the error string. This can be
achieved with:
StringRef Foo("...");
auto Err = createStringError(..., "Something went wrong: %s",
Foo.str().c_str());
However, this requires us to construct a temporary std::string (which
may perform a memory allocation if large enough).
I propose a new variant of `createStringError` called
`createStringErrorV` which uses `formatv` under the hood. This allows
the above example to become:
StringRef Foo("...");
auto Err = createStringErrorV(..., "Something went wrong: {0}", Foo);
Commit: ea9ec80b7aa1bd34edd5b544cd41450573f2cbff
https://github.com/llvm/llvm-project/commit/ea9ec80b7aa1bd34edd5b544cd41450573f2cbff
Author: Prabhuk <prabhukr at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/Sema/Sema.cpp
R clang/test/CodeGen/aarch64-soft-float-abi.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
R clang/test/Driver/aarch64-soft-float-abi.c
M clang/test/Preprocessor/aarch64-target-features.c
R clang/test/Sema/aarch64-soft-float-abi.c
R llvm/test/CodeGen/AArch64/soft-float-abi.ll
Log Message:
-----------
Revert "[AArch64] Add soft-float ABI (#74460)" (#82032)
This reverts commit 9cc98e336980f00cbafcbed8841344e6ac472bdc.
Issue: https://github.com/ClangBuiltLinux/linux/issues/1997
Commit: aff6cb4957e60931a3c2205a5fe8e6ea59447bbb
https://github.com/llvm/llvm-project/commit/aff6cb4957e60931a3c2205a5fe8e6ea59447bbb
Author: Florian Mayer <fmayer at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
M compiler-rt/lib/scudo/standalone/platform.h
M compiler-rt/lib/scudo/standalone/stack_depot.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
Log Message:
-----------
Reland "[scudo] resize stack depot for allocation ring buffer" (#81028)
First commit of the stack is a clean reland, second is the fix.
There was a typo in the `static_assert` that meant we were asserting the
size of the pointer, not the struct.
Also changed `alignas` to be more intuitive, but that is NFC.
Ran builds in Android here: https://r.android.com/2954411
Commit: e7291ff02d7e262ab9452bc7eb058b6d3dc65a40
https://github.com/llvm/llvm-project/commit/e7291ff02d7e262ab9452bc7eb058b6d3dc65a40
Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
M llvm/test/MC/RISCV/user-csr-names.s
Log Message:
-----------
[RISCV] Recognize CSR name ssp for Zicfilp. (#81974)
The CSR address of `ssp` is 0x011.
Ref:
https://github.com/riscv/riscv-cfi/blob/main/cfi_backward.adoc#shadow-stack-pointer-ssp
Commit: e1164d063558b1e89f20109d83c079caae1825d8
https://github.com/llvm/llvm-project/commit/e1164d063558b1e89f20109d83c079caae1825d8
Author: Florian Mayer <fmayer at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
M compiler-rt/lib/scudo/standalone/platform.h
M compiler-rt/lib/scudo/standalone/stack_depot.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
Log Message:
-----------
Revert "Reland "[scudo] resize stack depot for allocation ring buffer"" (#82088)
Reverts llvm/llvm-project#81028
Commit: 820e438e7031832f7ed3d15e63530dc49c959528
https://github.com/llvm/llvm-project/commit/820e438e7031832f7ed3d15e63530dc49c959528
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-identifier-naming in MlirOptMain.cpp (NFC)
Commit: 2545cac52e584761a803f689a3f385af9fdeb3a0
https://github.com/llvm/llvm-project/commit/2545cac52e584761a803f689a3f385af9fdeb3a0
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-include-order in Parser.cpp (NFC)
Commit: eb3409dc77752253b18224ed11ec738db4fe91a3
https://github.com/llvm/llvm-project/commit/eb3409dc77752253b18224ed11ec738db4fe91a3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/lib/Tools/Plugins/PassPlugin.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-identifier-naming in PassPlugin.cpp (NFC)
Commit: 7dad59f0a980b5bb8e76db1755d76aabf2a940fc
https://github.com/llvm/llvm-project/commit/7dad59f0a980b5bb8e76db1755d76aabf2a940fc
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-qualified-auto in DialectConversion.cpp (NFC)
Commit: a8fdc93ee11a14aceb5805880da810140c7ca486
https://github.com/llvm/llvm-project/commit/a8fdc93ee11a14aceb5805880da810140c7ca486
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-namespace-comment in OneToNTypeConversion.cpp (NFC)
Commit: db836f6094eafa5e60ca6395c8c195960108142a
https://github.com/llvm/llvm-project/commit/db836f6094eafa5e60ca6395c8c195960108142a
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs.ll
Log Message:
-----------
[RISCV] Narrow vector absolute value (#82041)
If we have a abs(sext a) we can legally perform this as a zext (abs a).
(See the same combine in instcombine - note that the IntMinIsPoison flag
doesn't exist in SDAG yet.)
On RVV, this is likely profitable because it may allow us to perform the arithmetic
operations involved in the abs at a narrower LMUL before widening for the user.
We could arguably avoid narrowing below DLEN, but the transform should
at worst move around the extend and create one extra vsetvli toggle if the source
could previously be handled via loads explicit w/EEW.
Commit: 8443ce563bf3500b705ab3507ae586e2a72d31f4
https://github.com/llvm/llvm-project/commit/8443ce563bf3500b705ab3507ae586e2a72d31f4
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/asan/asan_internal.h
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_rtl.cpp
M compiler-rt/lib/asan/asan_win.cpp
M compiler-rt/lib/interception/interception.h
M compiler-rt/lib/memprof/memprof_internal.h
M compiler-rt/lib/memprof/memprof_linux.cpp
M compiler-rt/lib/memprof/memprof_rtl.cpp
Log Message:
-----------
[sanitizer] Lift AsanDoesNotSupportStaticLinkage to sanitizer_common.h. NFC (#80948)
The `_DYNAMIC` reference from `AsanDoesNotSupportStaticLinkage` ensures
that `clang++ -fsanitize=address -static` gets a linker error.
`MemprofDoesNotSupportStaticLinkage` is similar for `-fmemory-profile`.
Move the functions to sanitizer_common.h to be used by more sanitizers
on ELF platforms.
Fuchsia does not use interposition and opts out the check (its
`AsanDoesNotSupportStaticLinkage` is a no-op).
Commit: 80fcecb13c388ff087a27a4b0e7ca3dd8c98eaa4
https://github.com/llvm/llvm-project/commit/80fcecb13c388ff087a27a4b0e7ca3dd8c98eaa4
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/test/API/commands/disassemble/basic/TestFrameDisassemble.py
M lldb/test/API/commands/expression/call-restarts/TestCallThatRestarts.py
M lldb/test/API/commands/expression/call-throws/TestCallThatThrows.py
M lldb/test/API/commands/expression/completion/TestExprCompletion.py
M lldb/test/API/commands/expression/fixits/TestFixIts.py
M lldb/test/API/commands/expression/save_jit_objects/TestSaveJITObjects.py
M lldb/test/API/commands/expression/test/TestExprs.py
M lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py
M lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py
M lldb/test/API/commands/frame/language/TestGuessLanguage.py
M lldb/test/API/commands/frame/var/TestFrameVar.py
M lldb/test/API/commands/log/basic/TestLogging.py
M lldb/test/API/commands/memory/read/TestMemoryRead.py
M lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
M lldb/test/API/driver/job_control/TestJobControl.py
M lldb/test/API/functionalities/breakpoint/address_breakpoints/TestAddressBreakpoints.py
M lldb/test/API/functionalities/breakpoint/address_breakpoints/TestBadAddressBreakpoints.py
M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
M lldb/test/API/functionalities/breakpoint/breakpoint_ids/TestBreakpointIDs.py
M lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
M lldb/test/API/functionalities/breakpoint/breakpoint_names/TestBreakpointNames.py
M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/TestConsecutiveBreakpoints.py
M lldb/test/API/functionalities/breakpoint/cpp/TestCPPBreakpointLocations.py
M lldb/test/API/functionalities/breakpoint/cpp_exception/TestCPPExceptionBreakpoint.py
M lldb/test/API/functionalities/breakpoint/source_regexp/TestSourceRegexBreakpoints.py
M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
M lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/TestThreadPlanUserBreakpoint.py
M lldb/test/API/functionalities/data-formatter/format-propagation/TestFormatPropagation.py
M lldb/test/API/functionalities/diagnostic_reporting/TestDiagnosticReporting.py
M lldb/test/API/functionalities/dynamic_value_child_count/TestDynamicValueChildCount.py
M lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
M lldb/test/API/functionalities/gdb_remote_client/TestGdbClientModuleLoad.py
M lldb/test/API/functionalities/gdb_remote_client/TestWasm.py
M lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
M lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py
M lldb/test/API/functionalities/load_lazy/TestLoadUsingLazyBind.py
M lldb/test/API/functionalities/memory/cache/TestMemoryCache.py
M lldb/test/API/functionalities/plugins/python_os_plugin/TestPythonOSPlugin.py
M lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
M lldb/test/API/functionalities/return-value/TestReturnValue.py
M lldb/test/API/functionalities/signal/TestSendSignal.py
M lldb/test/API/functionalities/source-map/TestTargetSourceMap.py
M lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
M lldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/main.cpp
M lldb/test/API/functionalities/thread/main_thread_exit/TestMainThreadExit.py
M lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
M lldb/test/API/functionalities/unwind/noreturn/module-end/TestNoReturnModuleEnd.py
M lldb/test/API/functionalities/value_md5_crash/TestValueMD5Crash.py
M lldb/test/API/functionalities/var_path/TestVarPath.py
M lldb/test/API/functionalities/vtable/TestVTableValue.py
M lldb/test/API/functionalities/wrong_commands/TestWrongCommands.py
M lldb/test/API/lang/c/array_types/TestArrayTypes.py
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
M lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
M lldb/test/API/lang/cpp/incomplete-types/members/TestCppIncompleteTypeMembers.py
M lldb/test/API/lang/cpp/template-specialization-type/TestTemplateSpecializationType.py
M lldb/test/API/lang/cpp/template/TestTemplateArgs.py
M lldb/test/API/lang/objc/global_ptrs/TestGlobalObjects.py
M lldb/test/API/lang/objc/objc-baseclass-sbtype/TestObjCBaseClassSBType.py
M lldb/test/API/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py
M lldb/test/API/lang/objc/objc-ivar-offsets/TestObjCIvarOffsets.py
M lldb/test/API/lang/objc/objc-ivar-stripped/TestObjCIvarStripped.py
M lldb/test/API/lang/objc/objc-property/TestObjCProperty.py
M lldb/test/API/lang/objc/objc-static-method-stripped/TestObjCStaticMethodStripped.py
M lldb/test/API/lang/objc/objc-static-method/TestObjCStaticMethod.py
M lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py
M lldb/test/API/lang/objc/objc-struct-return/TestObjCStructReturn.py
M lldb/test/API/lang/objc/objc-super/TestObjCSuper.py
M lldb/test/API/lang/objcxx/objc-builtin-types/TestObjCBuiltinTypes.py
M lldb/test/API/lua_api/TestBreakpointAPI.lua
M lldb/test/API/lua_api/TestComprehensive.lua
M lldb/test/API/lua_api/TestFileHandle.lua
M lldb/test/API/lua_api/TestProcessAPI.lua
M lldb/test/API/lua_api/lua_lldb_test.lua
M lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py
M lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py
M lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
M lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py
M lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
M lldb/test/API/macosx/universal/TestUniversal.py
M lldb/test/API/python_api/class_members/TestSBTypeClassMembers.py
M lldb/test/API/python_api/debugger/TestDebuggerAPI.py
M lldb/test/API/python_api/findvalue_duplist/TestSBFrameFindValue.py
M lldb/test/API/python_api/interpreter/TestCommandInterpreterAPI.py
M lldb/test/API/python_api/name_lookup/TestNameLookup.py
M lldb/test/API/python_api/objc_type/TestObjCType.py
M lldb/test/API/python_api/sblaunchinfo/TestSBLaunchInfo.py
M lldb/test/API/python_api/sbvalue_persist/TestSBValuePersist.py
M lldb/test/API/python_api/type/TestTypeList.py
M lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_logpoints.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setFunctionBreakpoints.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_runInTerminal.py
M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
M lldb/test/API/tools/lldb-dap/stackTraceMissingFunctionName/TestDAP_stackTraceMissingFunctionName.py
M lldb/test/API/tools/lldb-dap/terminated-event/TestDAP_terminatedEvent.py
M lldb/test/API/tools/lldb-dap/threads/TestDAP_threads.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteHostInfo.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteThreadsInStopReply.py
M lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
Log Message:
-----------
[lldb] Replace assertEquals with assertEqual (NFC) (#82073)
assertEquals is a deprecated alias for assertEqual and has been removed
in Python 3.12. This wasn't an issue previously because we used a
vendored version of the unittest module. Now that we use the built-in
version this gets updated together with the Python version used to run
the test suite.
Commit: 0bf4f82f661817c79bd538c82c99515837cf1cf8
https://github.com/llvm/llvm-project/commit/0bf4f82f661817c79bd538c82c99515837cf1cf8
Author: Wentao Zhang <35722712+whentojump at users.noreply.github.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M llvm/test/tools/llvm-cov/mcdc-general-none.test
M llvm/test/tools/llvm-cov/mcdc-general.test
M llvm/tools/llvm-cov/SourceCoverageView.cpp
M llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
M llvm/tools/llvm-cov/SourceCoverageViewText.cpp
Log Message:
-----------
[llvm-cov][CoverageView] minor fix/improvement to HTML and text coverage output (#80952)
1. add the missing condition for MC/DC in hasSubViews()
2. add style for selected line
3. remove name="Ln" attribute in the link within MC/DC views
4. remove color for \n
Commit: 737bc9f76a14b955bdfeb3811ce6c9156572be9f
https://github.com/llvm/llvm-project/commit/737bc9f76a14b955bdfeb3811ce6c9156572be9f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/functionalities/memory-region/TestMemoryRegion.py
M lldb/test/API/functionalities/wrong_commands/TestWrongCommands.py
M lldb/test/API/linux/aarch64/tagged_memory_access/TestAArch64LinuxTaggedMemoryAccess.py
M lldb/test/API/linux/aarch64/tagged_memory_region/TestAArch64LinuxTaggedMemoryRegion.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteLaunch.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteModuleInfo.py
Log Message:
-----------
[lldb] Replace assertRegexpMatches with assertRegex (NFC) (#82074)
assertRegexpMatches is a deprecated alias for assertRegex and has been
removed in Python 3.12. This wasn't an issue previously because we used
a vendored version of the unittest module. Now that we use the built-in
version this gets updated together with the Python version used to run
the test suite.
Commit: 7106389b25436538f0373484a8ab0428ea681410
https://github.com/llvm/llvm-project/commit/7106389b25436538f0373484a8ab0428ea681410
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Lower/ConvertCall.cpp
A flang/test/Lower/CUDA/cuda-kernel-calls.cuf
Log Message:
-----------
[flang][cuda] Lower kernel launch to fir.cuda_kernel_launch (#81891)
This patch introduces a new `fir.cuda_kernel_launch` operation to
represents the call to CUDA kernels with the chervon notation. The
chevrons values in the parse tree can be scalar integer expr or dim3
derived type. The operation describes the grid/block values explicitly
as i32 values.
It lowers the parse-tree call to this new operation.
Commit: 3da01663313803530a936aee7ecc592534aeb380
https://github.com/llvm/llvm-project/commit/3da01663313803530a936aee7ecc592534aeb380
Author: Florian Mayer <fmayer at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
M compiler-rt/lib/scudo/standalone/platform.h
M compiler-rt/lib/scudo/standalone/stack_depot.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
Log Message:
-----------
Reland^2 "[scudo] resize stack depot for allocation ring buffer"
Fix some warnings by matching types.
This reverts commit e1164d063558b1e89f20109d83c079caae1825d8.
Commit: ea16a3bb4ce4010e3e15fddaad03df66f99548c6
https://github.com/llvm/llvm-project/commit/ea16a3bb4ce4010e3e15fddaad03df66f99548c6
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
Log Message:
-----------
[clang-format] Don't sort qualifiers across preprocessor directives (#81958)
Fixes #80579.
Commit: 133b6a088eb9739e30b4f5f09b97713502b5d66e
https://github.com/llvm/llvm-project/commit/133b6a088eb9739e30b4f5f09b97713502b5d66e
Author: Florian Mayer <fmayer at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
Log Message:
-----------
[NFC] fix type mismatch in test.
Commit: b366643ca3d780931afed6bff7148a4822e51119
https://github.com/llvm/llvm-project/commit/b366643ca3d780931afed6bff7148a4822e51119
Author: Florian Mayer <fmayer at google.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
Log Message:
-----------
[NFC] fix typo
Commit: 75adb1226905693ac57e563f675e282e78ac491e
https://github.com/llvm/llvm-project/commit/75adb1226905693ac57e563f675e282e78ac491e
Author: Piotr Zegar <piotr.zegar at nokia.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/non-zero-enum-to-bool-conversion.cpp
Log Message:
-----------
[clang-tidy] Fix handling of parentheses in bugprone-non-zero-enum-to-bool-conversion (#81890)
Properly ignore parentheses in bitwise operators.
Closes #81515
Commit: 44436a9c6b8d92500f0d94bb2e0df9029d735de6
https://github.com/llvm/llvm-project/commit/44436a9c6b8d92500f0d94bb2e0df9029d735de6
Author: Tomás Longeri <tlongeri at google.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Update Bazel build after b334664 (#82091)
Commit: 9478bf0ce625a5845139b0c9e3bb41ef88d2f005
https://github.com/llvm/llvm-project/commit/9478bf0ce625a5845139b0c9e3bb41ef88d2f005
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
M mlir/lib/IR/BuiltinTypes.cpp
Log Message:
-----------
[mlir] Introduce `trailingNDimsContiguous` for MemRefs (#78247)
Extracts logic from `vector::isContiguousSlice` to check whether
the trailing dim of a memref are contiguous into a dedicated hook
in BuiitinTypes.{h|cpp}.
Follow-up for https://github.com/llvm/llvm-project/pull/76848.
Commit: f847c72be02e5b41e8139bf16de02dfd79476a52
https://github.com/llvm/llvm-project/commit/f847c72be02e5b41e8139bf16de02dfd79476a52
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOPInstructions.td
Log Message:
-----------
[AMDGPU] Use HasClamp instead of HasIntClamp in VOP3_Pseudo. NFC. (#82020)
There is no real reason to differentiate.
Commit: 47c65cf62d06add9f55a77c9d45390fa3b986fc5
https://github.com/llvm/llvm-project/commit/47c65cf62d06add9f55a77c9d45390fa3b986fc5
Author: David Green <david.green at arm.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
A llvm/test/CodeGen/AArch64/win64-fpowi.ll
Log Message:
-----------
[AArch64][GlobalISel] Fail legalization for unknown libcalls. (#81873)
If, like powi on windows, the libcall is unavailable we should fall back
to SDAG. Currently we try and generate a call to "".
Commit: ccc20b4e5633de2ba6c0aca68f31598c8875e105
https://github.com/llvm/llvm-project/commit/ccc20b4e5633de2ba6c0aca68f31598c8875e105
Author: Matthias Springer <me at m-sp.org>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_binary.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_nchw_fchw.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_nhwc_hwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_3d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_3d_ndhwc_dhwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_element.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_dilated_conv_2d_nhwc_hwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_strided_conv_2d_nhwc_hwcf.mlir
Log Message:
-----------
[mlir][sparse] Fix memory leaks (part 2) (#81979)
This commit fixes memory leaks in sparse tensor integration tests by
adding `bufferization.dealloc_tensor` ops.
Note: Buffer deallocation will be automated in the future with the
ownership-based buffer deallocation pass, making `dealloc_tensor`
obsolete (only codegen path, not when using the runtime library).
Commit: 3a77522387ccff149c3a59eaf86ca4b574061134
https://github.com/llvm/llvm-project/commit/3a77522387ccff149c3a59eaf86ca4b574061134
Author: David Green <david.green at arm.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.h
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fcopysign.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/fcopysign.ll
Log Message:
-----------
[AArch64][GlobalISel] Improve and expand fcopysign lowering (#71283)
This alters the lowering of G_COPYSIGN to support vector types. The
general idea is that we just lower it to vector operations using and/or
and a mask, which are now converted to a BIF/BIT/BSP.
In the process the existing AArch64LegalizerInfo::legalizeFCopySign can
be removed, replying on expanding the scalar versions to vector instead,
which just needs a small adjustment to allow widening scalars to
vectors.
Commit: ca260e1b119b043195158098a9afda3967c6854b
https://github.com/llvm/llvm-project/commit/ca260e1b119b043195158098a9afda3967c6854b
Author: Frederic Cambus <fred at statdns.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M README.md
Log Message:
-----------
[docs] README: Switch link to clang.llvm.org to use HTTPS.
Commit: ded3ca224f7c2b1df769d625985ab20bb60dfba4
https://github.com/llvm/llvm-project/commit/ded3ca224f7c2b1df769d625985ab20bb60dfba4
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
Log Message:
-----------
[AMDGPU] Set predicates more consistently for BUF instructions (#81865)
Set DecoderNamespace and AssemblerPredicate in the base class for Real
instructions for each subtarget. This avoids some ad hoc "let" around
groups of instructions definitions, and fixes some missed cases like
BUFFER_GL0_INV_gfx10 which was missing DecoderNamespace.
Commit: d332d88b919faa15564ab70b0633d94f21bc3e3c
https://github.com/llvm/llvm-project/commit/d332d88b919faa15564ab70b0633d94f21bc3e3c
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__chrono/time_zone.h
A libcxx/include/__chrono/time_zone_link.h
M libcxx/include/__chrono/tzdb.h
M libcxx/include/__chrono/tzdb_list.h
M libcxx/include/chrono
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap.in
M libcxx/modules/std/chrono.inc
M libcxx/src/CMakeLists.txt
A libcxx/src/include/tzdb/time_zone_link_private.h
A libcxx/src/include/tzdb/time_zone_private.h
A libcxx/src/include/tzdb/types_private.h
A libcxx/src/include/tzdb/tzdb_list_private.h
A libcxx/src/include/tzdb/tzdb_private.h
A libcxx/src/time_zone.cpp
R libcxx/src/tz.cpp
A libcxx/src/tzdb.cpp
M libcxx/src/tzdb_list.cpp
M libcxx/test/libcxx/diagnostics/chrono.nodiscard_extensions.compile.pass.cpp
M libcxx/test/libcxx/diagnostics/chrono.nodiscard_extensions.verify.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/links.pass.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/rules.pass.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/zones.pass.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.access/get_tzdb.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.access/get_tzdb_list.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.list/front.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.list/iterators.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.remote/reload_tzdb.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.remote/remote_version.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.tzdb/tzdb.members.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/time.zone.link.members/name.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/time.zone.link.members/target.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/time.zone.link.nonmembers/comparison.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/types.compile.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/name.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.nonmembers/comparison.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.timezone/types.compile.pass.cpp
Log Message:
-----------
[libc++][chrono] Loads tzdata.zi in tzdb. (#74928)
This implements the loading of the tzdata.zi file and store its contents
in the tzdb struct.
This adds all required members except:
- the leap seconds,
- the locate_zone, and
- current_zone.
The class time_zone is incomplete and only contains the parts needed for
storing the parsed data.
The class time_zone_link is fully implemented including its non-member
functions.
Implements parts of:
- P0355 Extending <chrono> to Calendars and Time Zones
- P1614 The Mothership has Landed
Implements:
- P1982 Rename link to time_zone_link
Commit: 20177c45dba99d0ea824142ffb874101435a4514
https://github.com/llvm/llvm-project/commit/20177c45dba99d0ea824142ffb874101435a4514
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
Log Message:
-----------
[VPlan] Turn private members of VPlanTransforms to static funcs (NFC)
Private members of VPlanTransforms are only used inside
VPlanTransforms.cpp, just make them static.
Commit: 8cd5e672602676877b9025a750b20f895ca0bc25
https://github.com/llvm/llvm-project/commit/8cd5e672602676877b9025a750b20f895ca0bc25
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M libcxx/test/support/test_format_context.h
M libcxx/test/support/test_format_string.h
Log Message:
-----------
[NFC][libc++] Requests PR at GitHub instead of Phabricator.
Commit: a5865c3c3dbbd17ae12ecc1c297fe1fc2605df52
https://github.com/llvm/llvm-project/commit/a5865c3c3dbbd17ae12ecc1c297fe1fc2605df52
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/Attributor/nofpclass-fpext.ll
A llvm/test/Transforms/InstCombine/pr80941.ll
Log Message:
-----------
[ValueTracking] Fix computeKnownFPClass for fpext (#81972)
This patch adds the missing `subnormal -> normal` part for `fpext` in
`computeKnownFPClass`.
Fixes the miscompilation reported by
https://github.com/llvm/llvm-project/pull/80941#issuecomment-1947302100.
Commit: 97eff26d0ca4d187a5efb8534af484dbb68bce30
https://github.com/llvm/llvm-project/commit/97eff26d0ca4d187a5efb8534af484dbb68bce30
Author: Frederic Cambus <fred at statdns.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
Log Message:
-----------
[Support/ELF] Add OpenBSD PT_OPENBSD_SYSCALLS constant.
Reference: https://github.com/openbsd/src/blob/master/sys/sys/exec_elf.h
Commit: 715567d03771c437e26b16fbc71c30c4474b8895
https://github.com/llvm/llvm-project/commit/715567d03771c437e26b16fbc71c30c4474b8895
Author: rilysh <nightquick at proton.me>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M libcxx/include/__numeric/midpoint.h
Log Message:
-----------
[libc++] simplify the midpoint function (#81717)
Right now we've a nested ternary for the midpoint function, but this can
be simplified a bit more, using if statements. This also slightly
increases the readability of that function.
Commit: 35ee6de966c36d095646b9b21fdd12eb45bdc9bf
https://github.com/llvm/llvm-project/commit/35ee6de966c36d095646b9b21fdd12eb45bdc9bf
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[VPlan] Simplify addCanonicalIVRecipes by using VPBuilder (NFC).
Use VPBuilder to construct VPInstructions, which means there's no need
to manually inserting recipes.
Commit: 5023fd09b43e9b7eee390a8552db7ebce6e2b15c
https://github.com/llvm/llvm-project/commit/5023fd09b43e9b7eee390a8552db7ebce6e2b15c
Author: Danny Mösch <danny.moesch at icloud.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
Log Message:
-----------
[NFC] Trim trailing whitespace
Commit: 80747616b9ae5f1156954b87ba7502398573825a
https://github.com/llvm/llvm-project/commit/80747616b9ae5f1156954b87ba7502398573825a
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MisExpect.h
Log Message:
-----------
[llvm][misexpect][NFC] Fix typos in comments (#82124)
Commit: d5167c84f9eddf6a37c667d4673bf694dfd8be37
https://github.com/llvm/llvm-project/commit/d5167c84f9eddf6a37c667d4673bf694dfd8be37
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/RISCV/load-setcc-combine.ll
Log Message:
-----------
[DAGCombiner] Allow tryToFoldExtOfLoad to use a sextload for zext nneg. (#81714)
If the load is used by any signed setccs, we can use a sextload
instead of zextload. Then we don't have to give up on extending
the load.
Commit: 27f2908fbc8092f3567385a63676d623523b318b
https://github.com/llvm/llvm-project/commit/27f2908fbc8092f3567385a63676d623523b318b
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M lldb/unittests/ScriptInterpreter/Python/PythonDataObjectsTests.cpp
Log Message:
-----------
[lldb] Use PyBytes and PyByteArray in Python Data Objects unittest (#82098)
Use a Python Bytes and ByteArray object instead of Integers for
TestOwnedReferences and TestBorrowedReferences. These two tests were
failing when building against Python 3.12 because these Integer objects
had a refcount of 4294967296 (-1). I didn't dig into it, but I suspect
the Python runtime has adopted an optimization to decrease refcounting
traffic for these simple objects.
Commit: 21ddd7ff2b166c5e133b460b1a09ee8adb786ccd
https://github.com/llvm/llvm-project/commit/21ddd7ff2b166c5e133b460b1a09ee8adb786ccd
Author: Wanyi <kusmour at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M lldb/bindings/interface/SBStatisticsOptionsDocstrings.i
M lldb/include/lldb/API/SBStatisticsOptions.h
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Target/Statistics.h
M lldb/source/API/SBStatisticsOptions.cpp
M lldb/source/Commands/CommandObjectStats.cpp
M lldb/source/Commands/Options.td
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolFileOnDemand.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
A lldb/test/API/functionalities/stats_api/main.dwo.yaml
A lldb/test/API/functionalities/stats_api/main.o.yaml
Log Message:
-----------
Report only loaded debug info in statistics dump (#81706)
Currently running `statistics dump` will trigger lldb to load debug info
that's not yet loaded (eg. dwo files). Resulted in a delay in the
command return, which, can be interrupting.
This patch also added a new option `--load-all-debug-info` asking
statistics to dump all possible debug info, which will force loading all
debug info available if not yet loaded.
Commit: 164055f897c049543bd3e15548f891f823dc18b4
https://github.com/llvm/llvm-project/commit/164055f897c049543bd3e15548f891f823dc18b4
Author: Alex Langford <alangford at apple.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/include/llvm/Support/Error.h
M llvm/unittests/Support/ErrorTest.cpp
Log Message:
-----------
Revert "[Support] Introduce formatv variant of createStringError" (#82126)
Reverts llvm/llvm-project#80493
This increased clang compile times by 0.5%. I'll figure out a less
expensive way to achieve this.
Commit: 11705afc19383dedfb06c3b708d6fe8c0729b807
https://github.com/llvm/llvm-project/commit/11705afc19383dedfb06c3b708d6fe8c0729b807
Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorInterfaces.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorInterfaces.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorInterfaces.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/StageSparseOperations.cpp
M mlir/test/Dialect/SparseTensor/convert_dense2sparse.mlir
Log Message:
-----------
[mlir][sparse] deallocate tmp coo buffer generated during stage-spars… (#82017)
…e-ops pass.
Commit: f81f7a57664bd7dccd5e179ed01155efbc8ff481
https://github.com/llvm/llvm-project/commit/f81f7a57664bd7dccd5e179ed01155efbc8ff481
Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
[BOLT][DWARF] Remove redundant code (#82118)
Removed some redundant code. Should be NFC change.
Commit: 80c25daca8f8282ceabd2a5bb567203e0dcf8374
https://github.com/llvm/llvm-project/commit/80c25daca8f8282ceabd2a5bb567203e0dcf8374
Author: Lang Hames <lhames at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/TargetParser/Triple.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
Log Message:
-----------
[TargetParser] Expose Triple::getArchPointerBitWidth. (#82086)
The getArchPointerBitWidth method provides direct access to the pointer
size for arithmetic or switch statements, instead of requiring clients
to use the isArch16Bit / isArch32Bit / isArch64Bit predicates.
Commit: 3bef17eac607f3501e684088158d3265f4893807
https://github.com/llvm/llvm-project/commit/3bef17eac607f3501e684088158d3265f4893807
Author: Artem Tyurin <artem.tyurin at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/lib/Transforms/ViewOpGraph.cpp
A mlir/test/Transforms/print-op-graph-back-edges.mlir
A mlir/test/Transforms/print-op-graph-cycles.mlir
Log Message:
-----------
[mlir] Handle cycles and back edges in --view-op-graph (#82002)
Fixes #62128.
Commit: a90a09fa2e05c8841d145605e8d99020592dd809
https://github.com/llvm/llvm-project/commit/a90a09fa2e05c8841d145605e8d99020592dd809
Author: mlevesquedion <mlevesquedion at google.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/docs/DefiningDialects/AttributesAndTypes.md
M mlir/docs/Interfaces.md
M mlir/docs/LangRef.md
M mlir/docs/PassManagement.md
M mlir/docs/SymbolsAndSymbolTables.md
M mlir/docs/Tutorials/Toy/Ch-2.md
Log Message:
-----------
[mlir][docs] Fix broken links to traits documentation (#82131)
It seems the `Traits.md` file was turned into `Traits/_index.md` in
https://reviews.llvm.org/D153291, causing links to `Traits.md` to no
longer work (instead, `Traits` needs to be used).
Commit: d1cafe2d801b95230ad01d208cab1442cdd71ff3
https://github.com/llvm/llvm-project/commit/d1cafe2d801b95230ad01d208cab1442cdd71ff3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/lib/Transforms/Utils/RegionUtils.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-qualified-auto in RegionUtils.cpp (NFC)
Commit: b748f153061b74b858de687a8715a854f0800540
https://github.com/llvm/llvm-project/commit/b748f153061b74b858de687a8715a854f0800540
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/test/lib/Dialect/Affine/TestDecomposeAffineOps.cpp
Log Message:
-----------
Apply clang-tidy fixes for modernize-use-equals-default in TestDecomposeAffineOps.cpp (NFC)
Commit: 9e0e1ca17e9ddd3e3aba1b83fd4c1ac59b41ff79
https://github.com/llvm/llvm-project/commit/9e0e1ca17e9ddd3e3aba1b83fd4c1ac59b41ff79
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
Log Message:
-----------
Apply clang-tidy fixes for performance-unnecessary-value-param in TestReifyValueBounds.cpp (NFC)
Commit: fca72306757aa03d0a25608f307667e6e769b69c
https://github.com/llvm/llvm-project/commit/fca72306757aa03d0a25608f307667e6e769b69c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/test/lib/Dialect/Linalg/TestLinalgDropUnitDims.cpp
Log Message:
-----------
Apply clang-tidy fixes for modernize-use-equals-default in TestLinalgDropUnitDims.cpp (NFC)
Commit: a6df3472feeb618513877ec136db38f4746142fb
https://github.com/llvm/llvm-project/commit/a6df3472feeb618513877ec136db38f4746142fb
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/test/lib/Dialect/Test/TestDialectInterfaces.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-namespace-comment in TestDialectInterfaces.cpp (NFC)
Commit: fbce244299524fc3d736cce9d25b4262303b45d5
https://github.com/llvm/llvm-project/commit/fbce244299524fc3d736cce9d25b4262303b45d5
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Log Message:
-----------
[lldb] Call Import_AppendInittab before Py_Initialize (#82095)
The Python documentation [1] says that `PyImport_AppendInittab` should
be called before `Py_Initialize()`. Starting with Python 3.12, this is
enforced with a fatal error:
Fatal Python error: PyImport_AppendInittab: PyImport_AppendInittab()
may not be called after Py_Initialize()
This commit ensures we only modify the table of built-in modules if
Python hasn't been initialized. For Python embedded in LLDB, that means
this happen exactly once, before the first call to `Py_Initialize`,
which becomes a NO-OP after. However, when lldb is imported in an
existing Python interpreter, Python will have already been initialized,
but by definition, the lldb module will already have been loaded, so
it's safe to skip adding it (again).
This fixes #70453.
[1] https://docs.python.org/3.12/c-api/import.html#c.PyImport_AppendInittab
Commit: db8b76dbb07d4053a4e44baf1518c9ea0d84c844
https://github.com/llvm/llvm-project/commit/db8b76dbb07d4053a4e44baf1518c9ea0d84c844
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
Log Message:
-----------
[NFC][llvm-exegesis] Clean up BenchmarkRunner comments
There were a couple things in the comments of BenchmarkRunner.cpp (and
maybe other files, I can't really remember) that were bugging me. This
patch fixes a couple of minor issues specifically in BenchmarkRunner
like typos and makes a couple instances more clear.
Commit: 4206d06130834cb79b641221261c4b5d7a174320
https://github.com/llvm/llvm-project/commit/4206d06130834cb79b641221261c4b5d7a174320
Author: Nico Weber <thakis at chromium.org>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/libcxx/src/BUILD.gn
Log Message:
-----------
[gn] port d332d88b919f (tzdb.cpp)
Commit: 5c96e71d0d49dd55711ccdb57a22d033fe7a8fae
https://github.com/llvm/llvm-project/commit/5c96e71d0d49dd55711ccdb57a22d033fe7a8fae
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp
Log Message:
-----------
[lldb] Don't rely on ScriptInterpreterPythonImpl::Initialize in the unit tests (#82096)
The unit tests only test the Python objects and don't actually use
anything from the LLDB module. That means that all the additional
complexity in ScriptInterpreterPythonImpl::Initialize is overkill.
By doing the initialization by hand, we avoid the annoying
ModuleNotFoundError.
Traceback (most recent call last):
File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'lldb'
The error is the result of us stubbing out the SWIG (specifically
`PyInit__lldb`) because we cannot link against libLLDB from the unit
tests.
The downside of doing the initialization manually is that we do lose a
bit of test coverage. For example, issue #70453 also manifested itself
in the unit tests.
Commit: 339baae3e223693a98f0f25e06147e4e6dde1254
https://github.com/llvm/llvm-project/commit/339baae3e223693a98f0f25e06147e4e6dde1254
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M lldb/bindings/interface/SBStatisticsOptionsDocstrings.i
M lldb/include/lldb/API/SBStatisticsOptions.h
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Target/Statistics.h
M lldb/source/API/SBStatisticsOptions.cpp
M lldb/source/Commands/CommandObjectStats.cpp
M lldb/source/Commands/Options.td
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolFileOnDemand.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
R lldb/test/API/functionalities/stats_api/main.dwo.yaml
R lldb/test/API/functionalities/stats_api/main.o.yaml
Log Message:
-----------
Revert "Report only loaded debug info in statistics dump (#81706)" (#82150)
This reverts commit 21ddd7ff2b166c5e133b460b1a09ee8adb786ccd because it
breaks a bunch of tests:
https://lab.llvm.org/buildbot/#/builders/68/builds/69018
https://green.lab.llvm.org/green/view/LLDB/job/as-lldb-cmake/16273
Commit: ead0a9777f8ccb5c26d50d96bade6cd5b47f496b
https://github.com/llvm/llvm-project/commit/ead0a9777f8ccb5c26d50d96bade6cd5b47f496b
Author: SahilPatidar <89641424+SahilPatidar at users.noreply.github.com>
Date: 2024-02-17 (Sat, 17 Feb 2024)
Changed paths:
M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
Log Message:
-----------
[mlir][spirv] Replace hardcoded strings with op methods (#81443)
Progress towards #77627
---------
Co-authored-by: SahilPatidar <patidarsahil at 2001gmail.com>
Co-authored-by: Lei Zhang <antiagainst at gmail.com>
Commit: 1ecbab56dcbb78268c8d19af34a50591f90b12a0
https://github.com/llvm/llvm-project/commit/1ecbab56dcbb78268c8d19af34a50591f90b12a0
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGenCXX/module-funcs-from-imports.cppm
Log Message:
-----------
[C++20] [Modules] Don't import non-inline function bodies even if it is marked as always_inline
Close https://github.com/llvm/llvm-project/issues/80949
Previously, I thought the always-inline function can be an exception to
enable optimizations as much as possible. However, it looks like it
breaks the ABI requirement we discussed later. So it looks better to not
import non-inline function bodies at all even if the function bodies are
marked as always_inline.
It doesn't produce regressions in some degree since the always_inline
still works in the same TU.
Commit: 833fea40d22ff7265a8331c88a7dc3b32a84c6a8
https://github.com/llvm/llvm-project/commit/833fea40d22ff7265a8331c88a7dc3b32a84c6a8
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M flang/lib/Lower/OpenMP.cpp
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
R mlir/test/Dialect/OpenMP/roundtrip.mlir
Log Message:
-----------
[MLIR][OpenMP] Add `private` clause to `omp.parallel` (#81452)
Extends the `omp.parallel` op by adding a `private` clause to model
[first]private variables. This uses the `omp.private` op to map
privatized variables to their corresponding privatizers.
Example `omp.private` op with `private` variable:
```
omp.parallel private(@x.privatizer %arg0 -> %arg1 : !llvm.ptr) {
^bb0(%arg1: !llvm.ptr):
// ... use %arg1 ...
omp.terminator
}
```
Whether the variable is private or firstprivate is determined by the
attributes of the corresponding `omp.private` op.
Commit: 1a8c6130f60fe517fb722ab4309997ce7b638234
https://github.com/llvm/llvm-project/commit/1a8c6130f60fe517fb722ab4309997ce7b638234
Author: Felix Schneider <fx.schn at gmail.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/test/Dialect/Arith/canonicalize.mlir
Log Message:
-----------
[mlir][arith] Align shift Ops with LLVM instructions on allowed shift amounts (#82133)
This patch aligns the shift Ops in `arith` with respective LLVM instructions.
Specifically, shifting by an amount equal to the bitwidth of the operand
is now defined to return poison.
Relevant discussion:
https://discourse.llvm.org/t/some-question-on-the-semantics-of-the-arith-dialect/74861/10
Relevant issue: https://github.com/llvm/llvm-project/issues/80960
Commit: 1e4c76cdc9d47c06eb30c811fd497d7b0a3ae5e8
https://github.com/llvm/llvm-project/commit/1e4c76cdc9d47c06eb30c811fd497d7b0a3ae5e8
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
M llvm/test/TableGen/AllowDuplicateRegisterNames.td
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
Log Message:
-----------
[MC][AsmParser] Make `MatchRegisterName` return `MCRegister` (NFC) (#81408)
`MCRegister` is preferred over `unsigned` nowadays.
Commit: 3496927edcd0685807351ba88a7e2cfb006e1c0d
https://github.com/llvm/llvm-project/commit/3496927edcd0685807351ba88a7e2cfb006e1c0d
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
Log Message:
-----------
[clang-tidy] Fixes to readability-implicit-bool-conversion (#72050)
- Fixed issue with invalid code being generated when static_cast is put
into fix, and no space were added before it.
- Fixed issue with duplicate parentheses being added when double
implicit cast is used.
Closes #71848
Commit: 2d0137dd64017c34101f8a763fd8958c20acd6bb
https://github.com/llvm/llvm-project/commit/2d0137dd64017c34101f8a763fd8958c20acd6bb
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/Parse/ParseDecl.cpp
M clang/test/Sema/attr-function-return.c
M clang/test/Sema/callingconv-iamcu.c
M clang/test/Sema/callingconv.c
M clang/test/Sema/mips-interrupt-attr.c
M clang/test/Sema/riscv-interrupt-attr.c
M clang/test/Sema/zero_call_used_regs.c
M clang/test/SemaCXX/warn-consumed-parsing.cpp
M clang/test/SemaHLSL/shader_type_attr.hlsl
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[clang] Differentiate between identifier and string EnumArgument (#68550)
EnumArgument may be a string or an identifier. If it is a string, it
should be parsed as unevaluated string literal. Add IsString flag to
EnumArgument so that the parser can choose the correct parsing method.
Target-specific attributes that share spelling may have different
attribute "prototypes". For example, ARM's version of "interrupt"
attribute accepts a string enum, while MSP430's version accepts an
unsigned integer. Adjust ClangAttrEmitter so that the generated
`attributeStringLiteralListArg` returns the correct mask depending on
target triple.
It is worth noting that even after this change some string arguments are
still parsed as identifiers or, worse, as expressions. This is because
of some special logic in `ParseAttributeArgsCommon`. Fixing it is out of
scope of this patch.
Commit: ba27c3963d785a023cc8963ec3b6f508fe31527e
https://github.com/llvm/llvm-project/commit/ba27c3963d785a023cc8963ec3b6f508fe31527e
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/shifts.cpp
Log Message:
-----------
[clang][Interp] Classify correct type for compound shifts
RT must be the type of the RHS, otherwise this later fails when
we set the RHS value to the temporary variable.
Commit: 767433ba88212b70da51ddc41727624c790cc329
https://github.com/llvm/llvm-project/commit/767433ba88212b70da51ddc41727624c790cc329
Author: Nick Anderson <nickleus27 at gmail.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[AMDGPU] fixes duplicate expressions in if stmnts in SIISelLowering.cpp (#82018)
fixes #81766
Commit: 886294a2fe5928ecf34299e02526e17be19910c6
https://github.com/llvm/llvm-project/commit/886294a2fe5928ecf34299e02526e17be19910c6
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
Log Message:
-----------
[mlir][linalg] Add pattern to propagate pack up through tensor.pad (#82035)
This mirrors the existing pattern for pushing unpack down through
padding, restricting to cases where the padded dimensions aren't tiled
by the pack.
Additionally reformats the propagation test to make it easier to read.
Commit: 54daf6af57fb15d7a51e3f4bb889199fd1453bee
https://github.com/llvm/llvm-project/commit/54daf6af57fb15d7a51e3f4bb889199fd1453bee
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M libcxx/include/istream
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/sync.pass.cpp
Log Message:
-----------
[libc++] Fixes istream::sync. (#76467)
This fixes two issues.
The return value
----------------
Based on the wording
[istream.unformatted]/37
Effects: Behaves as an unformatted input function (as described above),
except that it does not count the number of characters extracted and
does not affect the value returned by subsequent calls to gcount().
After constructing a sentry object, if rdbuf() is a null pointer,
returns -1.
[istream.unformatted]/1
... It then creates an object of class sentry with the default argument
noskipws (second) argument true. If the sentry object returns true, when
converted to a value of type bool, the function endeavors to obtain the
requested input. ...
It could be argued the current behaviour is correct, however
constructing a istream rdbuf() == nullptr creates a sentry that returns
false; its state is always bad in this case.
As mentioned in the bug report, after this change the 3 major
implementations behave the same.
The setting of the state
------------------------
When pubsync returned -1 it updated the local __state variable and
returned. This early return caused the state up the istream not to be
updated to the new state.
Fixes: https://github.com/llvm/llvm-project/issues/51497
Fixes: https://github.com/llvm/llvm-project/issues/51499
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 41364051ac9380a6b62f61c794fc5978b2e703c9
https://github.com/llvm/llvm-project/commit/41364051ac9380a6b62f61c794fc5978b2e703c9
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Program.cpp
A clang/test/AST/Interp/crash-GH49103-2.cpp
Log Message:
-----------
[clang][Interp] Not all record bases are of RecordType
See the attached test case.
Commit: cc2fe7b516c1dbf1f8747ade0f17891f9990dede
https://github.com/llvm/llvm-project/commit/cc2fe7b516c1dbf1f8747ade0f17891f9990dede
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Descriptor.cpp
M clang/lib/AST/Interp/Program.cpp
M clang/lib/AST/Interp/Record.h
Log Message:
-----------
[clang][Interp][NFC] Make Record::{Base,Field} member pointers const
Commit: 536d78c213e127e00aa3b120582a3c133e6b0e52
https://github.com/llvm/llvm-project/commit/536d78c213e127e00aa3b120582a3c133e6b0e52
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
Log Message:
-----------
[VPlan] Remove VPInstruction::setUnderlyingInstr (NFCI).
VPInstruction doesn't rely on the underlying instruction any longer for
codegen, remove the unneeded setUnderlyingInstr.
Commit: 5e83b26584c9a02f8a2923651d08cad2dcc8479a
https://github.com/llvm/llvm-project/commit/5e83b26584c9a02f8a2923651d08cad2dcc8479a
Author: Danny Mösch <danny.moesch at icloud.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
Log Message:
-----------
[clang-tidy] Keep parentheses when replacing index access in `sizeof` calls (#82166)
Fixes #56021.
Commit: dc94eb57e39a925a9672bfc4d7cba0fb0da874d8
https://github.com/llvm/llvm-project/commit/dc94eb57e39a925a9672bfc4d7cba0fb0da874d8
Author: David Tellenbach <dtellenbach at apple.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/lib/CodeGen/CoverageMappingGen.cpp
A clang/test/CoverageMapping/conditional-operator.c
Log Message:
-----------
[clang][CodeCoverage] Fix CoverageMapping for binary conditionals ops (#82141)
Fix an issue that produces a wrong coverage mapping when using binary
conditional operators as show in the example below.
Before this patch:
1| 1|int binary_cond(int x) {
2| 1| x = x ?: 4;
3| 1| int y = 0;
4| 0| return x; <-- Not covered
5| 1|}
After this patch:
1| 1|int binary_cond(int x) {
2| 1| x = x ?: 4;
3| 1| int y = 0;
4| 1| return x; <-- Covered
5| 1|}
Commit: 79709498eaa57095a9888b882e94f6d15a244d4b
https://github.com/llvm/llvm-project/commit/79709498eaa57095a9888b882e94f6d15a244d4b
Author: David Tellenbach <dtellenbach at apple.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M clang/test/CoverageMapping/conditional-operator.c
Log Message:
-----------
[clang][CodeCoverage] Fix conditional-operator test (#82192)
Commit: 2646dccaa35e9bf414cb5c77d047ab1733054018
https://github.com/llvm/llvm-project/commit/2646dccaa35e9bf414cb5c77d047ab1733054018
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-02-18 (Sun, 18 Feb 2024)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
A bolt/test/X86/linux-static-calls.s
Log Message:
-----------
[BOLT] Add support for Linux kernel static calls table (#82072)
Static calls are calls that are getting patched during runtime. Hence,
for every such call the kernel runtime needs the location of the call or
jmp instruction that will be patched. Instruction locations together
with a corresponding key are stored in the static call site table. As
BOLT rewrites these instructions it needs to update the table.
Commit: bb91b4371975f6aa48ade88076c400ca8c2c0043
https://github.com/llvm/llvm-project/commit/bb91b4371975f6aa48ade88076c400ca8c2c0043
Author: XinWang10 <108658776+XinWang10 at users.noreply.github.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
Log Message:
-----------
[X86] Handle repeated blend mask in combineConcatVectorOps (#82155)
https://github.com/llvm/llvm-project/commit/1d27669e8ad07f8f2 add
support for fold 512-bit concat(blendi(x,y,c0),blendi(z,w,c1)) to
AVX512BW mask select.
But when the type of subvector is v16i16, we need to generate repeated
mask to make the result correct.
The subnode looks like t87: v16i16 = X86ISD::BLENDI t132, t58,
TargetConstant:i8<-86>.
Commit: 80f3bb4cf2f5603f65fca16775b1f507aee4aae2
https://github.com/llvm/llvm-project/commit/80f3bb4cf2f5603f65fca16775b1f507aee4aae2
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll
Log Message:
-----------
[PowerPC] adjust cost for vector insert/extract with non const index (#79092)
P9 has vxform `Vector Extract Element Instructions` like `vextuwrx` and
P10 has vxform `Vector Insert Element instructions` like `vinsd`. Update
the instruction cost reflecting these instructions.
Fixes https://github.com/llvm/llvm-project/issues/50249
Commit: 64790064e82467b43c04a70b6e9873e6939be81f
https://github.com/llvm/llvm-project/commit/64790064e82467b43c04a70b6e9873e6939be81f
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M compiler-rt/lib/asan/asan_report.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_posix.cpp
Log Message:
-----------
[asan] Use InternalMmapVectorNoCtor for error_message_buffer, reallocate if needed (#77488)
- Add a param `raw_report` which defaults to false for function
`UnmapOrDie()` like we do for `MmapOrDie()`
- Add a template param `raw_report` which defaults to false for class
`InternalMmapVectorNoCtor`. `raw_report` will be passed to `MmapOrDie()`
and `UnmapOrDie()` when they are called in class
`InternalMmapVectorNoCtor` member functions.
- Use `InternalMmapVectorNoCtor<char, true>` for `error_message_buffer`
and reallocate if needed.
Commit: 0ce01712432dd34f7e83f78af23fb444f3fd92b6
https://github.com/llvm/llvm-project/commit/0ce01712432dd34f7e83f78af23fb444f3fd92b6
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
Log Message:
-----------
[BOLT][NFC] Switch logging in LinuxKernelRewriter (#82195)
Use journaling streams introduced in #81524 for LinuxKernelRewriter.
Commit: 9b76515b1bb57da7f083877486f57ce8328f91a5
https://github.com/llvm/llvm-project/commit/9b76515b1bb57da7f083877486f57ce8328f91a5
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
Log Message:
-----------
[sanitizer][fuchsia] Fix fuchsia buildbot failure after 64790064e82467b43c04a70b6e9873e6939be81f (#82202)
In https://github.com/llvm/llvm-project/pull/77488, a param `raw_report`
is added for function `UnmapOrDie()`.
But missing the corresponding change for fuchsia, causes the buildbot
failure, see https://lab.llvm.org/buildbot/#/builders/98/builds/33593.
This patch should fix the fuchsia buildbot failure.
Commit: 2ed0aacf973d628d5abae79229e251e034831dd3
https://github.com/llvm/llvm-project/commit/2ed0aacf973d628d5abae79229e251e034831dd3
Author: Jason Eckhardt <jeckhardt at nvidia.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/test/TableGen/HwModeEncodeDecode.td
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen] Fixes for per-HwMode decoding problem (#82201)
Today, if any instruction uses EncodingInfos/EncodingByHwMode to
override the default encoding, the opcode field of the decoder table is
generated incorrectly. This causes failed disassemblies and other
problems.
Specifically, the main correctness issue is that the EncodingID is
inadvertently stored in the table rather than the actual opcode. This is
caused by having set up the IndexOfInstruction map incorrectly during
the loop to populate NumberedEncodings-- which is then propagated around
when OpcMap is set up with a bad EncodingIDAndOpcode.
Instead, do away with IndexOfInstruction altogether and use opcode value
queried from CodeGenTarget::getInstrIntValue to set up OpcMap. This
itself exposed another problem where emitTable was using the decoded
opcode to index into NumberedEncodings. Instead pass in the
EncodingIDAndOpcode vector, and create the reverse mapping from Opcode
to EncodingID, which is then used to index NumberedEncodings.
This problem is not currently exposed upstream since no in-tree targets
yet use the per-HwMode feature. It does show up in at least two
downstream targets.
Commit: 50b82ef1dbc7126fb9aacb40b20eb10a328dbffc
https://github.com/llvm/llvm-project/commit/50b82ef1dbc7126fb9aacb40b20eb10a328dbffc
Author: Luke Lau <luke at igalia.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Use DAG.getElementCount in lowerEXTRACT_SUBVECTOR. NFCI (#81698)
Following up on the review comment in
https://github.com/llvm/llvm-project/pull/79949#discussion_r1482071745
Commit: dd7386d85f11cf6ad911b9827c7018fb08c6c205
https://github.com/llvm/llvm-project/commit/dd7386d85f11cf6ad911b9827c7018fb08c6c205
Author: Wanyi <kusmour at gmail.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M lldb/bindings/interface/SBStatisticsOptionsDocstrings.i
M lldb/include/lldb/API/SBStatisticsOptions.h
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Target/Statistics.h
M lldb/source/API/SBStatisticsOptions.cpp
M lldb/source/Commands/CommandObjectStats.cpp
M lldb/source/Commands/Options.td
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolFileOnDemand.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/commands/target/debuginfo/TestDebugInfoSize.py
M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
A lldb/test/API/functionalities/stats_api/main-main.dwo.yaml
A lldb/test/API/functionalities/stats_api/main.yaml
Log Message:
-----------
[Reland] Report only loaded debug info in statistics dump (#81706) (#82207)
Updates:
- The previous patch changed the default behavior to not load dwos in
`DWARFUnit`
~~`SymbolFileDWARFDwo *GetDwoSymbolFile(bool load_all_debug_info =
false);`~~
`SymbolFileDWARFDwo *GetDwoSymbolFile(bool load_all_debug_info = true);`
- This broke some lldb-shell tests (see
https://green.lab.llvm.org/green/view/LLDB/job/as-lldb-cmake/16273/)
- TestDebugInfoSize.py
- with symbol on-demand, by default statistics dump only reports
skeleton debug info size
- `statistics dump -f` will load all dwos. debug info = skeleton debug
info + all dwo debug info
Currently running `statistics dump` will trigger lldb to load debug info
that's not yet loaded (eg. dwo files). Resulted in a delay in the
command return, which, can be interrupting.
This patch also added a new option `--load-all-debug-info` asking
statistics to dump all possible debug info, which will force loading all
debug info available if not yet loaded.
Commit: dc1b7729337a3e04ad1bb69394122c7f95f193d2
https://github.com/llvm/llvm-project/commit/dc1b7729337a3e04ad1bb69394122c7f95f193d2
Author: David Green <david.green at arm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
M llvm/test/CodeGen/AArch64/insertextract.ll
Log Message:
-----------
[AArch64][GlobalISel] Add missing legalization for v16i8 extract element.
Commit: 9d3d6ec665d6284b6ba8c51a57a4a618d67a1697
https://github.com/llvm/llvm-project/commit/9d3d6ec665d6284b6ba8c51a57a4a618d67a1697
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CodeGenCXX/cxx2a-consteval.cpp
Log Message:
-----------
[Clang] CXXConstructExpr may be immediate calls. (#82179)
A CXXConstructExpr may refer to an immediate constructor, in which case
it should be substituted in the
enclosing default init expression.
Fixes #82154
Commit: 2ea5d167ae43bed5a511d5d819ae7c52cc76ec5c
https://github.com/llvm/llvm-project/commit/2ea5d167ae43bed5a511d5d819ae7c52cc76ec5c
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__fwd/complex.h
M libcxx/include/__ranges/elements_view.h
M libcxx/include/__tuple/tuple_like.h
M libcxx/include/complex
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap.in
M libcxx/modules/std/complex.inc
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
A libcxx/test/libcxx/utilities/tuple/__tuple_like.compile.pass.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/get.pass.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/get.verify.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/tuple_element.compile.pass.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/tuple_element.verify.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/tuple_size.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][complex] P2819R2: Add `tuple` protocol to `complex` (#79744)
Implements: P2819R2 <https://wg21.link/P2819R2>
- https://eel.is/c++draft/utilities#concept:tuple-like
- https://eel.is/c++draft/complex.syn
- https://eel.is/c++draft/complex.tuple
---------
Co-authored-by: Zingam <zingam at outlook.com>
Commit: bb049094d5d32e562e5831e5bd0fa12c0a7984ce
https://github.com/llvm/llvm-project/commit/bb049094d5d32e562e5831e5bd0fa12c0a7984ce
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 2ea5d167ae43
Commit: fcf3ca9a5e50f32edcfe68c291edd1ecab7009a7
https://github.com/llvm/llvm-project/commit/fcf3ca9a5e50f32edcfe68c291edd1ecab7009a7
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
Log Message:
-----------
[clang][Interp][NFC] Split emitRecordDestruction
into a general part and a record part. This will be needed in future
patches.
Commit: d61864f813e33b4228e56f391ec53566aab9efda
https://github.com/llvm/llvm-project/commit/d61864f813e33b4228e56f391ec53566aab9efda
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Program.cpp
M clang/test/AST/Interp/lambda.cpp
Log Message:
-----------
[clang][Interp] Don't create Records for incomplete decls
We would previously create the Record instance with 0 fields,
which is incorrect. We later see it again with 1 field.
Fixes #82203
Commit: d043b4bc7e61e2720fae2473db145389ccac4598
https://github.com/llvm/llvm-project/commit/d043b4bc7e61e2720fae2473db145389ccac4598
Author: Enna1 <xumingjie.enna1 at bytedance.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
Log Message:
-----------
[Sanitizer][Windows] Fix Windows buildbot failure after 64790064e82467b43c04a70b6e9873e6939be81f (#82215)
In #77488, a param raw_report is added for function UnmapOrDie(), causes
the Windows buildbot failure:
- https://lab.llvm.org/buildbot/#/builders/127/builds/62395
- https://lab.llvm.org/buildbot/#/builders/265/builds/2662
This patch should fix the Windows buildbot failure.
Commit: e98abc3ea0796a5d78eb48f2ee9b3019e8133562
https://github.com/llvm/llvm-project/commit/e98abc3ea0796a5d78eb48f2ee9b3019e8133562
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/records.cpp
Log Message:
-----------
[clang][Interp] Emit dtors when ignoring CXXConstructExprs
The comment says we should emit destructors, but we didn't.
Commit: 442f066fc464e953b7783230e95ccf2a67ebfb38
https://github.com/llvm/llvm-project/commit/442f066fc464e953b7783230e95ccf2a67ebfb38
Author: Fangrui Song <i at maskray.me>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/test/MC/AArch64/arm64-optional-hash.s
Log Message:
-----------
[AArch64AsmParser] Support (xxx), lsl 16 after #80571
An immediate integer operand not prefixed with # can also be followed
by "lsl". Parse "lsl".
In the wild, edk2 ArmPkg/Include/AsmMacroIoLibV8.h has
`movz Reg, (Val) >> 16, lsl #16`.
Note: our support for paren expression not prefixed with # is not very
good. For example, `adds x3, x4, (1024>>0), lsl 12` fails to be parsed.
Commit: 6d7de46155fece05ab5a44aedd573a811f4b208a
https://github.com/llvm/llvm-project/commit/6d7de46155fece05ab5a44aedd573a811f4b208a
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Record.h
Log Message:
-----------
[clang][Interp][NFC] Make Record field pointers const
Commit: 63dd08b1f4d2a79c02e57cc0688e40c1ecc7f6cc
https://github.com/llvm/llvm-project/commit/63dd08b1f4d2a79c02e57cc0688e40c1ecc7f6cc
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/include/llvm/Target/TargetPfmCounters.td
M llvm/lib/Target/X86/X86PfmCounters.td
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
M llvm/tools/llvm-exegesis/llvm-exegesis.cpp
Log Message:
-----------
[llvm-exegesis] Add branch miss validation counter (#81094)
This patch adds a branch miss validation counter so that it is easy to
quantify the number of missed branches when using the loop repetition
mode.
Commit: 4b9c089381f7bd9a757d3926091205d70fcc9964
https://github.com/llvm/llvm-project/commit/4b9c089381f7bd9a757d3926091205d70fcc9964
Author: Martin Storsjö <martin at martin.st>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M openmp/runtime/test/atomic/kmp_atomic_float10_max_min.c
Log Message:
-----------
[OpenMP] [test] Skip the -mlong-double-80 test on MSVC ABI (#81115)
Within the MSVC ABI, long doubles are the same as regular 64 bit
doubles. This test case, which is compiled with -mlong-double-80, cannot
work when libomp has been compiled without that flag, as
-mlong-double-80 changes the calling convention for the tested
functions.
Commit: 0b34d7e9e2915510088aeee5592a845edd62b8ba
https://github.com/llvm/llvm-project/commit/0b34d7e9e2915510088aeee5592a845edd62b8ba
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/cxx23.cpp
M clang/test/SemaCXX/cxx23-static-callop-lambda-expression.cpp
Log Message:
-----------
[clang][Interp] Fix calling static operators
They don't have an instance pointer anywhere but get one passed
via their CallExpr.
Commit: 0c1f62073fd48f7dcf16f8dc38d825bb211745d4
https://github.com/llvm/llvm-project/commit/0c1f62073fd48f7dcf16f8dc38d825bb211745d4
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/docs/CommandGuide/llvm-exegesis.rst
Log Message:
-----------
[Docs][llvm-exegesis] Add documentation on validation counters option (#82132)
This patch documents the --validation-counter flag.
Commit: 93db5b7b2561b574aae05c2ffd601cfcadc3f2c2
https://github.com/llvm/llvm-project/commit/93db5b7b2561b574aae05c2ffd601cfcadc3f2c2
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
M llvm/tools/llvm-exegesis/lib/LatencyBenchmarkRunner.cpp
Log Message:
-----------
[llvm-exegesis] Add debug option to print per-measurement values (#81219)
This patch adds a debug option to print per measurement latency and
validation counter values. This makes it easier to debug certain
transient issues that can be hard to spot just using the summary view at
the end.
I've hacked print statements into this part of the code base enough
times for debugging various things that I think it makes sense to be a
proper debug macro.
Commit: ad78e210bd71619f1c81c4ed66aa8974ee5209be
https://github.com/llvm/llvm-project/commit/ad78e210bd71619f1c81c4ed66aa8974ee5209be
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
A llvm/test/Transforms/LoopUnroll/AArch64/scalable-vec-ins-ext.ll
Log Message:
-----------
[NFC][AArch64] Tests for guarding unrolling with scalable vec ins/ext (#81132)
Commit: c3107821aeeeb12a13e7a85f0e23b884c2881417
https://github.com/llvm/llvm-project/commit/c3107821aeeeb12a13e7a85f0e23b884c2881417
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/symlink/include/.clang-tidy
A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/symlink/include/test.h
A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-symlink.cpp
Log Message:
-----------
[clang-tidy][readability-identifier-naming] Resolve symlinks for checking style for file (#81985)
Summary:
Some build systems create symlinks in a temporary build directory for
headers in the source tree for isolation purposes. These symlinks
prevent `readability-identifier-naming` detecting issues and applying
fixes. Without this fix clang-tidy is checking .clang-tidy config file
in a temporary directory instead of source source location.
Test Plan: check-clang-tools
Commit: 4b483ecd55d7269e8d9af788e823fc9b476b33ce
https://github.com/llvm/llvm-project/commit/4b483ecd55d7269e8d9af788e823fc9b476b33ce
Author: SahilPatidar <89641424+SahilPatidar at users.noreply.github.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/and.ll
M llvm/test/Transforms/InstCombine/binop-cast.ll
M llvm/test/Transforms/InstCombine/sub-ashr-and-to-icmp-select.ll
Log Message:
-----------
[InstCombine] Fix failure to fold (and %x, (sext i1 %m)) -> (select %m, %x, 0) with multiple uses of %m (#81409)
Resolves #81288.
Commit: a2535a5786894c54fb657f3b142ce88e8810e1ea
https://github.com/llvm/llvm-project/commit/a2535a5786894c54fb657f3b142ce88e8810e1ea
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/EvalEmitter.cpp
A clang/test/AST/Interp/comma.cpp
Log Message:
-----------
[clang][Interp] Remove assertion to fix comma operators...
... involving function pointers on the RHS. The conversion to
an RValue _can_ be requested, but we just ignore it.
Commit: da04f306a88d996e10f20f1bcb13062f30155dbf
https://github.com/llvm/llvm-project/commit/da04f306a88d996e10f20f1bcb13062f30155dbf
Author: Julien Schueller <schueller at phimeca.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M flang/lib/Frontend/CMakeLists.txt
Log Message:
-----------
[flang] Fix missing CGPasses.h.inc (#71691)
I could reproduce using unix makefiles with -j1 option, with version
16.0.6
Closes #61543
Closes #57680
Commit: 0215d2c58bfaae40332075cca566d83e152330a6
https://github.com/llvm/llvm-project/commit/0215d2c58bfaae40332075cca566d83e152330a6
Author: Tim Northover <tnorthover at apple.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/AArch64/arm64_32.ll
Log Message:
-----------
arm64_32: extend @llvm.stackguard call to in-DAG 64-bits before handing off
Pointers are 64-bits in the DAG, so we need to extend the result of loading the
cookie when building the DAG.
Commit: 232a14d062e735af3e385de8dc56f6f4584cad1b
https://github.com/llvm/llvm-project/commit/232a14d062e735af3e385de8dc56f6f4584cad1b
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/include/llvm/Analysis/AliasAnalysis.h
Log Message:
-----------
[BatchAA] Fix a reference to a non-exising `pointsToConstantMemory` overload (NFC) (#82173)
Commit: 658e4763a23cc53eaf1b84e804f980f2a8cb8802
https://github.com/llvm/llvm-project/commit/658e4763a23cc53eaf1b84e804f980f2a8cb8802
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
Log Message:
-----------
[AArch64] Fix wrong condition in `canUseAsPrologue` (#81878)
Inline stack probing code may need a scratch register, hence basic
blocks where such register is not available cannot be used as prologues.
Checking for an available scratch regidster was incorrectly skipped when
the function uses stack probing.
Commit: 6b32ba6129941b42d929366eb0477696d53ceb2b
https://github.com/llvm/llvm-project/commit/6b32ba6129941b42d929366eb0477696d53ceb2b
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/Record.h
Log Message:
-----------
[clang][Interp][NFC] Make Record::BaseMap use const pointers
Commit: eddf9cf38a116bcce016f147cab216fef98721ab
https://github.com/llvm/llvm-project/commit/eddf9cf38a116bcce016f147cab216fef98721ab
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/arrays.cpp
Log Message:
-----------
[clang][Interp] Fix failure to allocate local variables
We were incorrectly returning true when the allocateLocal() call
failed.
Commit: 69d4890f801d6821e969a992d88d0bf48f9249cf
https://github.com/llvm/llvm-project/commit/69d4890f801d6821e969a992d88d0bf48f9249cf
Author: elhewaty <mohamedatef1698 at gmail.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/abs-intrinsic.ll
Log Message:
-----------
[InstCombine] Fold abs(a * abs(b)) --> abs(a * b) (#78110)
Proof: https://alive2.llvm.org/ce/z/hfbEra
Fixes: https://github.com/llvm/llvm-project/issues/73211
Commit: e488fe5a97ba8da9be31926c219932db92298f21
https://github.com/llvm/llvm-project/commit/e488fe5a97ba8da9be31926c219932db92298f21
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
A clang/test/AST/Interp/cxx03.cpp
Log Message:
-----------
[clang][Interp] Fix non-initializing MemberExprs
We need to create a value for them, do that via visit()
Commit: 925768eeaba71ea288ba16557921ea3439f9fcf5
https://github.com/llvm/llvm-project/commit/925768eeaba71ea288ba16557921ea3439f9fcf5
Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_double.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_float.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_half.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_double.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_float.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_half.ll
Log Message:
-----------
Add support for atomic instruction on floating-point numbers (#81683)
This PR adds support for atomic instruction on floating-point numbers:
* SPV_EXT_shader_atomic_float_add
* SPV_EXT_shader_atomic_float_min_max
* SPV_EXT_shader_atomic_float16_add
and fixes asm printer output for half floating-type.
Commit: 21431e0f94c95703bd76e9ec5d2f0b39b8509680
https://github.com/llvm/llvm-project/commit/21431e0f94c95703bd76e9ec5d2f0b39b8509680
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/AST/Interp/functions.cpp
Log Message:
-----------
[clang][Interp] Remove questionable initializer special case
I'm not sure where this would be needed, but for the time being,
removing it fixes a problem.
Commit: 769c22f25b81b74e4da7871d4e552584605caef1
https://github.com/llvm/llvm-project/commit/769c22f25b81b74e4da7871d4e552584605caef1
Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
A llvm/test/Transforms/VectorCombine/X86/reduction-of-truncations.ll
Log Message:
-----------
[VectorCombine] Fold reduce(trunc(x)) -> trunc(reduce(x)) iff cost effective (#81852)
Vector truncations can be pretty expensive, especially on X86, whilst scalar truncations are often free.
If the cost of performing the add/mul/and/or/xor reduction is cheap enough on the pre-truncated type, then avoid the vector truncation entirely.
Fixes https://github.com/llvm/llvm-project/issues/81469
Commit: 5b342e6041f8567a39354ae3c5346cf74b3bb84f
https://github.com/llvm/llvm-project/commit/5b342e6041f8567a39354ae3c5346cf74b3bb84f
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/IR/AsmWriter.cpp
A llvm/test/DebugInfo/dpvalue-print-nocrash.ll
Log Message:
-----------
[RemoveDIs][DebugInfo] Check for null marker when printing DPValues (#82238)
The function to print DPValues currently tries to incorporate the
function it is part of, which is found through its marker; this means
when we try to print a DPValue with no marker, we dereference a nullptr.
We can print instructions without parents, and so the same should be
true for DPValues; this patch changes DPValue::print to check for a null
marker and avoid dereferencing it.
Fixes issue: https://github.com/llvm/llvm-project/issues/82230
Commit: 19f6689f3bd330c631525a7409bc824d8dc95303
https://github.com/llvm/llvm-project/commit/19f6689f3bd330c631525a7409bc824d8dc95303
Author: Mikael Holmen <mikael.holmen at ericsson.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
Log Message:
-----------
[clang] Remove unused variable [NFC]
Without the fix gcc warned like
../../clang/lib/Analysis/UnsafeBufferUsage.cpp:2203:26: warning: unused variable 'CArrTy' [-Wunused-variable]
2203 | } else if (const auto *CArrTy = Ctx.getAsConstantArrayType(
| ^~~~~~
Commit: 48439bd7a79b117b3072f422fdf7e5599925ec72
https://github.com/llvm/llvm-project/commit/48439bd7a79b117b3072f422fdf7e5599925ec72
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/test/AST/Interp/cxx20.cpp
Log Message:
-----------
[clang][Interp] Handle rewritten binary operators
Just delegate to the syntactic form.
Commit: d022f32c73c57b59a9121eba909f5034e89c628e
https://github.com/llvm/llvm-project/commit/d022f32c73c57b59a9121eba909f5034e89c628e
Author: Tomas Matheson <tomas.matheson at arm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/ARM.h
M clang/test/Preprocessor/arm-target-features.c
M llvm/include/llvm/TargetParser/ARMTargetParser.h
M llvm/lib/TargetParser/ARMTargetParser.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
Revert "[ARM] __ARM_ARCH macro definition fix (#81493)"
This reverts commit 89c1bf1230e011f2f0e43554c278205fa1819de5.
This has been unimplemenented for a while, and GCC does not implement
it, therefore we need to consider whether we should just deprecate it
in the ACLE instead.
Commit: 3f0404aae7ed2f7138526e1bcd100a60dfe08227
https://github.com/llvm/llvm-project/commit/3f0404aae7ed2f7138526e1bcd100a60dfe08227
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/test/CodeGen/AArch64/framelayout-sve-calleesaves-fix.mir
M llvm/test/CodeGen/AArch64/framelayout-sve.mir
M llvm/test/CodeGen/AArch64/sme-streaming-compatible-interface.ll
M llvm/test/CodeGen/AArch64/sme-streaming-interface.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-ld1.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-ldnt1.ll
M llvm/test/CodeGen/AArch64/stack-probing-sve.ll
M llvm/test/CodeGen/AArch64/sve-alloca.ll
M llvm/test/CodeGen/AArch64/sve-calling-convention-mixed.ll
M llvm/test/CodeGen/AArch64/sve-tailcall.ll
M llvm/test/CodeGen/AArch64/unwind-preserved.ll
Log Message:
-----------
[AArch64] Restore Z-registers before P-registers (#79623)
This is needed by PR#77665[1] that uses a P-register while restoring
Z-registers.
The reverse for SVE register restore in the epilogue was added to
guarantee performance, but further work was done to improve sve frame
restore and besides that the schedule also may change the order of the
restore, undoing the reverse restore.
[1]https://github.com/llvm/llvm-project/pull/77665
Commit: 95ebf2be0e6600465a4d0f4e7d81c7ded0559fba
https://github.com/llvm/llvm-project/commit/95ebf2be0e6600465a4d0f4e7d81c7ded0559fba
Author: Jan Kokemüller <jan.kokemueller at gmail.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/latch
M libcxx/include/semaphore
M libcxx/src/atomic.cpp
Log Message:
-----------
[libc++] Refactor the predicate taking variant of `__cxx_atomic_wait` (#80596)
This is a follow-up PR to
<https://github.com/llvm/llvm-project/pull/79265>. It aims to be a
gentle refactoring of the `__cxx_atomic_wait` function that takes a
predicate.
The key idea here is that this function's signature is changed to look
like this (`std::function` used just for clarity):
```c++
__cxx_atomic_wait_fn(Atp*, std::function<bool(Tp &)> poll, memory_order __order);
```
...where `Tp` is the corresponding `value_type` to the atomic variable
type `Atp`. The function's semantics are similar to `atomic`s `.wait()`,
but instead of having a hardcoded predicate (is the loaded value unequal
to `old`?) the predicate is specified explicitly.
The `poll` function may change its argument, and it is very important
that if it returns `false`, it leaves its current understanding of the
atomic's value in the argument. Internally, `__cxx_atomic_wait_fn`
dispatches to two waiting mechanisms, depending on the type of the
atomic variable:
1. If the atomic variable can be waited on directly (for example,
Linux's futex mechanism only supports waiting on 32 bit long variables),
the value of the atomic variable (which `poll` made its decision on) is
then given to the underlying system wait function (e.g. futex).
2. If the atomic variable can not be waited on directly, there is a
global pool of atomics that are used for this task. The ["eventcount"
pattern](<https://gist.github.com/mratsim/04a29bdd98d6295acda4d0677c4d0041>)
is employed to make this possible.
The eventcount pattern needs a "monitor" variable which is read before
the condition is checked another time. libcxx has the
`__libcpp_atomic_monitor` function for this. However, this function only
has to be called in case "2", i.e. when the eventcount is actually used.
In case "1", the futex is used directly, so the monitor must be the
value of the atomic variable that the `poll` function made its decision
on to continue blocking. Previously, `__libcpp_atomic_monitor` was
_also_ used in case "1". This was the source of the ABA style bug that
PR#79265 fixed.
However, the solution in PR#79265 has some disadvantages:
- It exposes internals such as `cxx_contention_t` or the fact that
`__libcpp_thread_poll_with_backoff` needs two functions to higher level
constructs such as `semaphore`.
- It doesn't prevent consumers calling `__cxx_atomic_wait` in an error
prone way, i.e. by providing to it a predicate that doesn't take an
argument. This makes ABA style issues more likely to appear.
Now, `__cxx_atomic_wait_fn` takes just _one_ function, which is then
transformed into the `poll` and `backoff` callables needed by
`__libcpp_thread_poll_with_backoff`.
Aside from the `__cxx_atomic_wait` changes, the only other change is the
weakening of the initial atomic load of `semaphore`'s `try_acquire` into
`memory_order_relaxed` and the CAS inside the loop is changed from
`strong` to `weak`. Both weakenings should be fine, since the CAS is
called in a loop, and the "acquire" semantics of `try_acquire` come from
the CAS, not from the initial load.
Commit: 6b45619614d8963705f378c6c1c18710c1d6992a
https://github.com/llvm/llvm-project/commit/6b45619614d8963705f378c6c1c18710c1d6992a
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-02-19 (Mon, 19 Feb 2024)
Changed paths:
M .github/workflows/docs.yml
M README.md
M bolt/include/bolt/Profile/BoltAddressTranslation.h
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/X86/Inputs/dwarf5-empty-arange-helper.s
A bolt/test/X86/Inputs/dwarf5-empty-arange-main.s
A bolt/test/X86/dwarf5-empty-arange.test
M bolt/test/X86/linux-orc.s
A bolt/test/X86/linux-static-calls.s
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/Rename.h
M clang-tools-extra/clangd/test/rename.test
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/non-zero-enum-to-bool-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/symlink/include/.clang-tidy
A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/symlink/include/test.h
A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-symlink.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Availability.h
M clang/include/clang/AST/OperationKinds.def
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/ExtractAPI/API.h
R clang/include/clang/ExtractAPI/AvailabilityInfo.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
A clang/lib/AST/Availability.cpp
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.h
M clang/lib/AST/Interp/Context.cpp
M clang/lib/AST/Interp/Descriptor.cpp
M clang/lib/AST/Interp/EvalEmitter.cpp
M clang/lib/AST/Interp/EvalEmitter.h
M clang/lib/AST/Interp/EvaluationResult.cpp
M clang/lib/AST/Interp/EvaluationResult.h
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/InterpBuiltin.cpp
M clang/lib/AST/Interp/PrimType.h
M clang/lib/AST/Interp/Program.cpp
M clang/lib/AST/Interp/Record.h
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/ARM.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
R clang/lib/ExtractAPI/AvailabilityInfo.cpp
M clang/lib/ExtractAPI/CMakeLists.txt
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Headers/hlsl/hlsl_basic_types.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/intrin.h
M clang/lib/Lex/Lexer.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseTentative.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/CMakeLists.txt
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
A clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/test/AST/Interp/arrays.cpp
M clang/test/AST/Interp/builtin-functions.cpp
M clang/test/AST/Interp/c.c
A clang/test/AST/Interp/comma.cpp
A clang/test/AST/Interp/crash-GH49103-2.cpp
A clang/test/AST/Interp/cxx03.cpp
M clang/test/AST/Interp/cxx20.cpp
M clang/test/AST/Interp/cxx23.cpp
M clang/test/AST/Interp/functions.cpp
M clang/test/AST/Interp/lambda.cpp
M clang/test/AST/Interp/records.cpp
M clang/test/AST/Interp/shifts.cpp
M clang/test/Analysis/Checkers/WebKit/mock-types.h
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/CXX/drs/dr12xx.cpp
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/CXX/drs/dr20xx.cpp
M clang/test/CXX/drs/dr2335.cpp
M clang/test/CXX/drs/dr23xx.cpp
M clang/test/CXX/drs/dr24xx.cpp
M clang/test/CXX/drs/dr25xx.cpp
M clang/test/CXX/drs/dr4xx.cpp
M clang/test/CodeGen/aarch64-ABI-align-packed.c
R clang/test/CodeGen/aarch64-soft-float-abi.c
M clang/test/CodeGen/arm64-microsoft-intrinsics.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/ms-intrinsics-other.c
M clang/test/CodeGen/ms-intrinsics-underaligned.c
M clang/test/CodeGenCXX/cxx2a-consteval.cpp
M clang/test/CodeGenCXX/module-funcs-from-imports.cppm
A clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
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/reversebits.hlsl
M clang/test/CodeGenHLSL/builtins/sin.hlsl
M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
M clang/test/CodeGenHLSL/builtins/trunc.hlsl
M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-gfx11.cl
A clang/test/CoverageMapping/conditional-operator.c
R clang/test/Driver/aarch64-soft-float-abi.c
M clang/test/Driver/unknown-arg.c
A clang/test/Lexer/raw-string-dlim-invalid.cpp
A clang/test/Parser/c11-keywords.c
M clang/test/ParserOpenACC/parse-cache-construct.c
M clang/test/ParserOpenACC/parse-cache-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/ParserOpenACC/parse-constructs.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/ParserOpenACC/parse-wait-clause.c
M clang/test/ParserOpenACC/parse-wait-construct.c
M clang/test/ParserOpenACC/unimplemented.c
M clang/test/ParserOpenACC/unimplemented.cpp
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/arm-target-features.c
R clang/test/Sema/aarch64-soft-float-abi.c
M clang/test/Sema/attr-function-return.c
M clang/test/Sema/callingconv-iamcu.c
M clang/test/Sema/callingconv.c
M clang/test/Sema/mips-interrupt-attr.c
M clang/test/Sema/riscv-interrupt-attr.c
M clang/test/Sema/zero_call_used_regs.c
A clang/test/SemaCXX/_Alignas.cpp
M clang/test/SemaCXX/builtins-overflow.cpp
M clang/test/SemaCXX/cxx23-static-callop-lambda-expression.cpp
M clang/test/SemaCXX/warn-consumed-parsing.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-add-assign.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-addressof-arraysubscript.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-assign-to-ptr.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-array-inits-ptr.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-assign-to-array-subscr-on-ptr.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-deref-simple-ptr-arith.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span-cv-qualifiers.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-local-var-span.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-multi-parm-span.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-access.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-arg-to-func-ptr-call.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pointer-deref.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-pre-increment.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-fixits-unevaluated-context.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-fixits-test.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-ptr-init-fixits.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-multi-decl-uuc-fixits.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-fixit.cpp
M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
A clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
M clang/test/SemaHLSL/Types/BuiltinVector/ScalarSwizzles.hlsl
A clang/test/SemaHLSL/VectorOverloadResolution.hlsl
M clang/test/SemaHLSL/shader_type_attr.hlsl
A clang/test/SemaHLSL/standard_conversion_sequences.hlsl
A clang/test/SemaOpenACC/compute-construct-ast.cpp
A clang/test/SemaOpenACC/parallel-assoc-stmt-inst.cpp
A clang/test/SemaOpenACC/parallel-loc-and-stmt.c
A clang/test/SemaOpenACC/parallel-loc-and-stmt.cpp
A clang/test/SemaOpenACC/unimplemented-construct.c
M clang/tools/driver/driver.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestTableGen.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/asan/asan_interceptors.cpp
M compiler-rt/lib/asan/asan_internal.h
M compiler-rt/lib/asan/asan_linux.cpp
M compiler-rt/lib/asan/asan_mac.cpp
M compiler-rt/lib/asan/asan_report.cpp
M compiler-rt/lib/asan/asan_rtl.cpp
M compiler-rt/lib/asan/asan_win.cpp
M compiler-rt/lib/hwasan/hwasan_report.cpp
M compiler-rt/lib/interception/interception.h
M compiler-rt/lib/memprof/memprof_internal.h
M compiler-rt/lib/memprof/memprof_linux.cpp
M compiler-rt/lib/memprof/memprof_rtl.cpp
M compiler-rt/lib/profile/InstrProfilingPlatformAIX.c
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_getauxval.h
M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_posix.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
M compiler-rt/lib/scudo/standalone/platform.h
M compiler-rt/lib/scudo/standalone/stack_depot.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/tsd_exclusive.h
M compiler-rt/lib/scudo/standalone/tsd_shared.h
M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
M compiler-rt/test/hwasan/TestCases/stack-uas.c
A compiler-rt/test/profile/AIX/bexpfull-pgo.c
M compiler-rt/test/profile/instrprof-block-coverage.c
M compiler-rt/test/profile/instrprof-entry-coverage.c
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Runtime/descriptor.h
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/OpenMP.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/ignore-missing-type-descriptor.fir
M flang/test/Fir/polymorphic.fir
M flang/test/Fir/tbaa.fir
M flang/test/Fir/type-descriptor.fir
A flang/test/Lower/CUDA/cuda-kernel-calls.cuf
M flang/test/Lower/allocatable-polymorphic.f90
A libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/linux/x86_64/entrypoints.txt
A libc/docs/c23.rst
M libc/docs/index.rst
M libc/docs/math/stdfix.rst
M libc/spec/spec.td
M libc/spec/stdc.td
M libc/spec/stdc_ext.td
M libc/src/CMakeLists.txt
M libc/src/__support/CPP/array.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/UInt.h
M libc/src/__support/fixed_point/CMakeLists.txt
A libc/src/__support/fixed_point/fx_bits.h
M libc/src/__support/fixed_point/fx_rep.h
M libc/src/__support/integer_literals.h
M libc/src/__support/integer_utils.h
M libc/src/__support/math_extras.h
M libc/src/__support/number_pair.h
A libc/src/stdfix/CMakeLists.txt
A libc/src/stdfix/abshk.cpp
A libc/src/stdfix/abshk.h
A libc/src/stdfix/abshr.cpp
A libc/src/stdfix/abshr.h
A libc/src/stdfix/absk.cpp
A libc/src/stdfix/absk.h
A libc/src/stdfix/abslk.cpp
A libc/src/stdfix/abslk.h
A libc/src/stdfix/abslr.cpp
A libc/src/stdfix/abslr.h
A libc/src/stdfix/absr.cpp
A libc/src/stdfix/absr.h
A libc/src/stdfix/roundhk.cpp
A libc/src/stdfix/roundhk.h
A libc/src/stdfix/roundhr.cpp
A libc/src/stdfix/roundhr.h
A libc/src/stdfix/roundk.cpp
A libc/src/stdfix/roundk.h
A libc/src/stdfix/roundlk.cpp
A libc/src/stdfix/roundlk.h
A libc/src/stdfix/roundlr.cpp
A libc/src/stdfix/roundlr.h
A libc/src/stdfix/roundr.cpp
A libc/src/stdfix/roundr.h
A libc/src/stdfix/rounduhk.cpp
A libc/src/stdfix/rounduhk.h
A libc/src/stdfix/rounduhr.cpp
A libc/src/stdfix/rounduhr.h
A libc/src/stdfix/rounduk.cpp
A libc/src/stdfix/rounduk.h
A libc/src/stdfix/roundulk.cpp
A libc/src/stdfix/roundulk.h
A libc/src/stdfix/roundulr.cpp
A libc/src/stdfix/roundulr.h
A libc/src/stdfix/roundur.cpp
A libc/src/stdfix/roundur.h
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/LibcTest.cpp
M libc/test/UnitTest/LibcTest.h
M libc/test/src/CMakeLists.txt
A libc/test/src/stdfix/AbsTest.h
A libc/test/src/stdfix/CMakeLists.txt
A libc/test/src/stdfix/RoundTest.h
A libc/test/src/stdfix/abshk_test.cpp
A libc/test/src/stdfix/abshr_test.cpp
A libc/test/src/stdfix/absk_test.cpp
A libc/test/src/stdfix/abslk_test.cpp
A libc/test/src/stdfix/abslr_test.cpp
A libc/test/src/stdfix/absr_test.cpp
A libc/test/src/stdfix/roundhk_test.cpp
A libc/test/src/stdfix/roundhr_test.cpp
A libc/test/src/stdfix/roundk_test.cpp
A libc/test/src/stdfix/roundlk_test.cpp
A libc/test/src/stdfix/roundlr_test.cpp
A libc/test/src/stdfix/roundr_test.cpp
A libc/test/src/stdfix/rounduhk_test.cpp
A libc/test/src/stdfix/rounduhr_test.cpp
A libc/test/src/stdfix/rounduk_test.cpp
A libc/test/src/stdfix/roundulk_test.cpp
A libc/test/src/stdfix/roundulr_test.cpp
A libc/test/src/stdfix/roundur_test.cpp
M libc/utils/HdrGen/PublicAPICommand.cpp
M libc/utils/HdrGen/PublicAPICommand.h
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/include/CMakeLists.txt
M libcxx/include/__atomic/atomic_sync.h
A libcxx/include/__chrono/time_zone.h
A libcxx/include/__chrono/time_zone_link.h
M libcxx/include/__chrono/tzdb.h
M libcxx/include/__chrono/tzdb_list.h
M libcxx/include/__format/parser_std_format_spec.h
A libcxx/include/__fwd/complex.h
M libcxx/include/__numeric/midpoint.h
M libcxx/include/__random/linear_congruential_engine.h
M libcxx/include/__ranges/elements_view.h
M libcxx/include/__tuple/tuple_like.h
M libcxx/include/chrono
M libcxx/include/complex
M libcxx/include/csetjmp
M libcxx/include/istream
M libcxx/include/latch
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap.in
M libcxx/include/semaphore
M libcxx/modules/std/chrono.inc
M libcxx/modules/std/complex.inc
M libcxx/src/CMakeLists.txt
M libcxx/src/atomic.cpp
A libcxx/src/include/tzdb/time_zone_link_private.h
A libcxx/src/include/tzdb/time_zone_private.h
A libcxx/src/include/tzdb/types_private.h
A libcxx/src/include/tzdb/tzdb_list_private.h
A libcxx/src/include/tzdb/tzdb_private.h
A libcxx/src/time_zone.cpp
R libcxx/src/tz.cpp
A libcxx/src/tzdb.cpp
M libcxx/src/tzdb_list.cpp
M libcxx/test/libcxx/diagnostics/chrono.nodiscard_extensions.compile.pass.cpp
M libcxx/test/libcxx/diagnostics/chrono.nodiscard_extensions.verify.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/links.pass.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/rules.pass.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/zones.pass.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
A libcxx/test/libcxx/utilities/tuple/__tuple_like.compile.pass.cpp
M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/sync.pass.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/get.pass.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/get.verify.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/tuple_element.compile.pass.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/tuple_element.verify.cpp
A libcxx/test/std/numerics/complex.number/complex.tuple/tuple_size.compile.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/alg.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/assign.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/copy.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/default.pass.cpp
M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/values.pass.cpp
M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.access/get_tzdb.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.access/get_tzdb_list.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.list/front.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.list/iterators.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.remote/reload_tzdb.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.remote/remote_version.pass.cpp
M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.tzdb/tzdb.members.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/time.zone.link.members/name.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/time.zone.link.members/target.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/time.zone.link.nonmembers/comparison.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.link/types.compile.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/name.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.nonmembers/comparison.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.timezone/types.compile.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h
M libcxx/test/support/test_format_context.h
M libcxx/test/support/test_format_string.h
M libcxx/utils/generate_feature_test_macro_components.py
M lld/MachO/Driver.cpp
M lld/MachO/SyntheticSections.cpp
M lld/test/MachO/arm64-32-stubs.s
M lld/test/MachO/arm64-stubs.s
M lld/test/MachO/data-in-code.s
M lld/test/MachO/dyld-stub-binder.s
M lld/test/MachO/icf-safe.ll
M lld/test/MachO/invalid/chained-fixups-incompatible.s
M lld/test/MachO/objc-selrefs.s
M lldb/bindings/interface/SBStatisticsOptionsDocstrings.i
M lldb/include/lldb/API/SBStatisticsOptions.h
M lldb/include/lldb/Core/Progress.h
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Target/Statistics.h
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/source/API/SBStatisticsOptions.cpp
M lldb/source/Commands/CommandObjectStats.cpp
M lldb/source/Commands/Options.td
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Progress.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Symbol/SymbolFileOnDemand.cpp
M lldb/source/Target/Statistics.cpp
M lldb/test/API/api/check_public_api_headers/TestPublicAPIHeaders.py
M lldb/test/API/api/command-return-object/TestSBCommandReturnObject.py
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-targets/TestMultipleTargets.py
M lldb/test/API/api/multithreaded/TestMultithreaded.py
M lldb/test/API/commands/command/script/add/TestAddParsedCommand.py
M lldb/test/API/commands/command/script/add/test_commands.py
M lldb/test/API/commands/disassemble/basic/TestFrameDisassemble.py
M lldb/test/API/commands/expression/call-restarts/TestCallThatRestarts.py
M lldb/test/API/commands/expression/call-throws/TestCallThatThrows.py
M lldb/test/API/commands/expression/completion/TestExprCompletion.py
M lldb/test/API/commands/expression/fixits/TestFixIts.py
M lldb/test/API/commands/expression/nested/TestNestedExpressions.py
M lldb/test/API/commands/expression/save_jit_objects/TestSaveJITObjects.py
M lldb/test/API/commands/expression/test/TestExprs.py
M lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py
M lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py
M lldb/test/API/commands/frame/language/TestGuessLanguage.py
M lldb/test/API/commands/frame/var/TestFrameVar.py
M lldb/test/API/commands/log/basic/TestLogging.py
M lldb/test/API/commands/memory/read/TestMemoryRead.py
M lldb/test/API/commands/process/attach/TestProcessAttach.py
M lldb/test/API/commands/target/debuginfo/TestDebugInfoSize.py
M lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
M lldb/test/API/driver/job_control/TestJobControl.py
M lldb/test/API/functionalities/breakpoint/address_breakpoints/TestAddressBreakpoints.py
M lldb/test/API/functionalities/breakpoint/address_breakpoints/TestBadAddressBreakpoints.py
M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
M lldb/test/API/functionalities/breakpoint/breakpoint_ids/TestBreakpointIDs.py
M lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
M lldb/test/API/functionalities/breakpoint/breakpoint_names/TestBreakpointNames.py
M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/TestConsecutiveBreakpoints.py
M lldb/test/API/functionalities/breakpoint/cpp/TestCPPBreakpointLocations.py
M lldb/test/API/functionalities/breakpoint/cpp_exception/TestCPPExceptionBreakpoint.py
M lldb/test/API/functionalities/breakpoint/source_regexp/TestSourceRegexBreakpoints.py
M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
M lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/TestThreadPlanUserBreakpoint.py
M lldb/test/API/functionalities/data-formatter/data-formatter-advanced/TestDataFormatterAdv.py
M lldb/test/API/functionalities/data-formatter/format-propagation/TestFormatPropagation.py
M lldb/test/API/functionalities/diagnostic_reporting/TestDiagnosticReporting.py
M lldb/test/API/functionalities/dynamic_value_child_count/TestDynamicValueChildCount.py
M lldb/test/API/functionalities/executable_first/TestExecutableFirst.py
M lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
M lldb/test/API/functionalities/gdb_remote_client/TestGdbClientModuleLoad.py
M lldb/test/API/functionalities/gdb_remote_client/TestWasm.py
M lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
M lldb/test/API/functionalities/inline-sourcefile/TestInlineSourceFiles.py
M lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py
M lldb/test/API/functionalities/load_lazy/TestLoadUsingLazyBind.py
M lldb/test/API/functionalities/memory-region/TestMemoryRegion.py
M lldb/test/API/functionalities/memory/cache/TestMemoryCache.py
M lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py
M lldb/test/API/functionalities/plugins/python_os_plugin/TestPythonOSPlugin.py
M lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
M lldb/test/API/functionalities/return-value/TestReturnValue.py
M lldb/test/API/functionalities/signal/TestSendSignal.py
M lldb/test/API/functionalities/source-map/TestTargetSourceMap.py
M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
A lldb/test/API/functionalities/stats_api/main-main.dwo.yaml
A lldb/test/API/functionalities/stats_api/main.yaml
M lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
M lldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/main.cpp
M lldb/test/API/functionalities/thread/main_thread_exit/TestMainThreadExit.py
M lldb/test/API/functionalities/type_find_first/TestFindFirstType.py
M lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
M lldb/test/API/functionalities/unwind/noreturn/module-end/TestNoReturnModuleEnd.py
M lldb/test/API/functionalities/value_md5_crash/TestValueMD5Crash.py
M lldb/test/API/functionalities/var_path/TestVarPath.py
M lldb/test/API/functionalities/vtable/TestVTableValue.py
M lldb/test/API/functionalities/wrong_commands/TestWrongCommands.py
M lldb/test/API/lang/c/array_types/TestArrayTypes.py
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
M lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
M lldb/test/API/lang/cpp/incomplete-types/members/TestCppIncompleteTypeMembers.py
M lldb/test/API/lang/cpp/template-specialization-type/TestTemplateSpecializationType.py
M lldb/test/API/lang/cpp/template/TestTemplateArgs.py
M lldb/test/API/lang/cpp/union-static-data-members/TestCppUnionStaticMembers.py
M lldb/test/API/lang/cpp/unique-types4/TestUniqueTypes4.py
M lldb/test/API/lang/objc/charstar_dyntype/TestCharStarDynType.py
M lldb/test/API/lang/objc/global_ptrs/TestGlobalObjects.py
M lldb/test/API/lang/objc/objc-baseclass-sbtype/TestObjCBaseClassSBType.py
M lldb/test/API/lang/objc/objc-dynamic-value/TestObjCDynamicValue.py
M lldb/test/API/lang/objc/objc-ivar-offsets/TestObjCIvarOffsets.py
M lldb/test/API/lang/objc/objc-ivar-stripped/TestObjCIvarStripped.py
M lldb/test/API/lang/objc/objc-property/TestObjCProperty.py
M lldb/test/API/lang/objc/objc-static-method-stripped/TestObjCStaticMethodStripped.py
M lldb/test/API/lang/objc/objc-static-method/TestObjCStaticMethod.py
M lldb/test/API/lang/objc/objc-struct-argument/TestObjCStructArgument.py
M lldb/test/API/lang/objc/objc-struct-return/TestObjCStructReturn.py
M lldb/test/API/lang/objc/objc-super/TestObjCSuper.py
M lldb/test/API/lang/objcxx/objc-builtin-types/TestObjCBuiltinTypes.py
M lldb/test/API/linux/aarch64/tagged_memory_access/TestAArch64LinuxTaggedMemoryAccess.py
M lldb/test/API/linux/aarch64/tagged_memory_region/TestAArch64LinuxTaggedMemoryRegion.py
M lldb/test/API/lua_api/TestBreakpointAPI.lua
M lldb/test/API/lua_api/TestComprehensive.lua
M lldb/test/API/lua_api/TestFileHandle.lua
M lldb/test/API/lua_api/TestProcessAPI.lua
M lldb/test/API/lua_api/lua_lldb_test.lua
M lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py
M lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py
M lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
M lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py
M lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
M lldb/test/API/macosx/universal/TestUniversal.py
M lldb/test/API/python_api/class_members/TestSBTypeClassMembers.py
M lldb/test/API/python_api/debugger/TestDebuggerAPI.py
M lldb/test/API/python_api/findvalue_duplist/TestSBFrameFindValue.py
M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
M lldb/test/API/python_api/interpreter/TestCommandInterpreterAPI.py
M lldb/test/API/python_api/name_lookup/TestNameLookup.py
M lldb/test/API/python_api/objc_type/TestObjCType.py
M lldb/test/API/python_api/process/cancel_attach/TestCancelAttach.py
M lldb/test/API/python_api/sblaunchinfo/TestSBLaunchInfo.py
M lldb/test/API/python_api/sbvalue_persist/TestSBValuePersist.py
M lldb/test/API/python_api/type/TestTypeList.py
M lldb/test/API/python_api/type/main.cpp
M lldb/test/API/python_api/value/TestValueAPI.py
M lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_logpoints.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setFunctionBreakpoints.py
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_runInTerminal.py
M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
M lldb/test/API/tools/lldb-dap/stackTraceMissingFunctionName/TestDAP_stackTraceMissingFunctionName.py
M lldb/test/API/tools/lldb-dap/terminated-event/TestDAP_terminatedEvent.py
M lldb/test/API/tools/lldb-dap/threads/TestDAP_threads.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteHostInfo.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteLaunch.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteModuleInfo.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteThreadsInStopReply.py
M lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
M lldb/unittests/ScriptInterpreter/Python/PythonDataObjectsTests.cpp
M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp
M llvm/docs/CommandGuide/llvm-exegesis.rst
M llvm/docs/CommandGuide/llvm-objcopy.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.rst
M llvm/docs/_themes/llvm-theme/static/llvm-theme.css
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/BinaryFormat/Wasm.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/LinkAllPasses.h
M llvm/include/llvm/Object/Wasm.h
M llvm/include/llvm/Support/CommandLine.h
M llvm/include/llvm/Target/TargetPfmCounters.td
M llvm/include/llvm/TargetParser/ARMTargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/Scalar.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/include/llvm/Transforms/Utils/MisExpect.h
M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
M llvm/lib/CodeGen/ExpandReductions.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/Object/WasmObjectFile.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
M llvm/lib/Target/AMDGPU/SIInstrFormats.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
M llvm/lib/Target/ARM/ARMTargetObjectFile.h
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/Hexagon/CMakeLists.txt
M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
A llvm/lib/Target/Hexagon/HexagonPostIncOpt.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
M llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
M llvm/lib/Target/LoongArch/CMakeLists.txt
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/Mips/CMakeLists.txt
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZa.td
M llvm/lib/Target/RISCV/RISCVSystemOperands.td
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SystemZ/CMakeLists.txt
M llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
M llvm/lib/Target/VE/CMakeLists.txt
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86PfmCounters.td
M llvm/lib/TargetParser/ARMTargetParser.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp
M llvm/lib/ToolDrivers/llvm-dlltool/Options.td
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/Instrumentation/PGOForceFunctionAttrs.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopRotation.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/Scalar.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-vectorextract.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fcopysign.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/arm64-stur.ll
M llvm/test/CodeGen/AArch64/arm64_32.ll
M llvm/test/CodeGen/AArch64/fcopysign.ll
M llvm/test/CodeGen/AArch64/framelayout-sve-calleesaves-fix.mir
M llvm/test/CodeGen/AArch64/framelayout-sve.mir
M llvm/test/CodeGen/AArch64/insertextract.ll
M llvm/test/CodeGen/AArch64/merge-store.ll
M llvm/test/CodeGen/AArch64/neon-mov.ll
M llvm/test/CodeGen/AArch64/sme-streaming-compatible-interface.ll
M llvm/test/CodeGen/AArch64/sme-streaming-interface.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-ld1.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-ldnt1.ll
R llvm/test/CodeGen/AArch64/soft-float-abi.ll
A llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
M llvm/test/CodeGen/AArch64/stack-probing-sve.ll
A llvm/test/CodeGen/AArch64/storepairsuppress.ll
M llvm/test/CodeGen/AArch64/storepairsuppress_minsize.ll
M llvm/test/CodeGen/AArch64/sve-alloca.ll
M llvm/test/CodeGen/AArch64/sve-calling-convention-mixed.ll
M llvm/test/CodeGen/AArch64/sve-tailcall.ll
A llvm/test/CodeGen/AArch64/swifttail-funclet.ll
M llvm/test/CodeGen/AArch64/unwind-preserved.ll
A llvm/test/CodeGen/AArch64/win64-fpowi.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/function-args.ll
M llvm/test/CodeGen/AMDGPU/hard-clauses.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.bf16.bf16.ll
A llvm/test/CodeGen/AMDGPU/max-hard-clause-length.ll
M llvm/test/CodeGen/AMDGPU/select.f16.ll
A llvm/test/CodeGen/Hexagon/post-inc-vec.mir
A llvm/test/CodeGen/Hexagon/post_inc_store.mir
A llvm/test/CodeGen/Hexagon/postincopt-crash.mir
A llvm/test/CodeGen/Hexagon/postincopt-dcfetch.mir
A llvm/test/CodeGen/Hexagon/valid-offset-loadbsw4.mir
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
A llvm/test/CodeGen/RISCV/branch-opt.mir
M llvm/test/CodeGen/RISCV/condops.ll
A llvm/test/CodeGen/RISCV/load-setcc-combine.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_double.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_float.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_half.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_double.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_float.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_min_max/atomicrmw_fminfmax_half.ll
A llvm/test/CodeGen/X86/code-model-elf-merge-sections.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
A llvm/test/DebugInfo/dpvalue-print-nocrash.ll
A llvm/test/DebugInfo/fixed-point.ll
M llvm/test/Instrumentation/PGOForceFunctionAttrs/basic.ll
M llvm/test/MC/AArch64/arm64-optional-hash.s
A llvm/test/MC/AMDGPU/bf16_imm.s
A llvm/test/MC/Disassembler/AMDGPU/bf16_imm.txt
A llvm/test/MC/ELF/rtti-proxy-arm-got-prel.ll
M llvm/test/MC/RISCV/user-csr-names.s
M llvm/test/TableGen/AllowDuplicateRegisterNames.td
M llvm/test/TableGen/HwModeEncodeDecode.td
M llvm/test/Transforms/Attributor/nofpclass-fpext.ll
A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-uzp1.ll
M llvm/test/Transforms/InstCombine/abs-intrinsic.ll
M llvm/test/Transforms/InstCombine/and.ll
M llvm/test/Transforms/InstCombine/binop-cast.ll
M llvm/test/Transforms/InstCombine/fsh.ll
A llvm/test/Transforms/InstCombine/pr80941.ll
M llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll
M llvm/test/Transforms/InstCombine/sub-ashr-and-to-icmp-select.ll
A llvm/test/Transforms/LoopUnroll/AArch64/scalable-vec-ins-ext.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-node-with-save-values.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-cmps.ll
M llvm/test/Transforms/SROA/tbaa-struct2.ll
M llvm/test/Transforms/SROA/tbaa-struct3.ll
A llvm/test/Transforms/VectorCombine/X86/reduction-of-truncations.ll
M llvm/test/tools/llvm-cov/mcdc-general-none.test
M llvm/test/tools/llvm-cov/mcdc-general.test
M llvm/test/tools/llvm-dlltool/arm64ec.test
M llvm/test/tools/llvm-nm/wasm/exports.yaml
M llvm/test/tools/llvm-nm/wasm/weak-symbols.yaml
M llvm/test/tools/llvm-objcopy/ELF/binary-output-target.test
M llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test
M llvm/test/tools/llvm-objdump/wasm/linked-symbol-table-namesec.yaml
A llvm/test/tools/llvm-profgen/Inputs/filter-ambiguous-profile.prof
A llvm/test/tools/llvm-profgen/filter-ambiguous-profile.test
M llvm/tools/llvm-cov/SourceCoverageView.cpp
M llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
M llvm/tools/llvm-cov/SourceCoverageViewText.cpp
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
M llvm/tools/llvm-exegesis/lib/LatencyBenchmarkRunner.cpp
M llvm/tools/llvm-exegesis/llvm-exegesis.cpp
M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
M llvm/tools/llvm-profgen/ProfileGenerator.cpp
M llvm/tools/llvm-profgen/ProfileGenerator.h
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/ExtractAPI/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/libcxx/src/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
M llvm/utils/release/test-release.sh
M mlir/docs/BytecodeFormat.md
M mlir/docs/DefiningDialects/AttributesAndTypes.md
M mlir/docs/Interfaces.md
M mlir/docs/LangRef.md
M mlir/docs/PassManagement.md
M mlir/docs/SymbolsAndSymbolTables.md
M mlir/docs/Tutorials/Toy/Ch-2.md
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Affine/Utils.h
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
M mlir/include/mlir/Dialect/ArmSVE/IR/ArmSVE.td
M mlir/include/mlir/Dialect/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/IR/CMakeLists.txt
A mlir/include/mlir/Dialect/MPI/IR/MPI.h
A mlir/include/mlir/Dialect/MPI/IR/MPI.td
A mlir/include/mlir/Dialect/MPI/IR/MPIOps.td
A mlir/include/mlir/Dialect/MPI/IR/MPITypes.td
M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.td
M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Simplifications.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Transforms.h
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorInterfaces.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorInterfaces.td
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/include/mlir/InitAllDialects.h
M mlir/lib/CAPI/Dialect/SparseTensor.cpp
M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
M mlir/lib/Dialect/AMDGPU/CMakeLists.txt
M mlir/lib/Dialect/AMDGPU/Transforms/OptimizeSharedMemory.cpp
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/CMakeLists.txt
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
A mlir/lib/Dialect/MPI/CMakeLists.txt
A mlir/lib/Dialect/MPI/IR/CMakeLists.txt
A mlir/lib/Dialect/MPI/IR/MPI.cpp
A mlir/lib/Dialect/MPI/IR/MPIOps.cpp
M mlir/lib/Dialect/Mesh/IR/CMakeLists.txt
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Mesh/Transforms/Simplifications.cpp
M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
M mlir/lib/Dialect/Mesh/Transforms/Transforms.cpp
A mlir/lib/Dialect/Mesh/Transforms/TransformsDetail.h
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SparseTensor/IR/Detail/LvlTypeParser.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorInterfaces.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/StageSparseOperations.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/IR/BuiltinDialectBytecode.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/Operation.cpp
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
M mlir/lib/Support/Timing.cpp
M mlir/lib/TableGen/CodeGenHelpers.cpp
M mlir/lib/TableGen/Pattern.cpp
M mlir/lib/Target/LLVM/NVVM/Target.cpp
M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/lib/Tools/Plugins/PassPlugin.cpp
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
M mlir/lib/Transforms/Utils/RegionUtils.cpp
M mlir/lib/Transforms/ViewOpGraph.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Dialect/AMDGPU/transform_optimize_shmem_reads_writes.mlir
A mlir/test/Dialect/Affine/SuperVectorize/vectorize_affine_apply.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/ArmSVE/invalid.mlir
M mlir/test/Dialect/ArmSVE/legalize-for-llvm.mlir
M mlir/test/Dialect/ArmSVE/roundtrip.mlir
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
A mlir/test/Dialect/MPI/ops.mlir
A mlir/test/Dialect/Mesh/all-scatter-op-lowering.mlir
M mlir/test/Dialect/Mesh/canonicalization.mlir
M mlir/test/Dialect/Mesh/invalid.mlir
M mlir/test/Dialect/Mesh/ops.mlir
M mlir/test/Dialect/Mesh/resharding-spmdization.mlir
M mlir/test/Dialect/Mesh/spmdization.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
R mlir/test/Dialect/OpenMP/roundtrip.mlir
M mlir/test/Dialect/SparseTensor/convert_dense2sparse.mlir
M mlir/test/Dialect/SparseTensor/invalid_encoding.mlir
M mlir/test/Dialect/SparseTensor/roundtrip_encoding.mlir
M mlir/test/Dialect/SparseTensor/torch_linalg.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_0.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_binary.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cast.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cmp.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_1d_nwc_wcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_55.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_nchw_fchw.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_2d_nhwc_hwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_3d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conv_3d_ndhwc_dhwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_block.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion_element.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_coo_test.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_dilated_conv_2d_nhwc_hwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_dot.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_expand.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_filter_conv2d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_flatten.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_generate.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_index_dense.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
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_mttkrp.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_reduction.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_permute.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pooling_nhwc.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_quantized_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_prod.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_sum.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_min.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_prod.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_matmul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_mm_fusion.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_scf_nested.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_select.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_semiring_select.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_strided_conv_2d_nhwc_hwcf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_c32.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_f16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tanh.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tensor_mul.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_unary.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_vector_ops.mlir
A mlir/test/Transforms/print-op-graph-back-edges.mlir
A mlir/test/Transforms/print-op-graph-cycles.mlir
M mlir/test/lib/Dialect/Affine/TestDecomposeAffineOps.cpp
M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
M mlir/test/lib/Dialect/Linalg/TestLinalgDropUnitDims.cpp
M mlir/test/lib/Dialect/Mesh/CMakeLists.txt
A mlir/test/lib/Dialect/Mesh/TestOpLowering.cpp
R mlir/test/lib/Dialect/Mesh/TestProcessMultiIndexOpLowering.cpp
M mlir/test/lib/Dialect/Test/TestDialectInterfaces.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/unittests/Dialect/SparseTensor/MergerTest.cpp
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_settings.cpp
M openmp/runtime/test/atomic/kmp_atomic_float10_max_min.c
M polly/lib/Transform/Canonicalization.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Rebase
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/62d4f33cfde7...6b45619614d8
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