[all-commits] [llvm/llvm-project] adfe54: [VPlan] Directly check VectorizingEpilogue in ::ex...
Krzysztof Parzyszek via All-commits
all-commits at lists.llvm.org
Tue Dec 10 04:10:17 PST 2024
Branch: refs/heads/users/kparzysz/spr/m13-linear
Home: https://github.com/llvm/llvm-project
Commit: adfe54f7dabe935305378ce2c915760ddce2cc00
https://github.com/llvm/llvm-project/commit/adfe54f7dabe935305378ce2c915760ddce2cc00
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[VPlan] Directly check VectorizingEpilogue in ::executePlan (NFC).
Directly check VectorizingEpilogue which directly indicates that the
epilogue is vectorized.
Commit: 82f4ebf1ba4c02fdc3bdaa91459c0b807b67f3f0
https://github.com/llvm/llvm-project/commit/82f4ebf1ba4c02fdc3bdaa91459c0b807b67f3f0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calls.ll
A llvm/test/CodeGen/RISCV/GlobalISel/riscv-unsupported.ll
Log Message:
-----------
[RISCV][GISel] Fallback in LowerCall for byval arguments. (#119251)
Our byval call lowering isn't copying the argument. Looks like our
SelectionDAG code for byval is different than AArch64 so this may be
non-trivial to fix. Reject for now.
Commit: 342fa15a44721799c9314c58df0d803f13f9d805
https://github.com/llvm/llvm-project/commit/342fa15a44721799c9314c58df0d803f13f9d805
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/test/MC/AMDGPU/gfx11_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
Log Message:
-----------
[AMDGPU][True16][MC] redo "remove duplication in VOP2 test" (#119274)
This is a NFC change
The previous patch https://github.com/llvm/llvm-project/pull/117195 has
an issue and is reverted in
https://github.com/llvm/llvm-project/pull/119247
Redo the patch here
Commit: cbed714f2a9a9d1fa0a8269b9a7b8ca145a85717
https://github.com/llvm/llvm-project/commit/cbed714f2a9a9d1fa0a8269b9a7b8ca145a85717
Author: Brox Chen <guochen2 at amd.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/test/MC/AMDGPU/gfx11_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp8.txt
Log Message:
-----------
[AMDGPU][True16][MC] test update for v_add/sub_f16 in true16 (#118926)
This is a NFC change. Update mc test for v_add/sub_f16 in true16 format.
MC source change was done by previous patch and automatically enabled by
t16 pesudo
Commit: a13ec9cd54deba3a6779ce1114503cf86a3f8658
https://github.com/llvm/llvm-project/commit/a13ec9cd54deba3a6779ce1114503cf86a3f8658
Author: Lei Huang <lei at ca.ibm.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/PPC.h
M clang/test/CodeGen/target-data.c
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/test/Analysis/CostModel/PowerPC/load-to-trunc.ll
A llvm/test/CodeGen/PowerPC/data-align.ll
M llvm/test/Transforms/AtomicExpand/PowerPC/cmpxchg.ll
M llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp
Log Message:
-----------
[PowerPC] Update data layout aligment of i128 to 16 (#118004)
Fix 64-bit PowerPC part of
https://github.com/llvm/llvm-project/issues/102783.
Commit: 0e70289f373d40f3f8a4cc5c35dd02bfe909ca83
https://github.com/llvm/llvm-project/commit/0e70289f373d40f3f8a4cc5c35dd02bfe909ca83
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
Log Message:
-----------
[VPlan] Create canonical IV resume value for epilogue in VPlan. (NFCI)
Update the code to create induction resume PHIs to also create a resume
phi for the canonical induction during epilogue vectorization. This
unifies the code for handling induction resume values and removes the
need to explicitly create manually resume PHI and return it during
epilogue creation.
Overall it helps to move the code for updating the canonical induction
resume value to the place where all other header phi resume values are
updated.
This is NFC, modulo order of the created phis.
Commit: a0eb794da8b8c1e423e4b3100a137faf3844406f
https://github.com/llvm/llvm-project/commit/a0eb794da8b8c1e423e4b3100a137faf3844406f
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/legalize-data.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
M mlir/test/Target/LLVMIR/openacc-llvm.mlir
Log Message:
-----------
[MLIR][acc] Introduce varType to acc data clause operations (#119007)
The acc data clause operations hold an operand named `varPtr`. This was
intended to hold a pointer to a variable - where the element type of
that pointer specifies the type of the variable. However, for both
memref and llvm dialects, this assumption is not true. This is because
memref element type for cases like memref<10xf32> is simply f32 and for
LLVM, after opaque pointers, the variable type is no longer recoverable.
Thus, introduce varType to ensure that appropriate semantics are kept.
Both the parser and printer for this new type attribute allow it to not
be specified in cases where a dialect's getElementType() applied to
`varPtr`'s type has a recoverable type. And more specifically, for FIR,
no changes are needed in the MLIR unit tests.
Commit: 274637d7e5960e37a33f29521905eef3d0fee13d
https://github.com/llvm/llvm-project/commit/274637d7e5960e37a33f29521905eef3d0fee13d
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
Log Message:
-----------
[HLSL] Implement `Append` and `Consume` methods on `Append`/`ConsumeStructuredBuffer` (#118536)
The methods are using existing clang builtins
`__builtin_hlsl_buffer_update_counter` and
`__builtin_hlsl_resource_getpointer` to update the buffer counter and
then load or store the value.
Fixes #112968
Commit: d74c73fcf648f9d13c62735317fa1708ec4b9f59
https://github.com/llvm/llvm-project/commit/d74c73fcf648f9d13c62735317fa1708ec4b9f59
Author: Bill Wendling <morbo at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[Clang][CodeGen] Remove extraneous dot prefixes [NFC] (#119275)
Commit: 2e8ce3042321de8e9af05f2e859f1e37ca2a4f06
https://github.com/llvm/llvm-project/commit/2e8ce3042321de8e9af05f2e859f1e37ca2a4f06
Author: Petr Hosek <phosek at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
A libc/config/baremetal/aarch64/entrypoints.txt
A libc/config/baremetal/aarch64/headers.txt
Log Message:
-----------
[libc] Support baremetal libc on aarch64 (#118691)
We have users that target baremetal aarch64.
Commit: 48f7f63ac723a5001b74627493d360ff3d8d1186
https://github.com/llvm/llvm-project/commit/48f7f63ac723a5001b74627493d360ff3d8d1186
Author: fahadnayyar <30953967+fahadnayyar at users.noreply.github.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/include/clang/APINotes/Types.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesTypes.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
M clang/test/APINotes/swift-import-as.cpp
Log Message:
-----------
[APINotes] Add SWIFT_RETURNS_(UN)RETAINED support (#118938)
Adding support to APINotes to annotate C++ methods and functions with
`swift_attr("returns_retained")` and `swift_attr("returns_unretained")`
rdar://141007510
Commit: ca884009e458ead6aa04a30957a82e3d529ec0c8
https://github.com/llvm/llvm-project/commit/ca884009e458ead6aa04a30957a82e3d529ec0c8
Author: David Green <david.green at arm.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/cast.ll
A llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
Log Message:
-----------
[AArch64] Add test coverage of fp16 and bf16 fptrunc and fpext. NFC
Some of the scalable tests have been split off to make the tests more
managable. AArch64TTIImpl::getCastInstrCost is also formatted to avoid the need
to fight against CI.
Commit: 7db970fe4a0249234712ae6899d34b94260b09cd
https://github.com/llvm/llvm-project/commit/7db970fe4a0249234712ae6899d34b94260b09cd
Author: Tristan Ross <tristan.ross at midstall.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M libc/hdr/CMakeLists.txt
M libc/hdr/unistd_macros.h
A libc/hdr/unistd_overlay.h
M libc/src/unistd/dup.h
M libc/src/unistd/dup2.h
M libc/src/unistd/dup3.h
M libc/src/unistd/fork.h
M libc/src/unistd/ftruncate.h
M libc/src/unistd/getcwd.h
M libc/src/unistd/geteuid.h
M libc/src/unistd/getopt.h
M libc/src/unistd/getpid.h
M libc/src/unistd/getppid.h
M libc/src/unistd/getuid.h
M libc/src/unistd/isatty.h
M libc/src/unistd/link.h
M libc/src/unistd/linux/ftruncate.cpp
M libc/src/unistd/linux/lseek.cpp
M libc/src/unistd/linux/sysconf.cpp
M libc/src/unistd/linux/truncate.cpp
M libc/src/unistd/lseek.h
M libc/src/unistd/pread.h
M libc/src/unistd/pwrite.h
M libc/src/unistd/read.h
M libc/src/unistd/readlink.h
M libc/src/unistd/readlinkat.h
M libc/src/unistd/swab.h
M libc/src/unistd/symlink.h
M libc/src/unistd/symlinkat.h
M libc/src/unistd/syscall.h
M libc/src/unistd/sysconf.h
M libc/src/unistd/truncate.h
M libc/src/unistd/write.h
Log Message:
-----------
[libc] Add unistd overlay (#118882)
Fixes failures like this which I experienced:
```
FAILED: src/unistd/linux/CMakeFiles/libc.src.unistd.linux.read.dir/read.cpp.o
/nix/store/2r2xi5pbg29bsmqywsm5zgl8l7adky4i-gcc-wrapper-13.3.0/bin/g++ -DLIBC_NAMESPACE=__llvm_libc -D_DEBUG -I/build/libc-src-20.0.0-unstable-2024-12-05/libc -isystem /build/libc-src-20.0.0-unstable-2024-12-05/libc/build/include -g -std=gnu++17 -DLIBC_QSORT_IMPL=LIBC_QSORT_QUICK_SORT -DLIBC_ADD_NULL_CHECKS -DLIBC_COPT_PUBLIC_PACKAGING -MD -MT src/unistd/linux/CMakeFiles/libc.src.unistd.linux.read.dir/read.cpp.o -MF src/unistd/linux/CMakeFiles/libc.src.unistd.linux.read.dir/read.cpp.o.d -o src/unistd/linux/CMakeFiles/libc.src.unistd.linux.read.dir/read.cpp.o -c /build/libc-src-20.0.0-unstable-2024-12-05/libc/src/unistd/linux/read.cpp
次のファイルから読み込み: /build/libc-src-20.0.0-unstable-2024-12-05/libc/src/__support/OSUtil/linux/syscall.h:13,
次から読み込み: /build/libc-src-20.0.0-unstable-2024-12-05/libc/src/__support/OSUtil/syscall.h:15,
次から読み込み: /build/libc-src-20.0.0-unstable-2024-12-05/libc/src/unistd/linux/read.cpp:11:
/build/libc-src-20.0.0-unstable-2024-12-05/libc/src/unistd/linux/read.cpp:20:29: エラー: ‘ssize_t __llvm_libc::read(int, void*, size_t)’ が外部シンボル ‘read’ の別名となっています
20 | LLVM_LIBC_FUNCTION(ssize_t, read, (int fd, void *buf, size_t count)) {
| ^~~~
/build/libc-src-20.0.0-unstable-2024-12-05/libc/src/__support/common.h:46:34: 備考: in definition of macro ‘LLVM_LIBC_FUNCTION_IMPL’
46 | decltype(LIBC_NAMESPACE::name) name [[gnu::alias(#name)]]; \
| ^~~~
/build/libc-src-20.0.0-unstable-2024-12-05/libc/src/unistd/linux/read.cpp:20:1: 備考: in expansion of macro ‘LLVM_LIBC_FUNCTION’
20 | LLVM_LIBC_FUNCTION(ssize_t, read, (int fd, void *buf, size_t count)) {
| ^~~~~~~~~~~~~~~~~~
```
Commit: 2c05e690660e9881a5102b3cc86ef244b3bdd852
https://github.com/llvm/llvm-project/commit/2c05e690660e9881a5102b3cc86ef244b3bdd852
Author: Michael Jones <michaelrj at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M libc/hdr/CMakeLists.txt
M libc/hdr/unistd_macros.h
R libc/hdr/unistd_overlay.h
M libc/src/unistd/dup.h
M libc/src/unistd/dup2.h
M libc/src/unistd/dup3.h
M libc/src/unistd/fork.h
M libc/src/unistd/ftruncate.h
M libc/src/unistd/getcwd.h
M libc/src/unistd/geteuid.h
M libc/src/unistd/getopt.h
M libc/src/unistd/getpid.h
M libc/src/unistd/getppid.h
M libc/src/unistd/getuid.h
M libc/src/unistd/isatty.h
M libc/src/unistd/link.h
M libc/src/unistd/linux/ftruncate.cpp
M libc/src/unistd/linux/lseek.cpp
M libc/src/unistd/linux/sysconf.cpp
M libc/src/unistd/linux/truncate.cpp
M libc/src/unistd/lseek.h
M libc/src/unistd/pread.h
M libc/src/unistd/pwrite.h
M libc/src/unistd/read.h
M libc/src/unistd/readlink.h
M libc/src/unistd/readlinkat.h
M libc/src/unistd/swab.h
M libc/src/unistd/symlink.h
M libc/src/unistd/symlinkat.h
M libc/src/unistd/syscall.h
M libc/src/unistd/sysconf.h
M libc/src/unistd/truncate.h
M libc/src/unistd/write.h
Log Message:
-----------
Revert "[libc] Add unistd overlay" (#119295)
Reverts llvm/llvm-project#118882
Several functions are now missing necessary types in fullbuild, e.g.
`off_t`, `ssize_t`. Reverting for now.
Commit: f2bceb2311f288f207a10d62d80390457c4cf05c
https://github.com/llvm/llvm-project/commit/f2bceb2311f288f207a10d62d80390457c4cf05c
Author: hidekisaito <hidekido at amd.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
[Offload][AMDGPU] accept generic target (#118919)
Enables generic ISA, e.g., "--offload-arch=gfx11-generic" device code to
run on gfx11-generic ISA capable device.
Executable may contain one ELF that has specific target ISA and another
ELF that has compatible generic ISA.
Under that circumstance, this code should say both ELFs are compatible,
leaving the rest to PluginManager to handle.
Suggestions on how best to address that is welcome.
Commit: fd57946cc4f11fe4610d3544b61041f306823f81
https://github.com/llvm/llvm-project/commit/fd57946cc4f11fe4610d3544b61041f306823f81
Author: Thurston Dang <thurston at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/test/CodeGen/ubsan-trap-merge.c
Log Message:
-----------
[NFC][clang] Update ubsan-trap-merge.c test to show absence of nomerge in non-trap mode (#119280)
This shows that ubsan handlers do not have nomerge attributes in
non-trap mode, even if -ubsan-unique-trap is enabled.
0d15d46362bd6ab5a9a2165805adaab13a7689f4 attaches nomerge but only for
trap mode.
---------
Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>
Commit: e9c68c6d8ceca9e61d5c385faeefacef3605e265
https://github.com/llvm/llvm-project/commit/e9c68c6d8ceca9e61d5c385faeefacef3605e265
Author: Matthias Braun <matze at braunis.de>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/range-check.ll
Log Message:
-----------
[InstCombine] Match range check pattern with SExt (#118910)
= Background
We optimize range check patterns like the following:
```
%n_not_negative = icmp sge i32 %n, 0
call void @llvm.assume(i1 %n_not_negative)
%a = icmp sge i32 %x, 0
%b = icmp slt i32 %x, %n
%c = and i1 %a, %b
```
to a single unsigned comparison:
```
%n_not_negative = icmp sge i32 %n, 0
call void @llvm.assume(i1 %n_not_negative)
%c = icmp ult i32 %x, %n
```
= Extended Pattern
This adds support for a variant of this pattern where the upper range is
compared with a sign extended value:
```
%n_not_negative = icmp sge i64 %n, 0
call void @llvm.assume(i1 %n_not_negative)
%x_sext = sext i32 %x to i64
%a = icmp sge i32 %x, 0
%b = icmp slt i64 %x_sext, %n
%c = and i1 %a, %b
```
is now optimized to:
```
%n_not_negative = icmp sge i64 %n, 0
call void @llvm.assume(i1 %n_not_negative)
%x_sext = sext i32 %x to i64
%c = icmp ult i64 %x_sext, %n
```
Alive2: https://alive2.llvm.org/ce/z/XVuz9L
Commit: 41ed16c3b3362e51b7063eaef6461ab704c1ec7a
https://github.com/llvm/llvm-project/commit/41ed16c3b3362e51b7063eaef6461ab704c1ec7a
Author: Jun Wang <jwang86 at yahoo.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M llvm/lib/Target/AMDGPU/AMDGPUAttributes.def
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
A llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-globalisel.ll
A llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
Log Message:
-----------
Reapply "[AMDGPU] Infer amdgpu-no-flat-scratch-init attribute in AMDGPUAttributor (#94647)" (#118907)
This reverts commit 1ef9410a96c1d9669a6feaf03fcab8d0a4a13bd5.
This fixes the test file attributor-flatscratchinit-globalisel.ll.
Commit: 953838dceaff3728b9aa53ea4259efca15f38f66
https://github.com/llvm/llvm-project/commit/953838dceaff3728b9aa53ea4259efca15f38f66
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/bitreverse.ll
M llvm/test/CodeGen/LoongArch/lsx/bitreverse.ll
Log Message:
-----------
[LoongArch] Optimize vector bitreverse using scalar bitrev and vshuf4i (#118054)
Custom lower vector type bitreverse to scalar bitrev and vshuf4i
instructions.
Keep `v2i64` and `v4i64` bitreverse `Expand`, it's good enough.
Commit: 75623bfe1b89fa84cf2b9e4fb4c9f7560e01d4a6
https://github.com/llvm/llvm-project/commit/75623bfe1b89fa84cf2b9e4fb4c9f7560e01d4a6
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
A flang/test/Fir/CUDA/cuda-abstract-result.mlir
Log Message:
-----------
[flang][cuda] Handle gpu.return in AbstractResult pass (#119035)
Commit: 650e736904d4d45407809fc926c8de3fd5a691ab
https://github.com/llvm/llvm-project/commit/650e736904d4d45407809fc926c8de3fd5a691ab
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp
Log Message:
-----------
[flang][cuda][NFC] Add some diagnostic when module or fct are not found (#119277)
Commit: a1d71c36933e361f4561288d4a0e257432345483
https://github.com/llvm/llvm-project/commit/a1d71c36933e361f4561288d4a0e257432345483
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
M flang/test/Fir/CUDA/cuda-extranal-mangling.mlir
Log Message:
-----------
[flang][cuda] Additional update to ExternalNameConversion (#119276)
Commit: 95b6524e5c84169ecf404f755aeab2202e9916ea
https://github.com/llvm/llvm-project/commit/95b6524e5c84169ecf404f755aeab2202e9916ea
Author: Shao-Ce SUN <sunshaoce at outlook.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vreductions-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask.ll
Log Message:
-----------
[NFC] [RISCV] Add tests for `llvm.vector.reduce.*`
Commit: a6b5e18fc6fa0e8d9bf10020e8f6070951630d42
https://github.com/llvm/llvm-project/commit/a6b5e18fc6fa0e8d9bf10020e8f6070951630d42
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/test/CodeGen/AArch64/fixed-register-global.c
Log Message:
-----------
[test][clang][AArch64] Don't assume current dir is writeable (#119285)
afa2fbf87a8e3fff609fd325c938929c48e94280 adds a test which can fail with
`error: unable to open output file 'fixed-register-global.o':
'Permission denied'`. We don't check the output file at all, so just use
/dev/null.
Commit: 9a06fb7e5c00d1379688645c2c28955664016278
https://github.com/llvm/llvm-project/commit/9a06fb7e5c00d1379688645c2c28955664016278
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M libc/config/windows/entrypoints.txt
M libc/src/__support/time/windows/CMakeLists.txt
M libc/src/__support/time/windows/clock_gettime.cpp
A libc/src/__support/time/windows/performance_counter.h
M libc/src/time/CMakeLists.txt
A libc/src/time/clock_getres.h
A libc/src/time/windows/CMakeLists.txt
A libc/src/time/windows/clock_getres.cpp
M libc/test/src/time/CMakeLists.txt
A libc/test/src/time/clock_getres_test.cpp
Log Message:
-----------
[libc][time][windows] implement clock_getres (#118931)
Commit: 3083acc215e9d01c4c41064aa7dd75aeba975e29
https://github.com/llvm/llvm-project/commit/3083acc215e9d01c4c41064aa7dd75aeba975e29
Author: LiqinWeng <liqin.weng at spacemit.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/add_sext_shl_constant.ll
A llvm/test/CodeGen/RISCV/add_shl_constant.ll
R llvm/test/CodeGen/RISCV/riscv-shifted-extend.ll
Log Message:
-----------
[DAGCombine] Remove oneuse restrictions for RISCV in folding (shl (add_nsw x, c1)), c2) and folding (shl(sext(add x, c1)), c2) in some scenarios (#101294)
This patch remove the restriction for folding (shl (add_nsw x, c1)), c2)
and folding (shl(sext(add x, c1)), c2), and test case from dhrystone ,
see this link:
riscv32: https://godbolt.org/z/o8GdMKrae
riscv64: https://godbolt.org/z/Yh5bPz56z
Commit: 6e2e4d446c2fa43b6cebf97d947bdc60f7f9dc0b
https://github.com/llvm/llvm-project/commit/6e2e4d446c2fa43b6cebf97d947bdc60f7f9dc0b
Author: lorenzo chelini <lchelini at nvidia.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M mlir/include/mlir/Conversion/ArithCommon/AttrToLLVMConverter.h
M mlir/include/mlir/Dialect/Arith/IR/ArithBase.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOpsInterfaces.td
M mlir/include/mlir/IR/Matchers.h
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/test/CAPI/ir.c
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Dialect/Linalg/invalid.mlir
Log Message:
-----------
Revert "[MLIR][Arith] Add denormal attribute to binary/unary operations (#112700)"
This reverts commit 4a7b56e6e7dd0f83c379ad06b6e81450bc691ba6.
There is no agreement.
Commit: 7bcd459dce7b52f2940fde120eb55c9f6273d7b8
https://github.com/llvm/llvm-project/commit/7bcd459dce7b52f2940fde120eb55c9f6273d7b8
Author: Valentin Clement <clementval at gmail.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
A flang/test/Fir/CUDA/cuda-external-mangling.mlir
R flang/test/Fir/CUDA/cuda-extranal-mangling.mlir
Log Message:
-----------
[flang][cuda][NFC] Fix typo in test filename
Commit: 7c12418021a97545d7e76c876464291932f151e6
https://github.com/llvm/llvm-project/commit/7c12418021a97545d7e76c876464291932f151e6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Log Message:
-----------
[GISel] Avoid creating a virtual register we don't need. (#119305)
narrowScalarAddSub was creating a virtual register and then overwriting
the Register variable without using it. Add an else and only create it
when needed.
Commit: cfbf809e933ce29e24cd529b057fcf0c5fe94e2e
https://github.com/llvm/llvm-project/commit/cfbf809e933ce29e24cd529b057fcf0c5fe94e2e
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/test/Driver/config-file.c
Log Message:
-----------
[test][clang][driver] Fix test that assumes libomp default (#119319)
755519f7f661375be05750001ff11e106e6b7f87 added a test that uses
`-fopenmp`. The default configuration of CLANG_DEFAULT_OPENMP_RUNTIME is
libomp, which causes `-fopenmp` to act as `-fopenmp=libomp`. In turn,
this passes `-fopenmp` to downstream compilations. However, for other
values, e.g. `libgomp`, Clang does not know how to generate useful
openmp code, so it avoids passing the `-fopenmp` along. Fix the test to
explicitly pass `-fopenmp=libomp` to pass regardless of the configured
CLANG_DEFAULT_OPENMP_RUNTIME value.
Commit: 2c0b8b10dd1a9f57eb8d8663f2697b5071cdb65d
https://github.com/llvm/llvm-project/commit/2c0b8b10dd1a9f57eb8d8663f2697b5071cdb65d
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/CMakeLists.txt
M compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
M compiler-rt/lib/scudo/standalone/list.h
A compiler-rt/lib/scudo/standalone/type_traits.h
Log Message:
-----------
[scudo] Group type traits into a single header (NFC) (#118888)
Commit: 78c2b6d483f945cc2ccc7b300b920bf0eb871505
https://github.com/llvm/llvm-project/commit/78c2b6d483f945cc2ccc7b300b920bf0eb871505
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/headers/complex.rst
M libc/src/__support/complex_type.h
M libc/src/complex/CMakeLists.txt
A libc/src/complex/conj.h
A libc/src/complex/conjf.h
A libc/src/complex/conjf128.h
A libc/src/complex/conjf16.h
A libc/src/complex/conjl.h
M libc/src/complex/generic/CMakeLists.txt
A libc/src/complex/generic/conj.cpp
A libc/src/complex/generic/conjf.cpp
A libc/src/complex/generic/conjf128.cpp
A libc/src/complex/generic/conjf16.cpp
A libc/src/complex/generic/conjl.cpp
M libc/test/src/complex/CImagTest.h
M libc/test/src/complex/CMakeLists.txt
M libc/test/src/complex/CRealTest.h
A libc/test/src/complex/ConjTest.h
A libc/test/src/complex/conj_test.cpp
A libc/test/src/complex/conjf128_test.cpp
A libc/test/src/complex/conjf16_test.cpp
A libc/test/src/complex/conjf_test.cpp
A libc/test/src/complex/conjl_test.cpp
Log Message:
-----------
[libc][complex] Implement different flavors of the `conj` function (#118671)
Refer section 7.3.9.4 of ISO/IEC 9899:2023
Commit: aac000a01ba8c0ed15fec3c198fce9f13fc83725
https://github.com/llvm/llvm-project/commit/aac000a01ba8c0ed15fec3c198fce9f13fc83725
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/list.h
Log Message:
-----------
[scudo] Clean the TODO in list.h (#119323)
* Finished the type and size verification
* Remove the TODO for checking if array size can be fit into LinkTy
because if there's a truncation happens, other DCHECK like offset
checking will catch the failure. In addition, it's supposed to be a rare
case.
Commit: 46bf67d8faa6a7d75561fe03b5b871ec4b4a9c1d
https://github.com/llvm/llvm-project/commit/46bf67d8faa6a7d75561fe03b5b871ec4b4a9c1d
Author: Gedare Bloom <gedare at rtems.org>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Reorder TokenAnnotator::canBreakBefore (#119044)
Move the checks related to breaking before right braces and right parens
earlier to avoid conflicting checks that prevent breaking based on the
left-hand token. This allows properly formatting declarations with
pointers and references at a minimum.
Commit: 7fa57438c4272fe1d2df1eaed02fde97654ab476
https://github.com/llvm/llvm-project/commit/7fa57438c4272fe1d2df1eaed02fde97654ab476
Author: Fangrui Song <i at maskray.me>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M lld/test/ELF/export-dynamic-symbol.s
Log Message:
-----------
[ELF] Test --export-dynamic-symbol on linker-synthesized symbols and hidden symbols
Test linker-synthesized symbols in addReservedSymbols and in
finalizeSections. `isExported` is set in the middle.
The hidden symbol test could have caught an assertion failure introduced
by 712264b83c736fac7a7f0d4296f84c1afbd93b1a and fixed by
3733ed6f1c6b0eef1e13e175ac81ad309fc0b080.
Commit: 4fb1cda6606ba75782aa1964835abf1a69e2adae
https://github.com/llvm/llvm-project/commit/4fb1cda6606ba75782aa1964835abf1a69e2adae
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/ptrauth-module-flags.c
M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
A llvm/lib/Target/AArch64/AArch64MachineModuleInfo.cpp
A llvm/lib/Target/AArch64/AArch64MachineModuleInfo.h
M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
M llvm/lib/Target/TargetLoweringObjectFile.cpp
A llvm/test/CodeGen/AArch64/ptrauth-sign-personality.ll
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Log Message:
-----------
[PAC][ELF][AArch64] Support signed personality function pointer (#113148)
If function pointer signing is enabled, sign personality function
pointer stored in `.DW.ref.__gxx_personality_v0` section with IA key,
0x7EAD = `ptrauth_string_discriminator("personality")` constant
discriminator and address diversity enabled.
Commit: 52da2db48911aa71fc878470e7052e0b2078110e
https://github.com/llvm/llvm-project/commit/52da2db48911aa71fc878470e7052e0b2078110e
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M libc/include/llvm-libc-types/cfloat128.h
M libc/src/__support/complex_type.h
Log Message:
-----------
[libc][complex] check that cfloat128 is not defined as _Complex long double (#119324)
Fix buildbot errors in #118671
Commit: 77a08a73cc57679e7bf30fdd8974aeba468f2a27
https://github.com/llvm/llvm-project/commit/77a08a73cc57679e7bf30fdd8974aeba468f2a27
Author: ykiko <ykikoykikoykiko at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/default-arguments-calls.cpp
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/source_location.cpp
Log Message:
-----------
[Clang] Fix wrong call location of `DefaultArgExpr` (#119212)
Fix https://github.com/llvm/llvm-project/issues/119129.
Commit: ca88a0e6f22c191a6f9a4e6547b993da8e11bb73
https://github.com/llvm/llvm-project/commit/ca88a0e6f22c191a6f9a4e6547b993da8e11bb73
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M libc/src/__support/complex_type.h
Log Message:
-----------
[libc][complex] fix guard for cfloat128 and float128 (#119330)
Commit: a4c7c66098c512a4f616b2072814172114e5a422
https://github.com/llvm/llvm-project/commit/a4c7c66098c512a4f616b2072814172114e5a422
Author: Amara Emerson <amara at apple.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/docs/GlobalISel/Legalizer.rst
Log Message:
-----------
[GlobalISel] Document minimum legality requirements for G_IMPLICIT_DEF. (#117609)
The reason for this change is to clarify an existing technical
restriction of LLVM: there needs to be a way to implicitly define a type
if there is any way to legally define that type by another means.
Commit: ef2e590e7b6fb5b0478e5e087006895a07d185c8
https://github.com/llvm/llvm-project/commit/ef2e590e7b6fb5b0478e5e087006895a07d185c8
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/ptrauth-module-flags.c
M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
R llvm/lib/Target/AArch64/AArch64MachineModuleInfo.cpp
R llvm/lib/Target/AArch64/AArch64MachineModuleInfo.h
M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
M llvm/lib/Target/TargetLoweringObjectFile.cpp
R llvm/test/CodeGen/AArch64/ptrauth-sign-personality.ll
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Log Message:
-----------
Revert "[PAC][ELF][AArch64] Support signed personality function pointer" (#119331)
Reverts llvm/llvm-project#113148
See buildbot failure
https://lab.llvm.org/buildbot/#/builders/190/builds/11048
Commit: f8c1a22220345dc85bf700c8a8ca6a28839edabb
https://github.com/llvm/llvm-project/commit/f8c1a22220345dc85bf700c8a8ca6a28839edabb
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/include/llvm/IR/Value.h
M llvm/lib/Analysis/MemoryBuiltins.cpp
A llvm/test/Transforms/LowerConstantIntrinsics/builtin-object-size-range.ll
Log Message:
-----------
[llvm] Improve llvm.objectsize computation by computing GEP, alloca a… (#117849)
…nd malloc parameters bound
Using a naive expression walker, it is possible to compute valuable
information for allocation functions, GEP and alloca, even in the
presence of some dynamic information.
We don't rely on computeConstantRange to avoid taking advantage of
undefined behavior, which would be counter-productive wrt. usual
llvm.objectsize usage.
llvm.objectsize plays an important role in _FORTIFY_SOURCE definitions,
so improving its diagnostic in turns improves the security of compiled
application.
As a side note, as a result of recent optimization improvements, clang
no longer passes
https://github.com/serge-sans-paille/builtin_object_size-test-suite This
commit restores the situation and greatly improves the scope of code
handled by the static version of __builtin_object_size.
This is a recommit of https://github.com/llvm/llvm-project/pull/115522
with fix applied.
Commit: 9730760207f1522e8dd56a7b5ef594966ee3ee37
https://github.com/llvm/llvm-project/commit/9730760207f1522e8dd56a7b5ef594966ee3ee37
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
Log Message:
-----------
[RISCV] Add RUNs for different postra scheduling directions
To `macro-fusion-lui-addi.ll`.
This is the precommit change for #116584.
Commit: 4cea3c3c275a5dd800df1299f65fe34381f2e9aa
https://github.com/llvm/llvm-project/commit/4cea3c3c275a5dd800df1299f65fe34381f2e9aa
Author: Eric Wang <48936088+Ptkyr at users.noreply.github.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/lib/AST/RecordLayoutBuilder.cpp
Log Message:
-----------
[Clang] Fix typo in ItaniumRecordLayoutBuilder API (#118563)
Commit: ce1587346b3b181b693283233c88f5fc9e9b9c1a
https://github.com/llvm/llvm-project/commit/ce1587346b3b181b693283233c88f5fc9e9b9c1a
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Allow checking builtin functions... (#119328)
... in checkingPotentialConstantExpression mode. This is what the
current interpreter does, yet it doesn't do so for
`__builtin_operator_new`.
Commit: 920495c959d44881b8bb602036c8ea003a04dc3f
https://github.com/llvm/llvm-project/commit/920495c959d44881b8bb602036c8ea003a04dc3f
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
Log Message:
-----------
[MISched] Compare right next cluster node (#116584)
We support bottom-up and bidirectonal postra scheduling now, but we
only compare successive next cluster node as if we are doing topdown
scheduling. This makes load/store clustering and macro fusions wrong.
This patch makes sure that we can get the right cluster node by the
scheduling direction.
Commit: a2959071be6cdb199060c18aeee380de9c3b52cb
https://github.com/llvm/llvm-project/commit/a2959071be6cdb199060c18aeee380de9c3b52cb
Author: Max <xpy66swsry at gmail.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/Options.td
M lld/MachO/SectionPriorities.cpp
M lld/test/MachO/bp-section-orderer-errs.s
M lld/test/MachO/bp-section-orderer-stress.s
M lld/test/MachO/bp-section-orderer.s
Log Message:
-----------
[lld][MachO] Rename to bp-* options for SectionOrderer (#118594)
Rename options related to profile guided function order (#96268) to
prepare for the addition to the ELF port.
Commit: 411196b9bb1953372726348deb1bc77abfa7d900
https://github.com/llvm/llvm-project/commit/411196b9bb1953372726348deb1bc77abfa7d900
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/module-fgen-reduced-bmi.cppm
Log Message:
-----------
[C++20] [Modules] Convert '-fexperimental-modules-reduced-bmi' to '-fmodules-reduced-bmi' (#114382)
According to our previous consensus in
https://clang.llvm.org/docs/StandardCPlusPlusModules.html#reduced-bmi,
the reduced BMI will be the default and recommend users to use the new
option.
The `-fexperimental-modules-reduced-bmi ` option is introduced in
https://github.com/llvm/llvm-project/pull/85050 in Mar13 and released in
19.x. And now we are in 20's release cycle. Also I rarely receive issue
reports about reduced BMI. No matter it is due to the quality of reduced
BMI is really good or no one uses it.
This patch literally did the second point in
https://clang.llvm.org/docs/StandardCPlusPlusModules.html#reduced-bmi
Commit: a88677edc0792534ba3157bf7d7a1b98e470f2fb
https://github.com/llvm/llvm-project/commit/a88677edc0792534ba3157bf7d7a1b98e470f2fb
Author: Yusuke MINATO <minato.yusuke at fujitsu.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/test/Driver/frontend-forwarding.f90
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/loop01.fir
M flang/test/Fir/loop02.fir
M flang/test/Lower/HLFIR/goto-do-body.f90
M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/array-character.f90
M flang/test/Lower/array-derived-assignments.f90
M flang/test/Lower/array-derived.f90
M flang/test/Lower/array-elemental-calls-char-byval.f90
M flang/test/Lower/array-elemental-calls-char.f90
M flang/test/Lower/array-expression-assumed-size.f90
M flang/test/Lower/array-expression-slice-1.f90
M flang/test/Lower/array-substring.f90
M flang/test/Lower/array-temp.f90
M flang/test/Lower/components.f90
M flang/test/Lower/do_loop.f90
M flang/test/Lower/do_loop_unstructured.f90
M flang/test/Lower/goto-do-body.f90
M flang/test/Lower/host-associated.f90
M flang/test/Lower/infinite_loop.f90
M flang/test/Lower/io-implied-do-fixes.f90
M flang/test/Lower/loops2.f90
M flang/test/Lower/mixed_loops.f90
M flang/test/Lower/vector-subscript-io.f90
M flang/tools/bbc/bbc.cpp
Log Message:
-----------
Reland "[flang] Integrate the option -flang-experimental-integer-overflow into -fno-wrapv" (#118933)
This relands #110063.
The performance issue on 503.bwaves_r is found not to be related to the
patch, and is resolved by fbd89bcc when LTO is enabled.
Commit: 37913233430865aa16591a710f9440f3260b0827
https://github.com/llvm/llvm-project/commit/37913233430865aa16591a710f9440f3260b0827
Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
Date: 2024-12-09 (Mon, 09 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
Log Message:
-----------
[msan] Add support for avx_round_pd_256/avx_round_ps_256 (#119334)
Add support for avx_round_pd_256/avx_round_ps_256.
This is a follow-up to https://github.com/llvm/llvm-project/pull/118441
Test plan:
ninja check-all
Commit: 30ad53b92cec0cff9679d559edcc5b933312ba0c
https://github.com/llvm/llvm-project/commit/30ad53b92cec0cff9679d559edcc5b933312ba0c
Author: SahilPatidar <patidarsahil2001 at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/lib/Interpreter/Interpreter.cpp
A clang/test/Interpreter/crash.cpp
Log Message:
-----------
[Clang-REPL] Fix crash during `__run_exit_handlers` with dynamic libraries. (#117475)
Apply the fix suggested by Lang Hames to address a crash in Clang-REPL
that occurs during the execution of `__run_exit_handlers` when using
dynamic libraries.
Commit: 8f434bb9b2718dc4b33cc9e91c85806ee1ed82b0
https://github.com/llvm/llvm-project/commit/8f434bb9b2718dc4b33cc9e91c85806ee1ed82b0
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
Log Message:
-----------
[clang] Fix a dangling reference in clang/utils/TableGen/ClangDiagnosticsEmitter.cpp (#119197)
`DiagsInGroup` is a `map<llvm::StringRef, ...>`, we store a dangling
string_view in the key.
Commit: eadc0c901ba3253ee3764f012c60de36e58cbf10
https://github.com/llvm/llvm-project/commit/eadc0c901ba3253ee3764f012c60de36e58cbf10
Author: Artem Pianykh <artem.pyanykh at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/lib/Transforms/Utils/CloneFunction.cpp
Log Message:
-----------
[NFC][Utils] Extract BuildDebugInfoMDMap from CloneFunctionInto (#118622)
Summary:
Extract the logic to build up a metadata map to use in metadata cloning
into a separate function.
Test Plan:
ninja check-llvm-unit check-llvm
Commit: c2d7e96cde10a0da6fff8dde9473b508f0ef29ba
https://github.com/llvm/llvm-project/commit/c2d7e96cde10a0da6fff8dde9473b508f0ef29ba
Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Type.h
M clang/lib/AST/ASTContext.cpp
A clang/test/Parser/gh110231.cpp
Log Message:
-----------
[clang] Fix non-deterministic infinite recursion... (#118288)
...in `ASTContext::getAutoTypeInternal`
Given
```cpp
template < typename >
concept C1 = true;
template < typename , auto >
concept C2 = true;
template < C1 auto V, C2< V > auto>
struct S;
```
Both `C1 auto V` and `C2<V> auto` end on the set `AutoType`, the former
being a template parameter for the latter.
Since the hashing is not deterministic (i.e., pointers are hashed),
every now and then, both will end on the same bucket. Given that
`FoldingSet` recomputes the `FoldingSetID` for each node in the target
bucket on lookup, this triggers an infinite recursion:
1. Look for `X` in `AutoTypes`
2. Let's assume it would be in bucket N, so it iterates over nodes in
that bucket. Let's assume the first is `C2<V> auto`.
3. Computes the `FoldingSetID` for this one, which requires the profile
of its template parameters, so they are visited.
4. In some frames below, we end on the same `FoldingSet`, and, by
chance, `C1 auto V` would be in bucket N too.
5. But the first node in the bucket is `C2<V> auto` for which we need to
profile `C1 auto V`
6. ... stack overflow!
No step individually does anything wrong, but in general, `FoldingSet`
seems not to be re-entrant, and this fact is hidden behind many nested
calls.
With this change, we store the `AutoType`s inside a `DenseMap` instead.
The `FoldingSetID` is computed once only and then kept as the map's key,
avoiding the need to do recursive lookups.
We also now make sure the key for the inserted `AutoType` is the same as
the key used for lookup. Before, this was not the case, and it caused
also non-deterministic parsing errors.
Fixes https://github.com/llvm/llvm-project/issues/110231
Commit: 9ea499a52f94100976912d7455606c053f9ce285
https://github.com/llvm/llvm-project/commit/9ea499a52f94100976912d7455606c053f9ce285
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
Log Message:
-----------
[ReachingDefAnalysis] Fix typo. (#119329)
"reaching-deps-analysis" -> "reaching-defs-analysis".
Commit: 322eb1a92e6d4266184060346616fa0dbe39e731
https://github.com/llvm/llvm-project/commit/322eb1a92e6d4266184060346616fa0dbe39e731
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
Log Message:
-----------
[X86][NFC] Update ternlog comments (#119343)
Commit: e21ab4d16b555c28ded307571d138f594f33e325
https://github.com/llvm/llvm-project/commit/e21ab4d16b555c28ded307571d138f594f33e325
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/union-tbaa1.c
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
M llvm/test/Transforms/InstCombine/cast_phi.ll
M llvm/test/Transforms/InstCombine/load-cmp.ll
M llvm/test/Transforms/InstCombine/memcpy-addrspace.ll
M llvm/test/Transforms/InstCombine/memcpy-from-global.ll
M llvm/test/Transforms/InstCombine/stpcpy-1.ll
M llvm/test/Transforms/InstCombine/stpcpy_chk-1.ll
M llvm/test/Transforms/InstCombine/strlen-1.ll
M llvm/test/Transforms/InstCombine/strlen-4.ll
M llvm/test/Transforms/InstCombine/strncat-2.ll
M llvm/test/Transforms/InstCombine/strnlen-3.ll
M llvm/test/Transforms/InstCombine/strnlen-4.ll
M llvm/test/Transforms/InstCombine/strnlen-5.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/InstCombine/wcslen-1.ll
M llvm/test/Transforms/InstCombine/wcslen-3.ll
M llvm/test/Transforms/InstCombine/wcslen-5.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll
M llvm/test/Transforms/LoopVectorize/non-const-n.ll
M llvm/test/Transforms/PhaseOrdering/X86/excessive-unrolling.ll
M llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
Log Message:
-----------
[InstCombine] Infer nuw for gep inbounds from base of object (#119225)
When we have a gep inbounds from the base of an object (e.g. alloca or
global), we know that the index cannot be negative, as this would go out
of bounds. As such, we can infer nuw as well.
The implementation is a bit stricter than necessary, we could also
accept one unknown index followed by known-non-negative indices.
Proof: https://alive2.llvm.org/ce/z/Hp7-6w (Note that alive2 currently
incorrectly doesn't require the inbounds for the alloca case, see
https://github.com/AliveToolkit/alive2/issues/1138).
Commit: a2d086af2cdac8c22685551d4d3d0928e40e1a0f
https://github.com/llvm/llvm-project/commit/a2d086af2cdac8c22685551d4d3d0928e40e1a0f
Author: Piotr Sobczak <piotr.sobczak at amd.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/fdot2.ll
Log Message:
-----------
[AMDGPU] Fix FMA combine (#119217)
Update the check in the FMA combine to check dot10-insts instead of
dot7-insts.
The target of the combine, v_dot2_f32_f16, is available only if
dot10-insts target feature is enabled.
The issue probably dates back to the change that split out dot10-insts
out of dot7-insts.
As far as I can see, this does not affect any current targets, but if a
future target has dot7-insts, but not dot10-insts that would cause a
crash ("cannot select") for the input ir in the test.
Commit: e9834209aaa572958e1e7ad2957888ac8f718140
https://github.com/llvm/llvm-project/commit/e9834209aaa572958e1e7ad2957888ac8f718140
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Move convertToConreteRecipes to end of VPlan-opt phase (NFCI).
Adjust placement as suggested in
https://github.com/llvm/llvm-project/pull/114305, after some refactoring
to prepare for the move.
Commit: 56ddbeff83ccee47a509c78b82fdb8e4885d3c18
https://github.com/llvm/llvm-project/commit/56ddbeff83ccee47a509c78b82fdb8e4885d3c18
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Use getUniqueLatchExitBlock in createVectorLoopSkeleton (NFC).
Use getUniqueLatchExitBlock instead of getUniqueExitBlock in preparation
for multi-exit vectorization *without* requiring a scalar epilogue.
Split off as suggested from
https://github.com/llvm/llvm-project/pull/112138
Commit: e69d8b8708b93281e91eb3679cec317a33aab246
https://github.com/llvm/llvm-project/commit/e69d8b8708b93281e91eb3679cec317a33aab246
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] simplify matchers in bugprone-optional-value-conversion (#119346)
combine type matcher and optional type check.
Commit: 9ab016f1ee009f207b99b11b4aaf004730701f29
https://github.com/llvm/llvm-project/commit/9ab016f1ee009f207b99b11b4aaf004730701f29
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-shuffles.ll
Log Message:
-----------
[VectorCombine] Add test coverage for #86068
Commit: c3175c50a3cefef05046a2f78afb55028b30eb5a
https://github.com/llvm/llvm-project/commit/c3175c50a3cefef05046a2f78afb55028b30eb5a
Author: fengfeng <153487255+fengfeng09 at users.noreply.github.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
A llvm/test/Transforms/InstCombine/and-sub-combine.ll
Log Message:
-----------
[InstCombine] Fold `(X & C1) - (X & C2) --> X & (C1 ^ C2)` if `(C1 & C2) == C2` (#119316)
if (C1 & C2) == C2 then (X & C1) - (X & C2) --> X & (C1 ^ C2)
Alive2: https://alive2.llvm.org/ce/z/JvQU8w
Commit: e088249b74586590c9e143d85b97a175acc9465e
https://github.com/llvm/llvm-project/commit/e088249b74586590c9e143d85b97a175acc9465e
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
A llvm/test/CodeGen/X86/pr116153.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
Log Message:
-----------
[X86][FP16] Fix crash issue when AVX512VL is not set (#119309)
Fixes problem reported on #116153.
Commit: e8baa792e7db0b03a842448b5e85623da48a4367
https://github.com/llvm/llvm-project/commit/e8baa792e7db0b03a842448b5e85623da48a4367
Author: 执着 <118413413+dty2 at users.noreply.github.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M flang/docs/Intrinsics.md
M flang/include/flang/Runtime/stop.h
M flang/runtime/CMakeLists.txt
M flang/runtime/config.h.cmake
M flang/runtime/stop.cpp
Log Message:
-----------
Backtrace support for flang (#118179)
Fixed build failures in old PRs due to missing files
Commit: d44518c1cc2e5c598f51cbdd32e6d18a12b1a4bb
https://github.com/llvm/llvm-project/commit/d44518c1cc2e5c598f51cbdd32e6d18a12b1a4bb
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CXX/temp/temp.decls/temp.variadic/sizeofpack.cpp
Log Message:
-----------
[Clang] Don't check incomplete CXXRecordDecl's members when transforming sizeof...(expr) (#119344)
For a FunctionParmPackExpr that is used as the argument of a
sizeof...(pack) expression, we might exercise the logic that checks the
CXXRecordDecl's members regardless of the type being incomplete, when
rebuilding the DeclRefExpr into non-ODR-used forms.
Fixes https://github.com/llvm/llvm-project/issues/81436
Commit: 0e7f18791cfe23860ae590c8c7e1724f9aa0e23b
https://github.com/llvm/llvm-project/commit/0e7f18791cfe23860ae590c8c7e1724f9aa0e23b
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Relax assertion in fixupIVUsers (NFC).
Adjust the assertion in fixupIVUsers to only require a unique exit block
if there are any values to fix up. This enables the bring up of
multi-exit loop vectorization without requiring a scalar epilogue.
Split off as suggested from
https://github.com/llvm/llvm-project/pull/112138.
Commit: b0f8f32fdcdad3eeb98a3900f1a82c81393a0769
https://github.com/llvm/llvm-project/commit/b0f8f32fdcdad3eeb98a3900f1a82c81393a0769
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[ExprConst] Handle floating- and char literals in FastEvaluateAsRValue (#118294)
This is part of a three-patch series that results in some nice (but not
substantial) compile-time improvements:
http://llvm-compile-time-tracker.com/compare.php?from=fe1c4f0106fe4fd6d61c38ba46e71fda8f4d1573&to=0824d621b2c035a3befb564153b31309a9a79d97&stat=instructions%3Au
The results for just this patch are here:
http://llvm-compile-time-tracker.com/compare.php?from=fe1c4f0106fe4fd6d61c38ba46e71fda8f4d1573&to=6f7f51b476a37dc7c80427fede077e6798a83be8&stat=instructions:u
Commit: 4971e53612f9951da844bd718d5d6016b28067b1
https://github.com/llvm/llvm-project/commit/4971e53612f9951da844bd718d5d6016b28067b1
Author: Zichen Lu <mikaovo2000 at gmail.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M mlir/lib/Target/LLVM/CMakeLists.txt
M mlir/lib/Target/LLVM/NVVM/Target.cpp
Log Message:
-----------
[mlir][Target] Support Fatbin target for static nvptxcompiler (#118044)
### Background
In `lib/Target/LLVM/NVVM/Target.cpp`, `NVPTXSerializer` compile PTX to
binary with two different flows controlled by
`MLIR_ENABLE_NVPTXCOMPILER`.
If building mlir with `-DMLIR_ENABLE_NVPTXCOMPILER=ON`, the flow does
not check if the target is `gpu::CompilationTarget::Fatbin`, and compile
PTX to cubin directly, which is not consistent with another flow.
### Implement
Use static [nvfatbin](https://docs.nvidia.com/cuda/nvfatbin/index.html)
library.
I have tested it locally, the two flows can return the same Fatbin
result after inputing the same `GpuModule`.
Commit: 53e9eee0e2c9587fc7a1e7b5f64ba2a935f58e0a
https://github.com/llvm/llvm-project/commit/53e9eee0e2c9587fc7a1e7b5f64ba2a935f58e0a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
Log Message:
-----------
[X86][TTI] Use TargetCostConstants Free/Basic values instead of hard coded 0/1 to make the costs calculation more obvious. NFC.
Commit: ad635b4168213293feda4c0925c6df4501e41d52
https://github.com/llvm/llvm-project/commit/ad635b4168213293feda4c0925c6df4501e41d52
Author: Kazu Hirata <kazu at google.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp
Log Message:
-----------
[memprof] Use more gtest matchers in unit tests (NFC) (#119338)
Commit: edc50f3954af081b385cb03961899b5da1f1eb6b
https://github.com/llvm/llvm-project/commit/edc50f3954af081b385cb03961899b5da1f1eb6b
Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
R flang/test/Lower/OpenMP/Todo/task_detach.f90
A flang/test/Lower/OpenMP/task_detach.f90
Log Message:
-----------
[flang][OpenMP] Add lowering support for task detach (#119128)
This PR adds lowering task detach to MLIR.
Commit: b97c447dac892276eaff1ae6d07e3f986373a690
https://github.com/llvm/llvm-project/commit/b97c447dac892276eaff1ae6d07e3f986373a690
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC. Add assert for shouldBroadcast and canBeVectorized. (#119327)
Commit: 0ed696e5a3d715fea779579aa3be2c8a338aa7ec
https://github.com/llvm/llvm-project/commit/0ed696e5a3d715fea779579aa3be2c8a338aa7ec
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/test/CodeGen/AArch64/ptrauth-extern-weak.ll
A llvm/test/CodeGen/AArch64/ptrauth-tiny-model-pic.ll
A llvm/test/CodeGen/AArch64/ptrauth-tiny-model-static.ll
M llvm/test/MC/AArch64/arm64-elf-relocs.s
M llvm/test/MC/AArch64/ilp32-diagnostics.s
Log Message:
-----------
[PAC][CodeGen][ELF][AArch64] Support signed GOT with tiny code model (#114525)
Support the following relocations and assembly operators:
- `R_AARCH64_AUTH_GOT_ADR_PREL_LO21` (`:got_auth:` for `adr`)
- `R_AARCH64_AUTH_GOT_LD_PREL19` (`:got_auth:` for `ldr`)
`LOADgotAUTH` pseudo-instruction is expanded to actual instruction
sequence like the following.
```
adr x16, :got_auth:sym
ldr x0, [x16]
autia x0, x16
```
Both SelectionDAG and GlobalISel are suppported. For FastISel, we fall
back to SelectionDAG.
Tests starting with 'ptrauth-' have corresponding variants w/o this
prefix.
Commit: 6e6b6060d6daf0173fa94189c30ab9529ce345ea
https://github.com/llvm/llvm-project/commit/6e6b6060d6daf0173fa94189c30ab9529ce345ea
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
[AMDGPU] Simplify a nested !con. NFC.
Commit: ef4f8589e8e16d016119b7b8c2831ac406e8b97e
https://github.com/llvm/llvm-project/commit/ef4f8589e8e16d016119b7b8c2831ac406e8b97e
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
A llvm/test/Analysis/BasicAA/smaller-index-size-overflow.ll
Log Message:
-----------
[BasicAA] Add test for incorrect handling of small index sizes (NFC)
Commit: bc0976ed1f96c20546796d4aa18abf3acfc0850f
https://github.com/llvm/llvm-project/commit/bc0976ed1f96c20546796d4aa18abf3acfc0850f
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Strip non-inbounds offset in getPointerDiff() (NFC) (#118665)
I believe that this code doesn't care whether the offsets are known to
be inbounds a priori. For the same reason the change is not testable, as
the SCEV based fallback code will look through non-inbounds offsets
anyway. So make it clear that there is no special inbounds requirement
here.
Commit: f4081711f0884ec7afe93577e118ecc89cb7b1cf
https://github.com/llvm/llvm-project/commit/f4081711f0884ec7afe93577e118ecc89cb7b1cf
Author: Mel Chen <mel.chen at sifive.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
A llvm/test/Transforms/LoopVectorize/iv-select-cmp-nested-loop.ll
A llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
Log Message:
-----------
[LV][NFC] Add test cases for FindLastIV reduction idiom. (#118519)
Pre-commit for #67812
Commit: fc0d3bb8ebf6b3d797f85ca4a1c02b750ea7c4ad
https://github.com/llvm/llvm-project/commit/fc0d3bb8ebf6b3d797f85ca4a1c02b750ea7c4ad
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-12-10 (Tue, 10 Dec 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/default-arguments-calls.cpp
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/docs/ReleaseNotes.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/include/clang/APINotes/Types.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Type.h
M clang/include/clang/Driver/Options.td
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesTypes.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/PPC.h
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
M clang/test/APINotes/swift-import-as.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/CXX/temp/temp.decls/temp.variadic/sizeofpack.cpp
M clang/test/CodeGen/AArch64/fixed-register-global.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/target-data.c
M clang/test/CodeGen/ubsan-trap-merge.c
M clang/test/CodeGen/union-tbaa1.c
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl
M clang/test/Driver/config-file.c
M clang/test/Driver/module-fgen-reduced-bmi.cppm
A clang/test/Interpreter/crash.cpp
A clang/test/Parser/gh110231.cpp
M clang/test/SemaCXX/source_location.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M compiler-rt/lib/scudo/standalone/CMakeLists.txt
M compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
M compiler-rt/lib/scudo/standalone/list.h
A compiler-rt/lib/scudo/standalone/type_traits.h
M flang/docs/Intrinsics.md
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Runtime/stop.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AbstractResult.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
M flang/runtime/CMakeLists.txt
M flang/runtime/config.h.cmake
M flang/runtime/stop.cpp
M flang/test/Driver/frontend-forwarding.f90
A flang/test/Fir/CUDA/cuda-abstract-result.mlir
A flang/test/Fir/CUDA/cuda-external-mangling.mlir
R flang/test/Fir/CUDA/cuda-extranal-mangling.mlir
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Fir/loop01.fir
M flang/test/Fir/loop02.fir
M flang/test/Lower/HLFIR/goto-do-body.f90
R flang/test/Lower/OpenMP/Todo/task_detach.f90
M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
A flang/test/Lower/OpenMP/task_detach.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/array-character.f90
M flang/test/Lower/array-derived-assignments.f90
M flang/test/Lower/array-derived.f90
M flang/test/Lower/array-elemental-calls-char-byval.f90
M flang/test/Lower/array-elemental-calls-char.f90
M flang/test/Lower/array-expression-assumed-size.f90
M flang/test/Lower/array-expression-slice-1.f90
M flang/test/Lower/array-substring.f90
M flang/test/Lower/array-temp.f90
M flang/test/Lower/components.f90
M flang/test/Lower/do_loop.f90
M flang/test/Lower/do_loop_unstructured.f90
M flang/test/Lower/goto-do-body.f90
M flang/test/Lower/host-associated.f90
M flang/test/Lower/infinite_loop.f90
M flang/test/Lower/io-implied-do-fixes.f90
M flang/test/Lower/loops2.f90
M flang/test/Lower/mixed_loops.f90
M flang/test/Lower/vector-subscript-io.f90
M flang/tools/bbc/bbc.cpp
A libc/config/baremetal/aarch64/entrypoints.txt
A libc/config/baremetal/aarch64/headers.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/complex.rst
M libc/include/llvm-libc-types/cfloat128.h
M libc/src/__support/complex_type.h
M libc/src/__support/time/windows/CMakeLists.txt
M libc/src/__support/time/windows/clock_gettime.cpp
A libc/src/__support/time/windows/performance_counter.h
M libc/src/complex/CMakeLists.txt
A libc/src/complex/conj.h
A libc/src/complex/conjf.h
A libc/src/complex/conjf128.h
A libc/src/complex/conjf16.h
A libc/src/complex/conjl.h
M libc/src/complex/generic/CMakeLists.txt
A libc/src/complex/generic/conj.cpp
A libc/src/complex/generic/conjf.cpp
A libc/src/complex/generic/conjf128.cpp
A libc/src/complex/generic/conjf16.cpp
A libc/src/complex/generic/conjl.cpp
M libc/src/time/CMakeLists.txt
A libc/src/time/clock_getres.h
A libc/src/time/windows/CMakeLists.txt
A libc/src/time/windows/clock_getres.cpp
M libc/test/src/complex/CImagTest.h
M libc/test/src/complex/CMakeLists.txt
M libc/test/src/complex/CRealTest.h
A libc/test/src/complex/ConjTest.h
A libc/test/src/complex/conj_test.cpp
A libc/test/src/complex/conjf128_test.cpp
A libc/test/src/complex/conjf16_test.cpp
A libc/test/src/complex/conjf_test.cpp
A libc/test/src/complex/conjl_test.cpp
M libc/test/src/time/CMakeLists.txt
A libc/test/src/time/clock_getres_test.cpp
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/Options.td
M lld/MachO/SectionPriorities.cpp
M lld/test/ELF/export-dynamic-symbol.s
M lld/test/MachO/bp-section-orderer-errs.s
M lld/test/MachO/bp-section-orderer-stress.s
M lld/test/MachO/bp-section-orderer.s
M llvm/docs/GlobalISel/Legalizer.rst
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/IR/Value.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/MemoryBuiltins.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributes.def
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
A llvm/test/Analysis/BasicAA/smaller-index-size-overflow.ll
M llvm/test/Analysis/CostModel/AArch64/cast.ll
A llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
M llvm/test/Analysis/CostModel/PowerPC/load-to-trunc.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-and.ll
M llvm/test/CodeGen/AArch64/ptrauth-extern-weak.ll
A llvm/test/CodeGen/AArch64/ptrauth-tiny-model-pic.ll
A llvm/test/CodeGen/AArch64/ptrauth-tiny-model-static.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
A llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-globalisel.ll
A llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/fdot2.ll
M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
M llvm/test/CodeGen/LoongArch/lasx/bitreverse.ll
M llvm/test/CodeGen/LoongArch/lsx/bitreverse.ll
A llvm/test/CodeGen/PowerPC/data-align.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calls.ll
A llvm/test/CodeGen/RISCV/GlobalISel/riscv-unsupported.ll
A llvm/test/CodeGen/RISCV/add_sext_shl_constant.ll
A llvm/test/CodeGen/RISCV/add_shl_constant.ll
M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
R llvm/test/CodeGen/RISCV/riscv-shifted-extend.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vreductions-mask.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-mask.ll
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-vec-cmp.ll
M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
A llvm/test/CodeGen/X86/pr116153.ll
M llvm/test/CodeGen/X86/vector-reduce-fmax-nnan.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
M llvm/test/MC/AArch64/arm64-elf-relocs.s
M llvm/test/MC/AArch64/ilp32-diagnostics.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_err.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp8.txt
M llvm/test/Transforms/AtomicExpand/PowerPC/cmpxchg.ll
M llvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
A llvm/test/Transforms/InstCombine/and-sub-combine.ll
M llvm/test/Transforms/InstCombine/cast_phi.ll
M llvm/test/Transforms/InstCombine/load-cmp.ll
M llvm/test/Transforms/InstCombine/memcpy-addrspace.ll
M llvm/test/Transforms/InstCombine/memcpy-from-global.ll
M llvm/test/Transforms/InstCombine/range-check.ll
M llvm/test/Transforms/InstCombine/stpcpy-1.ll
M llvm/test/Transforms/InstCombine/stpcpy_chk-1.ll
M llvm/test/Transforms/InstCombine/strlen-1.ll
M llvm/test/Transforms/InstCombine/strlen-4.ll
M llvm/test/Transforms/InstCombine/strncat-2.ll
M llvm/test/Transforms/InstCombine/strnlen-3.ll
M llvm/test/Transforms/InstCombine/strnlen-4.ll
M llvm/test/Transforms/InstCombine/strnlen-5.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/InstCombine/wcslen-1.ll
M llvm/test/Transforms/InstCombine/wcslen-3.ll
M llvm/test/Transforms/InstCombine/wcslen-5.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
A llvm/test/Transforms/LoopVectorize/iv-select-cmp-nested-loop.ll
A llvm/test/Transforms/LoopVectorize/iv-select-cmp-non-const-iv-start.ll
M llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll
M llvm/test/Transforms/LoopVectorize/non-const-n.ll
A llvm/test/Transforms/LowerConstantIntrinsics/builtin-object-size-range.ll
M llvm/test/Transforms/PhaseOrdering/X86/excessive-unrolling.ll
M llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-shuffles.ll
M llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp
M llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp
M mlir/include/mlir/Conversion/ArithCommon/AttrToLLVMConverter.h
M mlir/include/mlir/Dialect/Arith/IR/ArithBase.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/IR/ArithOpsInterfaces.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/IR/Matchers.h
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Target/LLVM/CMakeLists.txt
M mlir/lib/Target/LLVM/NVVM/Target.cpp
M mlir/test/CAPI/ir.c
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Dialect/Linalg/invalid.mlir
M mlir/test/Dialect/OpenACC/legalize-data.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
M mlir/test/Target/LLVMIR/openacc-llvm.mlir
M offload/DeviceRTL/CMakeLists.txt
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/src/Utils/ELF.cpp
Log Message:
-----------
Merge branch 'main' into users/kparzysz/spr/m13-linear
Compare: https://github.com/llvm/llvm-project/compare/9bdecbbaaeb3...fc0d3bb8ebf6
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