[all-commits] [llvm/llvm-project] 7a8790: [scudo] Fix stack depot validation. (#87024)
Fangrui Song via All-commits
all-commits at lists.llvm.org
Wed Apr 3 14:41:48 PDT 2024
Branch: refs/heads/users/MaskRay/spr/llvm-objcopy-add-compress-sections
Home: https://github.com/llvm/llvm-project
Commit: 7a87902684b5e15644f037401e88b1f0c2c5fc6f
https://github.com/llvm/llvm-project/commit/7a87902684b5e15644f037401e88b1f0c2c5fc6f
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/stack_depot.h
Log Message:
-----------
[scudo] Fix stack depot validation. (#87024)
In the StackDepot::isValid function, there is work to validate the
TabMask variable. Unfortunately, if TabMask is set to the maximum
allowed value, TabSize = TabMask + 1 becomes zero and validation passes.
Disallow that case to prevent invalid reads into the Tab structure.
Commit: 338be798cae42107dd90b2bd0e88b379741a1d60
https://github.com/llvm/llvm-project/commit/338be798cae42107dd90b2bd0e88b379741a1d60
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/RISCV/init-ext-node-not-truncable.ll
Log Message:
-----------
[SLP][NFC]Add a test with the incorrect sign extension of first ext
node.
Commit: 01e02e0b6a15562e241e9ed18b295c66ae20f410
https://github.com/llvm/llvm-project/commit/01e02e0b6a15562e241e9ed18b295c66ae20f410
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/init-ext-node-not-truncable.ll
Log Message:
-----------
[SLP]Fix PR87011: Do not assume that initial ext/trunc nodes can be
represented by bitwidth without analysis.
Need to check that initial ext/trunc nodes can be safely represented
using calculated bitwidth before applying it.
Commit: 39e813746730a83e49b7efc457ff7efc74925c74
https://github.com/llvm/llvm-project/commit/39e813746730a83e49b7efc457ff7efc74925c74
Author: Florian Mayer <fmayer at google.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
Log Message:
-----------
[NFC] [HWASan] add example for ring buffer wrap (#87029)
Also another move comment to correct place.
Commit: 89bae852dddeb2b66a1843dbe5eea21184e54814
https://github.com/llvm/llvm-project/commit/89bae852dddeb2b66a1843dbe5eea21184e54814
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/lit_test.bzl
Log Message:
-----------
[bazel] Fix lit tests with python 3.11+ (#87022)
In python3.11 there is a new environment variable PYTHONSAFEPATH which
stops python from setting the current directory as the first entry in
sys.path. Bazel started setting this to ensure that python targets
don't accidentally access things that aren't in their dependency tree.
This resulted in lit tests breaking because sys.path didn't include the
directory to the lit source files. This is fixed by adding the lit
binary to the dependency tree and propagating the import path from it.
Fixes https://github.com/llvm/llvm-project/issues/75963
Commit: 1d99d7a6f841de594b38936a4a73866b23a8b105
https://github.com/llvm/llvm-project/commit/1d99d7a6f841de594b38936a4a73866b23a8b105
Author: Lei Wang <wlei at fb.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
A llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
M llvm/lib/Transforms/IPO/CMakeLists.txt
M llvm/lib/Transforms/IPO/SampleProfile.cpp
A llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/test/Transforms/SampleProfile/pseudo-probe-callee-profile-mismatch.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-matching-lto.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-matching.ll
Log Message:
-----------
[SampleFDO][NFC] Refactoring SampleProfileMatcher (#86988)
Move all the stale profile matching stuffs into new files so that it can
be shared for unit testing.
Commit: c64a328cb4a32e81f8b694162750ec1b8823994c
https://github.com/llvm/llvm-project/commit/c64a328cb4a32e81f8b694162750ec1b8823994c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
[ProfileData] Use size_t in PatchItem (NFC) (#87014)
size_t in PatchItem eliminates the need for casts.
Commit: e005a09df5b5c7d210ac7cd8cbddb3a4a8663173
https://github.com/llvm/llvm-project/commit/e005a09df5b5c7d210ac7cd8cbddb3a4a8663173
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/TypePromotion.cpp
A llvm/test/CodeGen/RISCV/rv64-typepromotion.ll
Log Message:
-----------
[RISCV][TypePromotion] Dont generate truncs if PromotedType is greater than Source Type (#86941)
We currently check if the source and promoted types are not equal before
generating truncate instructions. This does not work for RV64 where the
promoted type is i64 and this lead to a crash due to the generation of
truncate instructions from i32 to i64.
Fixes #86400
Commit: ba6b2d22af177a72b132cdb8e9350a708f282d2c
https://github.com/llvm/llvm-project/commit/ba6b2d22af177a72b132cdb8e9350a708f282d2c
Author: cmtice <cmtice at google.com>
Date: 2024-03-28 (Thu, 28 Mar 2024)
Changed paths:
M lldb/include/lldb/Utility/Scalar.h
M lldb/source/Utility/Scalar.cpp
M lldb/unittests/Utility/ScalarTest.cpp
Log Message:
-----------
[LLDB] Add APFloat helper functions to Scalar class. (#86862)
This adds the ability to create a Scalar from an APFloat, and to create
an APFloat from an APSInt or another APFloat.
Commit: 7d3924cee30a87a51f9dc04ec843ae6bc3d1c90e
https://github.com/llvm/llvm-project/commit/7d3924cee30a87a51f9dc04ec843ae6bc3d1c90e
Author: elhewaty <mohamedatef1698 at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/Instructions.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Operator.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/test/Assembler/flags.ll
M llvm/test/Bitcode/flags.ll
M llvm/test/Transforms/InstCombine/freeze.ll
M llvm/test/Transforms/InstCombine/trunc.ll
M llvm/test/Transforms/SimplifyCFG/HoistCode.ll
Log Message:
-----------
[IR] Add nowrap flags for trunc instruction (#85592)
This patch adds the nuw (no unsigned wrap) and nsw (no signed wrap)
poison-generating flags to the trunc instruction.
Discourse thread:
https://discourse.llvm.org/t/rfc-add-nowrap-flags-to-trunc/77453
Commit: 235d6841601a9dbea293b8e82b0c994f91f42d76
https://github.com/llvm/llvm-project/commit/235d6841601a9dbea293b8e82b0c994f91f42d76
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/no-local-decl-in-reduced-bmi.cppm
Log Message:
-----------
[C++20] [Modules] [Reduced BMI] Don't record declarations in functions
by default
For reduced BMI, it is meaningless to record the local declarations in
functions if not required explicitly during the process of writing the
function bodies.
It wastes time for reduced BMI and may be problematic if we want to
avoid transiting unnecessary changes.
Commit: e1873d99729012191c72d532226771139b6e8519
https://github.com/llvm/llvm-project/commit/e1873d99729012191c72d532226771139b6e8519
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Remove unsed BUILD dependencies. (#87038)
This is the second attempt of 32fcfcdc4cc1d68116438f761897953894d65fb1,
which had to be reverted.
This should be good to go now, after a number of cleanups to not expose
headers from multiple targets:
- 6e58efac16958ccb99060f4329b48737be7d8d36
- f1dff836593d4601e3ad78117df1d980d284bb9c
- 89ef3130cf16f1965475396ad3a50760558cc08a
- eb70b485a91361eee83d3744d1bd3e4c3a23692f
- 83e5a1239242d64110e3dfa96ed3889170ab96b2
- fce046ca5b7edb4c0d37a6eb580154ccb7dda966
Commit: 610b9e23c5a3040aacc6fe85de8694f80bf5bdf5
https://github.com/llvm/llvm-project/commit/610b9e23c5a3040aacc6fe85de8694f80bf5bdf5
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ctpop-no-implicit-float.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/ctpop.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
M llvm/test/CodeGen/RISCV/ctz_zero_return_test.ll
M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb.ll
M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
Log Message:
-----------
[SDAG] Use shifts if ISD::MUL is illegal when lowering ISD::CTPOP (#86505)
We can avoid libcalls.
Fixes #86205
Commit: 28760b63bbf9e267713957105a8d17091fb0d20e
https://github.com/llvm/llvm-project/commit/28760b63bbf9e267713957105a8d17091fb0d20e
Author: dyung <douglas.yung at sony.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaType.cpp
M clang/test/Sema/nullability.c
M clang/test/SemaCXX/nullability.cpp
M clang/test/SemaObjCXX/nullability-consistency.mm
Log Message:
-----------
Revert "Reapply "[clang][nullability] allow _Nonnull etc on nullable class types (#82705)"" (#87041)
This reverts commit bbbcc1d99d08855069f4501c896c43a6d4d7b598.
This change is causing the following build bots to fail due to a missing
header file:
- https://lab.llvm.org/buildbot/#/builders/188/builds/43765
- https://lab.llvm.org/buildbot/#/builders/176/builds/9428
- https://lab.llvm.org/buildbot/#/builders/187/builds/14696
- https://lab.llvm.org/buildbot/#/builders/186/builds/15551
- https://lab.llvm.org/buildbot/#/builders/182/builds/9413
- https://lab.llvm.org/buildbot/#/builders/245/builds/22507
- https://lab.llvm.org/buildbot/#/builders/258/builds/16026
- https://lab.llvm.org/buildbot/#/builders/249/builds/17221
- https://lab.llvm.org/buildbot/#/builders/38/builds/18566
- https://lab.llvm.org/buildbot/#/builders/214/builds/11735
- https://lab.llvm.org/buildbot/#/builders/231/builds/21947
- https://lab.llvm.org/buildbot/#/builders/230/builds/26675
- https://lab.llvm.org/buildbot/#/builders/57/builds/33922
- https://lab.llvm.org/buildbot/#/builders/124/builds/10311
- https://lab.llvm.org/buildbot/#/builders/109/builds/86173
- https://lab.llvm.org/buildbot/#/builders/280/builds/1043
- https://lab.llvm.org/buildbot/#/builders/283/builds/440
- https://lab.llvm.org/buildbot/#/builders/247/builds/16034
- https://lab.llvm.org/buildbot/#/builders/139/builds/62423
- https://lab.llvm.org/buildbot/#/builders/216/builds/36718
- https://lab.llvm.org/buildbot/#/builders/259/builds/2039
- https://lab.llvm.org/buildbot/#/builders/36/builds/44091
- https://lab.llvm.org/buildbot/#/builders/272/builds/12629
- https://lab.llvm.org/buildbot/#/builders/271/builds/6020
- https://lab.llvm.org/buildbot/#/builders/236/builds/10319
Commit: db7d2439780d115545f533929d33470dc8d2704b
https://github.com/llvm/llvm-project/commit/db7d2439780d115545f533929d33470dc8d2704b
Author: Freddy Ye <freddy.ye at intel.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrUtils.td
A llvm/test/MC/Disassembler/X86/apx/imulzu.txt
A llvm/test/MC/X86/apx/imulzu-att.s
A llvm/test/MC/X86/apx/imulzu-intel.s
M llvm/test/TableGen/x86-fold-tables.inc
Log Message:
-----------
[X86][MC] Support enc/dec for IMULZU. (#86653)
apx-spec: https://cdrdv2.intel.com/v1/dl/getContent/784266
apx-syntax-recommendation:
https://cdrdv2.intel.com/v1/dl/getContent/817241
Commit: aeab2bb55e0a4d5f0f13e238e8a2fb9030c48b6f
https://github.com/llvm/llvm-project/commit/aeab2bb55e0a4d5f0f13e238e8a2fb9030c48b6f
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn
Log Message:
-----------
[gn build] Port 1d99d7a6f841
Commit: aa04f12fa9f086f62f81841f159085723c255245
https://github.com/llvm/llvm-project/commit/aa04f12fa9f086f62f81841f159085723c255245
Author: Thomas Köppe <tkoeppe at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeStmtGen.h
Log Message:
-----------
Add missing declarations of explicit template instantiations. (#86964)
Found with -Wundefined-func-template.
Commit: abfc5efb55267689f1852fd7ce3e0a38876aa259
https://github.com/llvm/llvm-project/commit/abfc5efb55267689f1852fd7ce3e0a38876aa259
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/include/clang/AST/DeclBase.h
M clang/lib/AST/DeclBase.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/unittests/AST/DeclTest.cpp
Log Message:
-----------
[NFC] [Decl] Introduce Decl::isFromExplicitGlobalModule
Introduce `Decl::isFromExplicitGlobalModule` to replace the
`D->getOwningModule() && D->getOwningModule()->isExplicitGlobalModule()`
pattern to save some typings.
Commit: 80aa52d8c5a8a1c26b4114c60c2159c743d236d8
https://github.com/llvm/llvm-project/commit/80aa52d8c5a8a1c26b4114c60c2159c743d236d8
Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/ProfileData/InstrProfWriter.cpp
Log Message:
-----------
Revert "[ProfileData] Use size_t in PatchItem (NFC) (#87014)"
This reverts commit c64a328cb4a32e81f8b694162750ec1b8823994c.
This broke Arm32 bit build on various LLVM buildbots.
For example:
https://lab.llvm.org/buildbot/#/builders/17/builds/51129
Commit: 5af767926288f837e4fd9fd81a9d4878e0924ced
https://github.com/llvm/llvm-project/commit/5af767926288f837e4fd9fd81a9d4878e0924ced
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/unittests/AST/DeclPrinterTest.cpp
Log Message:
-----------
Fix calls to PrintedDeclCXX98Matches. (#86741)
Fix the calls to `PrintedDeclCXX98Matches` to take the lambda function
as the last argument.
Commit: a85569242da98c29d76fbb303a4014cf6c514a6f
https://github.com/llvm/llvm-project/commit/a85569242da98c29d76fbb303a4014cf6c514a6f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libcxx/include/__type_traits/apply_cv.h
Log Message:
-----------
[libc++][NFC] Use __copy_cv to implement __apply_cv (#86477)
Commit: 316634ff5925481201a7b27d5f806cc2361cf4f2
https://github.com/llvm/llvm-project/commit/316634ff5925481201a7b27d5f806cc2361cf4f2
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__format/container_adaptor.h
A libcxx/include/__fwd/deque.h
A libcxx/include/__fwd/memory.h
A libcxx/include/__fwd/queue.h
M libcxx/include/__fwd/sstream.h
A libcxx/include/__fwd/stack.h
M libcxx/include/__fwd/string.h
A libcxx/include/__fwd/vector.h
M libcxx/include/deque
M libcxx/include/format
M libcxx/include/iosfwd
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap
M libcxx/include/queue
M libcxx/include/stack
M libcxx/include/vector
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/containers/sequences/vector/vector.cons/deduct.verify.cpp
M libcxx/test/support/deduction_guides_sfinae_checks.h
Log Message:
-----------
[libc++] Remove <queue> and <stack> includes from <format> (#85520)
This reduces the include time of <format> from 691ms to 556ms.
Commit: 131be5de90dac9f54a8213a1aab66a75c62890ec
https://github.com/llvm/llvm-project/commit/131be5de90dac9f54a8213a1aab66a75c62890ec
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
Log Message:
-----------
[RISCV] Add more disjoint or tests for vwadd[u].{w,v}v. NFC
Commit: 1403cf67a628712bddbe0055161ec68c7ebb468d
https://github.com/llvm/llvm-project/commit/1403cf67a628712bddbe0055161ec68c7ebb468d
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 316634ff5925
Commit: 2a315d800bb352fe459a012006a42ac7cd63834e
https://github.com/llvm/llvm-project/commit/2a315d800bb352fe459a012006a42ac7cd63834e
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
Log Message:
-----------
[RISCV] Combine (or disjoint ext, ext) -> vwadd (#86929)
DAGCombiner (or InstCombine) will convert an add to an or if the bits
are disjoint, which can prevent what was originally an (add {s,z}ext,
{s,z}ext) from being selected as a vwadd.
This teaches combineBinOp_VLToVWBinOp_VL to recover it by treating it as
an add.
Commit: 76ba3c8e64ed33daf5ddf7d507cbbdeae7a50235
https://github.com/llvm/llvm-project/commit/76ba3c8e64ed33daf5ddf7d507cbbdeae7a50235
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
Log Message:
-----------
[RISCV] Add test case for vmerge fold for tied pseudos with rounding mode. NFC
Commit: ea707baca2f73d503849d2b7429c7507314bff6b
https://github.com/llvm/llvm-project/commit/ea707baca2f73d503849d2b7429c7507314bff6b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M openmp/libomptarget/include/PluginManager.h
M openmp/libomptarget/src/PluginManager.cpp
Log Message:
-----------
[Libomptarget][NFCI] Move logic out of PluginAdaptorTy (#86971)
Summary:
This patch removes most of the special handling from the
`PluginAdaptorTy` in preparation for changing this to be the
`GenericPluginTy`. Doing this requires that the OpenMP specific handling
of stuff like device offsets be contained within the OpenMP plugin
manager. Generally this was uninvasive expect for the change to tracking
the offset and size of the used devices. The eaiest way I could think to
do this was to use some maps, which double as indicators for which
plugins have devices active. This should not affect the logic.
Commit: 84299df301dc07ea83fa8378051103195c3a7c65
https://github.com/llvm/llvm-project/commit/84299df301dc07ea83fa8378051103195c3a7c65
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/MachineInstr.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-trunc.ll
Log Message:
-----------
[GlobalIsel] add trunc flags (#87045)
https://github.com/llvm/llvm-project/pull/85592
Commit: 7344e991ade887775cb25beeffa9c8d2a2311dc7
https://github.com/llvm/llvm-project/commit/7344e991ade887775cb25beeffa9c8d2a2311dc7
Author: Egor Zhdan <e_zhdan at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
A clang/test/APINotes/Inputs/Headers/Templates.apinotes
A clang/test/APINotes/Inputs/Headers/Templates.h
M clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/templates.cpp
Log Message:
-----------
[APINotes] Add test for C++ class templates
This upstreams https://github.com/apple/llvm-project/pull/7930.
This adds a test to verify that we can apply attributes to C++ class
templates using API Notes. Doing the same for function templates is not
currently possible and requires more work.
Commit: a8ca4abfcfa98d28ec46ee497e1fc5e91f8e1ad6
https://github.com/llvm/llvm-project/commit/a8ca4abfcfa98d28ec46ee497e1fc5e91f8e1ad6
Author: Nathan Sidwell <nathan at acm.org>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
A clang/test/CodeGen/aapcs-bitfield-access-unit.c
M clang/test/CodeGen/arm-bitfield-alignment.c
M clang/test/CodeGen/arm64-be-bitfield.c
A clang/test/CodeGen/bitfield-access-pad.c
A clang/test/CodeGen/bitfield-access-unit.c
M clang/test/CodeGen/no-bitfield-type-align.c
M clang/test/CodeGen/struct-x86-darwin.c
A clang/test/CodeGenCXX/bitfield-access-empty.cpp
A clang/test/CodeGenCXX/bitfield-access-tail.cpp
A clang/test/CodeGenCXX/bitfield-ir.cpp
M clang/test/CodeGenCXX/bitfield.cpp
Log Message:
-----------
[clang][NFC] Bitfield access unit tests (#65742)
Verify bitfield access units.
Commit: 7df79ababee8d03b27bbaba1aabc2ec4ea14143e
https://github.com/llvm/llvm-project/commit/7df79ababee8d03b27bbaba1aabc2ec4ea14143e
Author: Nathan Sidwell <nathan at acm.org>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/TargetInfo.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/Basic/Targets/LoongArch.cpp
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/VE.h
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
Log Message:
-----------
[clang] TargetInfo hook for unaligned bitfields (#65742)
Promote ARM & AArch64's HasUnaligned to TargetInfo and set for all
targets.
Commit: 49839f97d2951e0b95d33aee00f00022952dab78
https://github.com/llvm/llvm-project/commit/49839f97d2951e0b95d33aee00f00022952dab78
Author: Nathan Sidwell <nathan at acm.org>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/test/CodeGen/aapcs-bitfield-access-unit.c
M clang/test/CodeGen/aapcs-bitfield.c
M clang/test/CodeGen/arm-bitfield-alignment.c
M clang/test/CodeGen/arm64-be-bitfield.c
M clang/test/CodeGen/bitfield-2.c
M clang/test/CodeGen/bitfield-access-pad.c
M clang/test/CodeGen/bitfield-access-unit.c
M clang/test/CodeGen/debug-info-bitfield-0-struct.c
M clang/test/CodeGen/no-bitfield-type-align.c
M clang/test/CodeGen/struct-x86-darwin.c
M clang/test/CodeGen/tbaa-struct.cpp
M clang/test/CodeGenCXX/bitfield-access-empty.cpp
M clang/test/CodeGenCXX/bitfield-access-tail.cpp
M clang/test/CodeGenCXX/bitfield-ir.cpp
M clang/test/CodeGenCXX/bitfield.cpp
M clang/test/OpenMP/atomic_capture_codegen.cpp
M clang/test/OpenMP/atomic_read_codegen.c
M clang/test/OpenMP/atomic_update_codegen.cpp
M clang/test/OpenMP/atomic_write_codegen.c
Log Message:
-----------
[clang] Better SysV bitfield access units (#65742)
Reimplement bitfield access unit computation for SysV ABIs. Considers
expense of unaligned and non-power-of-2 accesses.
Commit: 56b3222b79632a4bbb36271735556a03b2504791
https://github.com/llvm/llvm-project/commit/56b3222b79632a4bbb36271735556a03b2504791
Author: Monad <yanwqmonad at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/X86/x86-avx512-inseltpoison.ll
M llvm/test/Transforms/InstCombine/X86/x86-avx512.ll
M llvm/test/Transforms/InstCombine/apint-shl-trunc.ll
M llvm/test/Transforms/InstCombine/cast.ll
M llvm/test/Transforms/InstCombine/catchswitch-phi.ll
M llvm/test/Transforms/InstCombine/icmp-mul-and.ll
M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
M llvm/test/Transforms/InstCombine/mul-masked-bits.ll
M llvm/test/Transforms/InstCombine/mul.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/ptr-int-cast.ll
M llvm/test/Transforms/InstCombine/reduction-add-sext-zext-i1.ll
M llvm/test/Transforms/InstCombine/reduction-xor-sext-zext-i1.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions.ll
Log Message:
-----------
[InstCombine] Remove the canonicalization of `trunc` to `i1` (#84628)
Remove the canonicalization of `trunc` to `i1` according to the
suggestion of
https://github.com/llvm/llvm-project/pull/83829#issuecomment-1986801166
https://github.com/llvm/llvm-project/blob/a84e66a92d7b97f68aa3ae7d2c5839f3fb0d291d/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp#L737-L745
Alive2: https://alive2.llvm.org/ce/z/cacYVA
Commit: 3f69d90351a9d4c7102b8b2f70a55e5bd92c567d
https://github.com/llvm/llvm-project/commit/3f69d90351a9d4c7102b8b2f70a55e5bd92c567d
Author: Luke Lau <luke at igalia.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
Log Message:
-----------
[RISCV] Add missing RISCVMaskedPseudo for TIED pseudos (#86787)
This was preventing us from folding away the vmerge into its mask.
Commit: d3bc9cc99b3d45e1fb8d65a57e308e899439fe26
https://github.com/llvm/llvm-project/commit/d3bc9cc99b3d45e1fb8d65a57e308e899439fe26
Author: Marc Auberer <marc.auberer at chillibits.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/select.mir
Log Message:
-----------
[AArch64][GISEL] Regenerate select tests with inline register classes (#87013)
Use inline register class syntax for select test file.
Commit: 0f6ed4c394fd8f843029f6919230bf8df8618529
https://github.com/llvm/llvm-project/commit/0f6ed4c394fd8f843029f6919230bf8df8618529
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/SemaTemplate/concepts-friends.cpp
M clang/test/SemaTemplate/ctad.cpp
Log Message:
-----------
[clang][Sema] Fix a CTAD regression after 42239d2e9 (#86914)
The most recent declaration of a template as a friend can introduce a
different template parameter depth compared to what we anticipate from a
CTAD guide.
Fixes https://github.com/llvm/llvm-project/issues/86769
Commit: a4de589d117a4fd52554da3c61ae6eb26c90a0c8
https://github.com/llvm/llvm-project/commit/a4de589d117a4fd52554da3c61ae6eb26c90a0c8
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/InstallAPI/MachO.h
M clang/lib/InstallAPI/CMakeLists.txt
M clang/lib/InstallAPI/DylibVerifier.cpp
A clang/test/InstallAPI/diagnostics-dsym.test
M clang/tools/clang-installapi/InstallAPIOpts.td
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
M llvm/include/llvm/TextAPI/DylibReader.h
M llvm/include/llvm/TextAPI/Record.h
M llvm/lib/TextAPI/BinaryReader/CMakeLists.txt
M llvm/lib/TextAPI/BinaryReader/DylibReader.cpp
Log Message:
-----------
[InstallAPI] Add support for parsing dSYMs (#86852)
InstallAPI does not directly look at object files in the dylib for
verification. To help diagnose violations where a declaration is
undiscovered in headers, parse the dSYM and look up the source location
for symbols. Emitting out the source location with a diagnostic is
enough for some IDE's (e.g. Xcode) to have them map back to editable
source files.
Commit: 85a5f64c70fe34a08481fde2cfedb6adf84c9b47
https://github.com/llvm/llvm-project/commit/85a5f64c70fe34a08481fde2cfedb6adf84c9b47
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Add missing deps after a4de589d117a4fd52554da3c61ae6eb26c90a0c8
Commit: c09b6fac12b0299841bf1bf04974712963736db5
https://github.com/llvm/llvm-project/commit/c09b6fac12b0299841bf1bf04974712963736db5
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
A utils/bazel/llvm-project-overlay/llvm/driver.bzl
Log Message:
-----------
[bazel] Add support for LLVM_TOOL_LLVM_DRIVER_BUILD (#86879)
This adds the bazel equivalent of the `llvm` binary produced by
`LLVM_TOOL_LLVM_DRIVER_BUILD` in cmake. For the initial commit, this
only includes `llvm-ar`, `llvm-nm`, and `llvm-size`. The rest are
trivial to add in a followup commit, following the same pattern as here.
By default it will include everything that supports the llvm-driver
model, but it can be reduced to only build a subset, e.g. this will
build only nm and size:
```
$ bazel build \
-- at llvm-project//llvm:driver-tools=llvm-nm,llvm-size \
@llvm-project//llvm:llvm
```
Commit: 2f05b8905860760f1d4f099dcea0e0dd4b1f49d8
https://github.com/llvm/llvm-project/commit/2f05b8905860760f1d4f099dcea0e0dd4b1f49d8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
Log Message:
-----------
[RISCV] Move VPseudoBinaryNoMask multiclass to RISCVInstrInfoZvk.td and rename it. NFC
Rename to VPseudoBinaryNoMaskTU_Zvk. This more consistent with the naming
of the class it instantiates and the _Zvk suffix is used elsewhere
in RISCVInstrInfoZvk.td.
Commit: 661bb9daae8730868d87b7a3cee6b9ad51e988af
https://github.com/llvm/llvm-project/commit/661bb9daae8730868d87b7a3cee6b9ad51e988af
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sbfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
Log Message:
-----------
[GlobalISel] Handle div-by-pow2 (#83155)
This patch adds similar handling of div-by-pow2 as in `SelectionDAG`.
Commit: af34ac4508adcb5b54e62947d7caf7dd40227b16
https://github.com/llvm/llvm-project/commit/af34ac4508adcb5b54e62947d7caf7dd40227b16
Author: Sirraide <aeternalmail at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/test/C/C2x/n2350.c
M clang/test/C/drs/dr4xx.c
Log Message:
-----------
[Clang] [Sema] No longer diagnose type definitions in `offsetof` in C23 mode (#84169)
This is now allowed in C23; continue to diagnose it in earlier language
modes as before, but now as a C23 extension rather than a GNU extension.
This fixes #83658.
Commit: 0dbd804a690720688d8234d8bdaee8f8f4fdcddc
https://github.com/llvm/llvm-project/commit/0dbd804a690720688d8234d8bdaee8f8f4fdcddc
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
Log Message:
-----------
[scudo] Only init RingBuffer when needed. (#85994)
Only attempt to initialize the ring buffer when tracking is enabled.
Updated unit tests, and added a few new unit tests to verify the
RingBuffer is not initialized by default.
Verified that the two maps associated with the RingBuffer are not
created in processes by default.
Commit: 60deb8b39afe9be90e30aa18d77ad129dacd4d55
https://github.com/llvm/llvm-project/commit/60deb8b39afe9be90e30aa18d77ad129dacd4d55
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/test/InstallAPI/diagnostics-dsym.test
Log Message:
-----------
[InstallAPI][test] Tweak test to run on older CI config
Commit: fdef5c4f453f0e0de02281a0a9b986667bc5010e
https://github.com/llvm/llvm-project/commit/fdef5c4f453f0e0de02281a0a9b986667bc5010e
Author: Om Prakaash <omsuseela at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libc/docs/dev/printf_behavior.rst
M libc/src/stdio/printf_core/converter_utils.h
M libc/src/stdio/printf_core/core_structs.h
M libc/src/stdio/printf_core/int_converter.h
M libc/src/stdio/printf_core/parser.h
M libc/src/stdio/printf_core/write_int_converter.h
M libc/test/UnitTest/PrintfMatcher.cpp
M libc/test/src/stdio/printf_core/parser_test.cpp
M libc/test/src/stdio/sprintf_test.cpp
Log Message:
-----------
Add bit width length modifier to printf (#82461)
Resolves #81685. This adds support for wN and wfN length modifiers in
fprintf.
Commit: e74332a266e5f81411fb333bde56bf471f0a7ba6
https://github.com/llvm/llvm-project/commit/e74332a266e5f81411fb333bde56bf471f0a7ba6
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
M llvm/lib/Target/DirectX/DXIL.td
M llvm/test/CodeGen/DirectX/round.ll
M llvm/test/CodeGen/DirectX/round_error.ll
Log Message:
-----------
[HLSL][DXIL] HLSL's `round` should follow `roundeven` behavior (#87078)
fixes #86999
Commit: 838b118d394138a746ffb4c113fb97b0f8904bd2
https://github.com/llvm/llvm-project/commit/838b118d394138a746ffb4c113fb97b0f8904bd2
Author: Michael Jones <michaelrj at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libc/test/src/stdio/sprintf_test.cpp
Log Message:
-----------
[libc] Fix missing UINTMAX_WIDTH (#87092)
In patch #82461 the sprintf tests were made to use UINTMAX_WIDTH which
isn't defined on all systems. This patch changes it to
sizeof(uintmax_t)*CHAR_BIT which is more portable.
Commit: bdb60e6f0c8e89abf9bdf36411348db304ca65ba
https://github.com/llvm/llvm-project/commit/bdb60e6f0c8e89abf9bdf36411348db304ca65ba
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/test/InstallAPI/diagnostics-dsym.test
Log Message:
-----------
[InstallAPI][test] Add requires x86_64 for hardcoded target test
Commit: a1a8bb1d3ae9a535526aba9514e87f76e2d040fa
https://github.com/llvm/llvm-project/commit/a1a8bb1d3ae9a535526aba9514e87f76e2d040fa
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libc/utils/gpu/loader/Loader.h
M libc/utils/gpu/loader/amdgpu/Loader.cpp
M libc/utils/gpu/loader/nvptx/Loader.cpp
M libc/utils/gpu/server/llvmlibc_rpc_server.h
M libc/utils/gpu/server/rpc_server.cpp
M openmp/libomptarget/plugins-nextgen/common/include/RPC.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/common/src/RPC.cpp
Log Message:
-----------
[libc] Change RPC interface to not use device ids (#87087)
Summary:
The current implementation of RPC tied everything to device IDs and
forced us to do init / shutdown to manage some global state. This turned
out to be a bad idea in situations where we want to track multiple
hetergeneous devices that may report the same device ID in the same
process.
This patch changes the interface to instead create an opaque handle to
the internal device and simply allocates it via `new`. The user will
then take this device and store it to interface with the attached
device. This interface puts the burden of tracking the device identifier
to mapped d evices onto the user, but in return heavily simplifies the
implementation.
Commit: 99379522d00d0720bcda5067d4de2bfb0c279f15
https://github.com/llvm/llvm-project/commit/99379522d00d0720bcda5067d4de2bfb0c279f15
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libc/docs/gpu/rpc.rst
Log Message:
-----------
[libc][Docs] Update RPC server example using CUDA after changes
Summary:
This has changed, so update it to match the new interface.
Commit: 407a2f231a81862e20d80059870c48d818b61ec2
https://github.com/llvm/llvm-project/commit/407a2f231a81862e20d80059870c48d818b61ec2
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
Log Message:
-----------
[clang] Move state out of `PreprocessorOptions` (1/n) (#86358)
An instance of `PreprocessorOptions` is part of `CompilerInvocation`
which is supposed to be a value type. The `DependencyDirectivesForFile`
member is problematic, since it holds an owning reference of the
scanning VFS. This makes it not a true value type, and it can keep
potentially large chunk of memory (the local cache in the scanning VFS)
alive for longer than clients might expect. Let's move it into the
`Preprocessor` instead.
Commit: beaff78528747dfbd50f9f4df77ac25f459075be
https://github.com/llvm/llvm-project/commit/beaff78528747dfbd50f9f4df77ac25f459075be
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libcxx/benchmarks/algorithms/mismatch.bench.cpp
M libcxx/include/__algorithm/mismatch.h
M libcxx/test/std/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
Log Message:
-----------
[libc++] Optimize the std::mismatch tail (#83440)
This adds vectorization to the last 0-3 vectors and, if the range is
large enough, the remaining elements that don't fill a vector
completely.
```
-----------------------------------------------------------------------
Benchmark old full vectors partial vector
-----------------------------------------------------------------------
bm_mismatch<char>/1 1.40 ns 1.62 ns 2.09 ns
bm_mismatch<char>/2 1.88 ns 2.10 ns 2.33 ns
bm_mismatch<char>/3 2.67 ns 2.56 ns 2.72 ns
bm_mismatch<char>/4 3.01 ns 3.20 ns 3.70 ns
bm_mismatch<char>/5 3.51 ns 3.73 ns 3.64 ns
bm_mismatch<char>/6 4.71 ns 4.85 ns 4.37 ns
bm_mismatch<char>/7 5.12 ns 5.33 ns 4.37 ns
bm_mismatch<char>/8 5.79 ns 6.02 ns 4.75 ns
bm_mismatch<char>/15 9.20 ns 10.5 ns 7.23 ns
bm_mismatch<char>/16 10.2 ns 10.1 ns 7.46 ns
bm_mismatch<char>/17 10.2 ns 10.8 ns 7.57 ns
bm_mismatch<char>/31 17.6 ns 17.1 ns 10.8 ns
bm_mismatch<char>/32 17.4 ns 1.64 ns 1.64 ns
bm_mismatch<char>/33 23.3 ns 2.10 ns 2.33 ns
bm_mismatch<char>/63 31.8 ns 16.9 ns 2.33 ns
bm_mismatch<char>/64 32.6 ns 2.10 ns 2.10 ns
bm_mismatch<char>/65 33.6 ns 2.57 ns 2.80 ns
bm_mismatch<char>/127 67.3 ns 18.1 ns 3.27 ns
bm_mismatch<char>/128 2.17 ns 2.14 ns 2.57 ns
bm_mismatch<char>/129 2.36 ns 2.80 ns 3.27 ns
bm_mismatch<char>/255 67.5 ns 19.6 ns 4.68 ns
bm_mismatch<char>/256 3.76 ns 3.71 ns 3.97 ns
bm_mismatch<char>/257 3.77 ns 4.04 ns 4.43 ns
bm_mismatch<char>/511 70.8 ns 22.1 ns 7.47 ns
bm_mismatch<char>/512 7.27 ns 7.30 ns 6.95 ns
bm_mismatch<char>/513 7.11 ns 7.05 ns 6.96 ns
bm_mismatch<char>/1023 75.9 ns 27.4 ns 13.3 ns
bm_mismatch<char>/1024 13.9 ns 13.8 ns 12.4 ns
bm_mismatch<char>/1025 13.6 ns 13.6 ns 12.8 ns
bm_mismatch<char>/2047 87.3 ns 37.5 ns 25.4 ns
bm_mismatch<char>/2048 26.8 ns 27.4 ns 24.0 ns
bm_mismatch<char>/2049 26.7 ns 27.3 ns 25.5 ns
bm_mismatch<char>/4095 112 ns 64.7 ns 48.7 ns
bm_mismatch<char>/4096 53.0 ns 54.2 ns 46.8 ns
bm_mismatch<char>/4097 52.7 ns 54.2 ns 48.4 ns
bm_mismatch<char>/8191 160 ns 118 ns 98.4 ns
bm_mismatch<char>/8192 107 ns 108 ns 96.0 ns
bm_mismatch<char>/8193 106 ns 108 ns 97.2 ns
bm_mismatch<char>/16383 283 ns 234 ns 215 ns
bm_mismatch<char>/16384 227 ns 223 ns 217 ns
bm_mismatch<char>/16385 221 ns 221 ns 215 ns
bm_mismatch<char>/32767 547 ns 499 ns 488 ns
bm_mismatch<char>/32768 495 ns 492 ns 492 ns
bm_mismatch<char>/32769 491 ns 489 ns 488 ns
bm_mismatch<char>/65535 1028 ns 979 ns 971 ns
bm_mismatch<char>/65536 976 ns 970 ns 974 ns
bm_mismatch<char>/65537 970 ns 965 ns 971 ns
bm_mismatch<char>/131071 2031 ns 1948 ns 2005 ns
bm_mismatch<char>/131072 1973 ns 1955 ns 1974 ns
bm_mismatch<char>/131073 1989 ns 1932 ns 2001 ns
bm_mismatch<char>/262143 4469 ns 4244 ns 4223 ns
bm_mismatch<char>/262144 4443 ns 4183 ns 4243 ns
bm_mismatch<char>/262145 4400 ns 4232 ns 4246 ns
bm_mismatch<char>/524287 10169 ns 9733 ns 9592 ns
bm_mismatch<char>/524288 10154 ns 9664 ns 9843 ns
bm_mismatch<char>/524289 10113 ns 9641 ns 10003 ns
bm_mismatch<short>/1 1.86 ns 2.53 ns 2.32 ns
bm_mismatch<short>/2 2.57 ns 2.77 ns 2.55 ns
bm_mismatch<short>/3 3.26 ns 3.00 ns 2.79 ns
bm_mismatch<short>/4 3.95 ns 3.39 ns 3.15 ns
bm_mismatch<short>/5 4.83 ns 3.97 ns 3.72 ns
bm_mismatch<short>/6 5.43 ns 4.34 ns 4.03 ns
bm_mismatch<short>/7 6.11 ns 4.73 ns 4.44 ns
bm_mismatch<short>/8 6.84 ns 5.02 ns 4.79 ns
bm_mismatch<short>/15 11.5 ns 7.12 ns 6.50 ns
bm_mismatch<short>/16 13.9 ns 1.87 ns 2.11 ns
bm_mismatch<short>/17 14.0 ns 3.00 ns 2.47 ns
bm_mismatch<short>/31 23.1 ns 7.87 ns 2.47 ns
bm_mismatch<short>/32 23.8 ns 2.57 ns 2.81 ns
bm_mismatch<short>/33 24.5 ns 3.70 ns 2.94 ns
bm_mismatch<short>/63 44.8 ns 9.37 ns 3.46 ns
bm_mismatch<short>/64 2.32 ns 2.57 ns 2.64 ns
bm_mismatch<short>/65 2.52 ns 3.02 ns 3.51 ns
bm_mismatch<short>/127 45.6 ns 9.97 ns 5.18 ns
bm_mismatch<short>/128 3.85 ns 3.93 ns 3.94 ns
bm_mismatch<short>/129 3.82 ns 4.20 ns 4.70 ns
bm_mismatch<short>/255 50.4 ns 12.6 ns 8.07 ns
bm_mismatch<short>/256 7.23 ns 6.91 ns 6.98 ns
bm_mismatch<short>/257 7.24 ns 7.19 ns 7.55 ns
bm_mismatch<short>/511 52.3 ns 17.8 ns 14.0 ns
bm_mismatch<short>/512 13.6 ns 13.7 ns 13.6 ns
bm_mismatch<short>/513 13.9 ns 13.8 ns 18.5 ns
bm_mismatch<short>/1023 60.9 ns 30.9 ns 26.3 ns
bm_mismatch<short>/1024 26.7 ns 27.7 ns 25.7 ns
bm_mismatch<short>/1025 27.7 ns 27.6 ns 25.3 ns
bm_mismatch<short>/2047 88.4 ns 58.0 ns 51.6 ns
bm_mismatch<short>/2048 52.8 ns 55.3 ns 50.6 ns
bm_mismatch<short>/2049 55.2 ns 54.8 ns 48.7 ns
bm_mismatch<short>/4095 153 ns 113 ns 102 ns
bm_mismatch<short>/4096 105 ns 110 ns 101 ns
bm_mismatch<short>/4097 110 ns 110 ns 99.1 ns
bm_mismatch<short>/8191 277 ns 219 ns 206 ns
bm_mismatch<short>/8192 226 ns 214 ns 250 ns
bm_mismatch<short>/8193 226 ns 207 ns 208 ns
bm_mismatch<short>/16383 519 ns 492 ns 488 ns
bm_mismatch<short>/16384 494 ns 492 ns 492 ns
bm_mismatch<short>/16385 492 ns 488 ns 489 ns
bm_mismatch<short>/32767 1007 ns 968 ns 964 ns
bm_mismatch<short>/32768 977 ns 972 ns 970 ns
bm_mismatch<short>/32769 972 ns 962 ns 967 ns
bm_mismatch<short>/65535 1978 ns 1918 ns 1956 ns
bm_mismatch<short>/65536 1940 ns 1927 ns 1970 ns
bm_mismatch<short>/65537 1937 ns 1922 ns 1959 ns
bm_mismatch<short>/131071 4524 ns 4193 ns 4304 ns
bm_mismatch<short>/131072 4445 ns 4196 ns 4306 ns
bm_mismatch<short>/131073 4452 ns 4278 ns 4311 ns
bm_mismatch<short>/262143 9801 ns 10188 ns 9634 ns
bm_mismatch<short>/262144 9738 ns 10151 ns 9651 ns
bm_mismatch<short>/262145 9716 ns 10171 ns 9715 ns
bm_mismatch<short>/524287 19944 ns 20718 ns 20044 ns
bm_mismatch<short>/524288 21139 ns 20647 ns 20008 ns
bm_mismatch<short>/524289 21162 ns 19512 ns 20068 ns
bm_mismatch<int>/1 1.40 ns 1.84 ns 1.87 ns
bm_mismatch<int>/2 1.87 ns 2.08 ns 2.09 ns
bm_mismatch<int>/3 2.36 ns 2.31 ns 2.87 ns
bm_mismatch<int>/4 3.06 ns 2.72 ns 2.95 ns
bm_mismatch<int>/5 3.66 ns 3.37 ns 3.42 ns
bm_mismatch<int>/6 4.55 ns 3.65 ns 3.73 ns
bm_mismatch<int>/7 5.03 ns 3.93 ns 3.94 ns
bm_mismatch<int>/8 5.67 ns 1.86 ns 1.87 ns
bm_mismatch<int>/15 9.89 ns 4.41 ns 2.34 ns
bm_mismatch<int>/16 10.1 ns 2.33 ns 2.34 ns
bm_mismatch<int>/17 10.2 ns 3.34 ns 2.86 ns
bm_mismatch<int>/31 17.2 ns 5.54 ns 3.28 ns
bm_mismatch<int>/32 2.16 ns 2.15 ns 2.58 ns
bm_mismatch<int>/33 2.36 ns 3.01 ns 3.28 ns
bm_mismatch<int>/63 17.7 ns 6.50 ns 4.93 ns
bm_mismatch<int>/64 3.81 ns 3.58 ns 3.90 ns
bm_mismatch<int>/65 3.74 ns 4.36 ns 4.45 ns
bm_mismatch<int>/127 19.5 ns 9.56 ns 7.74 ns
bm_mismatch<int>/128 7.30 ns 6.41 ns 6.85 ns
bm_mismatch<int>/129 7.09 ns 7.04 ns 7.06 ns
bm_mismatch<int>/255 24.7 ns 14.8 ns 13.3 ns
bm_mismatch<int>/256 14.0 ns 12.1 ns 12.3 ns
bm_mismatch<int>/257 13.8 ns 12.7 ns 12.8 ns
bm_mismatch<int>/511 34.3 ns 26.3 ns 24.8 ns
bm_mismatch<int>/512 27.6 ns 23.6 ns 23.9 ns
bm_mismatch<int>/513 27.3 ns 24.4 ns 25.1 ns
bm_mismatch<int>/1023 62.5 ns 50.9 ns 48.3 ns
bm_mismatch<int>/1024 54.4 ns 46.1 ns 46.6 ns
bm_mismatch<int>/1025 54.2 ns 48.4 ns 47.5 ns
bm_mismatch<int>/2047 116 ns 97.8 ns 94.1 ns
bm_mismatch<int>/2048 108 ns 92.6 ns 92.4 ns
bm_mismatch<int>/2049 108 ns 104 ns 94.0 ns
bm_mismatch<int>/4095 233 ns 222 ns 205 ns
bm_mismatch<int>/4096 226 ns 223 ns 225 ns
bm_mismatch<int>/4097 221 ns 219 ns 210 ns
bm_mismatch<int>/8191 499 ns 485 ns 488 ns
bm_mismatch<int>/8192 496 ns 490 ns 495 ns
bm_mismatch<int>/8193 491 ns 485 ns 488 ns
bm_mismatch<int>/16383 982 ns 962 ns 964 ns
bm_mismatch<int>/16384 974 ns 971 ns 971 ns
bm_mismatch<int>/16385 971 ns 961 ns 968 ns
bm_mismatch<int>/32767 2003 ns 1959 ns 1920 ns
bm_mismatch<int>/32768 1996 ns 1947 ns 1928 ns
bm_mismatch<int>/32769 1990 ns 1945 ns 1926 ns
bm_mismatch<int>/65535 4434 ns 4275 ns 4312 ns
bm_mismatch<int>/65536 4437 ns 4267 ns 4321 ns
bm_mismatch<int>/65537 4442 ns 4261 ns 4321 ns
bm_mismatch<int>/131071 9673 ns 9648 ns 9465 ns
bm_mismatch<int>/131072 9667 ns 9671 ns 9465 ns
bm_mismatch<int>/131073 9661 ns 9653 ns 9464 ns
bm_mismatch<int>/262143 20595 ns 19605 ns 19064 ns
bm_mismatch<int>/262144 19894 ns 19572 ns 19009 ns
bm_mismatch<int>/262145 19851 ns 19656 ns 18999 ns
bm_mismatch<int>/524287 39556 ns 39364 ns 38131 ns
bm_mismatch<int>/524288 39678 ns 39573 ns 38183 ns
bm_mismatch<int>/524289 40168 ns 39301 ns 38121 ns
```
Commit: 2684a0966d5c84071c811c68ec25e41a0beb26f4
https://github.com/llvm/llvm-project/commit/2684a0966d5c84071c811c68ec25e41a0beb26f4
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
A libcxx/docs/DesignDocs/NodiscardPolicy.rst
M libcxx/docs/index.rst
Log Message:
-----------
[libc++] Document guidelines for applying [[nodiscard]] (#84000)
We've been applying ``[[nodiscard]]`` more liberally recently, but we
don't have any documented guidance on when it's correct to add it. This
patch adds that guidance. Follow-up patches will gradually apply it to
the code base.
Commit: fe893c93b7bd3b3c436b97383db21e08c9ec4b25
https://github.com/llvm/llvm-project/commit/fe893c93b7bd3b3c436b97383db21e08c9ec4b25
Author: Kevin P. Neal <kevin.neal at sas.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
Log Message:
-----------
[FPEnv][AtomicExpand] Correct strictfp attribute handling in AtomicExpandPass (#87082)
The AtomicExpand pass was lowering function calls with the strictfp
attribute to sequences that included function calls incorrectly lacking
the attribute. This patch corrects that.
The pass now also emits the correct constrained fp call instead of
normal FP instructions when in a function with the strictfp attribute.
Test changes verified with D146845.
Commit: 7daa65a088c00891662d5e7e162e5f8f3283f799
https://github.com/llvm/llvm-project/commit/7daa65a088c00891662d5e7e162e5f8f3283f799
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
A llvm/test/CodeGen/NVPTX/common-linkage.ll
M llvm/test/CodeGen/NVPTX/weak-global.ll
Log Message:
-----------
Reland "[NVPTX] Use .common linkage for common globals" (#86824)
Switch from `.weak` to `.common` linkage for common global variables
where possible. The `.common` linkage is described in
[PTX ISA 11.6.4. Linking Directives: .common]
(https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#linking-directives-common)
> Declares identifier to be globally visible but “common”.
>
>Common symbols are similar to globally visible symbols. However
multiple object files may declare the same common symbol and they may
have different types and sizes and references to a symbol get resolved
against a common symbol with the largest size.
>
>Only one object file can initialize a common symbol and that must have
the largest size among all other definitions of that common symbol from
different object files.
>
>.common linking directive can be used only on variables with .global
storage. It cannot be used on function symbols or on symbols with opaque
type.
I've updated the logic and tests to only use `.common` for PTX 5.0 or
greater and verified that the new tests now pass with `ptxas`.
Commit: ee3a302abaa091e550a80f79694e963d1b5d0b7b
https://github.com/llvm/llvm-project/commit/ee3a302abaa091e550a80f79694e963d1b5d0b7b
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/lib/Frontend/CompilerInstance.cpp
Log Message:
-----------
[clang] Move state out of `PreprocessorOptions` (2/n) (#87099)
An instance of `PreprocessorOptions` is part of `CompilerInvocation`
which is supposed to be a value type. The `FailedModules` member is
problematic, since it's essentially a shared state used by multiple
`CompilerInstance` objects, and not really a preprocessor option. Let's
move it into `CompilerInstance` instead.
Commit: b42fa8645c4369dfd80397a4e641ec49c96a0d2e
https://github.com/llvm/llvm-project/commit/b42fa8645c4369dfd80397a4e641ec49c96a0d2e
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/Target/DirectX/DXIL.td
A llvm/test/CodeGen/DirectX/ceil.ll
A llvm/test/CodeGen/DirectX/ceil_error.ll
Log Message:
-----------
[DXIL] Add lowering for `ceil` (#87043)
Add lowering of llvm.ceil intrinsics to DXIL ops.
Fixes #86984
Commit: 360f7f5674c4ddef006d233ef7259f8fe07ae81b
https://github.com/llvm/llvm-project/commit/360f7f5674c4ddef006d233ef7259f8fe07ae81b
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
Log Message:
-----------
[GlobalISel] Call `setInstrAndDebugLoc` before `tryCombineAll` (#86993)
This can remove all unnecessary redundant calls in each combiner.
Commit: 3a106e5b2cd9f4073b2961b991ebaeee96786309
https://github.com/llvm/llvm-project/commit/3a106e5b2cd9f4073b2961b991ebaeee96786309
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cmpxchg-128.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cmpxchg-with-success.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-atomic-cmpxchg-with-success.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddo.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubo.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubsat.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/add.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/cttz.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/mul.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-ext-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-ext-rv64.mir
M llvm/unittests/CodeGen/GlobalISel/CSETest.cpp
Log Message:
-----------
[GlobalISel] Fold G_ICMP if possible (#86357)
This patch tries to fold `G_ICMP` if possible.
Commit: cc8c6b037cd24a47ff6953508e5734562ef1ecc4
https://github.com/llvm/llvm-project/commit/cc8c6b037cd24a47ff6953508e5734562ef1ecc4
Author: dhruvachak <Dhruva.Chakrabarti at amd.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
A openmp/libomptarget/test/offloading/d2d_memcpy_sync.c
Log Message:
-----------
[OpenMP] [amdgpu] Added a synchronous version of data exchange. (#87032)
Similar to H2D and D2H, use synchronous mode for large data transfers
beyond a certain size for D2D as well. As with H2D and D2H, this size is
controlled by an env-var.
Commit: ddc9892999a42f9fd069f9786b82cb63312eba63
https://github.com/llvm/llvm-project/commit/ddc9892999a42f9fd069f9786b82cb63312eba63
Author: mlevesquedion <mlevesquedion at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M flang/test/Transforms/stack-arrays.fir
M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
A mlir/test/IR/greedy-pattern-rewrite-driver-bottom-up.mlir
A mlir/test/IR/greedy-pattern-rewrite-driver-top-down.mlir
R mlir/test/IR/greedy-pattern-rewriter-driver.mlir
Log Message:
-----------
Add operands to worklist when only used by deleted op (#86990)
I believe the existing check to determine if an operand should be added
is incorrect: `operand.use_empty() || operand.hasOneUse()`. This is
because these checks do not take into account the fact that the op is
being deleted. It hasn't been deleted yet, so `operand.use_empty()`
cannot be true, and `operand.hasOneUse()` may be true if the op being
deleted is the only user of the operand and it only uses it once, but it
will fail if the operand is used more than once (e.g. something like
`add %0, %0`).
Instead, check if the op being deleted is the only _user_ of the
operand. If so, add the operand to the worklist.
Fixes #86765
Commit: 12fdf04ff8962c9e902669a1b600b27a960f0c11
https://github.com/llvm/llvm-project/commit/12fdf04ff8962c9e902669a1b600b27a960f0c11
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
A clang/test/Driver/darwin-ld-reexports.c
Log Message:
-----------
[clang][Darwin] Handle reexported library arguments in driver (#86980)
`-reexport*` is the newer spelling for `-sub-library` which is already
supported by the clang driver when invoking ld.
Support the new spellings when passed by the user. This also helps
simplify `clang-installapi` driver logic.
Commit: cf73f136c5e22e7e4090fc762456ace47752a898
https://github.com/llvm/llvm-project/commit/cf73f136c5e22e7e4090fc762456ace47752a898
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
A clang/test/Sema/constant-builtins-all-args-evaluated.cpp
Log Message:
-----------
[clang][ExprConst] Fix second arg of __builtin_{clzg,ctzg} not always being evaluated (#86742)
Even if we don't actually use the value of the second argument, we have to evaluate it for side-effects.
---------
Co-authored-by: Richard Smith <richard at metafoo.co.uk>
Commit: bbb8a6c836b12968c3590a98271b30017b98ca73
https://github.com/llvm/llvm-project/commit/bbb8a6c836b12968c3590a98271b30017b98ca73
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libc/src/__support/FPUtil/BasicOperations.h
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/CanonicalizeTest.h
Log Message:
-----------
[libc][math][c23] Fix impl and tests for X86_80 canonicalize function. (#87103)
In continuation to: #87097
Commit: 13b3762608e4d3978cbb49e20f0afc3a13303f88
https://github.com/llvm/llvm-project/commit/13b3762608e4d3978cbb49e20f0afc3a13303f88
Author: Diego Caballero <diegocaballero at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
Log Message:
-----------
[mlir][Vector] Fix crash in drop unit dims (#87104)
An `arith.select` may have a scalar condition and true/false vector values.
Commit: c0a3c5c81ff7ff9e2a90b1664d6e419bf99c1aa9
https://github.com/llvm/llvm-project/commit/c0a3c5c81ff7ff9e2a90b1664d6e419bf99c1aa9
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/strings_test.cpp
M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
Log Message:
-----------
[scudo] Change tests that use setrlimit to cause mmap to fail. (#87004)
It appears that qemu does not actually cause mmap to fail when calling
setrlimit to limit the address space size. In the two tests that use
setrlimit, detect if mmap still works and skip the tests in that case.
Since all Android targets should support setrlimit, compile out the mmap
check code for them.
Commit: 0030fc4ac74a9ce645adb9d59e108da4d4d11818
https://github.com/llvm/llvm-project/commit/0030fc4ac74a9ce645adb9d59e108da4d4d11818
Author: Rob Suderman <rob.suderman at gmail.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
Log Message:
-----------
[mlir]Fix dialect conversion drop uses (#86991)
Before deleting the block we need to drop uses to the surrounding args.
If this is not performed dialect conversion failures can result in a
failure to remove args (despite the block having no remaining uses).
Commit: 038e66fe59962de121ce24ee709eca7a0783cbc4
https://github.com/llvm/llvm-project/commit/038e66fe59962de121ce24ee709eca7a0783cbc4
Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M openmp/runtime/src/kmp_runtime.cpp
A openmp/runtime/test/tasking/hidden_helper_task/issue-87117.c
Log Message:
-----------
[OpenMP] Have hidden helper team allocate new OS threads only (#87119)
The hidden helper team pre-allocates the gtid space [1,
num_hidden_helpers] (inclusive). If regular host threads are allocated,
then put back in the thread pool, then the hidden helper team is
initialized, the hidden helper team tries to allocate the threads from
the thread pool with gtids higher than [1, num_hidden_helpers]. Instead,
have the hidden helper team fork OS threads so the correct gtid range
used for hidden helper threads.
Fixes: #87117
Commit: dc4cfdbb8f9f665c1699e6289b6edfbc8d1bb443
https://github.com/llvm/llvm-project/commit/dc4cfdbb8f9f665c1699e6289b6edfbc8d1bb443
Author: Aart Bik <ajcbik at google.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M mlir/include/mlir/ExecutionEngine/SparseTensor/Storage.h
M mlir/include/mlir/ExecutionEngine/SparseTensorRuntime.h
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/ExecutionEngine/SparseTensor/Storage.cpp
M mlir/lib/ExecutionEngine/SparseTensorRuntime.cpp
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
Log Message:
-----------
[mlir][sparse] provide an AoS "view" into sparse runtime support lib (#87116)
Note that even though the sparse runtime support lib always uses SoA
storage for COO storage (and provides correct codegen by means of views
into this storage), in some rare cases we need the true physical SoA
storage as a coordinate buffer. This PR provides that functionality by
means of a (costly) coordinate buffer call.
Since this is currently only used for testing/debugging by means of the
sparse_tensor.print method, this solution is acceptable. If we ever want
a performing version of this, we should truly support AoS storage of COO
in addition to the SoA used right now.
Commit: b4693e0d7da8f7f1f1365ab97ecc0e33ad459943
https://github.com/llvm/llvm-project/commit/b4693e0d7da8f7f1f1365ab97ecc0e33ad459943
Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M clang/cmake/caches/CrossWinToARMLinux.cmake
Log Message:
-----------
[CMake] Update CMake cache file for the Win-to-Arm cross toolchains. NFC. (#87113)
Review the actual component parameters and update the cache file
accordingly.
Also fixed the C++ test builds for the compiler-rt component.
Commit: 7467dc188a0c63b32bd3068fc98ae77f86285c0d
https://github.com/llvm/llvm-project/commit/7467dc188a0c63b32bd3068fc98ae77f86285c0d
Author: Sitnikov Sergey <109442154+Aqendo at users.noreply.github.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M openmp/libomptarget/DeviceRTL/src/Debug.cpp
Log Message:
-----------
Fix apostrophes in assert error message (#69881)
Commit: 7de82ca369b5e9114636420a16e1c5d25283421d
https://github.com/llvm/llvm-project/commit/7de82ca369b5e9114636420a16e1c5d25283421d
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/test/X86/linux-bug-table.s
Log Message:
-----------
[BOLT] Don't terminate on trap instruction for Linux kernel (#87021)
Under normal circumstances, we terminate basic blocks on a trap
instruction. However, Linux kernel may resume execution after hitting a
trap (ud2 on x86). Thus, we introduce "--terminal-trap" option that will
specify if the trap instruction should terminate the control flow. The
option is on by default except for the Linux kernel mode when it's off.
Commit: a8b0ecd2605ff23f495a8af64e06c35f86834e54
https://github.com/llvm/llvm-project/commit/a8b0ecd2605ff23f495a8af64e06c35f86834e54
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/config/config.json
M libc/docs/configure.rst
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
[libc] enable stack protectors and frame pointers on default (#86288)
Commit: 5538853f9abb559ff4bb7ff598535041d91d97d7
https://github.com/llvm/llvm-project/commit/5538853f9abb559ff4bb7ff598535041d91d97d7
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassBuilder.cpp
A llvm/test/tools/llc/new-pm/machine-function-properties.mir
Log Message:
-----------
[PassManager] Support MachineFunctionProperties (#83668)
This pull request adds `MachineFunctionProperties` support. If a pass
wants to modify machine function properties, it must derive from
`MachinePassInfoMixin` and define some static methods like in legacy
pass manager. A test pass `RequireAllMachineFunctionPropertiesPass` is
also added here, which could be a example.
Commit: 0be26dbbed91ba84b4d00bd2e19e2f60aeb51a9f
https://github.com/llvm/llvm-project/commit/0be26dbbed91ba84b4d00bd2e19e2f60aeb51a9f
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassBuilder.cpp
R llvm/test/tools/llc/new-pm/machine-function-properties.mir
Log Message:
-----------
Revert "[PassManager] Support MachineFunctionProperties (#83668)" (#87136)
This reverts commit 5538853f9abb559ff4bb7ff598535041d91d97d7. #83668
Break some test bots.
Commit: 4f7132952222cd9b2709e98109d6ce0ef333940c
https://github.com/llvm/llvm-project/commit/4f7132952222cd9b2709e98109d6ce0ef333940c
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassBuilder.cpp
A llvm/test/tools/llc/new-pm/machine-function-properties.mir
Log Message:
-----------
Reland "[PassManager] Support MachineFunctionProperties (#83668)" (#87137)
Fix preprocessor directive.
Commit: e9e4ab8147f0b8a8d1c8f1a70bef3999ffeeb651
https://github.com/llvm/llvm-project/commit/e9e4ab8147f0b8a8d1c8f1a70bef3999ffeeb651
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassBuilder.cpp
R llvm/test/tools/llc/new-pm/machine-function-properties.mir
Log Message:
-----------
Revert "Reland "[PassManager] Support MachineFunctionProperties (#83668)"" (#87138)
Reverts llvm/llvm-project#87137
It introduces ambiguous template specialization problem. Revert it.
Commit: 09403a66c01ef189c5e6993410fc9e082acaccf2
https://github.com/llvm/llvm-project/commit/09403a66c01ef189c5e6993410fc9e082acaccf2
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M lld/test/ELF/allow-shlib-undefined.s
Log Message:
-----------
[ELF,test] Improve "non-exported symbol" tests
Test that the error is not triggered when we see the non-exported
definition first (#86777).
Commit: df54f627fad789ccb11c72a9fddf116decbeba0e
https://github.com/llvm/llvm-project/commit/df54f627fad789ccb11c72a9fddf116decbeba0e
Author: Fangrui Song <i at maskray.me>
Date: 2024-03-29 (Fri, 29 Mar 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
M lld/test/ELF/allow-shlib-undefined.s
M lld/test/ELF/shlib-undefined-local.s
Log Message:
-----------
[ELF] Enhance --no-allow-shlib-undefined for non-exported definitions
For a DSO with all DT_NEEDED entries accounted for, if it contains an
undefined non-weak symbol that shares a name with a non-exported
definition (hidden visibility or localized by a version script), and
there is no DSO definition, we should report an error.
#70769 implemented the error when we see `ref.so def-hidden.so`. This patch
implementes the error when we see `def-hidden.so ref.so`, matching GNU
ld.
Close #86777
Commit: 95258419f6fe2e0922c2c0916fd176b9f7361555
https://github.com/llvm/llvm-project/commit/95258419f6fe2e0922c2c0916fd176b9f7361555
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/wave32.ll
Log Message:
-----------
[AMDGPU] Use AMDGPU::isIntrinsicAlwaysUniform in isSDNodeAlwaysUniform (#87085)
This is mostly just a simplification, but tests show a slight codegen
improvement in code using the deprecated amdgcn.icmp/fcmp intrinsics.
Commit: 631ae59d301496f86a8d46d28f7b12afbd12a3c1
https://github.com/llvm/llvm-project/commit/631ae59d301496f86a8d46d28f7b12afbd12a3c1
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M mlir/lib/ExecutionEngine/CMakeLists.txt
Log Message:
-----------
[MLIR][ExecutionEngine] Introduce shared library (#87067)
This commit introduces a shared library for the MLIR execution engine.
This library is only built when `LLVM_BUILD_LLVM_DYLIB` is set. Having
such a library allows downstream users to depend on the execution engine
without giving up dynamic linkage. This is especially important for CPU
runner-style tools, as they link against large parts of MLIR and LLVM.
It is alternatively possible to modify the `MLIRExecutionEngine` target
when `LLVM_BUILD_LLVM_DYLIB` is set, to avoid duplicated libraries.
Commit: 546dc2245ffc4cccd0b05b58b7a5955e355a3b27
https://github.com/llvm/llvm-project/commit/546dc2245ffc4cccd0b05b58b7a5955e355a3b27
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M clang/lib/Interpreter/Value.cpp
Log Message:
-----------
[clang-repl] Minor cleanups in Value.cpp (NFC) (#87066)
Commit: b361b5369ed4bb186f2a11459b1bc1d54d73a33e
https://github.com/llvm/llvm-project/commit/b361b5369ed4bb186f2a11459b1bc1d54d73a33e
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/IR/PassManager.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassBuilder.cpp
A llvm/test/tools/llc/new-pm/machine-function-properties.mir
Log Message:
-----------
Reland "[PassManager] Support MachineFunctionProperties (#83668)" (#87141)
Unfortunately GCC 9 rejects code in https://godbolt.org/z/zd9r5GM3e GCC
11 accepts this code.
Commit: 29e8bfc13c6078ed07e6474e8c9634c42aa2f6f4
https://github.com/llvm/llvm-project/commit/29e8bfc13c6078ed07e6474e8c9634c42aa2f6f4
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
Log Message:
-----------
[RISCV] RISCV vector calling convention (2/2) (#79096)
This commit handles vector arguments/return for function definition/call,
the new class RVVArgDispatcher is added for doing all vector register
assignment including mask types, data types as well as tuple types.
It precomputes the register number for each argument as per
https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/master/riscv-cc.adoc#standard-vector-calling-convention-variant
and it's passed to calling convention function to handle all vector arguments.
Depends on: #78550
Commit: 37c175af955f0aeab67e8c553a0a47b2ed0fdba2
https://github.com/llvm/llvm-project/commit/37c175af955f0aeab67e8c553a0a47b2ed0fdba2
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/test/Driver/msvc-link.c
Log Message:
-----------
[clang][Driver] Pass -machine argument to the linker explicitly for ARM64EC targets. (#86835)
This is required by the linker. Also add a new -marm64x command line argument to allow specifying -machine:arm64x.
Commit: 799e1d6a128438268bbf64b8c30ad3722f55524b
https://github.com/llvm/llvm-project/commit/799e1d6a128438268bbf64b8c30ad3722f55524b
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/lib/IR/Mangler.cpp
M llvm/test/CodeGen/AArch64/dllexport.ll
Log Message:
-----------
[IR] Use EXPORTAS for ARM64EC mangled symbols with dllexport attribute. (#81940)
We currently just use mangled name. This works fine, because linker
should detect that and demangle it for the export table. However, on
MSVC, the compiler is more specific and passes demangled name as well,
with EXPORTAS. This PR aims to match that. MSVC doesn't use quotes in
this case, so I added '#' to the list of characters that don't need it.
Commit: 556bf03a572fb8f6a91f1ad5227603b37717c55d
https://github.com/llvm/llvm-project/commit/556bf03a572fb8f6a91f1ad5227603b37717c55d
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M clang/test/Driver/msvc-link.c
Log Message:
-----------
[clang][NFC] Fix ARM64EC clang-cl linker driver tests. (#87160)
Add '--' argument to clang-cl to avoid interpreting input files with /U
option. Fix for llvm-clang-aarch64-darwin buildbot failure after #86835.
Commit: 6aa53888a8e8a6e3f0bd279539703f4d4701b4e7
https://github.com/llvm/llvm-project/commit/6aa53888a8e8a6e3f0bd279539703f4d4701b4e7
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M libcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.pass.cpp
M libcxx/test/libcxx/input.output/filesystems/convert_file_time.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.db/rules.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.db/zones.pass.cpp
Log Message:
-----------
[libc++][test] Improves src include paths. (#86864)
Instead of including a relative path use an absolute path based on the
available lit substitution. This makes it easier to understand what is
included and moving the test to a different directory level no longer
breaks the test.
This is based on a question by @EricWF in
https://github.com/llvm/llvm-project/pull/82113.
Commit: 3c8ede9f4524fd8defbbf41788003a6d4b0afb04
https://github.com/llvm/llvm-project/commit/3c8ede9f4524fd8defbbf41788003a6d4b0afb04
Author: Marc Auberer <marc.auberer at chillibits.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
Log Message:
-----------
[HLSL][clang] Move hlsl_wave_get_lane_index to EmitHLSLBuiltinExpr (#87131)
Resolves #87109
Commit: 8d9cb6b016c9dce8412c329277f1bbaa3f16961c
https://github.com/llvm/llvm-project/commit/8d9cb6b016c9dce8412c329277f1bbaa3f16961c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Inline getVPValue in only caller (NFCI).
Commit: a67b9326cd0448072a1192951f12f3927f31af8c
https://github.com/llvm/llvm-project/commit/a67b9326cd0448072a1192951f12f3927f31af8c
Author: Min Hsu <min at myhsu.dev>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M llvm/lib/Target/M68k/M68kInstrInfo.td
Log Message:
-----------
[M68k][NFC] Refactoring memory operands of different sizes with foreach
I'm planning to add memory operands that produce floating point type. In
order to prevent code bloating induced by memory operands of not just
integer but floating point types, I factored the sizes from these
operands with foreach loops.
Commit: c0febca3a64530c1cc3f117aec6a28c37114e572
https://github.com/llvm/llvm-project/commit/c0febca3a64530c1cc3f117aec6a28c37114e572
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-30 (Sat, 30 Mar 2024)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
Log Message:
-----------
[BOLT][NFC] Refactor BC::createBinaryContext for #81346 (#87172)
Commit: ea92b1f9d0fc31f1fd97ad04eb0412003a37cb0d
https://github.com/llvm/llvm-project/commit/ea92b1f9d0fc31f1fd97ad04eb0412003a37cb0d
Author: Karl-Johan Karlsson <karl-johan.karlsson at ericsson.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/FormatString.h
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/AST/FormatString.cpp
M clang/lib/Sema/SemaChecking.cpp
A clang/test/Sema/format-strings-signedness-fixit.c
A clang/test/Sema/format-strings-signedness.c
Log Message:
-----------
[Sema] Implement support for -Wformat-signedness (#74440)
In gcc there exist a modifier option -Wformat-signedness that turns on
additional signedness warnings in the already existing -Wformat warning.
This patch implements that support in clang. This is done by adding a dummy
warning diag::warn_format_conversion_argument_type_mismatch_signedness that
is never emitted and only used as an option to toggle the signedness warning
in -Wformat. This will ensure gcc compatibility.
Commit: d12e45ad16a62f7d3ff20b90863f42c9ddb0e624
https://github.com/llvm/llvm-project/commit/d12e45ad16a62f7d3ff20b90863f42c9ddb0e624
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT][NFC] Split out DomTree construction from BF::calculateLoopInfo (#87181)
Commit: b6f6be4b500ff64c23a5103ac3311cb74519542f
https://github.com/llvm/llvm-project/commit/b6f6be4b500ff64c23a5103ac3311cb74519542f
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.h
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.cpp
A clang-tools-extra/clang-tidy/objc/ObjcMatcher.h
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.cpp
Log Message:
-----------
[clang-tidy][NFC] Remove duplicated code
Remove duplicated matchers by moving some of them to
utils/Matchers.h. Add some anonymous namespaces and
renamed some code to avoid ODR issues.
Commit: 11a411a49b62c129bba551df4587dd446fcdc660
https://github.com/llvm/llvm-project/commit/11a411a49b62c129bba551df4587dd446fcdc660
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.h
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.cpp
R clang-tools-extra/clang-tidy/objc/ObjcMatcher.h
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.cpp
Log Message:
-----------
Revert "[clang-tidy][NFC] Remove duplicated code"
This reverts commit b6f6be4b500ff64c23a5103ac3311cb74519542f.
Commit: 02078199d9839a8e0232a543b7bcd74867ca7d8e
https://github.com/llvm/llvm-project/commit/02078199d9839a8e0232a543b7bcd74867ca7d8e
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/Mangler.h
M llvm/include/llvm/Object/COFF.h
M llvm/include/llvm/Object/COFFImportFile.h
M llvm/lib/IR/Mangler.cpp
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
Log Message:
-----------
[IR][Object][NFC] Move ARM64EC name mangling helpers to Mangler.h. (#87191)
Move the implementation to llvm:Core to avoids including `COFF.h` in `Mangler.cpp`.
Commit: 45f5fa2925142edf9a3d1648fac6c1f80b360175
https://github.com/llvm/llvm-project/commit/45f5fa2925142edf9a3d1648fac6c1f80b360175
Author: Noah Goldstein <goldstein.w.n at gmail.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/unittests/IR/PatternMatch.cpp
Log Message:
-----------
[IR] Add commutable matcher for `add nuw`; NFC
Closes #87179
Commit: 154cea46732f4014bb409f1bcac9b39ac56df193
https://github.com/llvm/llvm-project/commit/154cea46732f4014bb409f1bcac9b39ac56df193
Author: Pablo Busse <Pablo.Busse at microsoft.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/test/API/functionalities/type_find_first/Makefile
M lldb/test/API/functionalities/type_find_first/TestFindFirstType.py
M lldb/test/API/functionalities/type_find_first/main.cpp
A lldb/test/API/functionalities/type_find_first/other.cpp
Log Message:
-----------
[lldb] Fix type lookup in DWARF .o files via debug map (#87177)
An inverted condition causes `SymbolFileDWARFDebugMap::FindTypes` to
bail out after inspecting the first .o file in each module.
The same kind of bug is found in
`SymbolFileDWARFDebugMap::ParseDeclsForContext`.
Correct both early exit conditions and add a regression test for lookup
of up a type defined in a secondary compilation unit.
Fixes #87176
Commit: 8d8fff09d7e1267e75c2b9a1986c9d64533c177e
https://github.com/llvm/llvm-project/commit/8d8fff09d7e1267e75c2b9a1986c9d64533c177e
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/include/llvm/Object/COFFImportFile.h
M llvm/lib/Object/COFFImportFile.cpp
Log Message:
-----------
[Object][COFF][NFC] Don't use inline function for COFFImportFile::printSymbolName. (#87195)
Fixes BUILD_SHARED_LIBS builds after #87191 made helpers non-inline.
Commit: 0234d90d818204f3a575de744a8df8448a7adeca
https://github.com/llvm/llvm-project/commit/0234d90d818204f3a575de744a8df8448a7adeca
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/test/CodeGen/AMDGPU/neighboring-mfma-padding.mir
Log Message:
-----------
[AMDGPU] Extend MFMA padding option to gfx90a+ (#86768)
It was shown experimentally that this may have some benefit on newer HW.
Commit: b5b34dbb27359139ef1eb2ca22e8c5a954e34e50
https://github.com/llvm/llvm-project/commit/b5b34dbb27359139ef1eb2ca22e8c5a954e34e50
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
Log Message:
-----------
[AMDGPU] Use directive for kernarg preload header padding (#86004)
Commit: d2b63ed0ca5c7eb3f8fc029e3a5705cf0ddab438
https://github.com/llvm/llvm-project/commit/d2b63ed0ca5c7eb3f8fc029e3a5705cf0ddab438
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
Revert "Revert "[compiler-rt] Allow building builtins.a without a libc (#86737)""
This reverts commit a2982a29fdfcfe2904754815c85f630a4dc6d88c.
Buildbot failure that motivated the revert looks unrelated.
Commit: 2b0ab05c4a6c25049a30c56e6f0487db70abb3d5
https://github.com/llvm/llvm-project/commit/2b0ab05c4a6c25049a30c56e6f0487db70abb3d5
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Simplify type checks with isa predicates (#87182)
For more context on isa predicates, see:
https://github.com/llvm/llvm-project/pull/83753.
Commit: 75f7d53f0ba5d77920ea895021b330f261e808cd
https://github.com/llvm/llvm-project/commit/75f7d53f0ba5d77920ea895021b330f261e808cd
Author: Greg Clayton <gclayton at fb.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Log Message:
-----------
Fix DWARF locations when we have large .dwp files. (#87164)
We have the ability to load .dwp files with a .debug_info.dwo section
that exceeds 4GB. There were 4 locations that were using 32 bit offsets
and lengths to extract variable locations, and if a DIE was over the 4GB
barrier, we would truncate the block offset for the variable locations
and the variable expression would be garbage. This fixes the issues. It
isn't possible to add a test for this as we don't want to create a 4GB
.dwp file on test machines.
Commit: 82c6eeed08b1c8267f6e92d594c910fe57a9775e
https://github.com/llvm/llvm-project/commit/82c6eeed08b1c8267f6e92d594c910fe57a9775e
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/Arith.h
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/OpDefinition.h
M mlir/include/mlir/IR/OperationSupport.h
M mlir/lib/IR/MLIRContext.cpp
Log Message:
-----------
[MLIR] Add a second map for registered OperationName in MLIRContext (NFC) (#87170)
This speeds up registered op creation by 10-11% by allowing lookup by
TypeID instead of StringRef.
This can break your build/tests at runtime with an error that you're creating
an unregistered operation that you have registered. If so you are likely using
a class inheriting from the "real" operation. See for example in this patch the
case of:
class ConstantIndexOp : public arith::ConstantOp {
If one is using `builder.create<ConstantIndexOp>()` they actually create an
`arith.constant` operation, but the builder will fetch the TypeID for
the `ConstantIndexOp` class which does not correspond to any registered
operation. To fix it the `ConstantIndexOp` class got this addition:
static ::mlir::TypeID resolveTypeID() { return TypeID::get<ConstantOp>(); }
Commit: 23941019c0177b598c606581c8ca99eb7842769b
https://github.com/llvm/llvm-project/commit/23941019c0177b598c606581c8ca99eb7842769b
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
Log Message:
-----------
Revert "[mlir]Fix dialect conversion drop uses" (#87205)
Reverts llvm/llvm-project#86991
Some bots are broken with a leak being detected now.
Commit: a0c019ae9ebd507bf7df58f6cc13eb7ebcd5e97f
https://github.com/llvm/llvm-project/commit/a0c019ae9ebd507bf7df58f6cc13eb7ebcd5e97f
Author: Philip Lassen <plassen at groq.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
Log Message:
-----------
[mlir][linalg] Delete unused SameVariadicOperandSize trait from ops (#87124)
Both `Transpose` and `Broadcast` specify the `SameVariadicOperandSize`
trait. However neither has a variadic operand let alone more than one.
This is likely a relic from copying the boilerplate of the `Reduce`
definition.
Commit: ca68a14eb822d88bc32d511258f261e88dd6b7d6
https://github.com/llvm/llvm-project/commit/ca68a14eb822d88bc32d511258f261e88dd6b7d6
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
Revert "Revert "Revert "[compiler-rt] Allow building builtins.a without a libc (#86737)"""
This reverts commit d2b63ed0ca5c7eb3f8fc029e3a5705cf0ddab438. CI again.
Leading theory is bad interaction between cmake and buildbot, some guesses at PR86737
Commit: f87bde2962dded71599034880f57f742ea371888
https://github.com/llvm/llvm-project/commit/f87bde2962dded71599034880f57f742ea371888
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProf.h
Log Message:
-----------
[nfc] Update comment for raw profile version 10. (#87207)
- The raw profile format change is in https://github.com/llvm/llvm-project/pull/82711
Commit: 216b5e96664f72fdb63b6bbd6c422185c67ef818
https://github.com/llvm/llvm-project/commit/216b5e96664f72fdb63b6bbd6c422185c67ef818
Author: Ruiling, Song <ruiling.song at amd.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.inreg.ll
Log Message:
-----------
[AMDGPU] Expose RTZ version of f16 interpolation for gfx11+ (#86614)
Commit: dc0cb17241aeff205a0c3a7cc4e790afab7484dd
https://github.com/llvm/llvm-project/commit/dc0cb17241aeff205a0c3a7cc4e790afab7484dd
Author: Thurston Dang <thurston at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M compiler-rt/lib/msan/msan_linux.cpp
Log Message:
-----------
[msan] Nit: use init_origins parameter instead of __msan_get_track_origins() in InitShadowWithReExec (#86994)
This fixes a nit I had accidentally introduced in
https://github.com/llvm/llvm-project/pull/85142
I don't think the value of __msan_get_track_origins() will change
between the start and end of InitShadowWithReExec, but it's cleaner to
use the parameter.
Commit: fd38366e4525c5507bbb2a2fc1f7d113a964224e
https://github.com/llvm/llvm-project/commit/fd38366e4525c5507bbb2a2fc1f7d113a964224e
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M bolt/include/bolt/Core/AddressMap.h
M bolt/include/bolt/Core/BinaryData.h
M bolt/include/bolt/Core/BinaryDomTree.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/BinaryLoop.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/DebugData.h
M bolt/include/bolt/Core/DebugNames.h
M bolt/include/bolt/Core/FunctionLayout.h
M bolt/include/bolt/Core/MCPlus.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/BinaryPasses.h
M bolt/include/bolt/Passes/CacheMetrics.h
M bolt/include/bolt/Passes/DominatorAnalysis.h
M bolt/include/bolt/Passes/ReachingDefOrUse.h
M bolt/include/bolt/Passes/ReachingInsns.h
M bolt/include/bolt/Passes/ReorderUtils.h
M bolt/include/bolt/Profile/ProfileReaderBase.h
M bolt/include/bolt/Profile/ProfileYAMLMapping.h
M bolt/include/bolt/Rewrite/DWARFRewriter.h
M bolt/include/bolt/Rewrite/MetadataManager.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/include/bolt/RuntimeLibs/RuntimeLibrary.h
M bolt/include/bolt/Utils/NameShortener.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/FunctionLayout.cpp
M bolt/lib/Core/HashUtilities.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/CMOVConversion.cpp
M bolt/lib/Passes/FixRISCVCallsPass.cpp
M bolt/lib/Passes/FixRelaxationPass.cpp
M bolt/lib/Passes/FrameOptimizer.cpp
M bolt/lib/Passes/Hugify.cpp
M bolt/lib/Passes/Inliner.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
M bolt/lib/Passes/SplitFunctions.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Passes/ValidateInternalCalls.cpp
M bolt/lib/Profile/CMakeLists.txt
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Profile/Heatmap.cpp
R bolt/lib/Profile/ProfileReaderBase.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/JITLinkLinker.cpp
M bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/heatmap/heatmap.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
Log Message:
-----------
[BOLT][NFC] Clean includes, add license headers (#87200)
Commit: 2bfb19e813fcfdcb4a37b16bd77d267d7c77f0f8
https://github.com/llvm/llvm-project/commit/2bfb19e813fcfdcb4a37b16bd77d267d7c77f0f8
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/Analysis/ReplayInlineAdvisor.cpp
Log Message:
-----------
Revert "Make two texts static in `ReplayInlineAdvisor`" (#82071)
Reverts llvm/llvm-project#79489
We know that the issues was with asan/annotations. We can revert it.
Commit: 70deb7bfe90af91c68454b70683fbe98feaea87d
https://github.com/llvm/llvm-project/commit/70deb7bfe90af91c68454b70683fbe98feaea87d
Author: Yingchi Long <i at lyc.dev>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Target/BPF/BPFISelLowering.cpp
A llvm/test/CodeGen/BPF/cttz-ctlz.ll
Log Message:
-----------
[BPF] expand cttz, ctlz for i32, i64 (#73668)
Fixes: https://github.com/llvm/llvm-project/issues/62252
Depends on: #73667
Commit: 90c738ef15fc6f10255dced0b1557f2cd2c4f43b
https://github.com/llvm/llvm-project/commit/90c738ef15fc6f10255dced0b1557f2cd2c4f43b
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
Log Message:
-----------
[IR] Introduce `llvm.allow.{runtime,ubsan}.check()` (#84850)
The goal is to have ability to change logic compile time based on PGO
data.
Our primary application is removing UBSAN checks from hot code.
Then we'd like to use this for libc++ hardening and regular debug
asserts.
Previous attempt is #84214.
Benefits from special intrinsic vs #84214:
1. Resulting binary is 3% faster than removing traps (on
"test-suite/MultiSource/Benchmarks" with PGO+ThinLTO)
2. Intrinsic can be used from source code to change behavior from C/C++
program. E.g. enabling asserts in cold code.
3. Easier to match basic blocks.
RFC:
https://discourse.llvm.org/t/rfc-add-llvm-experimental-hot-intrinsic-or-llvm-hot/77641
---------
Co-authored-by: Nikita Popov <npopov at redhat.com>
Commit: a21e0ba192147af4968742785f375dba0e3ea768
https://github.com/llvm/llvm-project/commit/a21e0ba192147af4968742785f375dba0e3ea768
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
Log Message:
-----------
[clang-tidy] Fix buffer overflow in compareHeaders (#87213)
`RHS` can be shorter than `LHS`.
Reported by asan after #83440.
Commit: 20f56e1f8e51d672425ec0c8f2ec243b131e8296
https://github.com/llvm/llvm-project/commit/20f56e1f8e51d672425ec0c8f2ec243b131e8296
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/IntrinsicLowering.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
A llvm/test/CodeGen/AArch64/allow-check.ll
A llvm/test/CodeGen/AMDGPU/allow-check.ll
A llvm/test/CodeGen/Generic/allow-check.ll
A llvm/test/CodeGen/RISCV/allow-check.ll
A llvm/test/CodeGen/X86/allow-check.ll
Log Message:
-----------
[CodeGen] Add default lowering for llvm.allow.{runtime,ubsan}.check() (#86049)
RFC:
https://discourse.llvm.org/t/rfc-add-llvm-experimental-hot-intrinsic-or-llvm-hot/77641
Commit: 421557974a3e0f469e6f4c3caecbf8aba69bb5bf
https://github.com/llvm/llvm-project/commit/421557974a3e0f469e6f4c3caecbf8aba69bb5bf
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
Log Message:
-----------
[AMDGPU] Use glue for convergence tokens at call-like operations (#86766)
The earlier implementation on AMDGPU used explicit token operands at
SI_CALL and SI_CALL_ISEL. This is now replaced with CONVERGENCECTRL_GLUE
operands, with the following effects:
- The treatment of tokens at call-like operations is now consistent with
the treatment at intrinsics.
- Support for tail calls using implicit tokens at SI_TCRETURN "just
works".
- The extra parameter at call-like instructions is eliminated, thus
restoring those instructions and their handling to the original state.
The new glue node is placed after the existing glue node for the
outgoing call parameters, which seems to not interfere with selection of
the call-like nodes.
Commit: 1e442ac4c33ac36d33e191c2d18ff594d8a5d11a
https://github.com/llvm/llvm-project/commit/1e442ac4c33ac36d33e191c2d18ff594d8a5d11a
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/test/Analysis/CostModel/free-intrinsics-datalayout.ll
M llvm/test/Analysis/CostModel/free-intrinsics-no_info.ll
Log Message:
-----------
[CostModel] No cost for llvm.allow.{runtime,ubsan}.check() (#86064)
These intrinsics will not be lowered to code.
RFC:
https://discourse.llvm.org/t/rfc-add-llvm-experimental-hot-intrinsic-or-llvm-hot/77641
Commit: 0bc3781649c2d029e61766c0b74ea1f416996105
https://github.com/llvm/llvm-project/commit/0bc3781649c2d029e61766c0b74ea1f416996105
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/Analysis/AliasSetTracker.cpp
M llvm/test/Analysis/AliasSet/intrinsics.ll
Log Message:
-----------
[Analysis] Exclude llvm.allow.{runtime,ubsan}.check() from AliasSetTracker (#86065)
RFC:
https://discourse.llvm.org/t/rfc-add-llvm-experimental-hot-intrinsic-or-llvm-hot/77641
Commit: 37d6e5b7a555e8c85c3e34803a710725c26857c7
https://github.com/llvm/llvm-project/commit/37d6e5b7a555e8c85c3e34803a710725c26857c7
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/Analysis/MemorySSA.cpp
A llvm/test/Analysis/MemorySSA/allow-check.ll
Log Message:
-----------
[memoryssa] Exclude llvm.allow.{runtime,ubsan}.check() (#86066)
RFC:
https://discourse.llvm.org/t/rfc-add-llvm-experimental-hot-intrinsic-or-llvm-hot/77641
Commit: 289d2cc3f398952a6ed2580530a542ca846f86e8
https://github.com/llvm/llvm-project/commit/289d2cc3f398952a6ed2580530a542ca846f86e8
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/test/CodeGen/Generic/allow-check.ll
Log Message:
-----------
[CodeGen] Fix test after #86049
Commit: b890c17892c75d1d7671b7c2ba1c927d4d3e09e2
https://github.com/llvm/llvm-project/commit/b890c17892c75d1d7671b7c2ba1c927d4d3e09e2
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/test/CodeGen/Generic/allow-check.ll
Log Message:
-----------
[CodeGen] Fix test after #86049
Commit: c4df57da1d7ede73c11a9ae60f4d4a2ce5132c56
https://github.com/llvm/llvm-project/commit/c4df57da1d7ede73c11a9ae60f4d4a2ce5132c56
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
Log Message:
-----------
[CodeGen] llvm.allow.{runtime,ubsan}.check() in FastISel
Follow up to #86049.
clang-armv8-quick build bot can trigger this branch.
Commit: c7954ca312ca7731a7611c63ff41365c28b06cb5
https://github.com/llvm/llvm-project/commit/c7954ca312ca7731a7611c63ff41365c28b06cb5
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
Log Message:
-----------
Recommit "[RISCV] Refine cost on Min/Max reduction (#79402)" (#86480)
This is recommitted as the test and fix for
llvm.vector.reduce.fmaximum/fminimum are covered in #80553 and #80697
Commit: 1679b27959bbe21b713725017b1cf36ac66dfadc
https://github.com/llvm/llvm-project/commit/1679b27959bbe21b713725017b1cf36ac66dfadc
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/mismatch.h
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/include/__memory_resource/polymorphic_allocator.h
M libcxx/include/__ranges/subrange.h
R libcxx/include/__tuple/pair_like.h
M libcxx/include/__tuple/tuple_like.h
A libcxx/include/__tuple/tuple_like_no_subrange.h
M libcxx/include/__utility/pair.h
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap
M libcxx/include/variant
M libcxx/test/libcxx/utilities/tuple/__tuple_like.compile.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.elements/range.concept.compile.pass.cpp
Log Message:
-----------
[libc++] Refactor __tuple_like and __pair_like (#85206)
The exposition-only type trait `pair-like` includes `ranges::subrange`,
but in every single case excludes `ranges::subrange` from the list. This
patch introduces two new traits `__tuple_like_no_subrange` and
`__pair_like_no_subrange`, which exclude `ranges::subrange` from the
possible matches. `__pair_like` is no longer required, and thus removed.
`__tuple_like` is implemented as `__tuple_like_no_subrange` or a
`ranges::subrange` specialization.
Commit: d76a1233f7d7923d056a53cfa6f89735e9cda86e
https://github.com/llvm/llvm-project/commit/d76a1233f7d7923d056a53cfa6f89735e9cda86e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-03-31 (Sun, 31 Mar 2024)
Changed paths:
M llvm/test/CodeGen/Generic/allow-check.ll
Log Message:
-----------
[CodeGen] Fix test after #86049
Commit: 8b135a7d1f59a5a7adccb162abf92d751209afe7
https://github.com/llvm/llvm-project/commit/8b135a7d1f59a5a7adccb162abf92d751209afe7
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
Log Message:
-----------
[sanitizer][symbolizer] Add new dependency
Commit: c0cabfbdaf547b1152065be5419bc48e0b83b761
https://github.com/llvm/llvm-project/commit/c0cabfbdaf547b1152065be5419bc48e0b83b761
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
A llvm/test/Transforms/InstCombine/allow-checks.ll
Log Message:
-----------
[InstCombiner] Remove trivially dead `llvm.allow.{runtime,ubsan}.check()` (#84851)
Intrinsic declared to have sideeffects, but it's done only to prevent
moving it. Removing unused ones is OK.
Exacted from #84850 for easier review.
Commit: cbb27bef3e53c75d7272a6392cee56c763368111
https://github.com/llvm/llvm-project/commit/cbb27bef3e53c75d7272a6392cee56c763368111
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/test/CodeGen/Generic/allow-check.ll
Log Message:
-----------
[CodeGen] Fix test after #86049
Commit: 10a57f3aff34be6ab43106dc1e45ace3f6da881c
https://github.com/llvm/llvm-project/commit/10a57f3aff34be6ab43106dc1e45ace3f6da881c
Author: Prashant Kumar <pk5561 at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
M mlir/test/Dialect/Math/expand-math.mlir
M mlir/test/lib/Dialect/Math/TestExpandMath.cpp
Log Message:
-----------
[mlir][math] Expand powfI operation for constant power operand. (#87081)
-- Convert `math.fpowi` to a series of `arith.mulf` operations.
-- If the power is negative, we divide the result by 1.
Commit: 3365d62179011aad6da3e4cbcb31044eec3462a2
https://github.com/llvm/llvm-project/commit/3365d62179011aad6da3e4cbcb31044eec3462a2
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
A clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
A clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.h
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
A clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp
Log Message:
-----------
[clang-tidy] add new check readability-enum-initial-value (#86129)
Fixes: #85243.
Commit: a4dec9d6bc67c4d8fbd4a4f54ffaa0399def9627
https://github.com/llvm/llvm-project/commit/a4dec9d6bc67c4d8fbd4a4f54ffaa0399def9627
Author: Ryotaro KASUGA <kasuga.ryotaro at fujitsu.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/MachinePipeliner.cpp
A llvm/test/CodeGen/AArch64/sms-regpress.mir
M llvm/test/CodeGen/PowerPC/sms-regpress.mir
Log Message:
-----------
[CodeGen] Fix register pressure computation in MachinePipeliner (#87030)
`RegisterClassInfo::getRegPressureSetLimit` has been changed to return a
smaller value than before so the limit may become negative in later
calculations. As a workaround, change to use
`TargetRegisterInfo::getRegPressureSetLimit`.
Also improve tests.
Commit: ef0291e5f4451abbafab0c839bf51a6382f735f3
https://github.com/llvm/llvm-project/commit/ef0291e5f4451abbafab0c839bf51a6382f735f3
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/Modules/language-linkage.cppm
Log Message:
-----------
[NFC] [Serialization] Reordering lexcical and visible TU block after type decl offsets
This patch reorder the lexical block for the translation unit, visible update block for the TU and
the viisble upaete block for the extern C context after the type decl
offsets block.
This should be a NFC patch.
This is helpful for later optimizations for eliding unreachable
declarations in the global module fragment. See the comments in
https://github.com/llvm/llvm-project/pull/76930.
Simply, if we want to get the reachable sets of declaratins during the
writing process, we need to write the file-level context later than the
process of writing declarations (which is the main process to determine
the reachable set).
Commit: da1d3d8fb9e7dba1cc89327f5119fa7c0cadef81
https://github.com/llvm/llvm-project/commit/da1d3d8fb9e7dba1cc89327f5119fa7c0cadef81
Author: superZWT123 <zhengwentao3 at huawei.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/test/TableGen/HwModeEncodeDecode2.td
M llvm/test/TableGen/HwModeEncodeDecode3.td
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen] Introduce a less aggressive suppression for HwMode Decoder… (#86060)
1. Remove 'AllModes' and 'DefaultMode' suffixes for DecoderTables under
default HwMode.
2. Introduce a less aggressive suppression for HwMode DecoderTable, only
reduce necessary tables duplications. This allows encodings under
different HwModes to retain the original DecoderNamespace.
3. Change 'suppress-per-hwmode-duplicates' command option from bool type
to enum type, allowing users to choose what level of suppression to use.
Commit: 8827ff92b96d78ef455157574061d745df2909af
https://github.com/llvm/llvm-project/commit/8827ff92b96d78ef455157574061d745df2909af
Author: Victor Perez <victor.perez at codeplay.com>
Date: 2024-04-01 (Mon, 01 Apr 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/lib/Conversion/ArithCommon/AttrToLLVMConverter.cpp
M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/ops.mlir
Log Message:
-----------
[MLIR][Arith] Add rounding mode attribute to `truncf` (#86152)
Add rounding mode attribute to `arith`. This attribute can be used in
different FP `arith` operations to control rounding mode. Rounding modes
correspond to IEEE 754-specified rounding modes. Use in `arith.truncf` folding.
As this is not supported in dialects other than LLVM, conversion should fail for
now in case this attribute is present.
---------
Signed-off-by: Victor Perez <victor.perez at codeplay.com>
Commit: b342d87f89a7cc588abd0d28f69b8dfd9e5cfa0a
https://github.com/llvm/llvm-project/commit/b342d87f89a7cc588abd0d28f69b8dfd9e5cfa0a
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/utils/TableGen/MacroFusionPredicatorEmitter.cpp
Log Message:
-----------
[TableGen][NFC] Add maybe_unused to MRI (#87044)
This suppresses warning `unused variable 'MRI' [-Wunused-variable]`
for those fusions that don't need `MRI`.
Commit: a34834138a53f7eb28ba24d325b258ac6f51ae8c
https://github.com/llvm/llvm-project/commit/a34834138a53f7eb28ba24d325b258ac6f51ae8c
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Inline addVPValue into single caller (NFCI).
Inline the function into its single caller.
Commit: c9bcb2b7ddd08e09d75b263273ddb6e0a49a82da
https://github.com/llvm/llvm-project/commit/c9bcb2b7ddd08e09d75b263273ddb6e0a49a82da
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/test/TableGen/MacroFusion.td
Log Message:
-----------
[TableGen] Fix MacroFusion.td
We are missing `[[maybe_unused]]`.
Commit: e701c1a653088488ef67a9fa5b01ab37a482b690
https://github.com/llvm/llvm-project/commit/e701c1a653088488ef67a9fa5b01ab37a482b690
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Use recipe's debug loc for VPWidenMemoryInstructionRecipe (NFCI)
Now that VPRecipeBase manages debug locations for recipes, use it in
VPWidenMemoryInstructionRecipe.
Commit: f546b6ef3c15a156959dde16fa5f03a350a0a2be
https://github.com/llvm/llvm-project/commit/f546b6ef3c15a156959dde16fa5f03a350a0a2be
Author: harishch4 <harishcse44 at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M flang/lib/Semantics/pointer-assignment.cpp
Log Message:
-----------
[Flang] Relaxing an error when contiguous pointer is assigned to a non-contig… (#86781)
…uous function.
Fix from [thtsikas](https://github.com/thtsikas) based on a discussion
in
[slack](https://flang-compiler.slack.com/archives/C5C58TT32/p1711124374836079).
Example:
```
Program test
Integer, Pointer, Contiguous :: cont(:)
Interface
Function f()
Integer, Pointer :: f(:)
End Function
End Interface
cont => f()
Print *, cont(3)
End Program
Function f()
Integer, Pointer :: f(:)
Allocate (f(4),Source=[1,1,42,1])
! f => f(4:1:-1) !! not contiguous, runtime error
End Function f
```
Understanding is that the standard intended to allow this pattern. The
restriction 10.2.2.3 p6 Data pointer assignment "If the pointer object
has the CONTIGUOUS attribute, the pointer target shall be contiguous."
is not associated with a numbered constraint. If there is a mechanism
for injecting runtime checks, this would be a place to do it. Absent
that, a warning is the best we can do.
No other compiler treats contigPtr => func() as an error when func() is
not CONTIGUOUS, so a warning would probably be better for consistency.
https://godbolt.org/z/5cM6roeEE
Commit: 4213f4a9ae0ef70e02da9f40653b4e04eea00c74
https://github.com/llvm/llvm-project/commit/4213f4a9ae0ef70e02da9f40653b4e04eea00c74
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M openmp/libomptarget/plugins-nextgen/common/include/RPC.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/common/src/RPC.cpp
Log Message:
-----------
[Libomptarget] Fix resizing the buffer of RPC handles
Summary:
The previous code would potentially make it smaller if a device with a
lower ID touched it later. Also we should minimize changes to the state
for multi threaded reasons. This just sets up an owned slot for each at
initialization time.
Commit: da9f06c9b1179423302e3e7ccb27431ced44e548
https://github.com/llvm/llvm-project/commit/da9f06c9b1179423302e3e7ccb27431ced44e548
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/test/MachineVerifier/test_g_splat_vector.mir
Log Message:
-----------
[GISEL] G_SPLAT_VECTOR can take a splat that is larger than the vector element (#86974)
This is what SelectionDAG does. We'd like to reuse SelectionDAG
patterns.
Commit: 41afef9066eec8daf517ac357a628cdf30c95e39
https://github.com/llvm/llvm-project/commit/41afef9066eec8daf517ac357a628cdf30c95e39
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/init-ext-node-not-truncable.ll
M llvm/test/Transforms/SLPVectorizer/X86/sext-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/sext.ll
M llvm/test/Transforms/SLPVectorizer/X86/zext-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/zext.ll
Log Message:
-----------
[SLP]Fix PR87011: Missing sign extension of demoted type before zero extension
Need to drop skipping of the first zext/sext nodes, it leads to
incorrect and less profitable code.
Commit: a7206a6fa32ada15578e3afddcc1480364c25f4c
https://github.com/llvm/llvm-project/commit/a7206a6fa32ada15578e3afddcc1480364c25f4c
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
Log Message:
-----------
[RISCV] ReadStoreData is read later in the pipeline for SiFive7 (#86454)
Store data is read later in the pipeline, so we use
SiFive7AnyToGPRBypass to model that a store instruction can begin some
cycles before that data is ready.
Commit: 971b852546a7d96bc8887ced913724b884cf40df
https://github.com/llvm/llvm-project/commit/971b852546a7d96bc8887ced913724b884cf40df
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Affine/Utils/LoopFusionUtils.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseToLinalg.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/SPIRV/IR/CooperativeMatrixOps.cpp
M mlir/lib/Dialect/Shape/IR/Shape.cpp
M mlir/lib/Dialect/Traits.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/IR/AffineMap.cpp
M mlir/lib/IR/Operation.cpp
M mlir/lib/TableGen/Class.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
Log Message:
-----------
[mlir][NFC] Simplify type checks with isa predicates (#87183)
For more context on isa predicates, see:
https://github.com/llvm/llvm-project/pull/83753.
Commit: 1351d17826e1efa3da3b29b6e345d44cb0ce3bc9
https://github.com/llvm/llvm-project/commit/1351d17826e1efa3da3b29b6e345d44cb0ce3bc9
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
A compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
M llvm/include/llvm/Analysis/IndirectCallVisitor.h
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Instrumentation/ValueProfilePlugins.inc
A llvm/test/Transforms/PGOProfile/vtable_prof_unsupported.ll
A llvm/test/Transforms/PGOProfile/vtable_profile.ll
A llvm/test/tools/llvm-profdata/Inputs/vtable-value-prof.proftext
A llvm/test/tools/llvm-profdata/vtable-value-prof.test
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/unittests/ProfileData/InstrProfTest.cpp
Log Message:
-----------
[InstrFDO][TypeProf] Implement binary instrumentation and profile read/write (#66825)
(The profile format change is split into a standalone change into https://github.com/llvm/llvm-project/pull/81691)
* For InstrFDO value profiling, implement instrumentation and lowering for virtual table address.
* This is controlled by `-enable-vtable-value-profiling` and off by default.
* When the option is on, raw profiles will carry serialized `VTableProfData` structs and compressed vtables as payloads.
* Implement profile reader and writer support
* Raw profile reader is used by `llvm-profdata` but not compiler. Raw profile reader will construct InstrProfSymtab with symbol names, and map profiled runtime address to vtable symbols.
* Indexed profile reader is used by `llvm-profdata` and compiler. When initialized, the reader stores a pointer to the beginning of in-memory compressed vtable names and the length of string. When used in `llvm-profdata`, reader decompress the string to show symbols of a profiled site. When used in compiler, string decompression doesn't
happen since IR is used to construct InstrProfSymtab.
* Indexed profile writer collects the list of vtable names, and stores that to index profiles.
* Text profile reader and writer support are added but mostly follow the implementation for indirect-call value type.
* `llvm-profdata show -show-vtables <args> <profile>` is implemented.
rfc in
https://discourse.llvm.org/t/rfc-dynamic-type-profiling-and-optimizations-in-llvm/74600#pick-instrumentation-points-and-instrument-runtime-types-7
Commit: 985c1a44f8d49e0afeba907fe29d881c19b319fc
https://github.com/llvm/llvm-project/commit/985c1a44f8d49e0afeba907fe29d881c19b319fc
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libcxx/benchmarks/algorithms/mismatch.bench.cpp
M libcxx/include/__algorithm/mismatch.h
M libcxx/include/__algorithm/ranges_mismatch.h
M libcxx/include/__algorithm/simd_utils.h
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
Log Message:
-----------
[libc++] Optimize the two range overload of mismatch (#86853)
```
-----------------------------------------------------------------------------
Benchmark old new
-----------------------------------------------------------------------------
bm_mismatch_two_range_overload<char>/1 0.941 ns 1.88 ns
bm_mismatch_two_range_overload<char>/2 1.43 ns 2.15 ns
bm_mismatch_two_range_overload<char>/3 1.95 ns 2.55 ns
bm_mismatch_two_range_overload<char>/4 2.58 ns 2.90 ns
bm_mismatch_two_range_overload<char>/5 3.75 ns 3.31 ns
bm_mismatch_two_range_overload<char>/6 5.00 ns 3.83 ns
bm_mismatch_two_range_overload<char>/7 5.59 ns 4.35 ns
bm_mismatch_two_range_overload<char>/8 6.37 ns 4.84 ns
bm_mismatch_two_range_overload<char>/16 11.8 ns 6.72 ns
bm_mismatch_two_range_overload<char>/64 45.5 ns 2.59 ns
bm_mismatch_two_range_overload<char>/512 366 ns 12.6 ns
bm_mismatch_two_range_overload<char>/4096 2890 ns 91.6 ns
bm_mismatch_two_range_overload<char>/32768 23038 ns 758 ns
bm_mismatch_two_range_overload<char>/262144 142813 ns 6573 ns
bm_mismatch_two_range_overload<char>/1048576 366679 ns 26710 ns
bm_mismatch_two_range_overload<short>/1 0.934 ns 1.88 ns
bm_mismatch_two_range_overload<short>/2 1.30 ns 2.58 ns
bm_mismatch_two_range_overload<short>/3 1.76 ns 3.28 ns
bm_mismatch_two_range_overload<short>/4 2.24 ns 3.98 ns
bm_mismatch_two_range_overload<short>/5 2.80 ns 4.92 ns
bm_mismatch_two_range_overload<short>/6 3.58 ns 6.01 ns
bm_mismatch_two_range_overload<short>/7 4.29 ns 7.03 ns
bm_mismatch_two_range_overload<short>/8 4.67 ns 7.39 ns
bm_mismatch_two_range_overload<short>/16 9.86 ns 13.1 ns
bm_mismatch_two_range_overload<short>/64 38.9 ns 4.55 ns
bm_mismatch_two_range_overload<short>/512 348 ns 27.7 ns
bm_mismatch_two_range_overload<short>/4096 2881 ns 225 ns
bm_mismatch_two_range_overload<short>/32768 23111 ns 1715 ns
bm_mismatch_two_range_overload<short>/262144 184846 ns 14416 ns
bm_mismatch_two_range_overload<short>/1048576 742885 ns 57264 ns
bm_mismatch_two_range_overload<int>/1 0.838 ns 1.19 ns
bm_mismatch_two_range_overload<int>/2 1.19 ns 1.65 ns
bm_mismatch_two_range_overload<int>/3 1.83 ns 2.06 ns
bm_mismatch_two_range_overload<int>/4 2.38 ns 2.42 ns
bm_mismatch_two_range_overload<int>/5 3.60 ns 2.47 ns
bm_mismatch_two_range_overload<int>/6 3.68 ns 3.05 ns
bm_mismatch_two_range_overload<int>/7 4.32 ns 3.36 ns
bm_mismatch_two_range_overload<int>/8 5.18 ns 3.58 ns
bm_mismatch_two_range_overload<int>/16 10.6 ns 2.84 ns
bm_mismatch_two_range_overload<int>/64 39.0 ns 7.78 ns
bm_mismatch_two_range_overload<int>/512 247 ns 53.9 ns
bm_mismatch_two_range_overload<int>/4096 1927 ns 429 ns
bm_mismatch_two_range_overload<int>/32768 15569 ns 3393 ns
bm_mismatch_two_range_overload<int>/262144 125413 ns 28504 ns
bm_mismatch_two_range_overload<int>/1048576 504549 ns 112729 ns
```
Commit: a8cfa7cbdf6cc1a94ed25c90897d2e031f77a5a9
https://github.com/llvm/llvm-project/commit/a8cfa7cbdf6cc1a94ed25c90897d2e031f77a5a9
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/test/Dialect/Transform/ops.mlir
A mlir/test/Dialect/Transform/test-interpreter-printing.mlir
Log Message:
-----------
[mlir][TD] Allow op printing flags as `transform.print` attrs (#86846)
Introduce 3 new optional attributes to the `transform.print` ops:
* `assume_verified`
* `use_local_scope`
* `skip_regions`
The primary motivation is to allow printing on large inputs that
otherwise take forever to print and verify. For the full context, see
this IREE issue: https://github.com/openxla/iree/issues/16901.
Also add some tests and fix the op description.
Commit: d83271b093ec206c2f47a9c636a5727cf63cad5e
https://github.com/llvm/llvm-project/commit/d83271b093ec206c2f47a9c636a5727cf63cad5e
Author: Caslyn Tonelli <6718161+Caslyn at users.noreply.github.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/parser.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Include algorithm.h to parser.h (#87125)
This includes algorithm.h directly to provide the definition for
`cpp:max` in parser.h. This will define `max(...)` in the libc namespace
for build systems that pull in parser.h explicitly.
Commit: 5bbc640f64efb7d110559dab132c8d2fb7fbbf37
https://github.com/llvm/llvm-project/commit/5bbc640f64efb7d110559dab132c8d2fb7fbbf37
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
Log Message:
-----------
[nfc] Disable the a cpp compiler-rt test on ppc bigendian systems due to build errors (#87262)
`Linux/instrprof-vtable-value-prof.cpp` needs to be built for the test
to run. However, cpp compile & link failed with undefined-ABI error [1].
See original failure in
https://lab.llvm.org/buildbot/#/builders/18/builds/16429
[1]
```
FAIL: Profile-powerpc64 :: Linux/instrprof-vtable-value-prof.cpp (2406 of 2414)
******************** TEST 'Profile-powerpc64 :: Linux/instrprof-vtable-value-prof.cpp' FAILED ********************
Exit Code: 1
Command Output (stderr):
--
RUN: at line 3: /home/buildbots/llvm-external-buildbots/workers/ppc64be-sanitizer/sanitizer-ppc64be/build/build_debug/./bin/clang --driver-mode=g++ -m64 -ldl -fprofile-generate -fuse-ld=lld -O2 -g -fprofile-generate=. -mllvm -enable-vtable-value-profiling /home/buildbots/llvm-external-buildbots/workers/ppc64be-sanitizer/sanitizer-ppc64be/build/llvm-project/compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp -o /home/buildbots/llvm-external-buildbots/workers/ppc64be-sanitizer/sanitizer-ppc64be/build/build_debug/runtimes/runtimes-bins/compiler-rt/test/profile/Profile-powerpc64/Linux/Output/instrprof-vtable-value-prof.cpp.tmp-test
+ /home/buildbots/llvm-external-buildbots/workers/ppc64be-sanitizer/sanitizer-ppc64be/build/build_debug/./bin/clang --driver-mode=g++ -m64 -ldl -fprofile-generate -fuse-ld=lld -O2 -g -fprofile-generate=. -mllvm -enable-vtable-value-profiling /home/buildbots/llvm-external-buildbots/workers/ppc64be-sanitizer/sanitizer-ppc64be/build/llvm-project/compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp -o /home/buildbots/llvm-external-buildbots/workers/ppc64be-sanitizer/sanitizer-ppc64be/build/build_debug/runtimes/runtimes-bins/compiler-rt/test/profile/Profile-powerpc64/Linux/Output/instrprof-vtable-value-prof.cpp.tmp-test
ld.lld: error: /lib/../lib64/Scrt1.o: ABI version 1 is not supported
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
Commit: 55b74030a4c75f25be901522fe595d7233fad76d
https://github.com/llvm/llvm-project/commit/55b74030a4c75f25be901522fe595d7233fad76d
Author: Shourya Goel <shouryagoel10000 at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/src/stdio/CMakeLists.txt
A libc/src/stdio/fseeko.h
A libc/src/stdio/ftello.h
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/generic/fseek.cpp
A libc/src/stdio/generic/fseeko.cpp
M libc/src/stdio/generic/ftell.cpp
A libc/src/stdio/generic/ftello.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/ftell_test.cpp
Log Message:
-----------
[libc][POSIX] implement fseeko, ftello (#86928)
Fixes: #85287
Commit: 92d0d6f6cb4099e651d066cd88dc0abfa6e612cf
https://github.com/llvm/llvm-project/commit/92d0d6f6cb4099e651d066cd88dc0abfa6e612cf
Author: ChiaHungDuan <chiahungduan at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/wrappers_c.inc
Log Message:
-----------
[scudo] Do a M_PURGE call before changing release interval on Android (#87110)
Commit: 9434c083475e42f47383f3067fe2a155db5c6a30
https://github.com/llvm/llvm-project/commit/9434c083475e42f47383f3067fe2a155db5c6a30
Author: Chris B <chris.bieneman at me.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/docs/HLSL/FunctionCalls.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/OperationKinds.def
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.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/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
A clang/test/CodeGenHLSL/ArrayTemporary.hlsl
A clang/test/SemaHLSL/ArrayParams.hlsl
A clang/test/SemaHLSL/ArrayTemporary.hlsl
A clang/test/SemaHLSL/ArrayTemporary.ll
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[HLSL] Implement array temporary support (#79382)
HLSL constant sized array function parameters do not decay to pointers.
Instead constant sized array types are preserved as unique types for
overload resolution, template instantiation and name mangling.
This implements the change by adding a new `ArrayParameterType` which
represents a non-decaying `ConstantArrayType`. The new type behaves the
same as `ConstantArrayType` except that it does not decay to a pointer.
Values of `ConstantArrayType` in HLSL decay during overload resolution
via a new `HLSLArrayRValue` cast to `ArrayParameterType`.
`ArrayParamterType` values are passed indirectly by-value to functions
in IR generation resulting in callee generated memcpy instructions.
The behavior of HLSL function calls is documented in the [draft language
specification](https://microsoft.github.io/hlsl-specs/specs/hlsl.pdf)
under the Expr.Post.Call heading.
Additionally the design of this implementation approach is documented in
[Clang's
documentation](https://clang.llvm.org/docs/HLSL/FunctionCalls.html)
Resolves #70123
Commit: 53d256bb2790a0e5300f275345c864930b7e6f82
https://github.com/llvm/llvm-project/commit/53d256bb2790a0e5300f275345c864930b7e6f82
Author: Eric <eric at efcs.ca>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libcxx/docs/index.rst
Log Message:
-----------
Update the "Current Status" section of the website to be current. (#84507)
The section discusses the reasons for the libraries inception more than
a decade ago. Now it discusses the progess libc++ has made, and the many
impressive acomplishments our contributors have brought it.
The initial section remains below.
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 2cfd7d433be0831c6e2a248a4b828f7aedcaeaa0
https://github.com/llvm/llvm-project/commit/2cfd7d433be0831c6e2a248a4b828f7aedcaeaa0
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libc/src/stdio/fseeko.h
M libc/src/stdio/ftello.h
Log Message:
-----------
[libc] fixup missing include for fullbuild (#87266)
Fixes #86928
Commit: a54930e696a275ac3947484f44d770cd587ce147
https://github.com/llvm/llvm-project/commit/a54930e696a275ac3947484f44d770cd587ce147
Author: Peiming Liu <peiming at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
Log Message:
-----------
[mlir][sparse] allow YieldOp to yield multiple values. (#87261)
Commit: 2be722587f5987891ed8b2904a03f983e987f226
https://github.com/llvm/llvm-project/commit/2be722587f5987891ed8b2904a03f983e987f226
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/arm/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/atan2f.cpp
M libc/src/math/generic/atanf.cpp
M libc/src/math/generic/inv_trigf_utils.cpp
M libc/src/math/generic/inv_trigf_utils.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/atan2f_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/atan2f_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M libc/utils/MPFRWrapper/MPFRUtils.h
Log Message:
-----------
[libc][math] Implement atan2f correctly rounded to all rounding modes. (#86716)
We compute atan2f(y, x) in 2 stages:
- Fast step: perform computations in double precision , with relative
errors < 2^-50
- Accurate step: if the result from the Fast step fails Ziv's rounding
test, then we perform computations in double-double precision, with
relative errors < 2^-100.
On Ryzen 5900X, worst-case latency is ~ 200 clocks, compared to average
latency ~ 60 clocks, and average reciprocal throughput ~ 20 clocks.
Commit: 4746877c2716224dc87c69750bdd0df95b6d5b16
https://github.com/llvm/llvm-project/commit/4746877c2716224dc87c69750bdd0df95b6d5b16
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
A clang/test/C/C99/n570.c
M clang/www/c_status.html
Log Message:
-----------
[C99] Claim conformance to WG14 N570
Commit: 5ff2773d4e606ac57750f1fc2aa4dc49b8dbede1
https://github.com/llvm/llvm-project/commit/5ff2773d4e606ac57750f1fc2aa4dc49b8dbede1
Author: Russell Greene <russell at shotover.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/test/Driver/cl-outputs.c
Log Message:
-----------
[clang-cl] Allow a colon after /Fo option (#87209)
Modeled after
https://github.com/llvm/llvm-project/commit/8513a681f7d8d1188706762e712168aebc3119dd#
According to
https://learn.microsoft.com/en-us/cpp/build/reference/fo-object-file-name?view=msvc-170,
`/Fo` accepts a trailing-colon variant. This is also tested in practice.
This allows clang-cl to parse this.
I just copied one of the existing tests, let me know if this is not the
best way to do this. I tested that the test does not pass beofre the
Options.td change, and that it does after.
See also #46065
Commit: 6634c3e9377abf88c08bb065fb55aa15cda4c248
https://github.com/llvm/llvm-project/commit/6634c3e9377abf88c08bb065fb55aa15cda4c248
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Object/GOFFObjectFile.cpp
Log Message:
-----------
[GOFF] Wrap debug output with LLVM_DEBUG (#87252)
The content of a GOFF record is always dumped if NDEBUG is not defined,
which produces rather confusing output. This changes wrap the dumping
code in LLVM_DEBUG, so the dump is only done when debug output of this
module is requested.
Commit: b8ead2198f27924f91b90b6c104c1234ccc8972e
https://github.com/llvm/llvm-project/commit/b8ead2198f27924f91b90b6c104c1234ccc8972e
Author: Gulfem Savrun Yeniceri <gulfem at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/MachinePipeliner.cpp
R llvm/test/CodeGen/AArch64/sms-regpress.mir
M llvm/test/CodeGen/PowerPC/sms-regpress.mir
Log Message:
-----------
Revert "[CodeGen] Fix register pressure computation in MachinePipeliner (#87030)"
This reverts commit a4dec9d6bc67c4d8fbd4a4f54ffaa0399def9627
because the test failed in the following builder:
https://luci-milo.appspot.com/ui/p/fuchsia/builders/prod/clang-linux-x64/b8751864477467126481/overview
Commit: e45f6e569dafd4033f86d276065d77799b5f6226
https://github.com/llvm/llvm-project/commit/e45f6e569dafd4033f86d276065d77799b5f6226
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/include/clang/Sema/Sema.h
A clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[clang] Factor out OpenACC part of `Sema` (#84184)
This patch moves OpenACC parts of `Sema` into a separate class
`SemaOpenACC` that is placed in a separate header `Sema/SemaOpenACC.h`.
This patch is intended to be a model of factoring things out of `Sema`,
so I picked a small OpenACC part.
Goals are the following:
1) Split `Sema` into manageable parts.
2) Make dependencies between parts visible.
3) Improve Clang development cycle by avoiding recompiling unrelated
parts of the compiler.
4) Avoid compile-time regressions.
5) Avoid notational regressions in the code that uses Sema.
Commit: f3ec73fca492124b15c3eb9a3ae12b7d86470d27
https://github.com/llvm/llvm-project/commit/f3ec73fca492124b15c3eb9a3ae12b7d86470d27
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
A llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
Log Message:
-----------
[NFC]Precommit test for vtable import (#79363)
A precommit test case to show function summary and global values when a function has instructions annotated with vtable profiles and indirect call profiles.
- This is a precommit test for https://github.com/llvm/llvm-project/pull/79381
Commit: cbd48b184eca1ca73e6f20575501d94ad30fbd58
https://github.com/llvm/llvm-project/commit/cbd48b184eca1ca73e6f20575501d94ad30fbd58
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
A clang/test/C/C99/array-lvalue.c
M clang/www/c_status.html
Log Message:
-----------
[C99] Claim conformance to "conversion of array to pointer not limited to lvalues"
We don't have a document number for this, but the change was called out
explicitly in the editor's comments in the C99 foreword.
Commit: 4cd7bb07c7540bf83a7a60a67aa282e99461ca2f
https://github.com/llvm/llvm-project/commit/4cd7bb07c7540bf83a7a60a67aa282e99461ca2f
Author: Kirill Podoprigora <kirill.bast9 at mail.ru>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M mlir/python/requirements.txt
Log Message:
-----------
[mlir] Remove ``dataclasses`` package from mlir ``requirements.txt`` (#87223)
The ``dataclasses`` package makes sense for Python 3.6, becauses
``dataclasses`` is only included in the standard library with 3.7
version. Now, 3.6 has reached EOL, so all current supported versions of
Python (3.8, 3.9, 3.10, 3.11, 3.12) have this feature in their standard
libraries.
Therefore there's no need to install the ``dataclasses`` package now.
Commit: ee99475068523de185dce0a449b65e684a1e6b73
https://github.com/llvm/llvm-project/commit/ee99475068523de185dce0a449b65e684a1e6b73
Author: Nathan Sidwell <nathan at acm.org>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/test/CodeGenCXX/bitfield-access-tail.cpp
Log Message:
-----------
[clang] Fix bitfield access unit for vbase corner case (#87238)
This fixes #87227, a vbase can be placed below nvsize when empty members and/or bases are in play. We must account for that.
Commit: ed6edf262d9061ce3c024754c4981299b5184ee2
https://github.com/llvm/llvm-project/commit/ed6edf262d9061ce3c024754c4981299b5184ee2
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M compiler-rt/lib/scudo/standalone/common.h
M compiler-rt/lib/scudo/standalone/stack_depot.h
M compiler-rt/lib/scudo/standalone/wrappers_c_checks.h
Log Message:
-----------
[scudo] Change isPowerOfTwo macro to return false for zero. (#87120)
Clean-up all of the calls and remove the redundant == 0 checks.
There is only one small visible change. For non-Android, the memalign
function will now fail if alignment is zero. Before this would have
passed.
Commit: e93b5f5a4776ffea12d03652559dfdf8d421184c
https://github.com/llvm/llvm-project/commit/e93b5f5a4776ffea12d03652559dfdf8d421184c
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[ubsan][NFC] Remove recently added `cl::init(false)`
Extracted from #84858
Commit: b8cc3ba409dc850776f37e27613bf74f5a80d66a
https://github.com/llvm/llvm-project/commit/b8cc3ba409dc850776f37e27613bf74f5a80d66a
Author: Lei Wang <wlei at fb.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/include/llvm/Analysis/EHUtils.h
M llvm/include/llvm/Transforms/IPO/SampleProfileProbe.h
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/test/ThinLTO/X86/pseudo-probe-desc-import.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-eh.ll
A llvm/test/Transforms/SampleProfile/pseudo-probe-invoke.ll
Log Message:
-----------
[PseudoProbe] Extend to skip instrumenting probe into the dests of invoke (#79919)
As before we only skip instrumenting probe of `unwind`(`KnownColdBlock`)
block, this PR extends to skip the both EH flow from `invoke`, i.e. also
skip the `normal` dest. For more contexts: when doing call-to-invoke
conversion, the block is split by the `invoke` and two extra
blocks(`normal` and `unwind`) are added. With this PR, the
instrumentation is the same as the one before the call-to-invoke
conversion.
One significant benefit is this can help mitigate the "unstable IR"
issue(https://discourse.llvm.org/t/ipo-for-linkonce-odr-functions/69404),
the two versions now are on the same probe instrumentation, expected to
be the same checksum.
To achieve the same checksum, some tweaks is needed:
- Now it also skips incrementing the probe ID for the skipped probe.
- The checksum is also computed based on the CFG that skips the EH
edges.
We observed this fixes ~5% mismatched samples.
Commit: f2f01f6b03aa81d5bdbf841a88f8853620c6902b
https://github.com/llvm/llvm-project/commit/f2f01f6b03aa81d5bdbf841a88f8853620c6902b
Author: Jeff Niu <jeff at modular.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/lib/Support/Unix/Threading.inc
Log Message:
-----------
[llvm][Support] Use `thread_local` caching for llvm::get_threadid() query on Apple systems (#87219)
I was profiling our compiler and noticed that `llvm::get_threadid` was
at the top of the hotlist, taking up a surprising 5% (7 seconds) in the
profile trace. It seems that computing this on MacOS systems is
non-trivial, so cache the result in a thread_local.
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: a6caceed8d27d4ebd44c517c3114a36a64ebddfe
https://github.com/llvm/llvm-project/commit/a6caceed8d27d4ebd44c517c3114a36a64ebddfe
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M lldb/source/Breakpoint/BreakpointIDList.cpp
M lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
Log Message:
-----------
[lldb] Don't crash when attempting to parse breakpoint id `N.` as `N.*` (#87263)
We check if the next character after `N.` is `*` before we check its
length. Using `split` on the string is cleaner and less error prone than
using indices with `find` and `substr`.
Note: this does not make `N.` mean anything, it just prevents assertion
failures. `N.` is treated the same as an unrecognized breakpoint name:
```
(lldb) breakpoint enable 1
1 breakpoints enabled.
(lldb) breakpoint enable 1.*
1 breakpoints enabled.
(lldb) breakpoint enable 1.
0 breakpoints enabled.
(lldb) breakpoint enable xyz
0 breakpoints enabled.
```
Found via LLDB fuzzers.
Commit: 03577ced1f55bf96224513f2414bf025d6877fac
https://github.com/llvm/llvm-project/commit/03577ced1f55bf96224513f2414bf025d6877fac
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
Log Message:
-----------
[BOLT][NFC] Fix typo
Commit: 70e189fbc96909d3841dd2bca4a2909345cd826f
https://github.com/llvm/llvm-project/commit/70e189fbc96909d3841dd2bca4a2909345cd826f
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libc/test/src/stdio/ftell_test.cpp
Log Message:
-----------
[libc] fixup ftello test (#87282)
Use a seek offset that fits within the file size.
This was missed in presubmit because the FILE based stdio tests aren't
run in
overlay mode; fullbuild is not tested in presubmit.
WRITE_SIZE == 11, so using a value of 42 for offseto would cause the
expression
`WRITE_SIZE - offseto` to evaluate to -31 as an unsigned 64b integer
(18446744073709551585ULL).
Fixes #86928
Commit: 6b136ce738d1acc96d926d7999419867dea16961
https://github.com/llvm/llvm-project/commit/6b136ce738d1acc96d926d7999419867dea16961
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M .github/workflows/issue-write.yml
Log Message:
-----------
[workflows] issue-write: Exit early if there are no comments (#87114)
This will eliminate some unnecessary REST API calls.
Commit: 0478adc97e1a4018d866520cb149b6e6c2a9101a
https://github.com/llvm/llvm-project/commit/0478adc97e1a4018d866520cb149b6e6c2a9101a
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/include/llvm/Object/ELFTypes.h
Log Message:
-----------
[Object,ELFTypes] Remove TargetEndianness
Finish the rename by #86604
Commit: 1d5e5f4d3c68e63ced47ee9b17d62fb995aa1e62
https://github.com/llvm/llvm-project/commit/1d5e5f4d3c68e63ced47ee9b17d62fb995aa1e62
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
Log Message:
-----------
[GISEL][NFC] Fix comment for widenScalarToNextPow2
The docstring for this function incorrectly specified when a widening is
not performed. This patch adds the additional specification for what
happens when the type size is a power of two but it is less than MinSize.
Commit: 1e15371dd8843dfc52b9435afaa133997c1773d8
https://github.com/llvm/llvm-project/commit/1e15371dd8843dfc52b9435afaa133997c1773d8
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
Log Message:
-----------
[ThinLTO][TypeProf] Implement vtable def import (#79381)
Add annotated vtable GUID as referenced variables in per function
summary, and update bitcode writer to create value-ids for these
referenced vtables.
- This is the part3 of type profiling work, and described in the "Virtual Table Definition Import" [1] section of the
RFC.
[1] https://github.com/llvm/llvm-project/pull/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
Commit: 649f9603a2da82a32830ce1dc7ce5825d3766a1d
https://github.com/llvm/llvm-project/commit/649f9603a2da82a32830ce1dc7ce5825d3766a1d
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M .github/workflows/issue-write.yml
Log Message:
-----------
[workflows] issue-write: Avoid race condition when PR branch is deleted (#87118)
Fixes #87102 .
Commit: f2a87b07e7fe1892a11ee9424d22dbaec5de5b5b
https://github.com/llvm/llvm-project/commit/f2a87b07e7fe1892a11ee9424d22dbaec5de5b5b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/DragonFly.cpp
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/Solaris.cpp
Log Message:
-----------
[OpenMP] Use loaded offloading toolchains to add libraries (#87108)
Summary:
We want to pass these GPU libraries by default if a certain offloading
toolchain is loaded for OpenMP. Previously I parsed this from the
arguments because it's only available in the compilation. This doesn't
really work for `native` and it's extra effort, so this patch just
passes in the `Compilation` as an extr argument and uses that. Tests
should be unaffected.
Commit: 9df19ce40281551bd348b262a131085cf98dadf5
https://github.com/llvm/llvm-project/commit/9df19ce40281551bd348b262a131085cf98dadf5
Author: David Blaikie <dblaikie at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
Add uncovered enums in switches caused by 9434c083475e42f47383f3067fe2a155db5c6a30
These are probably actually unreachable - perhaps an lldb developer
would be interested in rephrasing this change to move the new cases into
some unreachable/unsupported bucket, rather than my half-hearted guess
at what the desired behavior would be (completely untested, because
they're probably untestable/unreachable - maybe debugging from modules?)
Commit: 1079fc4f543c42bb09a33d2d79d90edd9c0bac91
https://github.com/llvm/llvm-project/commit/1079fc4f543c42bb09a33d2d79d90edd9c0bac91
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/include/mlir/Pass/Pass.h
M mlir/include/mlir/Pass/PassOptions.h
M mlir/lib/Conversion/MemRefToSPIRV/MapMemRefStorageClassPass.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/lib/Pass/PassRegistry.cpp
M mlir/lib/Transforms/InlinerPass.cpp
M mlir/test/Dialect/Transform/test-pass-application.mlir
Log Message:
-----------
[mlir][pass] Add `errorHandler` param to `Pass::initializeOptions` (#87289)
There is no good way to report detailed errors from inside
`Pass::initializeOptions` function as context may not be available at
this point and writing directly to `llvm::errs()` is not composable.
See
https://github.com/llvm/llvm-project/pull/87166#discussion_r1546426763
* Add error handler callback to `Pass::initializeOptions`
* Update `PassOptions::parseFromString` to support custom error stream
instead of using `llvm::errs()` directly.
* Update default `Pass::initializeOptions` implementation to propagate
error string from `parseFromString` to new error handler.
* Update `MapMemRefStorageClassPass` to report error details using new
API.
Commit: 6d0174e70641b1ea172ffed07c43604ef15e28ae
https://github.com/llvm/llvm-project/commit/6d0174e70641b1ea172ffed07c43604ef15e28ae
Author: Stephen Neuendorffer <stephen.neuendorffer at amd.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M libc/utils/HdrGen/Generator.cpp
Log Message:
-----------
[libc] allow libc-hdrgen to work on windows files (#87292)
The code does some (overly simple?) checks on file syntax. These checks
assume unix line endings and fail on windows. This commit updates the
code to strip extra whitespace, making the checks more robust,
particularly in the presence of windows line endings.
Fixes #86023
Commit: dd5797505ebc2dbfdd58927c4f0a11a1256696eb
https://github.com/llvm/llvm-project/commit/dd5797505ebc2dbfdd58927c4f0a11a1256696eb
Author: Abhinav Gunjal <agunjal at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/lit_test.bzl
Log Message:
-----------
lit_test : check if there is already a deps key in kwargs (#87290)
This change checks if there is already a `deps` key in `kwargs` and
concatenate it to avoid multiple values for `deps` key argument.
background:
https://github.com/llvm/llvm-project/pull/87022 recently added explicit
`deps` to the lit_test. This is causing StableHLO bazel build failures
at
https://github.com/openxla/stablehlo/actions/runs/8511888283/job/23312383380?pr=2147
Tested: local build run is successful
Commit: 9dbd364589883ae3343a291077804c564d4b3de5
https://github.com/llvm/llvm-project/commit/9dbd364589883ae3343a291077804c564d4b3de5
Author: Ben Shi <2283975856 at qq.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/AVR/AVRInstrInfo.td
Log Message:
-----------
[AVR][NFC] Improve format of target description files (#87212)
Commit: 372c275800140f35a697f12a2e83d94d5603eaf5
https://github.com/llvm/llvm-project/commit/372c275800140f35a697f12a2e83d94d5603eaf5
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M compiler-rt/test/dfsan/mmap_at_init.c
Log Message:
-----------
[dfsan][test] Disable the test with internal_symbolizer
After #87191 we had to add
8b135a7d1f59a5a7adccb162abf92d751209afe7, which
makes symbolizer to calls a global constructor
with `realloc`.
Commit: f33a6dcf959238e82f6ad45333e3547d8cfcfe38
https://github.com/llvm/llvm-project/commit/f33a6dcf959238e82f6ad45333e3547d8cfcfe38
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
Log Message:
-----------
[PPC][NFC] add an option for GatherAllAliasesMaxDepth (#87071)
GatherAllAliases is time consuming. Add an debug option on PPC to
control the complexity of the function. This is useful when debuging
compile time related issues.
Commit: 84f24c2daffc40fc10b4ea2ae69016ebdabfc0ed
https://github.com/llvm/llvm-project/commit/84f24c2daffc40fc10b4ea2ae69016ebdabfc0ed
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/int-min-max.ll
Log Message:
-----------
[RISCV][TTI] Scale the cost of intrinsic umin/umax/smin/smax with LMUL (#87245)
Use the return type to measure the LMUL size for throughput/latency cost
Commit: 30fd099d5062638b5fe6b89135ad6433a888023a
https://github.com/llvm/llvm-project/commit/30fd099d5062638b5fe6b89135ad6433a888023a
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M clang/test/InstallAPI/diagnostics-dsym.test
Log Message:
-----------
[InstallAPI] Fixup dsym test (#87299)
Update the test to run when the compiler is built to support
arm64-darwin targets.
Commit: d7a43a00fe80007de5d7614576b180d3d21d541b
https://github.com/llvm/llvm-project/commit/d7a43a00fe80007de5d7614576b180d3d21d541b
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/cast.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-insertelement.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
Log Message:
-----------
[RISCV][TTI] Scale the cost of trunc/fptrunc/fpext with LMUL (#87101)
Use the destination data type to measure the LMUL size for
latency/throughput cost
Commit: 38113a083283d2f30a677befaa5fb86dce731c8b
https://github.com/llvm/llvm-project/commit/38113a083283d2f30a677befaa5fb86dce731c8b
Author: Matthias Springer <me at m-sp.org>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/include/mlir/IR/PatternMatch.h
M mlir/lib/IR/PatternMatch.cpp
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[mlir][IR] Trigger `notifyOperationReplaced` on `replaceAllOpUsesWith` (#84721)
Before this change: `notifyOperationReplaced` was triggered when calling
`RewriteBase::replaceOp`.
After this change: `notifyOperationReplaced` is triggered when
`RewriterBase::replaceAllOpUsesWith` or `RewriterBase::replaceOp` is
called.
Until now, every `notifyOperationReplaced` was always sent together with
a `notifyOperationErased`, which made that `notifyOperationErased`
callback irrelevant. More importantly, when a user called
`RewriterBase::replaceAllOpUsesWith`+`RewriterBase::eraseOp` instead of
`RewriterBase::replaceOp`, no `notifyOperationReplaced` callback was
sent, even though the two notations are semantically equivalent. As an
example, this can be a problem when applying patterns with the transform
dialect because the `TrackingListener` will only see the
`notifyOperationErased` callback and the payload op is dropped from the
mappings.
Note: It is still possible to write semantically equivalent code that
does not trigger a `notifyOperationReplaced` (e.g., when op results are
replaced one-by-one), but this commit already improves the situation a
lot.
Commit: 21f85e230056172cffcaec76352e5a2019b54b86
https://github.com/llvm/llvm-project/commit/21f85e230056172cffcaec76352e5a2019b54b86
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Clang.h
Log Message:
-----------
[NFC] [C++20] [Modules] Pulling out getCXX20NamedModuleOutputPath into a seperate function
Required in the review process of
https://github.com/llvm/llvm-project/pull/85050.
Commit: 9067f5470573454ad33f2d1786cdfa77f7f9329c
https://github.com/llvm/llvm-project/commit/9067f5470573454ad33f2d1786cdfa77f7f9329c
Author: Matthias Springer <me at m-sp.org>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/include/mlir/IR/PatternMatch.h
Log Message:
-----------
[mlir][IR][NFC] Make `replaceAllUsesWith` non-templatized (#84722)
Turn `RewriterBase::replaceAllUsesWith` into a non-templatized
implementation, so that it can be made virtual and be overridden in the
`ConversionPatternRewriter` in a subsequent change.
This change is in preparation of adding dialect conversion support for
`replaceAllUsesWith`.
Commit: 49a4ec20a8be5888cbf225bab340dbaf204902c7
https://github.com/llvm/llvm-project/commit/49a4ec20a8be5888cbf225bab340dbaf204902c7
Author: Rob Suderman <rob.suderman at gmail.com>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
Log Message:
-----------
[mlir] Reland the dialect conversion hanging use fix (#87297)
Dialect conversion sometimes can have a hanging use of an argument.
Ensured that argument uses are dropped before removing the block.
Commit: b932db08bb8e56c80380468698a6f75d5ea35577
https://github.com/llvm/llvm-project/commit/b932db08bb8e56c80380468698a6f75d5ea35577
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M llvm/test/tools/llvm-objcopy/ELF/discard-locals-rel.test
M llvm/test/tools/llvm-objcopy/ELF/strip-reloc-symbol.test
Log Message:
-----------
[llvm-objcopy,test] Prepend error: to some messages
Commit: 59dd10faf8c3bb9dbcecb60d932284b8762cebf8
https://github.com/llvm/llvm-project/commit/59dd10faf8c3bb9dbcecb60d932284b8762cebf8
Author: Luke Lau <luke at igalia.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsll.ll
Log Message:
-----------
[RISCV] Add tests for fixed vector vwsll. NFC
We are missing patterns for fixed vectors, where the sexts and zexts are
legalized to _vl nodes.
Commit: 24d528cf4685668d3ad17116846769bed843e933
https://github.com/llvm/llvm-project/commit/24d528cf4685668d3ad17116846769bed843e933
Author: Prabhuk <prabhukr at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/Mips/MipsISelLowering.cpp
Log Message:
-----------
[MIPS][CallSiteInfo][NFC] Fill CallSiteInfo only when needed (#86847)
Argument-register pairs in CallSiteInfo is only needed when
EmitCallSiteInfo
is on. Currently, the pairs are always pushed to the vector but only
used
when EmitCallSiteInfo is on.
Don't fill the CallSiteInfo vector unless used.
Differential Revision: https://reviews.llvm.org/D107108?id=362887
Co-authored-by: Necip Fazil Yildiran <necip at google.com>
Commit: 93c387df908923f17875ab9cf0463d5f181318bb
https://github.com/llvm/llvm-project/commit/93c387df908923f17875ab9cf0463d5f181318bb
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream-note.c
Log Message:
-----------
[clang][analyzer] Change modeling of `fseek` in StreamChecker. (#86919)
Until now function `fseek` returned nonzero on error, this is changed to
-1 only. And it does not produce EOF error any more.
This complies better with the POSIX standard.
Commit: 8bb9443333e0117ab61feecce9de339b11b924fc
https://github.com/llvm/llvm-project/commit/8bb9443333e0117ab61feecce9de339b11b924fc
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
A llvm/lib/CodeGen/GlobalISel/CombinerHelperVectorOps.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-extract-vec-elt.mir
M llvm/test/CodeGen/AArch64/extract-vector-elt.ll
M llvm/test/CodeGen/AArch64/extractvector-oob-load.mir
Log Message:
-----------
[GlobalIsel] Combine G_EXTRACT_VECTOR_ELT (#85321)
preliminary steps
Commit: e47a81c1d2830dda45a561e2c092ebb0c868ed27
https://github.com/llvm/llvm-project/commit/e47a81c1d2830dda45a561e2c092ebb0c868ed27
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
Log Message:
-----------
[OpenCL] Fix BIenqueue_kernel fallthrough (#83238)
Handling of the `BIenqueue_kernel` builtin must not fallthrough to the
`BIget_kernel_work_group_size` builtin, as these builtins have no common
functionality.
Commit: f6c87be1dd24a121d7eccd6b91ca808ecdf80356
https://github.com/llvm/llvm-project/commit/f6c87be1dd24a121d7eccd6b91ca808ecdf80356
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M .github/workflows/pr-code-format.yml
Log Message:
-----------
[Github] Fix typo in PR code formatting job
The recent change to split the PR code formatting job accidentally
misspelled the repository field when specifying the repository to fetch
the code formatting utils from. This patch fixes the spelling so that
the job does not throw a warning and clones the tools from the specified
repository.
Commit: fa8dc363506893eb9371dd3b7590f41fa9a7174a
https://github.com/llvm/llvm-project/commit/fa8dc363506893eb9371dd3b7590f41fa9a7174a
Author: elhewaty <mohamedatef1698 at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/IR/Operator.cpp
M llvm/test/Transforms/FunctionAttrs/noundef.ll
Log Message:
-----------
[IR] Fix crashes caused by #85592 (#87169)
This patch fixes the crash caused by the pull request:
https://github.com/llvm/llvm-project/pull/85592
Commit: 2d14ea68b8c0acdff7c040d581f7fde15d2683d9
https://github.com/llvm/llvm-project/commit/2d14ea68b8c0acdff7c040d581f7fde15d2683d9
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
Log Message:
-----------
[flang][NFC] speed-up external name conversion pass (#86814)
The ExternalNameConversion pass can be surprisingly slow on big
programs. On an example with a 50kloc Fortran file with about 10000
calls to external procedures, the pass alone took 25s on my machine.
This patch reduces this to 0.16s.
The root cause is that using `replaceAllSymbolUses` on each modified
FuncOp is very expensive: it is walking all operations and attribute
every time.
An alternative would be to use mlir::SymbolUserMap to avoid walking the
module again and again, but this is still much more expensive than what
is needed because it is essentially caching all symbol uses of the
module, and there is no need to such caching here.
Instead:
- Do a shallow walk of the module (only top level operation) to detect
FuncOp/GlobalOp that needs to be updated. Update them and place the name
remapping in a DenseMap.
- If any remapping were done, do a single deep walk of the module
operation, and update any SymbolRefAttr that matches a name that was
remapped.
Commit: 77e5c0a95c54e0ca34b8e9c56c702490619b73c9
https://github.com/llvm/llvm-project/commit/77e5c0a95c54e0ca34b8e9c56c702490619b73c9
Author: Marc Auberer <marc.auberer at chillibits.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/CodeGen/RegisterBankInfo.h
Log Message:
-----------
[AArch64][GISEL] Reduce likelihood of hash collisions for mappings in RegisterBankInfo (#87033)
Fixes #85209
This patch removes the truncation from `hash_code` aka `size_t` down to
`unsigned`, that currently happens on DenseMap accesses in
RegisterBankInfo. This reduces the likelihood of hash collisions, as
well as the likelihood of hitting EmptyKey or TombstoneKey, the special
key values of DenseMap. This is not the ultimate solution to the
problem, but we can do it in any case.
Commit: 6cce67a8f9bbab7ebaafa6f33e0efbb22dee3ea1
https://github.com/llvm/llvm-project/commit/6cce67a8f9bbab7ebaafa6f33e0efbb22dee3ea1
Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/test/CodeGen/SPIRV/ExecutionMode.ll
M llvm/test/CodeGen/SPIRV/instructions/atomic.ll
M llvm/test/CodeGen/SPIRV/instructions/atomic_acqrel.ll
M llvm/test/CodeGen/SPIRV/instructions/atomic_seq.ll
A llvm/test/CodeGen/SPIRV/pointers/bitcast-fix-accesschain.ll
A llvm/test/CodeGen/SPIRV/pointers/type-deduce-by-call-complex.ll
Log Message:
-----------
[SPIR-V] Fix validity of atomic instructions (#87051)
This PR fixes validity of atomic instructions and improves type
inference. More tests are able now to be accepted by `spirv-val`.
Commit: 6654235594d86e7ed70abb7358ed25029d1560e5
https://github.com/llvm/llvm-project/commit/6654235594d86e7ed70abb7358ed25029d1560e5
Author: Sizov Nikita <s.nikita.v at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
Log Message:
-----------
[SelectionDAG] implement computeKnownBits for add AVG* instructions (#86754)
knownBits calculation for **AVGFLOORU** / **AVGFLOORS** / **AVGCEILU** / **AVGCEILS** instructions
Prerequisite for #76644
Commit: 89cfae41ecc043f8c47be4dea4b7c740d4f950b3
https://github.com/llvm/llvm-project/commit/89cfae41ecc043f8c47be4dea4b7c740d4f950b3
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/include/mlir/IR/OwningOpRef.h
Log Message:
-----------
[mlir] Add missing #include header for std::is_pointer
Commit: 16da9d53519214475c04109d953022f272ac8022
https://github.com/llvm/llvm-project/commit/16da9d53519214475c04109d953022f272ac8022
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Remove redundant set of debug loc in VPInstruction (NFCI).
Consistently use setDebugLocFrom and remove redundant setDebugLocFrom.
Commit: 46246683a61a081d9d78cf987fd4f024556ecdc8
https://github.com/llvm/llvm-project/commit/46246683a61a081d9d78cf987fd4f024556ecdc8
Author: Rin Dobrescu <irina.dobrescu at arm.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
Log Message:
-----------
[AArch64] Update Neoverse V2 FSQRT execution units in schedule model. (#86803)
This patch updates the SVE FSQRT instruction execution units to be able to run on VX0 and VX2.
Commit: 1d06f41b72e429a5b3ba318ff639b8b997e21ff8
https://github.com/llvm/llvm-project/commit/1d06f41b72e429a5b3ba318ff639b8b997e21ff8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/VectorCombine/X86/shuffle-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle.ll
Log Message:
-----------
[VectorCombine] foldBitcastShuffle - peek through any residual bitcasts before creating a new bitcast on top (#86119)
Encountered while working on #67803, wading through the chains of bitcasts that SSE intrinsics introduces - this patch helps prevents cases where the bitcast chains aren't cleared out and we can't perform further combines until after InstCombine/InstSimplify has run.
Commit: 5b66b6a32ad89562732ad6a81c84783486b6187a
https://github.com/llvm/llvm-project/commit/5b66b6a32ad89562732ad6a81c84783486b6187a
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/include/mlir/Transforms/Passes.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/Transforms/CMakeLists.txt
A mlir/lib/Transforms/CompositePass.cpp
A mlir/test/Transforms/composite-pass.mlir
M mlir/test/lib/Transforms/CMakeLists.txt
A mlir/test/lib/Transforms/TestCompositePass.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[mlir][pass] Add composite pass utility (#87166)
Composite pass allows to run sequence of passes in the loop until fixed
point or maximum number of iterations is reached. The usual candidates
are canonicalize+CSE as canonicalize can open more opportunities for CSE
and vice-versa.
Commit: 2f48a1ff574573e7be170d39ab8de79d9db8bcea
https://github.com/llvm/llvm-project/commit/2f48a1ff574573e7be170d39ab8de79d9db8bcea
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M lldb/source/Plugins/Process/Utility/AuxVector.h
Log Message:
-----------
[lldb][FreeBSD] Add FreeBSD specific AT_HWCAP value (#84147)
While adding register fields I realised that the AUXV values for Linux
and FreeBSD disagree here.
So I've added a FreeBSD specific HWCAP value that I can use from FreeBSD
specific code.
The alternative is translating GetAuxValue calls depending on platform,
which requires that we know what we are at all times.
Another way would be to convert the entries' values when we construct
the AuxVector but the platform specific call that reads the data just
returns a raw array. So adding another layer here is more disruption.
Commit: 198c3eecee50d90cdff4b7840cfa39eef5613870
https://github.com/llvm/llvm-project/commit/198c3eecee50d90cdff4b7840cfa39eef5613870
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
[bazel] Fix the format of libc_build_rules.bzl
Commit: a88a4da61a8eb3378bc333602d5b7e56a24cfb66
https://github.com/llvm/llvm-project/commit/a88a4da61a8eb3378bc333602d5b7e56a24cfb66
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M lldb/source/Plugins/Process/Utility/AuxVector.h
Log Message:
-----------
[lldb] clang-format AuxVector.h (#85057)
Doing this in its own commit so the intent of
2f48a1ff574573e7be170d39ab8de79d9db8bcea is clearer.
Commit: 9a05a89d1ef73de7ab787071931f449935d841a7
https://github.com/llvm/llvm-project/commit/9a05a89d1ef73de7ab787071931f449935d841a7
Author: Carlos Alberto Enciso <carlos.alberto.enciso at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/test/Transforms/SpeculativeExecution/PR46267.ll
Log Message:
-----------
[speculative-execution] Hoists debug values unnecessarily. (#85782)
After https://reviews.llvm.org/D81730:
`SpeculativeExecutionPass::considerHoistingFromTo` hoists instructions,
including debug intrinsics, as long as none of their used values are
instructions that appear prior in the block that are not being hoisted.
This behaviour has been duplicated for DPValues to get rid of a binary
difference.
The correct solution is not hoist these debug values at all, whichever
format they're in.
Commit: 0b13e2c82315eac8926f1c4497c4d56a507c3999
https://github.com/llvm/llvm-project/commit/0b13e2c82315eac8926f1c4497c4d56a507c3999
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
[bazel] Another format fix for libc_build_rules.bzl, NFC
Commit: 7ef602b58c1ccacab20d9d01e24b281458c3facc
https://github.com/llvm/llvm-project/commit/7ef602b58c1ccacab20d9d01e24b281458c3facc
Author: Sam McCall <sam.mccall at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaType.cpp
M clang/test/Sema/nullability.c
M clang/test/SemaCXX/nullability.cpp
A clang/test/SemaObjCXX/Inputs/nullability-consistency-smart.h
M clang/test/SemaObjCXX/nullability-consistency.mm
Log Message:
-----------
Reapply "[clang][nullability] allow _Nonnull etc on nullable class types (#82705)" (#87325)
This reverts commit 28760b63bbf9e267713957105a8d17091fb0d20e.
The last commit was missing the new testcase, now fixed.
Commit: beeb15b71650b46f39cb6b1917e8d05568978656
https://github.com/llvm/llvm-project/commit/beeb15b71650b46f39cb6b1917e8d05568978656
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libcxx/include/__exception/operations.h
M libcxx/include/__filesystem/copy_options.h
M libcxx/include/__filesystem/directory_options.h
M libcxx/include/__filesystem/file_status.h
M libcxx/include/__filesystem/file_time_type.h
M libcxx/include/__filesystem/file_type.h
M libcxx/include/__filesystem/perm_options.h
M libcxx/include/__filesystem/perms.h
M libcxx/include/__filesystem/space_info.h
M libcxx/include/__format/format_args.h
M libcxx/include/__format/format_context.h
M libcxx/include/__format/formatter.h
M libcxx/include/__format/formatter_bool.h
M libcxx/include/__format/formatter_char.h
M libcxx/include/__format/formatter_integer.h
M libcxx/include/__format/formatter_pointer.h
M libcxx/include/__format/formatter_string.h
M libcxx/include/__fwd/format.h
M libcxx/include/__locale
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__thread/support/pthread.h
M libcxx/include/any
M libcxx/include/future
M libcxx/include/new
M libcxx/include/shared_mutex
M libcxx/include/thread
M libcxx/include/typeinfo
Log Message:
-----------
[libc++][NFC] Remove a few unused <__availablity> includes (#86126)
Commit: 2950283dddab03c183c1be2d7de9d4999cc86131
https://github.com/llvm/llvm-project/commit/2950283dddab03c183c1be2d7de9d4999cc86131
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libcxx/include/stddef.h
Log Message:
-----------
[libc++] Simplify the implementation of <stddef.h> (#86843)
Libc++'s own <stddef.h> is complicated by the need to handle various
platform-specific macros and to support duplicate inclusion. In reality,
we only need to add a declaration of nullptr_t to it, so we can simply
include the underlying <stddef.h> outside of our guards to let it handle
re-inclusion itself.
Commit: a4798bb0b67533b37d6b34fd5292714aac3b17d9
https://github.com/llvm/llvm-project/commit/a4798bb0b67533b37d6b34fd5292714aac3b17d9
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M flang/include/flang/Lower/AbstractConverter.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
M flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
Log Message:
-----------
[flang][NFC] use mlir::SymbolTable in lowering (#86673)
Whenever lowering is checking if a function or global already exists in
the mlir::Module, it was doing module->lookup.
On big programs (~5000 globals and functions), this causes important
slowdowns because these lookups are linear. Use mlir::SymbolTable to
speed-up these lookups. The SymbolTable has to be created from the
ModuleOp and maintained in sync. It is therefore placed in the
converter, and FirOPBuilders can take a pointer to it to speed-up the
lookups.
This patch does not bring mlir::SymbolTable to FIR/HLFIR passes, but
some passes creating a lot of runtime calls could benefit from it too.
More analysis will be needed.
As an example of the speed-ups, this patch speeds-up compilation of
Whizard compare_amplitude_UFO.F90 from 5 mins to 2 mins on my machine
(there is still room for speed-ups).
Commit: eb08c0f1659d12524f58a01bf174177b8acedf2e
https://github.com/llvm/llvm-project/commit/eb08c0f1659d12524f58a01bf174177b8acedf2e
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang-tools-extra/test/clang-tidy/infrastructure/diagnostic.cpp
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
Log Message:
-----------
[Clang][Sema] Fix explicit specializations of member function templates with a deduced return type (#86817)
Clang erroneously rejects the following:
```
template<typename T>
struct A
{
template<typename U>
auto f();
};
template<>
template<typename U>
auto A<int>::f(); // error: conflicting types for 'f'
```
This happens because the explicit specialization of `f` has its return
type replaced with a dependent `AutoType` in `ActOnFunctionDeclarator`,
but no such replacement occurs for the implicitly instantiated function
template `A<int>::f`. Since the return types don't match, the explicit
specialization is diagnosed as an invalid redeclaration.
This patch moves the replacement of the return type to
`CheckFunctionDeclaration` so it also happens during instantiation.
`setObjectOfFriendDecl` will have been called by then, so the `isFriend
&& CurContext->isDependentContext()` condition is made redundant &
removed (as it already happens in `DeclContext::isDependentContext`).
`Sema::IsOverload` only checks the _declared_ return type (which isn't
changed by the adjustment), so adjusting the return type afterwards
should be safe.
Commit: 63d22f7a5b6afc515799f67c388bf5a8864274e4
https://github.com/llvm/llvm-project/commit/63d22f7a5b6afc515799f67c388bf5a8864274e4
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/test/Dialect/LLVMIR/sroa.mlir
Log Message:
-----------
[MLIR][LLVM][SROA] Make GEP handling type agnostic (#86950)
This commit removes SROA's type consistency constraints from LLVM
dialect's GEPOp. The checks for valid indexing are now purely done by
computing the GEP's offset with the aid of the data layout.
To simplify handling of "nested subslots", we are tricking the SROA by
handing in memory slots that hold byte array types. This ensures that
subsequent accesses only need to check if their access will be
in-bounds. This lifts the requirement of determining the sub-types for
all but the first level of subslots.
Commit: 56aeac47ab0858db9f447b5ec43b660d9035167f
https://github.com/llvm/llvm-project/commit/56aeac47ab0858db9f447b5ec43b660d9035167f
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
Log Message:
-----------
Revert "[mlir] Reland the dialect conversion hanging use fix (#87297)"
This reverts commit 49a4ec20a8be5888cbf225bab340dbaf204902c7.
Reason: Broke the ASan build bot with a memory leak. See the comments at
https://github.com/llvm/llvm-project/pull/87297
for more information.
Commit: cb9cf331fa69bb8319886cdca043a742b4d19ce5
https://github.com/llvm/llvm-project/commit/cb9cf331fa69bb8319886cdca043a742b4d19ce5
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Do not lookup in MinBWs, reuse previously used iterator.
Commit: 0b9528d6bd0bfde5702b1ee5ed8a249d354434f1
https://github.com/llvm/llvm-project/commit/0b9528d6bd0bfde5702b1ee5ed8a249d354434f1
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
Log Message:
-----------
[clang] CTAD: Track template template type parameters that referenced in the template arguments of the RHS. (#85405)
Fixes https://github.com/llvm/llvm-project/issues/85385.
The Finder was missing for this case, for the crash test, the template
parameter TTP was incorrectly considered as not referenced/appeared in
the template arguments of the right hand side of the alias template
decl, thus the synthesized deduction decl doesn't contain this TTP in
the template parameter list, but we have references in the declaration,
thus it caused crashes.
Commit: 0ef743778000e7d213e53e6a7b998e1c34a28701
https://github.com/llvm/llvm-project/commit/0ef743778000e7d213e53e6a7b998e1c34a28701
Author: Il-Capitano <csanad.hajdu at arm.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/test/CodeGen/AArch64/stackmap.ll
Log Message:
-----------
[SelectionDAG][Statepoint] Fix truncation of `gc.statepoint` ID argument (#85908)
The ID argument of `gc.statepoint` gets incorrectly truncated to 32 bits
during code generation.
This is fixed by using `uint64_t` instead of `unsigned` for the `ID`
member in `SelectionDAGBuilder::StatepointLoweringInfo`, and a
`patchpoint` test case is extended to check for 64 bit ID generation in
stackmaps.
Commit: 737fc353d2e8c9c6f0db78f6af6ab05a1e349d2b
https://github.com/llvm/llvm-project/commit/737fc353d2e8c9c6f0db78f6af6ab05a1e349d2b
Author: Kevin P. Neal <kevin.neal at sas.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/fp-intrinsics.ll
M llvm/test/CodeGen/AArch64/strictfp_f16_abi_promote.ll
Log Message:
-----------
[FPEnv][AArch64] Correct strictfp test.
Correct strictfp tests to follow the rules documented in the LangRef:
https://llvm.org/docs/LangRef.html#constrained-floating-point-intrinsics
These tests needed the strictfp attribute added to some function
definitions and some function calls.
Test changes verified with D146845.
Commit: e03f16f9fdfcb36ed05842f43f542107a0d46288
https://github.com/llvm/llvm-project/commit/e03f16f9fdfcb36ed05842f43f542107a0d46288
Author: Fehr Mathieu <mathieu.fehr at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/UnsignedWhenEquivalent.cpp
Log Message:
-----------
[mlir] [arith] Remove buggy illegal operation in --arith-unsigned-when-equivalent (#87298)
`CeilDivUIOp` seemed to have been added by mistake to the list of
dynamically
illegal operations in `arith-unsigned-when-equivalent`. The only illegal
operations
should be the signed operations that can be converted to their unsigned
counterpart.
Commit: b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf
https://github.com/llvm/llvm-project/commit/b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/ExtractAPI/API.h
A clang/include/clang/ExtractAPI/APIRecords.inc
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIActionBase.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/FrontendActions.h
A clang/include/clang/ExtractAPI/Serialization/APISetVisitor.h
R clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/test/ExtractAPI/anonymous_record_no_typedef.c
M clang/test/ExtractAPI/availability.c
M clang/test/ExtractAPI/bool.c
M clang/test/ExtractAPI/bool.cpp
M clang/test/ExtractAPI/class.cpp
M clang/test/ExtractAPI/class_template.cpp
M clang/test/ExtractAPI/class_template_param_inheritance.cpp
M clang/test/ExtractAPI/class_template_partial_spec.cpp
M clang/test/ExtractAPI/class_template_spec.cpp
M clang/test/ExtractAPI/concept.cpp
M clang/test/ExtractAPI/constructor_destructor.cpp
M clang/test/ExtractAPI/conversions.cpp
M clang/test/ExtractAPI/emit-symbol-graph/multi_file.c
M clang/test/ExtractAPI/emit-symbol-graph/single_file.c
M clang/test/ExtractAPI/enum.c
M clang/test/ExtractAPI/field_template.cpp
M clang/test/ExtractAPI/function_noexcepts.cpp
M clang/test/ExtractAPI/global_func_template.cpp
M clang/test/ExtractAPI/global_func_template_spec.cpp
M clang/test/ExtractAPI/global_record.c
M clang/test/ExtractAPI/global_record_multifile.c
M clang/test/ExtractAPI/global_var_template.cpp
M clang/test/ExtractAPI/global_var_template_partial_spec.cpp
M clang/test/ExtractAPI/global_var_template_spec.cpp
M clang/test/ExtractAPI/known_files_only.c
M clang/test/ExtractAPI/language.c
M clang/test/ExtractAPI/macro_undefined.c
M clang/test/ExtractAPI/macros.c
A clang/test/ExtractAPI/metadata_and_module.c
M clang/test/ExtractAPI/method_template.cpp
M clang/test/ExtractAPI/method_template_spec.cpp
M clang/test/ExtractAPI/methods.cpp
M clang/test/ExtractAPI/multiple_inheritance.cpp
M clang/test/ExtractAPI/namespace.cpp
M clang/test/ExtractAPI/nested_namespaces.cpp
M clang/test/ExtractAPI/objc_block.m
M clang/test/ExtractAPI/objc_category.m
A clang/test/ExtractAPI/objc_external_category.m
M clang/test/ExtractAPI/objc_id_protocol.m
M clang/test/ExtractAPI/objc_instancetype.m
M clang/test/ExtractAPI/objc_interface.m
R clang/test/ExtractAPI/objc_module_category.m
M clang/test/ExtractAPI/objc_property.m
M clang/test/ExtractAPI/objc_protocol.m
R clang/test/ExtractAPI/objc_various_categories.m
M clang/test/ExtractAPI/operator_overload.cpp
M clang/test/ExtractAPI/relative_include.m
M clang/test/ExtractAPI/simple_inheritance.cpp
M clang/test/ExtractAPI/struct.c
M clang/test/ExtractAPI/typedef.c
M clang/test/ExtractAPI/typedef_anonymous_record.c
M clang/test/ExtractAPI/typedef_chain.c
M clang/test/ExtractAPI/typedef_struct_enum.c
M clang/test/ExtractAPI/underscored.c
M clang/test/ExtractAPI/union.c
M clang/test/ExtractAPI/vfs_redirected_include.m
M clang/test/Index/extract-api-cursor.m
M clang/tools/libclang/CXExtractAPI.cpp
Log Message:
-----------
[clang][ExtractAPI] Add ability to create multiple symbol graphs (#86676)
This extends ExtractAPI to take into account symbols defined in categories to types defined in an external module.
This introduces 2 new command line flags, `--symbol-graph-dir=DIR` and `--emit-extension-symbol-graphs`, when used together this generates additional symbol graph files at `DIR/ExtendedModule at ProductName.symbols.json` for each external module that is extended in this way.
Additionally this makes some cleanups to tests to make them more resilient and cleans up the `APISet` data structure.
Commit: bcac3edac80044962d5dfe96b96f781fa0a70b2e
https://github.com/llvm/llvm-project/commit/bcac3edac80044962d5dfe96b96f781fa0a70b2e
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/test/SemaTemplate/instantiation-depth-default.cpp
Log Message:
-----------
Revert "[NFC][clang][test][asan] Make `instantiation-depth-default.cpp` a valid test case under `asan` and `ubsan` configs (#75254)"
Disables the recursive template expansion test under ASan again. This
patch re-enabled this test with sanitizers, but it's started spuriously
failing with a stack overflow again on AArch64+ASan:
https://lab.llvm.org/buildbot/#/builders/239/builds/6363
This reverts commit c458f928fad7bbcf08ab1da9949eb2969fc9f89c.
Commit: 82d8a956113736984301316b0a1d949398c58563
https://github.com/llvm/llvm-project/commit/82d8a956113736984301316b0a1d949398c58563
Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/abs.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/ceil.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cos.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/exp.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/exp2.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/floor.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/fmad.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/fmax.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/fmin.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/log.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/log10.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/log2.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/pow.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reversebits.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/round.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sin.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smax.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smin.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sqrt.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/trunc.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/umax.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/umin.ll
Log Message:
-----------
[SPIRV][HLSL] Add HLSL intrinsic tests (#86844)
This PR is part of bookkeeping for #83882.
It also brings the SPIRV hlsl intrinsic tests in
parity with where the testing is on the DXIL backend.
Commit: ea9a66ea8b6fee77e7ee9e47d868d43ecbbcd787
https://github.com/llvm/llvm-project/commit/ea9a66ea8b6fee77e7ee9e47d868d43ecbbcd787
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/Stmt.h
M clang/lib/AST/Expr.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
Log Message:
-----------
[Clang][AST][NFC] MemberExpr stores NestedNameSpecifierLoc and DeclAccessPair separately (#86678)
Currently, `MemberExpr` allocates a trailing `MemberExprNameQualifier`
object if it either has a `NestedNameSpecifierLoc`, or if it names a
member found via using declaration. Since the presence of a
_nested-name-specifier_ does not necessarily imply the named member was
found via using declaration, this patch removes
`MemberExprNameQualifier` and allocates the members separately.
Commit: 209a1e8dfdf1c104dd53b50eb196d6bc0dd01659
https://github.com/llvm/llvm-project/commit/209a1e8dfdf1c104dd53b50eb196d6bc0dd01659
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/ExtractAPI/API.h
R clang/include/clang/ExtractAPI/APIRecords.inc
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIActionBase.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/FrontendActions.h
R clang/include/clang/ExtractAPI/Serialization/APISetVisitor.h
A clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/test/ExtractAPI/anonymous_record_no_typedef.c
M clang/test/ExtractAPI/availability.c
M clang/test/ExtractAPI/bool.c
M clang/test/ExtractAPI/bool.cpp
M clang/test/ExtractAPI/class.cpp
M clang/test/ExtractAPI/class_template.cpp
M clang/test/ExtractAPI/class_template_param_inheritance.cpp
M clang/test/ExtractAPI/class_template_partial_spec.cpp
M clang/test/ExtractAPI/class_template_spec.cpp
M clang/test/ExtractAPI/concept.cpp
M clang/test/ExtractAPI/constructor_destructor.cpp
M clang/test/ExtractAPI/conversions.cpp
M clang/test/ExtractAPI/emit-symbol-graph/multi_file.c
M clang/test/ExtractAPI/emit-symbol-graph/single_file.c
M clang/test/ExtractAPI/enum.c
M clang/test/ExtractAPI/field_template.cpp
M clang/test/ExtractAPI/function_noexcepts.cpp
M clang/test/ExtractAPI/global_func_template.cpp
M clang/test/ExtractAPI/global_func_template_spec.cpp
M clang/test/ExtractAPI/global_record.c
M clang/test/ExtractAPI/global_record_multifile.c
M clang/test/ExtractAPI/global_var_template.cpp
M clang/test/ExtractAPI/global_var_template_partial_spec.cpp
M clang/test/ExtractAPI/global_var_template_spec.cpp
M clang/test/ExtractAPI/known_files_only.c
M clang/test/ExtractAPI/language.c
M clang/test/ExtractAPI/macro_undefined.c
M clang/test/ExtractAPI/macros.c
R clang/test/ExtractAPI/metadata_and_module.c
M clang/test/ExtractAPI/method_template.cpp
M clang/test/ExtractAPI/method_template_spec.cpp
M clang/test/ExtractAPI/methods.cpp
M clang/test/ExtractAPI/multiple_inheritance.cpp
M clang/test/ExtractAPI/namespace.cpp
M clang/test/ExtractAPI/nested_namespaces.cpp
M clang/test/ExtractAPI/objc_block.m
M clang/test/ExtractAPI/objc_category.m
R clang/test/ExtractAPI/objc_external_category.m
M clang/test/ExtractAPI/objc_id_protocol.m
M clang/test/ExtractAPI/objc_instancetype.m
M clang/test/ExtractAPI/objc_interface.m
A clang/test/ExtractAPI/objc_module_category.m
M clang/test/ExtractAPI/objc_property.m
M clang/test/ExtractAPI/objc_protocol.m
A clang/test/ExtractAPI/objc_various_categories.m
M clang/test/ExtractAPI/operator_overload.cpp
M clang/test/ExtractAPI/relative_include.m
M clang/test/ExtractAPI/simple_inheritance.cpp
M clang/test/ExtractAPI/struct.c
M clang/test/ExtractAPI/typedef.c
M clang/test/ExtractAPI/typedef_anonymous_record.c
M clang/test/ExtractAPI/typedef_chain.c
M clang/test/ExtractAPI/typedef_struct_enum.c
M clang/test/ExtractAPI/underscored.c
M clang/test/ExtractAPI/union.c
M clang/test/ExtractAPI/vfs_redirected_include.m
M clang/test/Index/extract-api-cursor.m
M clang/tools/libclang/CXExtractAPI.cpp
Log Message:
-----------
Revert "[clang][ExtractAPI] Add ability to create multiple symbol graphs (#86676)"
This failed the test suite due to missing DiagGroup for a new warning.
This reverts commit b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf.
Commit: cd6434f9ec9af8d7508dc53806440297a24292cf
https://github.com/llvm/llvm-project/commit/cd6434f9ec9af8d7508dc53806440297a24292cf
Author: Bevin Hansson <59652494+bevin-hansson at users.noreply.github.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/ExpandLargeDivRem.cpp
M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
A llvm/test/Transforms/ExpandLargeDivRem/X86/vector.ll
Log Message:
-----------
[ExpandLargeDivRem] Scalarize vector types. (#86959)
expand-large-divrem cannot handle vector types.
If overly large vector element types survive into
isel, they will likely be scalarized there, but since
isel cannot handle scalar integer types of that size,
it will assert.
Handle vector types in expand-large-divrem by
scalarizing them and then expanding the scalar type
operation. For large vectors, this results in a
*massive* code expansion, but it's better than
asserting.
Commit: cf61e347ba3c847f061563d05096e7589fd9ec4b
https://github.com/llvm/llvm-project/commit/cf61e347ba3c847f061563d05096e7589fd9ec4b
Author: Yuri Istomin <nekocoder.pw at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/test/CXX/drs/dr16xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Add test for CWG1606 (#87274)
https://cplusplus.github.io/CWG/issues/1606.html
Commit: a6d932bca8875198fbf34564cda8a8d1640cdcbc
https://github.com/llvm/llvm-project/commit/a6d932bca8875198fbf34564cda8a8d1640cdcbc
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/test/Dialect/SCF/canonicalize.mlir
Log Message:
-----------
[mlir][scf] Align `scf.while` `before` block args in canonicalizer (#76195)
If `before` block args are directly forwarded to `scf.condition` make
sure they are passed in the same order.
This is needed for `scf.while` uplifting
https://github.com/llvm/llvm-project/pull/76108
Commit: 0cd44ff15990799759721e8ec5e6402b7916e464
https://github.com/llvm/llvm-project/commit/0cd44ff15990799759721e8ec5e6402b7916e464
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/lib/AST/ComputeDependence.cpp
M clang/lib/AST/Expr.cpp
Log Message:
-----------
[Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (#86682)
(This patch depends on #86678)
Pretty straightforward change, addresses the FIXME's in
`computeDependence(MemberExpr*)` and `MemberExpr::Create` by moving the
template argument dependence computations to `computeDependence`.
Commit: 15abe09f5af1fa25ad532760466b8e9751e1c5bf
https://github.com/llvm/llvm-project/commit/15abe09f5af1fa25ad532760466b8e9751e1c5bf
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
Log Message:
-----------
[RISCV] Fix and refactor Zvk sched classes (#86519)
* VPseudoVALU_V_NoMask_Zvk, VPseudoVALU_S_NoMask_Zvk,
VPseudoVALU_VV_NoMask_Zvk, and VPseudoVALU_VI_NoMask_Zvk
do not read a merge op
* VPseudoUnaryV_V is a unary read instead of a binary read
* Convert all other cases `Sched<[...]>` to the equivalent SchedUnary,
SchedBinary, or SchedTernary.
Commit: 6b7b18a1a7fd37cea5f5d51569309e7ec954cefb
https://github.com/llvm/llvm-project/commit/6b7b18a1a7fd37cea5f5d51569309e7ec954cefb
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/ext-int-reduced-not-operand.ll
Log Message:
-----------
[SLP]Fix PR87329: crash on alternate cast vectorization.
Need to fix the analysis for the alternate instructions, based on int
extension operations. If the alternate extension node is resized, but
not the operand, need to resize the node and do not shuffle final
result, we end up only with trunc instruction.
Commit: b714fc7f869c9627bab38b3a6cac5d5d7720f204
https://github.com/llvm/llvm-project/commit/b714fc7f869c9627bab38b3a6cac5d5d7720f204
Author: Chenguang Wang <w3cing at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/Support/FormatAdapters.h
M llvm/include/llvm/Support/FormatCommon.h
M llvm/include/llvm/Support/FormatProviders.h
M llvm/include/llvm/Support/FormatVariadic.h
M llvm/include/llvm/Support/FormatVariadicDetails.h
M llvm/lib/Support/FormatVariadic.cpp
M llvm/unittests/Support/FormatVariadicTest.cpp
M mlir/include/mlir/TableGen/Format.h
M mlir/lib/TableGen/Format.cpp
Log Message:
-----------
Move format internal code from llvm::detail to llvm::support::detail. (#87288)
Some support code, e.g. llvm/Support/Endian.h, uses
llvm::support::detail, but the format-related code uses llvm::detail. On
VS2019, when a C++ file includes both headers, a `detail::` from
`namespace llvm { ... }` becomes ambiguous.
44253a9c breaks TensorFlow and
[JAX](https://github.com/google/jax/actions/runs/8507773013/job/23300219405)
build because of this.
Since llvm::X::detail seems like a cleaner solution and is used in other
places as well (e.g. llvm::yaml::detail), we should probably migrate all
llvm::detail usages to llvm::X::detail.
Commit: 4c7de02bc0e25c3236b095ec9391294b2cc8b4ce
https://github.com/llvm/llvm-project/commit/4c7de02bc0e25c3236b095ec9391294b2cc8b4ce
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[ExtractAPI] Add @daniel-grumberg into CODEOWNERS
Commit: c5bbdb64940d75e7702d1d450e77534d908fc9f1
https://github.com/llvm/llvm-project/commit/c5bbdb64940d75e7702d1d450e77534d908fc9f1
Author: nihui <shuizhuyuanluo at 126.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M openmp/README.rst
M openmp/runtime/CMakeLists.txt
M openmp/runtime/cmake/LibompGetArchitecture.cmake
M openmp/runtime/cmake/LibompUtils.cmake
M openmp/runtime/cmake/config-ix.cmake
M openmp/runtime/src/kmp_gsupport.cpp
M openmp/runtime/src/kmp_os.h
M openmp/runtime/src/kmp_platform.h
M openmp/runtime/src/kmp_runtime.cpp
M openmp/runtime/src/z_Linux_asm.S
M openmp/runtime/src/z_Linux_util.cpp
M openmp/runtime/test/ompt/callback.h
M openmp/runtime/tools/lib/Platform.pm
M openmp/runtime/tools/lib/Uname.pm
Log Message:
-----------
[OpenMP] arm64_32 port for Apple WatchOS (#87246)
detect `aarch64_32` with compiler defined macro `__ARM64_ARCH_8_32__`
reuse ARM `__kmp_unnamed_critical_addr` and add `KMP_PREFIX_UNDERSCORE`
macro like AARCH64
reuse AARCH64 `__kmp_invoke_microtask`
build log for watchos armv7k + arm64_32 and watchos simulator x86_64 +
arm64
https://github.com/nihui/action-protobuf/actions/runs/8520684611/job/23337305030
Commit: 31880df9947d58c160b691160c4714277be7c31e
https://github.com/llvm/llvm-project/commit/31880df9947d58c160b691160c4714277be7c31e
Author: nihui <shuizhuyuanluo at 126.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M openmp/runtime/src/z_Linux_util.cpp
Log Message:
-----------
[OpenMP] get logical core count on modern apple platform (#87231)
`hw.logicalcpu` returns the available logical core count
Fix build error for watchOS
```
runtime/src/z_Linux_util.cpp:1821:8: error: 'host_info' is unavailable: not available on watchOS
rc = host_info(mach_host_self(), HOST_BASIC_INFO, (host_info_t)&info, &num);
^
/Applications/Xcode_15.2.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS10.2.sdk/usr/include/mach/mach_host.h:82:15: note: 'host_info' has been explicitly marked unavailable here
kern_return_t host_info
^
1 warning and 1 error generated.
make[2]: *** [runtime/src/CMakeFiles/omp.dir/z_Linux_util.cpp.o] Error 1
```
Commit: 2b6c038e1f15a64ade8ddb4e0ad60942c2132228
https://github.com/llvm/llvm-project/commit/2b6c038e1f15a64ade8ddb4e0ad60942c2132228
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/lib/ExtractAPI/DeclarationFragments.cpp
Log Message:
-----------
[clang][ExtractAPI] improve template argument name deduction (#77716)
The names of template arguments in partial specializations or parameters
used as types might be mangled according to index and depth. Instead of
looping through parameter lists to find matches like we do now, they can
be deduced via their QualTypes or as written from the AST.
Commit: 6626eab07e2e9a1993a1ccdbf82bd88c3dc5b851
https://github.com/llvm/llvm-project/commit/6626eab07e2e9a1993a1ccdbf82bd88c3dc5b851
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
R clang/test/Driver/Inputs/in.so
R clang/test/Driver/Inputs/libomptarget/libomptarget-new-nvptx-sm_35.bc
R clang/test/Driver/Inputs/libomptarget/libomptarget-new-nvptx-test.bc
R clang/test/Driver/Inputs/openmp_static_device_link/empty.o
R clang/test/Driver/Inputs/openmp_static_device_link/lib.bc
R clang/test/Driver/Inputs/openmp_static_device_link/libFatArchive.a
M clang/test/Driver/hip-link-shared-library.hip
M clang/test/Driver/openmp-offload-gpu.c
Log Message:
-----------
[Clang][NFC] Clean up unused binary files for offloading tests (#87351)
Summary:
We have a few binary files used for offloading tests that are either
entirely unused or easily replaceable.
Commit: e12a1f8b325a72191c261b4f11726a9c58f84817
https://github.com/llvm/llvm-project/commit/e12a1f8b325a72191c261b4f11726a9c58f84817
Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
A clang/test/Sema/GH70594.cpp
Log Message:
-----------
[clang] Fix crash when inheriting from a cv-qualified type (#70594)
This change makes the `assertion` less strict in `debug` builds by
stripping qualifiers from the base class and ignoring them. I hope
`weakened` assertions don't affect other cases where such `errors` are
intended to be `caught` by the compiler.
Fixes #35603
Fixes #85256
Commit: 4aba595f092e8e05e92656b23944ce6619465a78
https://github.com/llvm/llvm-project/commit/4aba595f092e8e05e92656b23944ce6619465a78
Author: Atousa Duprat <atousa.p at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/ADT/APInt.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/Support/APInt.cpp
M llvm/unittests/ADT/APIntTest.cpp
M llvm/unittests/Support/KnownBitsTest.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
Log Message:
-----------
[ADT] Add signed and unsigned mulh to APInt (#84719)
Fixes #84207
Commit: f6198686b866d0a1efe7ce88f71c4293930c2dfe
https://github.com/llvm/llvm-project/commit/f6198686b866d0a1efe7ce88f71c4293930c2dfe
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
A clang/test/C/C99/float_h-characteristics.c
M clang/www/c_status.html
Log Message:
-----------
[C99] Claim conformance to "additional floating-point characteristics in <float.h>"
This is another case where we don't have a paper number for the feature
but know about it from the editor's reports.
Commit: 207f1531d611b8add27b94e756e0bc7eb864babf
https://github.com/llvm/llvm-project/commit/207f1531d611b8add27b94e756e0bc7eb864babf
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/InstallAPI/Visitor.cpp
Log Message:
-----------
[InstallAPI] Condense std::pair unwrapping in CategoryRecord NFC
Commit: 153b8431bbea189f9698ddaf08dbedca4c24a918
https://github.com/llvm/llvm-project/commit/153b8431bbea189f9698ddaf08dbedca4c24a918
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-bitcast.mir
Log Message:
-----------
[RISCV][GISEL] Legalize G_BITCAST for scalable vectors (#85970)
SelectionDAG marks ISD::BITCAST as legal between scalable vector types
and ISelDAGToDAG deletes them.
We mark G_BITCAST between scalable vectors as legal in GISel. A future
patch will handle what to do with them after the legalizer (likley
either drop them in a isel-preprocess or convert them to COPYs).
BITCAST is needed for legalization of G_INSERT and G_EXTRACT. This is a
precommit for legalization of G_INSERT and G_EXTRACT.
Commit: 4f0b5d5e8067cadafc4473476eb68aa0addad488
https://github.com/llvm/llvm-project/commit/4f0b5d5e8067cadafc4473476eb68aa0addad488
Author: Jim Lin <jim at andestech.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Basic/Targets/M68k.cpp
M clang/lib/Basic/Targets/M68k.h
A clang/test/CodeGen/M68k/inline-asm-gcc-regs.c
Log Message:
-----------
[M68k] Change gcc register name from a7 to sp. (#87095)
In M68kRegisterInfo.td, register SP is defined with name sp and
alternate name a7.
Fixes: https://github.com/llvm/llvm-project/issues/78620
Commit: 9cb7dffa88190c36db0dc49a7dd2b67e0a44f97e
https://github.com/llvm/llvm-project/commit/9cb7dffa88190c36db0dc49a7dd2b67e0a44f97e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/SystemZ/ext-not-resized-op-resized.ll
Log Message:
-----------
[SLP]Fix PR80027: handle case when ext is not reduced but its operand is.
Need to handle the case, where the resize operation itself is not
reduced but its operand is. In this case need to take an extra analysis
for the operand, not the instruction itself.
Commit: 668c1ea4aa7f3907b92116748af087f2bb006a97
https://github.com/llvm/llvm-project/commit/668c1ea4aa7f3907b92116748af087f2bb006a97
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
R clang/test/C/C99/array-lvalue.c
A clang/test/C/C99/n835.c
M clang/www/c_status.html
Log Message:
-----------
[C99] Update paper number tracked for arrays & lvalues; NFC
I finally found the original paper proposing the changes, so this
updates the test name, comments, and status page but is otherwise NFC.
Commit: 4d5e834c5b7f0ccccd90a6d543e182df602f6bc8
https://github.com/llvm/llvm-project/commit/4d5e834c5b7f0ccccd90a6d543e182df602f6bc8
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/CodeGen/CGAtomic.cpp
M clang/test/CodeGen/atomic.c
Log Message:
-----------
[ClangFE] Improve handling of casting of atomic memory operations. (#86691)
- Factor out a shouldCastToInt() method.
- Also pass through pointer type values to not be casted to integer.
CC @uweigand
Commit: 74483bd6f6bdecdd16efbfcd183b5e29e0234a3a
https://github.com/llvm/llvm-project/commit/74483bd6f6bdecdd16efbfcd183b5e29e0234a3a
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
[C99] Remove entry for LIA compatibility
We previously marked this as "No" but that's confusing; Annex H doesn't
require any changes for a C implementation, it's about how C relates to
other standards. We could mark this N/A, but I think it makes more
sense to treat it like a runtime library-specific change and simply
remove it from the tracker entirely.
Commit: f462d9a97dbbeef712ef0de206ec17f5ed7e15c8
https://github.com/llvm/llvm-project/commit/f462d9a97dbbeef712ef0de206ec17f5ed7e15c8
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
[C99] Claim conformance to "remove deprecation of aliased array parameters"
I can't locate a document number for this particular change, but C89
had the following entry in Future Language Directions:
The use of two parameters declared with an array type (prior to their
adjustment to pointer type) in separate lvalues to designate the same
object is an obsolescent feature.
C99 removed this entry. Clang and LLVM have never done anything in
support of that deprecation, so we trivially conform to its removal.
Commit: a5932e182ba7dd8f1ae131038bab051aea13e688
https://github.com/llvm/llvm-project/commit/a5932e182ba7dd8f1ae131038bab051aea13e688
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
Add a link to WG14 N835 to the status page
Commit: 451cad3a2735f33e8b24cc0b53497d0dc8939f78
https://github.com/llvm/llvm-project/commit/451cad3a2735f33e8b24cc0b53497d0dc8939f78
Author: aniplcc <aniplccode at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[clang] Prefer logical && over & for boolean operations (#87276)
Commit: 3cf9f2c3a4b3aaffa9c1dbbe34624bcaabefd390
https://github.com/llvm/llvm-project/commit/3cf9f2c3a4b3aaffa9c1dbbe34624bcaabefd390
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
A clang/test/C/C99/n782.c
M clang/www/c_status.html
Log Message:
-----------
[C99] Claim conformance to WG14 N782
C89 has more restrictions on aggregate initialization that were relaxed
in C99. We started diagnosing the C89 extension in Clang 3.4.
Commit: 239236b8c2154aa49e98bc7ed774a7d2712edf50
https://github.com/llvm/llvm-project/commit/239236b8c2154aa49e98bc7ed774a7d2712edf50
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libcxx/include/__ranges/zip_view.h
M libcxx/include/__utility/pair.h
M libcxx/include/module.modulemap
M libcxx/include/tuple
M libcxx/test/std/ranges/range.adaptors/range.zip/borrowing.compile.pass.cpp
M libcxx/test/std/ranges/range.utility/range.subrange/operator.pair_like.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_incomplete.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_structured_bindings.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_value_sfinae.pass.cpp
Log Message:
-----------
[libc++] Remove pair dependency (#85621)
This moves the definition of a `pair` constructor for `<tuple>` to
`<__utility/pair.h>` and uses the forward declaration of `pair` in
`<tuple>` instead of including the definition.
Commit: 82be6e186b5f88779325c5ede99ac714b2cfc4fa
https://github.com/llvm/llvm-project/commit/82be6e186b5f88779325c5ede99ac714b2cfc4fa
Author: aniplcc <aniplccode at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/config/gpu/headers.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/spec/posix.td
M libc/src/unistd/CMakeLists.txt
A libc/src/unistd/_exit.cpp
A libc/src/unistd/_exit.h
M libc/test/src/unistd/CMakeLists.txt
A libc/test/src/unistd/_exit_test.cpp
Log Message:
-----------
[libc][posix] implement _exit (#87185)
Fixes #87126.
Commit: 8bc2d19c13c3a0aa0bffe82596f75f25bed5004f
https://github.com/llvm/llvm-project/commit/8bc2d19c13c3a0aa0bffe82596f75f25bed5004f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shuffle-vs-trunc-256.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
Log Message:
-----------
[X86] canonicalizeShuffleWithOp - don't fold VPERMI(BINOP(X,Y)) -> BINOP(VPERMI(X),VPERMI(Y))
VPERMI (VPERMQ/PD) is nearly always lane-crossing and poorly merges with target shuffles (other than itself).
For now, I've restricted VPERMI to only merge with itself, constants, loads and splats.
We might be able to merge with a few other special cases (AND/ANDNP with constant?), which could help the shuffle-vs-trunc-256.ll AVX512VL regression, but since that now gives similar codegen to the other AVX512 variants, I'd prefer to improve the shuffle lowering for that properly.
Commit: f5991161529511ca6ebc058da2a0507c2fc5283e
https://github.com/llvm/llvm-project/commit/f5991161529511ca6ebc058da2a0507c2fc5283e
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/test/Driver/compiler-rt-unwind.c
M clang/test/Driver/constructors.c
M clang/test/Driver/cuda-detect.cu
M clang/test/Driver/dragonfly.c
M clang/test/Driver/env.c
M clang/test/Driver/haiku.c
M clang/test/Driver/hexagon-toolchain-elf.c
M clang/test/Driver/linux-header-search.cpp
M clang/test/Driver/linux-ld.c
M clang/test/Driver/linux-musl-header-search.cpp
M clang/test/Driver/linux-per-target-runtime-dir.c
M clang/test/Driver/mips-reduced-toolchain.cpp
M clang/test/Driver/netbsd.cpp
M clang/test/Driver/ohos.c
M clang/test/Driver/pic.c
M clang/test/Driver/riscv-features.c
M clang/test/Driver/solaris-ld-sanitizer.c
M clang/test/Driver/solaris-ld-values.c
M clang/test/Driver/solaris-ld-values.cpp
M clang/test/Driver/solaris-ld.c
Log Message:
-----------
[Driver,test] Remove --gcc-toolchain=""
This option was added so that changing CMake GCC_INSTALL_PREFIX would
not cause test failures or due to cargo culting. Setting
GCC_INSTALL_PREFIX leads to an error now and we should stop making our
tests ugly.
Commit: 9c9f94063ce1bd819ba4482f537d1e580dd31eef
https://github.com/llvm/llvm-project/commit/9c9f94063ce1bd819ba4482f537d1e580dd31eef
Author: Kevin P. Neal <kevin.neal at sas.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
Log Message:
-----------
[FPEnv][CostModel] Correct strictfp test.
Correct strictfp tests to follow the rules documented in the LangRef:
https://llvm.org/docs/LangRef.html#constrained-floating-point-intrinsics
These tests needed the strictfp attribute added to some function
definitions.
Test changes verified with D146845.
Commit: f792f14b01605453c7c0c17f3b4564335c0d9d14
https://github.com/llvm/llvm-project/commit/f792f14b01605453c7c0c17f3b4564335c0d9d14
Author: Tim Neumann <timnn at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCContext.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h
M llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
A llvm/test/MC/WebAssembly/module-asm.ll
Log Message:
-----------
[WebAssembly] Allocate MCSymbolWasm data on MCContext (#85866)
Fixes #85578, a use-after-free caused by some `MCSymbolWasm` data being
freed too early.
Previously, `WebAssemblyAsmParser` owned the data that is moved to
`MCContext` by this PR, which caused problems when handling module ASM,
because the ASM parser was destroyed after parsing the module ASM, but
the symbols persisted.
The added test passes locally with an LLVM build with AddressSanitizer
enabled.
Implementation notes:
* I've called the added method
<code>allocate<b><i>Generic</i></b>String</code> and added the second
paragraph of its documentation to maybe guide people a bit on when to
use this method (based on my (limited) understanding of the `MCContext`
class). We could also just call it `allocateString` and remove that
second paragraph.
* The added `createWasmSignature` method does not support taking the
return and parameter types as arguments: Specifying them afterwards is
barely any longer and prevents them from being accidentally specified in
the wrong order.
* This removes a _"TODO: Do the uniquing of Signatures here instead of
ObjectFileWriter?"_ since the field it's attached to is also removed.
Let me know if you think that TODO should be preserved somewhere.
Commit: 3d469c0e7c3072f0dad0f5e9bd0c74dffaf83cd3
https://github.com/llvm/llvm-project/commit/3d469c0e7c3072f0dad0f5e9bd0c74dffaf83cd3
Author: aniplcc <aniplccode at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Frontend/CompilerInvocation.cpp
A clang/test/CodeGenHLSL/convergent-functions.hlsl
Log Message:
-----------
[HLSL] Enable -fconvergent-functions by default (#86571)
Fixes #86506
Commit: d595080b48297c6225eedb71d1985786fa9d55bd
https://github.com/llvm/llvm-project/commit/d595080b48297c6225eedb71d1985786fa9d55bd
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/mixed-extracts-types.ll
Log Message:
-----------
[SLP]Fix PR87384: check for fixed vector type before using.
If we have mixed extractelement instructions, fixed and scalable ones,
need to check that compiler tries to estimate the cost for fixed vector
extractelement, not the scalable one, to avoid compiler crash.
Commit: 8c1dc5dd589ce6c056b95e43b72338ddea40789c
https://github.com/llvm/llvm-project/commit/8c1dc5dd589ce6c056b95e43b72338ddea40789c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
Log Message:
-----------
[RISCV] Add test for miscompile of vector.interleave when odd vector is literal poison.
The interleave lowering relies on a math trick that requires passing
the odd vector to two math instructions. In order to be correct
these instructions must see the same value.
If the odd vector is provably poison or undef, SelectionDAG will
create a vwadd and vwmaccu where the operand is a copy from IMPLICIT_DEF.
Later this will become just the undef flag on the operand. This
gives the register allocator freedom to pick a different register
for each instruction.
Commit: a9af66a90e625fdb3c7ad2193e827a49d185fe60
https://github.com/llvm/llvm-project/commit/a9af66a90e625fdb3c7ad2193e827a49d185fe60
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
Log Message:
-----------
[RISCV] Lower (vector_interleave X, undef) to (vzext_vl X). (#87283)
If the odd vector is undef or poison, the widening add and multiply trick
doesn't work unless we freeze the odd vector.
Unfortunately, freezing doesn't work when the operand is provably
undef/poison. MIR doesn't have a representation for freeze so it
just becomes a COPY from IMPLICIT_DEF which freely propagates undef
to each operand independently.
To work around this, check for undef explicitly and lower to a VZEXT_VL
of the even vector. This produces better code than we'd get from a
freeze anyway.
I've left a FIXME for adding a freeze. I'll do that as a separate patch
as it affects other tests and doesn't help with the new test.
Commit: 13be0d4a34c421607a5c082ec39dad2cbd6d506f
https://github.com/llvm/llvm-project/commit/13be0d4a34c421607a5c082ec39dad2cbd6d506f
Author: Ameer J <52414509+ameerj at users.noreply.github.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add BreakFunctionDefinitionParameters option (#84988)
This adds an option to break function definition parameters, putting
them on the next line after the function's opening paren.
This was a missing step towards allowing styles which require all
function definition parameters be on their own lines.
Closes #62963
Commit: 133156c1380ef592ad0fb2dd44473f583dbee1b7
https://github.com/llvm/llvm-project/commit/133156c1380ef592ad0fb2dd44473f583dbee1b7
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Transforms/InlinerPass.cpp
Log Message:
-----------
[mlir][inliner] Assert that no external nodes passed to the profitability hook. (#85489)
Fixes #85400
Commit: 212b1a84a6bd5648b3f3846f3508ff1ce914132e
https://github.com/llvm/llvm-project/commit/212b1a84a6bd5648b3f3846f3508ff1ce914132e
Author: Prabhuk <prabhukr at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
Log Message:
-----------
[CallSiteInfo][NFC] CallSiteInfo -> CallSiteInfo.ArgRegPairs (#86842)
CallSiteInfo is originally used only for argument - register pairs. Make
it struct, in which we can store additional data for call sites.
Also, the variables/methods used for CallSiteInfo are named for its
original use case, e.g., CallFwdRegsInfo. Refactor these for the
upcoming
use, e.g. addCallArgsForwardingRegs() -> addCallSiteInfo().
An upcoming patch will add type ids for indirect calls to propogate them
from
middle-end to the back-end. The type ids will be then used to emit the
call
graph section.
Original RFC:
https://lists.llvm.org/pipermail/llvm-dev/2021-June/151044.html
Updated RFC:
https://lists.llvm.org/pipermail/llvm-dev/2021-July/151739.html
Differential Revision: https://reviews.llvm.org/D107109?id=362888
Co-authored-by: Necip Fazil Yildiran <necip at google.com>
Commit: c403a478076a16172d9b50e16c288b0d360f42ce
https://github.com/llvm/llvm-project/commit/c403a478076a16172d9b50e16c288b0d360f42ce
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
Log Message:
-----------
AMDGPU: Update the description of cache policy for buffer intrinsics, NFC (#87364)
Explicitly added gfx940, which has SC and NT bits. There must be better
ways of documenting the cache policy. But this is what I can do now.
Fixes: SWDEV-449810
Commit: 6335de4a23e4b71020861b872f51bafb79fbe419
https://github.com/llvm/llvm-project/commit/6335de4a23e4b71020861b872f51bafb79fbe419
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/config/gpu/headers.txt
Log Message:
-----------
[libc] Disable '_exit' on the GPU build
Summary:
There are other dependencies to enable `unistd.h` on the GPU which
prevented the header from being generated. This is a POSIX extension and
isn't part of the core `libc`, so we can just disable this for now to
get the bots gree.
Commit: 7f2a41b643af1348631dee27dc1321046370a758
https://github.com/llvm/llvm-project/commit/7f2a41b643af1348631dee27dc1321046370a758
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/MachineScheduler.cpp
Log Message:
-----------
MachineScheduler: Simplify usage of TargetInstrInfo
Commit: 6b2a4668b99ef47f567709bcf6f57bc60c35eea9
https://github.com/llvm/llvm-project/commit/6b2a4668b99ef47f567709bcf6f57bc60c35eea9
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
A clang/test/C/C11/n1482.c
M clang/www/c_status.html
Log Message:
-----------
[C11] Claim conformance to WG14 N1482
This paper added a pile of macros for atomic initialization which we
started supporting in Clang 4.0.
Commit: 817c6915aeadbed100efee9e70eb42d9368d5ee6
https://github.com/llvm/llvm-project/commit/817c6915aeadbed100efee9e70eb42d9368d5ee6
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M .github/workflows/email-check.yaml
M .github/workflows/issue-write.yml
Log Message:
-----------
[workflows] Use issue-write workflow for warning about private emails (#87399)
This allows us to use the less privileged pull_request event for the
validate_email job, since this workflow no longer writes a comment
directly.
Commit: d8db13edd60b195e6692deb04d63e633319e486a
https://github.com/llvm/llvm-project/commit/d8db13edd60b195e6692deb04d63e633319e486a
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Log Message:
-----------
[RISCV][NFC] Delete some unused pseudo multiclasses (#87401)
We only use the `RM` equivalents now.
Commit: 6261c53c6f9c82bfca5df2ed5917876d748ed079
https://github.com/llvm/llvm-project/commit/6261c53c6f9c82bfca5df2ed5917876d748ed079
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlan.h
A llvm/test/Transforms/LoopVectorize/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
Log Message:
-----------
[VPlan] Make sure OR VPInstructions are treated as disjoint ops.
Make sure that VPInstructions with OR opcodes are properly registered as
disjoint ops.
Fixes https://github.com/llvm/llvm-project/issues/87378.
Commit: c3e3d59fab8ae8161810c861d78c7b5fcabb1a2e
https://github.com/llvm/llvm-project/commit/c3e3d59fab8ae8161810c861d78c7b5fcabb1a2e
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir][tensor] Fix tensor::PackOp fold() handling of padding value (#87296)
We can't just check if it is a splat constant or not. We should also
check if the value match.
Commit: f119a4ffb885ed588c46de1d51f4185572142ca2
https://github.com/llvm/llvm-project/commit/f119a4ffb885ed588c46de1d51f4185572142ca2
Author: Chris Bieneman <chris.bieneman at me.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_subcall.hlsl
Log Message:
-----------
[HLSL] Fix broken spir-v test
This fixes a test broken in 3d469c0e7c3072f0dad0f5e9bd0c74dffaf83cd3.
fast-forwarded.
../clang/test/CodeGenHLSL/builtins/wave_get_lane_index_subcall.hlsl
Commit: 4ea24946e356be31446fc30ca3d11cc5783ba2a6
https://github.com/llvm/llvm-project/commit/4ea24946e356be31446fc30ca3d11cc5783ba2a6
Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M openmp/runtime/src/kmp_tasking.cpp
A openmp/runtime/test/tasking/issue-87307.c
Log Message:
-----------
[OpenMP] Fix nested parallel with tasking (#87309)
When a nested parallel region ends, the runtime calls __kmp_join_call().
During this call, the primary thread of the nested parallel region will
reset its tid (retval of omp_get_thread_num()) to what it was in the
outer parallel region. A data race occurs with the current code when
another worker thread from the nested inner parallel region tries to
steal tasks from the primary thread's task deque. The worker thread
reads the tid value directly from the primary thread's data structure
and may read the wrong value.
This change just uses the calculated victim_tid from execute_tasks()
directly in the steal_task() routine rather than reading tid from the
data structure.
Fixes: #87307
Commit: 89271b46761749503dffe94c60b9cbe0bda80284
https://github.com/llvm/llvm-project/commit/89271b46761749503dffe94c60b9cbe0bda80284
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
A llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
R llvm/test/Transforms/LoopVectorize/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
Log Message:
-----------
[LV] Add test depending on target to RISCV subdirectory.
Commit: 7327014b49ba0e4c8227edaed569d21d3cc1ec74
https://github.com/llvm/llvm-project/commit/7327014b49ba0e4c8227edaed569d21d3cc1ec74
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/config/gpu/entrypoints.txt
M libc/include/llvm-libc-types/rpc_opcodes_t.h
M libc/spec/gpu_ext.td
M libc/src/__support/arg_list.h
M libc/src/gpu/CMakeLists.txt
A libc/src/gpu/rpc_fprintf.cpp
A libc/src/gpu/rpc_fprintf.h
M libc/test/integration/src/stdio/CMakeLists.txt
A libc/test/integration/src/stdio/gpu/CMakeLists.txt
A libc/test/integration/src/stdio/gpu/printf.cpp
M libc/utils/gpu/server/CMakeLists.txt
M libc/utils/gpu/server/rpc_server.cpp
Log Message:
-----------
[libc] Implement temporary `printf` on the GPU (#85331)
Summary:
This patch adds a temporary implementation that uses a struct-based
interface in lieu of varargs support. Once varargs support exists we
will move this implementation to the "real" printf implementation.
Conceptually, this patch has the client copy over its format string and
arguments to the server. The server will then scan the format string
searching for any specifiers that are actually a string. If it is a
string then we will send the pointer back to the server to tell it to
copy it back. This copied value will then replace the pointer when the
final formatting is done.
This will require a built-in extension to the varargs support to get
access to the underlying struct. The varargs used on the GPU will simply
be a struct wrapped in a varargs ABI.
Commit: 5029949952f4dc745dcb7799c7449a02fe8309c3
https://github.com/llvm/llvm-project/commit/5029949952f4dc745dcb7799c7449a02fe8309c3
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-feature-pauth.s
M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-note-gnu-property.s
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[PAC][llvm-readobj][AArch64][ELF] Support `GNU_PROPERTY_AARCH64_FEATURE_PAUTH` (#85231)
This adds support for `GNU_PROPERTY_AARCH64_FEATURE_PAUTH` feature (as
defined in https://github.com/ARM-software/abi-aa/pull/240) handling in
llvm-readobj and llvm-readelf. The following constants for supported
platforms are also introduced:
- `AARCH64_PAUTH_PLATFORM_INVALID = 0x0`
- `AARCH64_PAUTH_PLATFORM_BAREMETAL = 0x1`
- `AARCH64_PAUTH_PLATFORM_LLVM_LINUX = 0x10000002`
For the llvm_linux platform, output of the tools contains descriptions
of PAuth features which are enabled/disabled depending on the version
value. Version value bits correspond to the following `LangOptions`
defined in #85232:
- bit 0: `PointerAuthIntrinsics`;
- bit 1: `PointerAuthCalls`;
- bit 2: `PointerAuthReturns`;
- bit 3: `PointerAuthAuthTraps`;
- bit 4: `PointerAuthVTPtrAddressDiscrimination`;
- bit 5: `PointerAuthVTPtrTypeDiscrimination`;
- bit 6: `PointerAuthInitFini`.
Support for `.note.AARCH64-PAUTH-ABI-tag` is dropped since it's deleted
from the spec in ARM-software/abi-aa#250.
Commit: 2cf8118e3aa60f406ec41e88bdd4304f39744e89
https://github.com/llvm/llvm-project/commit/2cf8118e3aa60f406ec41e88bdd4304f39744e89
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M openmp/libomptarget/DeviceRTL/CMakeLists.txt
M openmp/libomptarget/DeviceRTL/src/LibC.cpp
A openmp/libomptarget/test/libc/printf.c
Log Message:
-----------
[Libomptarget] Add RPC-based `printf` implementation for OpenMP (#85638)
Summary:
This patch adds an implementation of `printf` that's provided by the GPU
C library runtime. This `pritnf` currently implemented using the same
wrapper handling that OpenMP sets up. This will be removed once we have
proper varargs support.
This `printf` differs from the one CUDA offers in that it is synchronous
and uses a finite size. Additionally we support pretty much every format
specifier except the `%n` option.
Depends on https://github.com/llvm/llvm-project/pull/85331
Commit: a7f4576ff4e296ff42b16d9d91aadf82b5ea325c
https://github.com/llvm/llvm-project/commit/a7f4576ff4e296ff42b16d9d91aadf82b5ea325c
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix a regression in annotating TrailingReturnArrow (#86624)
Fixes #86559.
Commit: e381586f259568bf244fcd857ce91fc5cb38b959
https://github.com/llvm/llvm-project/commit/e381586f259568bf244fcd857ce91fc5cb38b959
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/src/__support/macros/config.h
Log Message:
-----------
[libc] Work around lack of '__has_builtin' for GPU server (#87417)
Summary:
The RPC server build for the GPU support needs to be build from the
"projects" phase of the LLVM build. That means it is built with the same
compile that LLVM supports, which currently is GCC 7.4 in most cases.
A previous patch removed the `LIBC_HAS_BUILTIN` indirection we used,
which regressed the case where we used the `libc` source externally. The
files that we need to use here are `converter.cpp` and `writer.cpp`
which currently are compatible with C++17, so there aren't issues with
the code itself. However, older GCC does not have this builtin which
makes the checks fail.
This patch just adds in a simple wrapper that allows it to correctly
ignore everything if using a compiler that doesn't support it.
Commit: 68217a52fb9fec8a88623f97a90899b8d27eefb3
https://github.com/llvm/llvm-project/commit/68217a52fb9fec8a88623f97a90899b8d27eefb3
Author: Haowei <haowei at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/cmake/caches/Fuchsia.cmake
Log Message:
-----------
[Fuchsia] Add SWIG flags to Fuchsia Clang stage2 build (#87421)
This patch adds SWIG cmake flags to the stage2 build in Fuchsia
Clang configuration.
Commit: b4adb42151bbfa80be4cf6d076cbe5edf680693e
https://github.com/llvm/llvm-project/commit/b4adb42151bbfa80be4cf6d076cbe5edf680693e
Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Tooling/CMakeLists.txt
Log Message:
-----------
Use setup_host_tool for clang-ast-dump, fixes 76707
Commit: 633bc3bfda71c55bc38d5a3bfdb426bab61ff101
https://github.com/llvm/llvm-project/commit/633bc3bfda71c55bc38d5a3bfdb426bab61ff101
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
Log Message:
-----------
[CodeGen][NFC] Make an opt<> static
Commit: 12c7371296e59c22debdd906f632c5e6574e3a44
https://github.com/llvm/llvm-project/commit/12c7371296e59c22debdd906f632c5e6574e3a44
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/DSInstructions.td
Log Message:
-----------
AMDGPU: Use PseudoInstr instead of Pseudo Mnemonic for SIMCInstr, NFC (#87420)
Pseudo Mnemonic could be of other uses.
Commit: 84ae8cb4af9abafe9f45e69744607aadb38d649a
https://github.com/llvm/llvm-project/commit/84ae8cb4af9abafe9f45e69744607aadb38d649a
Author: Jan Kokemüller <jan.kokemueller at gmail.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libcxx/include/__iterator/advance.h
M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count_sentinel.pass.cpp
M libcxx/test/support/test_iterators.h
Log Message:
-----------
[libc++] `std::ranges::advance`: avoid unneeded bounds checks when advancing iterator (#84126)
Currently, the bounds check in `std::ranges::advance(it, n, s)` is done
_before_ `n` is checked. This results in one extra, unneeded bounds
check.
Thus, `std::ranges::advance(it, 1, s)` currently is _not_ simply
equivalent to:
```c++
if (it != s) {
++it;
}
```
This difference in behavior matters when the check involves some
"expensive" logic. For example, the `==` operator of
`std::istreambuf_iterator` may actually have to read the underlying
`streambuf`.
Swapping around the checks in the `while` results in the expected
behavior.
Commit: e61d6b74ddf28df196484f6251271f543ae902ab
https://github.com/llvm/llvm-project/commit/e61d6b74ddf28df196484f6251271f543ae902ab
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M lldb/include/lldb/lldb-private-enumerations.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
Log Message:
-----------
[lldb][SymbolFileDWARFDebugMap] Introduce enum to indicate whether to continue iteration of object files (#87344)
This patch introduces a new `IterationMarker` enum (happy to take
alternative name suggestions), which callbacks, like the one in
`SymbolFileDWARFDebugMap::ForEachSymbolFile`, can return in order to
indicate whether the caller should continue iterating or bail.
For now this patch just changes the `ForEachSymbolFile` callback to use
this new enum. In the future we could change the various
`DWARFIndex::GetXXX` callbacks to do the same.
This makes the callbacks easier to read and hopefully reduces the chance
of bugs like https://github.com/llvm/llvm-project/pull/87177.
Commit: 0a94d35bfb81cb0bef60ebe60513d191661da0bd
https://github.com/llvm/llvm-project/commit/0a94d35bfb81cb0bef60ebe60513d191661da0bd
Author: Spenser Bauman <sbauman at mathworks.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
Log Message:
-----------
[mlir][tosa] Fix tosa-infer-shapes crash (#87234)
The tosa-infer-shapes pass inserts tensor.cast operations to mediate
refined result types with consumers whose types cannot be refined. This
process interferes with how types are refined in tosa.while_loop body
regions, where types are propagated speculatively (to determine the
types of the tosa.yield terminator) and then reverted.
The new tosa.cast operations result in a crash due to not having types
associated to them for the reversion process.
This change modifies the shape propagation behavior so that the
introduction to tensor.cast operations behaves better with this type
reversion process. The new behavior is to only introduce tensor.cast
operations once we wish to commit the newly computed types to the IR.
This is an example causing the crash:
```mlir
func.func @while_dont_crash(%arg0 : tensor<i32>) -> (tensor<*xi32>) {
%0 = tosa.add %arg0, %arg0 : (tensor<i32>, tensor<i32>) -> tensor<*xi32>
%1 = tosa.while_loop (%arg1 = %0) : (tensor<*xi32>) -> tensor<*xi32> {
%2 = "tosa.const"() <{value = dense<3> : tensor<i32>}> : () -> tensor<i32>
%3 = tosa.greater_equal %2, %arg1 : (tensor<i32>, tensor<*xi32>) -> tensor<*xi1>
tosa.yield %3 : tensor<*xi1>
} do {
^bb0(%arg1: tensor<*xi32>):
// Inferrable operation whose type will refine to tensor<i32>
%3 = tosa.add %arg1, %arg1 : (tensor<*xi32>, tensor<*xi32>) -> tensor<*xi32>
// Non-inferrable use site, will require the cast:
// tensor.cast %3 : tensor<i32> to tensor<*xi32>
//
// The new cast operation will result in accessing undefined memory through
// originalTypeMap in the C++ code.
"use"(%3) : (tensor<*xi32>) -> ()
tosa.yield %3 : tensor<*xi32>
}
return %1 : tensor<*xi32>
}
```
The `tensor.cast` operation inserted in the loop body causes a failure
in the code which resets the types after propagation through the loop
body:
```c++
// The types inferred in the block assume the operand types specified for
// this iteration. We need to restore the original types to ensure that
// future iterations only use the already specified types, not possible
// types from previous iterations.
for (auto &block : bodyRegion) {
for (auto arg : block.getArguments())
arg.setType(originalTypeMap[arg]);
for (auto &op : block)
for (auto result : op.getResults())
result.setType(originalTypeMap[result]); // problematic access
}
```
---------
Co-authored-by: Spenser Bauman <sabauma at fastmail>
Commit: 0492e1e79568eaad3b693b4c1031139437b7e3f8
https://github.com/llvm/llvm-project/commit/0492e1e79568eaad3b693b4c1031139437b7e3f8
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/src/stdio/printf_core/core_structs.h
Log Message:
-----------
[libc] Include 'config.h' from the printf structs for builtins
Commit: c45861f4375c0c4525f14db00062a8e4bc00065c
https://github.com/llvm/llvm-project/commit/c45861f4375c0c4525f14db00062a8e4bc00065c
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-feature-pauth.s
M llvm/test/tools/llvm-readobj/ELF/AArch64/aarch64-note-gnu-property.s
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
Revert "[PAC][llvm-readobj][AArch64][ELF] Support `GNU_PROPERTY_AARCH64_FEATURE_PAUTH`" (#87434)
Reverts llvm/llvm-project#85231
See build failure
https://lab.llvm.org/buildbot/#/builders/186/builds/15631
Commit: 04dbf7ad44dbe099f8265ad1db38cbf9a0767a82
https://github.com/llvm/llvm-project/commit/04dbf7ad44dbe099f8265ad1db38cbf9a0767a82
Author: A. Jiang <de34 at live.cn>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libcxx/include/__algorithm/ranges_contains_subrange.h
M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains_subrange.pass.cpp
Log Message:
-----------
[libc++][ranges] Avoid using `distance` in `ranges::contains_subrange` (#87155)
Both `std::distance` or `ranges::distance` are inefficient for
non-sized ranges. Also, calculating the range using `int` type is
seriously problematic.
This patch avoids using `distance` and calculation of the length of
non-sized ranges.
Fixes #86833.
Commit: ea4a11926b53be5d308a8b40eb7353d3f59eb5f5
https://github.com/llvm/llvm-project/commit/ea4a11926b53be5d308a8b40eb7353d3f59eb5f5
Author: Ryotaro KASUGA <kasuga.ryotaro at fujitsu.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/MachinePipeliner.cpp
A llvm/test/CodeGen/AArch64/sms-regpress.mir
M llvm/test/CodeGen/PowerPC/sms-regpress.mir
Log Message:
-----------
Reapply "[CodeGen] Fix register pressure computation in MachinePipeli… (#87312)
…ner (#87030)"
Fix broken test.
This reverts commit b8ead2198f27924f91b90b6c104c1234ccc8972e.
Commit: 3ae5c77e976c02ce9e575870e4316af51fe97075
https://github.com/llvm/llvm-project/commit/3ae5c77e976c02ce9e575870e4316af51fe97075
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/src/stdio/printf_core/core_structs.h
Log Message:
-----------
[libc] Move include so it covers the other files
Summary:
This is more hacky, but I want to get the bot green before we work on a
better solution.
Commit: a27d886ce4cc8be8f67a8331c400d6fe2a273ebd
https://github.com/llvm/llvm-project/commit/a27d886ce4cc8be8f67a8331c400d6fe2a273ebd
Author: Matthias Springer <me at m-sp.org>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/SparseTensor/one_shot_bufferize_tensor_copy_insertion.mlir
Log Message:
-----------
[mlir][linalg][bufferize] Fix element-wise access optimization for sparse tensors (#87305)
`linalg.generic` ops with sparse tensors do not necessarily bufferize to
element-wise access, because insertions into a sparse tensor may change
the layout of (or reallocate) the underlying sparse data structures.
Commit: 3b19cd7f80d8464d5f1bd8b2a0adf925d10556c4
https://github.com/llvm/llvm-project/commit/3b19cd7f80d8464d5f1bd8b2a0adf925d10556c4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Slightly simplify RVVArgDispatcher::constructArgInfos. NFC (#87308)
Use a single insert for the non-mask case instead of a push_back
followed by an insert that may contain 0 registers.
Commit: c925c1646dd248d15ae93c6b3cbd04bb86b9775f
https://github.com/llvm/llvm-project/commit/c925c1646dd248d15ae93c6b3cbd04bb86b9775f
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
Log Message:
-----------
[clang][modules] NFCI: Pragma diagnostic mappings: write/read `FileID` instead of `SourceLocation` (#87427)
For pragma diagnostic mappings, we always write/read `SourceLocation`
with offset 0. This is equivalent to just writing a `FileID`, which is
exactly what this patch starts doing.
Originally reviewed here: https://reviews.llvm.org/D137213
Commit: 01e227487f4674e2627d3db4f357ee83fa04c7d6
https://github.com/llvm/llvm-project/commit/01e227487f4674e2627d3db4f357ee83fa04c7d6
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/test/ELF/gnu-ifunc-nonpreemptible.s
R lld/test/ELF/gnu-ifunc-relative.s
Log Message:
-----------
[ELF] Sort IRELATIVE by offset
Improve the test gnu-ifunc-nonpreemptible.s to check IRELATIVE offsets.
Ensure that IRELATIVE offsets are ordered to improve locality.
Commit: 943f39d29e1ec0d005977e6c3e85390119b8cb4e
https://github.com/llvm/llvm-project/commit/943f39d29e1ec0d005977e6c3e85390119b8cb4e
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M openmp/libomptarget/DeviceRTL/CMakeLists.txt
M openmp/libomptarget/DeviceRTL/src/LibC.cpp
R openmp/libomptarget/test/libc/printf.c
Log Message:
-----------
Revert "[Libomptarget] Add RPC-based `printf` implementation for OpenMP (#85638)"
This reverts commit 2cf8118e3aa60f406ec41e88bdd4304f39744e89.
Failing tests, revert until I can fix it
Commit: 8b859c6e4a8e9ab9969582267bbdc04ed6bfa535
https://github.com/llvm/llvm-project/commit/8b859c6e4a8e9ab9969582267bbdc04ed6bfa535
Author: Cinhi Young <cyanoxygen2725 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/Mips/Mips32r6InstrInfo.td
M llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6-el.txt
M llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt
M llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6-el.txt
M llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt
M llvm/test/MC/Mips/mips32r6/valid.s
M llvm/test/MC/Mips/mips64r6/valid.s
Log Message:
-----------
[MIPS] Fix the opcode of max.fmt and mina.fmt (#85609)
- The opcode of the mina.fmt and max.fmt is documented wrong, the
object code compiled from the same assembly with LLVM behaves
differently than one compiled with GCC and Binutils.
- Modify the opcodes to match Binutils. The actual opcodes are as
follows:
{5,3} | bits {2,0} of func
| ... | 100 | 101 | 110 | 111
-----+-----+-----+-----+-----+-----
010 | ... | min | mina | max | maxa
Commit: 2fb5440e76dd61f91006d9d2831cf5c9235cd109
https://github.com/llvm/llvm-project/commit/2fb5440e76dd61f91006d9d2831cf5c9235cd109
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/docs/math/index.rst
Log Message:
-----------
[libc] Re-organize the math function tables in docs (#87412)
Re-organizes the tables that listed libc's support for math functions,
and adds two new columns to the tables indicating where the respective
function definitions and error handling methods are located in the C23
standard draft WG14-N3096.
Commit: 93c16e75b8935f6a3f5f39301007f9a42a1f7da1
https://github.com/llvm/llvm-project/commit/93c16e75b8935f6a3f5f39301007f9a42a1f7da1
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/test/ELF/gnu-ifunc-nonpreemptible.s
Log Message:
-----------
[ELF] Actually sort IRELATIVE by offset
The unstable partition in partitionRels might reverse IRELATIVE
relocations, so stable_partition in computeRels would lead to IRELATIVE
relocations ordered by decreasing offset. Use stable_partition in
partitionRels to get IRELATIVE relocations ordered by increasing offset.
Commit: 986435c765eb6101e8a31faa7c53ec28260c6ad2
https://github.com/llvm/llvm-project/commit/986435c765eb6101e8a31faa7c53ec28260c6ad2
Author: Vinayak Dev <104419489+vinayakdsci at users.noreply.github.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M libc/docs/math/index.rst
Log Message:
-----------
[libc] Move {f,d}sqrt to higher functions in docs (#87445)
Moves the functions `fsqrt()` and `dsqrt()` from basic functions to
higher math functions in math docs
Commit: ed1cfffe9b2b2d3cc9279ff83400ace156b317a2
https://github.com/llvm/llvm-project/commit/ed1cfffe9b2b2d3cc9279ff83400ace156b317a2
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Serialization/GeneratePCH.cpp
A clang/test/Modules/reduced-bmi-size.cppm
Log Message:
-----------
[NFC] [C++20] [Modules] [Reduced BMI] Make sure the size of reduced BMI is not large than full BMI
Before this patch, the size of the reduced BMI may be large than the
full BMI when the source codes is pretty small. This violates the design
principles. The root cause is an oversight that we skipped something
in full BMI but forgot to make it in reduced BMI.
Commit: 83402c301982dc672e8996e1a33e7c4abf109044
https://github.com/llvm/llvm-project/commit/83402c301982dc672e8996e1a33e7c4abf109044
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
A llvm/test/tools/dsymutil/ARM/firmware.test
A llvm/test/tools/dsymutil/Inputs/private/tmp/firmware/test.o
A llvm/test/tools/dsymutil/Inputs/private/tmp/firmware/test.out
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
Log Message:
-----------
[dsymutil] Support generating dSYMs for firmware environments (#87432)
Support generating dSYM companion files for (non-Darwin) firmware
environments by considering the binary component of the triple in
addition to the OS component.
rdar://125629792
Commit: 324436c29ffd14bcf96c94500d5e43391f2b1e51
https://github.com/llvm/llvm-project/commit/324436c29ffd14bcf96c94500d5e43391f2b1e51
Author: smanna12 <soumi.manna at intel.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/test/Sema/code_align.c
Log Message:
-----------
[Clang] Fix bugs the way we handle duplicate vs conflicting values with loop attribute 'code_align' (#87372)
https://github.com/llvm/llvm-project/pull/70762 added support for new
loop attribute [[clang::code_align()]].
This patch fixes bugs for the test cases below that misses diagnostics due to discontinue to while loop during checking duplicate vs conflicting code_align attribute values in routine CheckForDuplicateLoopAttrs().
[[clang::code_align(4)]]
[[clang::code_align(4)]]
[[clang::code_align(8)]]
for(int I=0; I<128; ++I) { bar(I); }
[[clang::code_align(4)]]
[[clang::code_align(4)]]
[[clang::code_align(8)]]
[[clang::code_align(32)]]
for(int I=0; I<128; ++I) { bar(I); }
Commit: 2b86fb21f8402f19da7e5887a9572b3d55052991
https://github.com/llvm/llvm-project/commit/2b86fb21f8402f19da7e5887a9572b3d55052991
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M flang/include/flang/Common/api-attrs.h
M flang/runtime/descriptor-io.h
M flang/runtime/edit-output.cpp
M flang/runtime/emit-encoded.h
M flang/runtime/io-stmt.cpp
M flang/runtime/io-stmt.h
M flang/runtime/unit.cpp
M flang/runtime/unit.h
Log Message:
-----------
[flang][runtime] Avoid recursive calls in F18 runtime CUDA build. (#87428)
Recurrencies in the call graph (even if they are not executed)
prevent computing the minimal stack size required for a kernel
execution. This change disables some functionality of F18 IO
to avoid recursive calls. A couple of functions are rewritten
to work without using recursion.
Commit: de3e05ecb22473fe9904272ec3511ad1fd62d8d0
https://github.com/llvm/llvm-project/commit/de3e05ecb22473fe9904272ec3511ad1fd62d8d0
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-04-02 (Tue, 02 Apr 2024)
Changed paths:
M llvm/test/Transforms/PGOProfile/vtable_profile.ll
Log Message:
-----------
[nfc]Remove the check for compressed strings in llvm/test/.../vtable_profile.ll (#87449)
The check for compressed string is too restrictive (e.g. broke downstream users) and doesn't add much value to the test. Removed it.
Commit: 4ef22fce8208b9fc08da60c5e4f014ca09811b96
https://github.com/llvm/llvm-project/commit/4ef22fce8208b9fc08da60c5e4f014ca09811b96
Author: hanbeom <kese111 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select.ll
Log Message:
-----------
[InstCombine] Simplify select if it combinated and/or/xor (#73362)
`and/or/xor` operations can each be changed to sum of logical
operations including operators other than themselves.
`x&y -> (x|y) ^ (x^y)`
`x|y -> (x&y) | (x^y)`
`x^y -> (x|y) ^ (x&y)`
if left of condition of `SelectInst` is `and/or/xor` logical
operation and right is equal to `0, -1`, or a `constant`, and
if `TrueVal` consist of `and/or/xor` logical operation then we
can optimize this case.
This patch implements this combination.
Proof: https://alive2.llvm.org/ce/z/WW8iRR
Fixes https://github.com/llvm/llvm-project/issues/71792.
Commit: 7edddee2aa6a6183e40784c9141afec3e2eabb95
https://github.com/llvm/llvm-project/commit/7edddee2aa6a6183e40784c9141afec3e2eabb95
Author: Bevin Hansson <59652494+bevin-hansson at users.noreply.github.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptosi129.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptoui129.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-si129tofp.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-ui129tofp.ll
Log Message:
-----------
[ExpandLargeFpConvert] Scalarize vector types. (#86954)
expand-large-fp-convert cannot handle vector types.
If overly large vector element types survive into
isel, they will likely be scalarized there, but since
isel cannot handle scalar integer types of that size,
it will assert.
Handle vector types in expand-large-fp-convert by
scalarizing them and then expanding the scalar type
operation. For large vectors, this results in a
*massive* code expansion, but it's better than
asserting.
Commit: a75b3e949da588bafd521eff6d265f3ea2f854c2
https://github.com/llvm/llvm-project/commit/a75b3e949da588bafd521eff6d265f3ea2f854c2
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Serialization/ASTWriter.cpp
Log Message:
-----------
[NFC] [Serialization] Extract logics to write decls and types into a standalone function
This patch extract logics in ASTWriter::WriteASTCore about writing decls
and types into a standalone function. The WriteASTCore function is
pretty long and hard to read. It should be helpful for readability to extract the common
logics into a standalone function.
This is also helpful for further changes e.g., removing unreachable
declarations.
Commit: 468dc32ff55d19f55132cbcc4d6ceb1f6d1c12cf
https://github.com/llvm/llvm-project/commit/468dc32ff55d19f55132cbcc4d6ceb1f6d1c12cf
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/AST/DeclBase.cpp
Log Message:
-----------
[NFC] Make `DeclContext::noload_lookup()` accept transparent context
Now the `DeclContext::noload_lookup()` asserts that 'this' is not a
transparent context. However, this is not consistent with
`DeclContext::lookup()`, which will lookup into its parent context if
'this' is a transparent context.
This patch makes the behavior of `DeclContext::noload_lookup()` to be
consistent with `DeclContext::lookup()`, to lookup into the parent
context if 'this' is a transparent context.
Commit: 4b25053ae47f50095371a663391baadfd2694eb0
https://github.com/llvm/llvm-project/commit/4b25053ae47f50095371a663391baadfd2694eb0
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/Driver/ToolChains/MSVC.h
A clang/test/Misc/win32-elf.c
Log Message:
-----------
[Win32][ELF] Make CodeView a DebugInfoFormat only for COFF format (#87149)
We have many problems to use CodeView for a win32-elf target, e.g.,
#87140 and `error: .seh_* directives are not supported on this target`.
Fixes: #87140
Commit: 6288f36c1640ee1f50fe35e07a97c50355066f27
https://github.com/llvm/llvm-project/commit/6288f36c1640ee1f50fe35e07a97c50355066f27
Author: David Green <david.green at arm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/sadd_sat.ll
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/ssub_sat.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
Log Message:
-----------
[AArch64][GlobalISel] Basic add_sat and sub_sat vector handling. (#80650)
This tries to fill in the basic vector handling for sadd_sat/uadd_sat
and ssub_sat/usub_sat. It just handles the basics, marking legal types
and clamping illegally sized vectors to legal ones.
Commit: cd7517859eef14d8b38cec2d52c0625a58c645a2
https://github.com/llvm/llvm-project/commit/cd7517859eef14d8b38cec2d52c0625a58c645a2
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/Driver/ToolChains/MSVC.h
R clang/test/Misc/win32-elf.c
Log Message:
-----------
Revert "[Win32][ELF] Make CodeView a DebugInfoFormat only for COFF format (#87149)"
This reverts commit 4b25053ae47f50095371a663391baadfd2694eb0.
There're failures in some target.
Commit: 4dd103e9c65de7d3dbf12e76fbb72724127ec325
https://github.com/llvm/llvm-project/commit/4dd103e9c65de7d3dbf12e76fbb72724127ec325
Author: Elizaveta Noskova <159026035+enoskova-sc at users.noreply.github.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/ShrinkWrap.cpp
Log Message:
-----------
[CodeGen][ShrinkWrap] Clarify StackAddressUsedBlockInfo meaning (#80679)
Commit: 72c29fa9e226a928b3d3a01d74f6b44a0b31b7d4
https://github.com/llvm/llvm-project/commit/72c29fa9e226a928b3d3a01d74f6b44a0b31b7d4
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/module-output.cppm
Log Message:
-----------
[C++20] [Modules] [Driver] Emit unused argument warning if we use '-fmodule-output' with non-module input
We required the file name of an 'importable module unit' should end
with .cppm (or .ccm, .cxxm, .c++m).
But the driver can accept '-fmodule-output' for files with normal
suffixes (e.g., .cpp). This is somewhat inconsistency.
In this patch, we only claim the option `-fmodule-output` is used if
the type of the input file is modules related. Then now the compiler
will emit 'unused argument' warnings if the input file is not modules
related.
Commit: 37eb0d4948dad6d2399915fde6eb5800c3fe825b
https://github.com/llvm/llvm-project/commit/37eb0d4948dad6d2399915fde6eb5800c3fe825b
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/Serialization/GeneratePCH.cpp
Log Message:
-----------
[NFC] Check the nullness of pointer before dereference it in the assertion
This was part of https://github.com/llvm/llvm-project/pull/85050.
It is suggested to split the unrelated change as much as possible. So
here is the patch.
Commit: e5abd963c758bcfa1380d688bec31dddc834a2dd
https://github.com/llvm/llvm-project/commit/e5abd963c758bcfa1380d688bec31dddc834a2dd
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Remove VPTransformState::addMetadata with ArrayRef arg (NFCI).
addMeadata is only over called with a single element, clean up the
variant that takes multiple values.
Commit: 29c7d1a60c9d45e82f08cd7487178846ed5f9c6d
https://github.com/llvm/llvm-project/commit/29c7d1a60c9d45e82f08cd7487178846ed5f9c6d
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/test/CodeGen/PowerPC/legalize-vaarg.ll
Log Message:
-----------
[PPC] [NFC] add testcase for more store forwarding
Commit: 7c7ce0b9b1cef51e24f2dc7e904a8adf6aaf1abf
https://github.com/llvm/llvm-project/commit/7c7ce0b9b1cef51e24f2dc7e904a8adf6aaf1abf
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
[AMDGPU] Remove useless aliases for FLAT instructions. NFC. (#87462)
We were generating "" (the empty string) as an alias for a bunch of FLAT
instructions, which had no effect except to cause tablegen to generate
some very long if-else chains in the generate AsmMatcher.
Commit: e05c1b46d0d3739cc48ad912dbe6e9affce05927
https://github.com/llvm/llvm-project/commit/e05c1b46d0d3739cc48ad912dbe6e9affce05927
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/ExtractAPI/API.h
A clang/include/clang/ExtractAPI/APIRecords.inc
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIActionBase.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/FrontendActions.h
A clang/include/clang/ExtractAPI/Serialization/APISetVisitor.h
R clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/test/ExtractAPI/anonymous_record_no_typedef.c
M clang/test/ExtractAPI/availability.c
M clang/test/ExtractAPI/bool.c
M clang/test/ExtractAPI/bool.cpp
M clang/test/ExtractAPI/class.cpp
M clang/test/ExtractAPI/class_template.cpp
M clang/test/ExtractAPI/class_template_param_inheritance.cpp
M clang/test/ExtractAPI/class_template_partial_spec.cpp
M clang/test/ExtractAPI/class_template_spec.cpp
M clang/test/ExtractAPI/concept.cpp
M clang/test/ExtractAPI/constructor_destructor.cpp
M clang/test/ExtractAPI/conversions.cpp
M clang/test/ExtractAPI/emit-symbol-graph/multi_file.c
M clang/test/ExtractAPI/emit-symbol-graph/single_file.c
M clang/test/ExtractAPI/enum.c
M clang/test/ExtractAPI/field_template.cpp
M clang/test/ExtractAPI/function_noexcepts.cpp
M clang/test/ExtractAPI/global_func_template.cpp
M clang/test/ExtractAPI/global_func_template_spec.cpp
M clang/test/ExtractAPI/global_record.c
M clang/test/ExtractAPI/global_record_multifile.c
M clang/test/ExtractAPI/global_var_template.cpp
M clang/test/ExtractAPI/global_var_template_partial_spec.cpp
M clang/test/ExtractAPI/global_var_template_spec.cpp
M clang/test/ExtractAPI/known_files_only.c
M clang/test/ExtractAPI/language.c
M clang/test/ExtractAPI/macro_undefined.c
M clang/test/ExtractAPI/macros.c
A clang/test/ExtractAPI/metadata_and_module.c
M clang/test/ExtractAPI/method_template.cpp
M clang/test/ExtractAPI/method_template_spec.cpp
M clang/test/ExtractAPI/methods.cpp
M clang/test/ExtractAPI/multiple_inheritance.cpp
M clang/test/ExtractAPI/namespace.cpp
M clang/test/ExtractAPI/nested_namespaces.cpp
M clang/test/ExtractAPI/objc_block.m
M clang/test/ExtractAPI/objc_category.m
A clang/test/ExtractAPI/objc_external_category.m
M clang/test/ExtractAPI/objc_id_protocol.m
M clang/test/ExtractAPI/objc_instancetype.m
M clang/test/ExtractAPI/objc_interface.m
R clang/test/ExtractAPI/objc_module_category.m
M clang/test/ExtractAPI/objc_property.m
M clang/test/ExtractAPI/objc_protocol.m
R clang/test/ExtractAPI/objc_various_categories.m
M clang/test/ExtractAPI/operator_overload.cpp
M clang/test/ExtractAPI/relative_include.m
M clang/test/ExtractAPI/simple_inheritance.cpp
M clang/test/ExtractAPI/struct.c
M clang/test/ExtractAPI/typedef.c
M clang/test/ExtractAPI/typedef_anonymous_record.c
M clang/test/ExtractAPI/typedef_chain.c
M clang/test/ExtractAPI/typedef_struct_enum.c
M clang/test/ExtractAPI/underscored.c
M clang/test/ExtractAPI/union.c
M clang/test/ExtractAPI/vfs_redirected_include.m
M clang/test/Index/extract-api-cursor.m
M clang/tools/libclang/CXExtractAPI.cpp
Log Message:
-----------
Reenable external categories (#87357)
Reenables b31414bf4f9898f7817a9fcf8a91f62ec26f3eaf.
Also adds a new warning for missing `--symbol-graph-dir` arg when
`--emit-extension-symbol-graphs` is provided. This also reverts the
commit that removed.
Commit: bf1df250487584ec77b0ab567cd3cca5c2863270
https://github.com/llvm/llvm-project/commit/bf1df250487584ec77b0ab567cd3cca5c2863270
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] Use isValidElementType instead of (#87469)
FixedVectorType::isValidElementType for consistency.
Commit: ca48d4dfd3148d83f9a74737f08174f16177200f
https://github.com/llvm/llvm-project/commit/ca48d4dfd3148d83f9a74737f08174f16177200f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/include/__random/seed_seq.h
A libcxx/test/std/numerics/rand/rand.util/rand.util.seedseq/generate.mandates.verify.cpp
Log Message:
-----------
[libc++] Add a static_assert for a Mandates in seed_seq (#86992)
Fixes #84843
Commit: d1f585056f71bc63bd2e71d744051139809e5d8b
https://github.com/llvm/llvm-project/commit/d1f585056f71bc63bd2e71d744051139809e5d8b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/generic_category.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
Log Message:
-----------
[libc++] Fix tests on musl (#85085) (#86934)
One or two of the tests need slight tweaks to make them pass when
building with musl.
This patch is a re-application of b61fb18 which was reverted in 0847c90
because it broke the build.
rdar://118885724
Co-authored-by: Alastair Houghton <ahoughton at apple.com>
Commit: d0dcf06ab8723cc4358ad446354cce875dd89577
https://github.com/llvm/llvm-project/commit/d0dcf06ab8723cc4358ad446354cce875dd89577
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel] Port for e05c1b46d0d3739cc48ad912dbe6e9affce05927.
Commit: 1f268092c7af20c21d4a594678b647cab050602a
https://github.com/llvm/llvm-project/commit/1f268092c7af20c21d4a594678b647cab050602a
Author: Simon Camphausen <simon.camphausen at iml.fraunhofer.de>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/ops.mlir
M mlir/test/Target/Cpp/subscript.mlir
Log Message:
-----------
[mlir][EmitC] Add support for pointer and opaque types to subscript op (#86266)
For pointer types the indices are restricted to one integer-like
operand.
For opaque types no further restrictions are made.
Commit: 956b47b48616148c15f8f95d76d5e0c215fe095c
https://github.com/llvm/llvm-project/commit/956b47b48616148c15f8f95d76d5e0c215fe095c
Author: Longsheng Mou <moulongsheng at huawei.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/CodeGen/Targets/X86.cpp
A clang/test/CodeGenCXX/x86_32-vaarg.cpp
Log Message:
-----------
[X86_32] Teach X86_32 va_arg to ignore empty structs. (#86075)
Empty structs are ignored for parameter passing purposes, but va_arg was
incrementing the pointer anyway for that the size of empty struct in c++
is 1 byte, which could lead to va_list getting out of sync. Fix #86057.
Commit: 0356d0cfdc5cc7173533c2ad6c2ea8ad342f1acc
https://github.com/llvm/llvm-project/commit/0356d0cfdc5cc7173533c2ad6c2ea8ad342f1acc
Author: Gleb Popov <6yearold at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/test/CodeGen/X86/AppendingLinkage.ll
Log Message:
-----------
Print more descriptive error message when trying to link a global with appending linkage (#69613)
This is a proper fix for https://github.com/llvm/llvm-project/issues/40308
Commit: 5c1544c95394b79b377c7137ac34e3e63b6d5ee5
https://github.com/llvm/llvm-project/commit/5c1544c95394b79b377c7137ac34e3e63b6d5ee5
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/include/llvm/Object/WindowsMachineFlag.h
M llvm/lib/Object/COFFObjectFile.cpp
M llvm/lib/Object/WindowsResource.cpp
Log Message:
-----------
[Object][COFF][NFC] Introduce getMachineArchType helper. (#87370)
It's a common pattern that we have a machine type, but we don't care
which ARM64* platform we're dealing with. We already have
isAnyArm64 for that, but it does not fit cases where we use a switch
statement. With this helper, it's easy to simplify such cases by using
Triple::ArchType instead of machine type.
Commit: 51107be7dd7f83a107b9c35c39b16081e38f7a54
https://github.com/llvm/llvm-project/commit/51107be7dd7f83a107b9c35c39b16081e38f7a54
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86SchedBroadwell.td
M llvm/lib/Target/X86/X86SchedHaswell.td
M llvm/lib/Target/X86/X86SchedSkylakeClient.td
M llvm/lib/Target/X86/X86SchedSkylakeServer.td
M llvm/test/tools/llvm-mca/X86/Broadwell/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/Broadwell/resources-sse41.s
M llvm/test/tools/llvm-mca/X86/Haswell/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/Haswell/resources-sse41.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse41.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-sse41.s
Log Message:
-----------
[X86] Haswell/Broadwell/Skylake DPPS folded instructions use an extra port06 resource
This is an extension to 07151f0241d3f893cb36eb2dbc395d4098f74a87 which handled SandyBridge so we at least model the regression identified in #14640
Confirmed by Agner + uops.info/uica (SkylakeServer also had an incorrect use of Port015 instead of just Port01)
I raised #86669 as a proposal for a 'x86 unfold' pass that can unfold these (if we have the free registers) driven by the scheduler model.
Commit: 52b18430ae105566f26152c0efc63998301b1134
https://github.com/llvm/llvm-project/commit/52b18430ae105566f26152c0efc63998301b1134
Author: AinsleySnow <772571228 at qq.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
Log Message:
-----------
[VP][DAGCombine] Use `simplifySelect` when combining vp.select. (#87342)
Hi all,
This patch is a follow-up of #79101. It migrates logic from
`visitVSELECT` to `visitVP_SELECT` to simplify `vp.select`. With this
patch we can do the following combinations:
```
vp.select undef, T, F --> T (if T is a constant), F otherwise
vp.select <condition>, undef, F --> F
vp.select <condition>, T, undef --> T
vp.select false, T, F --> F
vp.select <condition>, T, T --> T
```
I'm a total newbie to llvm and I'm sure there's room for improvements in
this patch. Please let me know if you have any advice. Thank you in
advance!
Commit: 98244c4e2acafb7568e8337088c6caaaffcb7831
https://github.com/llvm/llvm-project/commit/98244c4e2acafb7568e8337088c6caaaffcb7831
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/include/typeinfo
M libcxx/src/include/overridable_function.h
M libcxxabi/src/private_typeinfo.cpp
Log Message:
-----------
[libc++] Upstream ptrauth support in libc++ and libc++abi (#84573)
This is an exact upstreaming of the downstream diff. Minor
simplifications can be made in the future but upstreaming as-is will
make it easier for us to deal with downstream merge conflicts.
Partially fixes #83805
Commit: b699a9ba112cd9fc861eccfcdd2a7c9886423bde
https://github.com/llvm/llvm-project/commit/b699a9ba112cd9fc861eccfcdd2a7c9886423bde
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
A libcxx/test/std/language.support/support.limits/support.limits.general/random.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Update status page after the Tokyo meeting (#87395)
Commit: 399ff08e29de4f2bbcfd47f87bb1795ba3a4e091
https://github.com/llvm/llvm-project/commit/399ff08e29de4f2bbcfd47f87bb1795ba3a4e091
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
A llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
Log Message:
-----------
[LV] Precommit tests with any-of reductions and epilogue vectorization.
Test case for failures from
https://lab.llvm.org/buildbot/#/builders/74/builds/26697
caused the revert of 95fef1d in 589c7ab.
Commit: 2bf7ddf06f773277fcfef58a3cd8c32a161ce36a
https://github.com/llvm/llvm-project/commit/2bf7ddf06f773277fcfef58a3cd8c32a161ce36a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
A llvm/test/CodeGen/X86/vector-trunc-nowrap.ll
Log Message:
-----------
[X86] Add vector truncation tests for nsw/nuw flags
Based off #85592 - our truncation -> PACKSS/PACKUS folds should be able to use the nsw/nuw flags to recognise when we don't need to mask/sext_inreg prior to the PACKSS/PACKUS nodes.
Commit: 7ec87c473936245ea11f8bb64c936e5112f25e6a
https://github.com/llvm/llvm-project/commit/7ec87c473936245ea11f8bb64c936e5112f25e6a
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/HLFIR/procedure-pointer-component-default-init.f90
Log Message:
-----------
[Flang] Support for procedure pointer component default initialization. (#87356)
This PR is to address `TODO(loc, "procedure pointer component default
initialization");`.
It handles default init for procedure pointer components in a derived
type that is 32 bytes or larger (Default init for smaller size type has
already been handled).
```
interface
subroutine sub()
end
end interface
type dt
real :: r1 = 5.0
procedure(real), pointer, nopass :: pp1 => null()
real, pointer :: rp1 => null()
procedure(), pointer, nopass :: pp2 => sub
end type
type(dt) :: dd1
end
```
Commit: a2acf3132334e3131ec584c2c54ec5ba2214e074
https://github.com/llvm/llvm-project/commit/a2acf3132334e3131ec584c2c54ec5ba2214e074
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/DLTI/DLTI.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
M mlir/lib/Dialect/DLTI/DLTI.cpp
M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
M mlir/test/Dialect/LLVMIR/layout.mlir
M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp
Log Message:
-----------
[MLIR] Add endianness accessors to the data layout (#87347)
This commit extends the data layout subsystem with accessors for the
endianness. The implementation follows the structure implemented for
alloca, global, and program memory spaces.
Commit: 450f1952aced87584a53485d1ba1c2f77c3835a1
https://github.com/llvm/llvm-project/commit/450f1952aced87584a53485d1ba1c2f77c3835a1
Author: Axel Lundberg <19574357+Zonotora at users.noreply.github.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/include/clang/Basic/Sanitizers.def
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CodeGenFunction.h
A clang/test/CodeGen/ubsan-bitfield-conversion.c
A clang/test/CodeGenCXX/ubsan-bitfield-conversion.cpp
M clang/test/Driver/fsanitize.c
M compiler-rt/lib/ubsan/ubsan_handlers.cpp
M compiler-rt/lib/ubsan/ubsan_handlers.h
Log Message:
-----------
[clang][UBSan] Add implicit conversion check for bitfields (#75481)
This patch implements the implicit truncation and implicit sign change
checks for bitfields using UBSan. E.g.,
`-fsanitize=implicit-bitfield-truncation` and
`-fsanitize=implicit-bitfield-sign-change`.
Commit: 5ac22600ed7caf907b740932fac191778d67a9d0
https://github.com/llvm/llvm-project/commit/5ac22600ed7caf907b740932fac191778d67a9d0
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/test/Lower/AMD/code-object-version.f90
Log Message:
-----------
[Flang][AMDGPU] Change default AMDHSA Code Object version to 5 (#87464)
This is a follow-up of PR:
https://github.com/llvm/llvm-project/pull/79038
Commit: 95f9b083d083c4873d9f2c62271518c0fcd1ce52
https://github.com/llvm/llvm-project/commit/95f9b083d083c4873d9f2c62271518c0fcd1ce52
Author: Simon Camphausen <simon.camphausen at iml.fraunhofer.de>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
Log Message:
-----------
[mlir][EmitC] Fix examples in op descriptions (#87478)
- Remove trailing type from value attributes as emitc.opaque attributes
are untyped.
- Replace invalid trailing * in opaque type by wrapping it into an
!emitc.ptr.
Commit: e329b68413cd63e03780e1e170ffe53c5edaeea3
https://github.com/llvm/llvm-project/commit/e329b68413cd63e03780e1e170ffe53c5edaeea3
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Factor out logic to check if recipe is dead (NFCI).
In preparation to use the helper in more places.
Commit: 4d34b3295f005f739e431f379ef02da7eac75688
https://github.com/llvm/llvm-project/commit/4d34b3295f005f739e431f379ef02da7eac75688
Author: Fanbo Meng <fanbo.meng at ibm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M third-party/benchmark/src/cycleclock.h
M third-party/benchmark/src/internal_macros.h
Log Message:
-----------
[SystemZ][z/OS] Remove COMPILER_IBMXL macro for z/OS (#87493)
This copies the change made in google benchmark
(https://github.com/google/benchmark/commit/70916cbf71f50b9e1e6f13559e10d6dbb92beb32)
to remove COMPILER_IBMXL for z/OS.
Commit: 250b467f7c8f06350a64d1a17e3ac7e3e390d4b1
https://github.com/llvm/llvm-project/commit/250b467f7c8f06350a64d1a17e3ac7e3e390d4b1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Simplify common analysis of instructions in BoUpSLP::collectValuesToDemote by outlining common code, NFC.
Commit: d650fcd6bf1323513213dd69eacbb2b08c870618
https://github.com/llvm/llvm-project/commit/d650fcd6bf1323513213dd69eacbb2b08c870618
Author: aniplcc <aniplccode at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AArch64/hadd-combine.ll
M llvm/test/CodeGen/X86/combine-pavg.ll
Log Message:
-----------
[DAG] SimplifyDemandedVectorElts - add ISD::AVGCEILS/AVGCEILU/AVGFLOORS/AVGFLOORU nodes (#86284)
Fixes #84768
Commit: 1f7c3d609b01d0cf2a0b973cc17a9b0bca8e56b5
https://github.com/llvm/llvm-project/commit/1f7c3d609b01d0cf2a0b973cc17a9b0bca8e56b5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86TargetMachine.cpp
Log Message:
-----------
[X86] getEffectiveX86CodeModel - take a Triple argument instead of just a Is64Bit flag. NFC. (#87479)
Matches what most other targets do and makes it easier to specify code model based off other triple settings in the future.
Commit: 269d0aaec1801000a39122b1c5792d9c096b33ec
https://github.com/llvm/llvm-project/commit/269d0aaec1801000a39122b1c5792d9c096b33ec
Author: Adrian Kuegel <akuegel at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/include/mlir/Pass/Pass.h
Log Message:
-----------
[mlir] Apply ClangTidy findings.
modernize-use-override ClangTidy check.
This warning appears on overridden virtual functions not marked with override or
final keywords or marked with more than one of virtual, override, final.
Commit: 39eedfded4b990132888b93e3bbf168be8af2038
https://github.com/llvm/llvm-project/commit/39eedfded4b990132888b93e3bbf168be8af2038
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitADDLikeCommutative - convert (add x, shl(0 - y, n)) fold to SDPatternMatch. NFC.
Commit: 0f5f931a9b32208a4894da57ea5c7428ead9df8d
https://github.com/llvm/llvm-project/commit/0f5f931a9b32208a4894da57ea5c7428ead9df8d
Author: Weining Lu <luweining at loongson.cn>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/test/CodeGen/Generic/allow-check.ll
Log Message:
-----------
[CodeGen] Fix test after #86049
Commit: 7c178fdf0094afbf4757d71b792bc159ddcac72f
https://github.com/llvm/llvm-project/commit/7c178fdf0094afbf4757d71b792bc159ddcac72f
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M lldb/source/Utility/RegisterValue.cpp
Log Message:
-----------
[lldb] Correct byte order check for 128 bit integer registers
Size was clearly not correct here. This call has been here since
the initial reformat of all of lldb so it has likely always been
incorrect.
(although registers don't typically have an endian, they are
just values, in the remote protocol register data is in target
endian)
This might have been a problem for Neon registers on big endian
AArch64, but only if the debug server describes them as integers.
lldb-server does not, they've always been vectors which doesn't
take this code path.
Not adding a test because the way I've mocked up a big endian
target in the past is using s390x as the architecture. This
apparently has some form of vector extension that may be 128 bit
but lldb doesn't support it.
Commit: 9808279b0ec3663428fbf6294dfdd1d4f70b1cda
https://github.com/llvm/llvm-project/commit/9808279b0ec3663428fbf6294dfdd1d4f70b1cda
Author: Paul Robinson <paul.robinson at sony.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticIDs.h
Log Message:
-----------
[NFC] Bump DIAG_SIZE_FRONTEND (hit the limit downstream as of e05c1b46)
Commit: a6170d5b7e45d85ffdab124a4e2bd0f0e1d29f2c
https://github.com/llvm/llvm-project/commit/a6170d5b7e45d85ffdab124a4e2bd0f0e1d29f2c
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
Log Message:
-----------
[SelectionDAG] Dump convergencectrl_glue DAG node (#87487)
Commit: 1aedf949e0f6d5e0a6b15e28780be126730db023
https://github.com/llvm/llvm-project/commit/1aedf949e0f6d5e0a6b15e28780be126730db023
Author: Amaury Séchet <deadalnix at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll
Log Message:
-----------
[NFC] Automatically generate indirect-branch-tracking-eh2.ll
Commit: 6a13bbf92f6f7f2f5d59dfda99ccca223c72eeef
https://github.com/llvm/llvm-project/commit/6a13bbf92f6f7f2f5d59dfda99ccca223c72eeef
Author: Joe Nash <Sisyph at users.noreply.github.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOPCInstructions.td
M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
M llvm/test/MC/AMDGPU/gfx11_asm_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_features.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.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/AMDGPU/gfx12_err.s
M llvm/test/MC/AMDGPU/vop_dpp.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_features.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp8.txt
Log Message:
-----------
[AMDGPU][MC] Enables sgpr or imm src1 for float VOP3 DPP, but excludi… (#87382)
…ng VOPC.
Fixes support on GFX1150 and GFX12 where src1 of e64_dpp instructions
should allow sgpr and imm operands.
PR #67461 added support for this with int operands, but it was missing a
piece for float.
Changing VOPC e64_dpp will be in a different patch because there is a
bug preventing that change.
Commit: 4d8a3f5b35b01f8223d2e4c0e63d91cd00e9b1a5
https://github.com/llvm/llvm-project/commit/4d8a3f5b35b01f8223d2e4c0e63d91cd00e9b1a5
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
A llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
Log Message:
-----------
[VectorCombine][X86] Add some tests showing failure to fold shuffle(cast(x),cast(y)) -> cast(shuffle(x,y))
Part of #67803
Commit: a77d3d9a2e5decc814119dc4e0a7b4625a6f6490
https://github.com/llvm/llvm-project/commit/a77d3d9a2e5decc814119dc4e0a7b4625a6f6490
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/include/__expected/bad_expected_access.h
Log Message:
-----------
[libc++] Disables -Wweak-vtables diagnostics. (#85577)
This is a preparation to use Clang HEAD in the CI.
Commit: 362aa434cc31ccca96749a6db8cd97f5b7d71206
https://github.com/llvm/llvm-project/commit/362aa434cc31ccca96749a6db8cd97f5b7d71206
Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/docs/PassManagement.md
M mlir/include/mlir/Support/Timing.h
M mlir/lib/Support/Timing.cpp
M mlir/test/Pass/pass-timing.mlir
Log Message:
-----------
[mlir] Enhance TimingManager Printing Flexibility (#85821)
Revise the printing functionality of TimingManager to accommodate
various output formats. At present, TimingManager is limited to
outputting data solely in plain text format. To overcome this
limitation, I have introduced an abstract class that serves as the
foundation for printing. This approach allows users to implement
additional output formats by extending this abstract class. As part of
this update, I have integrated support for JSON as a new output format,
enhancing the ease of parsing for subsequent processing scripts.
Commit: 72e2e4f7dc682fa3f6eda9f3cfbd20a8ffaac4e4
https://github.com/llvm/llvm-project/commit/72e2e4f7dc682fa3f6eda9f3cfbd20a8ffaac4e4
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/Format/Format.cpp
Log Message:
-----------
[clang-format] Lambda parameter should be passed by const reference (#87306)
Closes #87254.
Commit: 6f2d8cc0614bee1074e9d11f1ac0df9ce9d185f6
https://github.com/llvm/llvm-project/commit/6f2d8cc0614bee1074e9d11f1ac0df9ce9d185f6
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__chrono/leap_second.h
M libcxx/include/__chrono/tzdb.h
M libcxx/include/chrono
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap
M libcxx/modules/std/chrono.inc
M libcxx/src/CMakeLists.txt
A libcxx/src/include/tzdb/leap_second_private.h
M libcxx/src/tzdb.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/leap_seconds.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.db/leap_seconds.pass.cpp
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.tzdb/tzdb.members.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/assign.copy.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/cons.copy.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/members/date.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/members/value.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp
A libcxx/test/support/test_chrono_leap_second.h
Log Message:
-----------
[libc++][chrono] Loads leap-seconds.list in tzdb. (#82113)
This implements the loading of the leap-seconds.list file and store its
contents in the tzdb struct.
This adds the required `leap_seconds` member.
The class leap_seconds 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:
- P1981 Rename leap to leap_second
- LWG3359 <chrono> leap second support should allow for negative leap
seconds
- LWG3383 §[time.zone.leap.nonmembers] sys_seconds should be replaced
with seconds
Commit: 5b959310b0fae723bd119ed8815bf1cb1a8c67d4
https://github.com/llvm/llvm-project/commit/5b959310b0fae723bd119ed8815bf1cb1a8c67d4
Author: Chris Bieneman <chris.bieneman at me.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
R clang/test/SemaHLSL/ArrayTemporary.ll
Log Message:
-----------
[NFC] Delete unintentionally added file
Commit: cc308f60d41744b5920ec2e2e5b25e1273c8704b
https://github.com/llvm/llvm-project/commit/cc308f60d41744b5920ec2e2e5b25e1273c8704b
Author: Nathan Chancellor <nathan at kernel.org>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/TokenKinds.def
M clang/test/Parser/c2x-typeof-ext-warns.c
A clang/test/SemaCXX/typeof_unqual.cpp
Log Message:
-----------
[clang] Support __typeof_unqual__ in all C modes (#87392)
GCC has added __typeof_unqual__ to allow typeof_unqual to be used in all
C modes (not just C23 and newer), similar to __typeof__ and typeof.
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=607d9d50ee44163cee621cd991600acaf78c2fee
The Linux kernel would like to start using __typeof_unqual__ to strip
type qualifiers such as address spaces from inputs to macros but cannot
switch to C23 due to compiler version requirements.
Match GCC and allow __typeof_unqual__ in all C modes.
Closes: https://github.com/llvm/llvm-project/issues/76423
Link: https://lore.kernel.org/CAFULd4YG21NdF_qNVBGDtXO6xnaYFeRPvKicB=gpgUUqYE=4jw@mail.gmail.com/
Commit: 2ff3850ea19f72573d8abdf9a78e52d3dfdd90ac
https://github.com/llvm/llvm-project/commit/2ff3850ea19f72573d8abdf9a78e52d3dfdd90ac
Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M openmp/docs/design/Runtimes.rst
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/src/kmp_affinity.h
A openmp/runtime/test/affinity/kmp-abs-hw-subset.c
Log Message:
-----------
[OpenMP] Add absolute KMP_HW_SUBSET functionality (#85326)
Users can put a : in front of KMP_HW_SUBSET to indicate that the
specified subset is an "absolute" subset. Currently, when a user puts
KMP_HW_SUBSET=1t. This gets translated to KMP_HW_SUBSET="*s,*c,1t",
where * means "use all of". If a user wants only one thread as the
entire topology they can now do KMP_HW_SUBSET=:1t.
Along with the absolute syntax is a fix for newer machines and making
them easier to use with only the 3-level topology syntax. When a user
puts KMP_HW_SUBSET=1s,4c,2t on a machine which actually has 4 layers,
(say 1s,2m,3c,2t as the entire machine) the user gets an unexpected "too
many resources asked" message because KMP_HW_SUBSET currently translates
the "4c" value to mean 4 cores per module. To help users out, the
runtime can assume that these newer layers, module in this case, should
be ignored if they are not specified, but the topology should always
take into account the sockets, cores, and threads layers.
Commit: 17642c76023b7f421dac8e9fb176b0221e309a8a
https://github.com/llvm/llvm-project/commit/17642c76023b7f421dac8e9fb176b0221e309a8a
Author: Krzysztof Pszeniczny <kpszeniczny at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
A llvm/test/Transforms/SampleProfile/Inputs/non-probe-stale-profile-matching.prof
A llvm/test/Transforms/SampleProfile/non-probe-stale-profile-matching.ll
Log Message:
-----------
[SamplePGO] Support -salvage-stale-profile without probes too (#86116)
Currently -salvage-stale-profile is a no-op if the profile is not
probe-based. We observed that it can help for regular, non-probe- based
profiles too: some of our internal benchmarks show 0.2-0.3% QPS
improvement.
There seems to be no good reason to limit this flag to only work for
probe-based profiles.
Commit: 5b702be1e80b8733786ac48ceaf04f2936616d1b
https://github.com/llvm/llvm-project/commit/5b702be1e80b8733786ac48ceaf04f2936616d1b
Author: Prashant Kumar <pk5561 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
M mlir/test/Dialect/Math/expand-math.mlir
Log Message:
-----------
[mlir][math] Convert math.fpowi to math.powf in case of non constant (#87472)
Convert math.fpowi to math.powf by converting dtype of power operand to
floating point.
Commit: 1189e87951e59a81ee097eae847c06008276fef1
https://github.com/llvm/llvm-project/commit/1189e87951e59a81ee097eae847c06008276fef1
Author: Kazu Hirata <kazu at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
Log Message:
-----------
[CodeGen] Fix a warning
This patch fixes:
clang/lib/CodeGen/CGExpr.cpp:5607:11: error: variable 'Result' is
used uninitialized whenever 'if' condition is false
[-Werror,-Wsometimes-uninitialized]
Commit: 33992eabc7834e32094e7187dc10225f1a3773a5
https://github.com/llvm/llvm-project/commit/33992eabc7834e32094e7187dc10225f1a3773a5
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
A offload/README.md
Log Message:
-----------
[Offload][NFC] Add offload subfolder and README (#77154)
The readme only states the goal and has links to further information,
e.g., our meetings.
---------
Co-authored-by: Shilei Tian <i at tianshilei.me>
Commit: 07a566793b2f94d0de6b95b7e6d1146b0d7ffe49
https://github.com/llvm/llvm-project/commit/07a566793b2f94d0de6b95b7e6d1146b0d7ffe49
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/SystemZ/ext-alt-node-must-ext.ll
Log Message:
-----------
[SLP]Fix PR87477: fix alternate node cast cost/codegen.
Have to compare actual type size to pick up proper cast operation
opcode.
Commit: 315c88c5fbdb2b27cebf23c87fb502f7a567d84b
https://github.com/llvm/llvm-project/commit/315c88c5fbdb2b27cebf23c87fb502f7a567d84b
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Numeric.cpp
M flang/runtime/numeric-templates.h
M flang/test/Lower/Intrinsics/modulo.f90
M flang/unittests/Runtime/Numeric.cpp
Log Message:
-----------
[flang] Fixed MODULO(x, inf) to produce NaN. (#86145)
Straightforward computation of `A − FLOOR (A / P) * P` should
produce NaN, when P is infinity. The -menable-no-infs lowering
can still use the relaxed operations sequence.
Commit: 5822ca5a013256bbca33fbbae56f49caa2e37fe3
https://github.com/llvm/llvm-project/commit/5822ca5a013256bbca33fbbae56f49caa2e37fe3
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/include/clang/Basic/Sanitizers.def
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CodeGenFunction.h
R clang/test/CodeGen/ubsan-bitfield-conversion.c
R clang/test/CodeGenCXX/ubsan-bitfield-conversion.cpp
M clang/test/Driver/fsanitize.c
M compiler-rt/lib/ubsan/ubsan_handlers.cpp
M compiler-rt/lib/ubsan/ubsan_handlers.h
Log Message:
-----------
Revert "[clang][UBSan] Add implicit conversion check for bitfields" (#87518)
Reverts llvm/llvm-project#75481
Breaks multiple bots, see #75481
Commit: 6099639846c14991806290524b77cc25f6eb39bc
https://github.com/llvm/llvm-project/commit/6099639846c14991806290524b77cc25f6eb39bc
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
A clang/test/CodeGen/allow-ubsan-check.c
Log Message:
-----------
[clang] Precommit test for `llvm.allow.ubsan.check()` (#87435)
Commit: fff2690eba58f3a548865b5246b09233663c680d
https://github.com/llvm/llvm-project/commit/fff2690eba58f3a548865b5246b09233663c680d
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
[C23] Remove WG14 N2416 from the C status page
This paper did not add any normative changes for us to check
conformance against. It added a note describing a potential behavioral
difference between compile-time and runtime evaluation of negative
floating-point values in the presence of rounding modes.
Commit: 07d3f2a8de6956717db2355d6d3421d35f3a5796
https://github.com/llvm/llvm-project/commit/07d3f2a8de6956717db2355d6d3421d35f3a5796
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-xor.mir
Log Message:
-----------
[RISCV][GISEL] Run update_mir_test_checks on llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-xor.mir
Commit: 23616c65e7d632e750ddb67d55cc39098a69a8a6
https://github.com/llvm/llvm-project/commit/23616c65e7d632e750ddb67d55cc39098a69a8a6
Author: maflcko <6399679+maflcko at users.noreply.github.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/tools/dsymutil/CMakeLists.txt
Log Message:
-----------
dsymutil: Re-add missing -latomic (#85380)
This was accidentally removed in
https://reviews.llvm.org/D137799#4657404 /
https://reviews.llvm.org/D137799#C3933303OL44, and downstream projects
are forced to add it back. For example,
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=4e26331a5ee87928a16888c36d51e270f0f10f90
Fix this, by re-adding it.
Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>
Commit: cd29126b6333c28cc4df7b932ed0d6d6c13983d1
https://github.com/llvm/llvm-project/commit/cd29126b6333c28cc4df7b932ed0d6d6c13983d1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/icmp-altopcode-after-reordering.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll
Log Message:
-----------
[SLP]Fix PR87133: crash because of different altopcodes for cmps after reordering.
If the node has cmp instruction with 3 or more different but swappable
predicates, need to keep same kind of main/alternate opcodes to avoid
incorrect detection of opcodes after reordering. Reordering changes the
order and we may erroneously consider swappable opcodes as
non-compatible/alternate, which may lead to a later compiler crash.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/87267
Commit: fbcd0c65f7b2f65e0ee58e5448b88af39faf10f1
https://github.com/llvm/llvm-project/commit/fbcd0c65f7b2f65e0ee58e5448b88af39faf10f1
Author: Rafael Ubal <rubal at mathworks.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/Tosa/invalid.mlir
Log Message:
-----------
Updates to 'tosa.reshape' verifier (#87416)
This addition catches common cases of malformed `tosa.reshape` ops. This
prevents the `--tosa-to-tensor` pass from asserting when fed invalid
operations, as these will be caught ahead of time by the verifier.
Closes #87396
Commit: d83233f597f6d512bf7109bb4c33a7fdd2f8fd31
https://github.com/llvm/llvm-project/commit/d83233f597f6d512bf7109bb4c33a7fdd2f8fd31
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M libcxx/docs/Status/Cxx23.rst
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
Log Message:
-----------
[libc++] Mark some recent LWG issues and papers as done (#87502)
Justifications:
- LWG3950: Done in #66206
- LWG3975: Wording changes only
- LWG4011: Wording changes only
- LWG4030: Wording changes only
- LWG4043: Wording changes only
- LWG3036 and P2875R4: We implemented neither, but the latter reverts
the former, so now we implement both without doing anything!
Commit: d5ec49ff3dc26cdbe350e9cafc6b8e331fff7911
https://github.com/llvm/llvm-project/commit/d5ec49ff3dc26cdbe350e9cafc6b8e331fff7911
Author: Chenguang Wang <w3cing at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M mlir/lib/Support/Timing.cpp
Log Message:
-----------
[mlir] Initialize DefaultTimingManager::out. (#87522)
`DefaultTimingManager::clear()` uses `out` to initialize `TimerImpl`,
but the `out` is `nullptr` by default. This means if
`DefaultTimingManager::setOutput()` is never called,
`DefaultTimingManager` destructor may generate SIGSEGV.
Commit: a94a3cd3d6d4ca6cadaafc29c8097bd2fe078b9d
https://github.com/llvm/llvm-project/commit/a94a3cd3d6d4ca6cadaafc29c8097bd2fe078b9d
Author: Lei Wang <wlei at fb.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
M llvm/test/Transforms/SampleProfile/pseudo-probe-callee-profile-mismatch.ll
Log Message:
-----------
Always check the function attribute to determine checksum mismatch for available_externally functions (#87279)
This is to fix an assertion error. Apparently, `pseudo_probe_desc` could
still be available for import functions, and its checksum mismatch state
can be different from import function's `profile-checksum-mismatch`
attr. This happens when unstable IR or ODR violation issue occurs, the
definitions of the same function across different translation units
could be different and result in different checksums. During link time
deduplication, the internal function definition (the checksum in desc is
computed based on) is substituted by the `available_externally`
definition, which cause the inconsistency. Hence, we fix it to by always
checking the state for the new `available_externally` definition, which
is saved in the function attribute.
Commit: 8a5a1b770413bb62ff27cd8c2aea3d04b3a95bbe
https://github.com/llvm/llvm-project/commit/8a5a1b770413bb62ff27cd8c2aea3d04b3a95bbe
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/include/clang/Basic/Sanitizers.def
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CodeGenFunction.h
A clang/test/CodeGen/ubsan-bitfield-conversion.c
A clang/test/CodeGenCXX/ubsan-bitfield-conversion.cpp
M clang/test/Driver/fsanitize.c
M compiler-rt/lib/ubsan/ubsan_handlers.cpp
M compiler-rt/lib/ubsan/ubsan_handlers.h
Log Message:
-----------
Revert "Revert "[clang][UBSan] Add implicit conversion check for bitfields"" (#87529)
Reverts llvm/llvm-project#87518
Revert is not needed as the regression was fixed with
1189e87951e59a81ee097eae847c06008276fef1.
I assumed the crash and warning are different issues, but according to
https://lab.llvm.org/buildbot/#/builders/240/builds/26629
fixing warning resolves the crash.
Commit: 42c7bc04c30b427414a2d957776b1655abb27b6e
https://github.com/llvm/llvm-project/commit/42c7bc04c30b427414a2d957776b1655abb27b6e
Author: David Green <david.green at arm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/include/clang/Basic/arm_neon.td
M clang/lib/CodeGen/CGBuiltin.cpp
A clang/test/CodeGen/aarch64-v8.2a-neon-intrinsics-generic.c
M clang/test/CodeGen/aarch64-v8.2a-neon-intrinsics.c
A clang/test/CodeGen/arm-v8.2a-neon-intrinsics-generic.c
M clang/test/CodeGen/arm-v8.2a-neon-intrinsics.c
Log Message:
-----------
[AArch64][ARM] Make neon fp16 generic intrinsics always available. (#87467)
By generic intrinsics this mean things like dup, ext, zip and bsl that
can always be executed with integer s16 operations and do not require
fullfp16. This makes them always available, and brings them inline with
GCC.
https://godbolt.org/z/azs8eMv54
The relevant test cases have been moved into their own files, to allow
them to be tested with armv8-a and armv8.2-a+fp16.
Commit: 5bbce06ac642bedcb93158ed04253cf6deedf5e6
https://github.com/llvm/llvm-project/commit/5bbce06ac642bedcb93158ed04253cf6deedf5e6
Author: Lei Wang <wlei at fb.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M clang/test/CodeGen/pseudo-probe-emit.c
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/Transforms/IPO/SampleProfileProbe.h
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-profile.prof
M llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-update.prof
M llvm/test/Transforms/SampleProfile/pseudo-probe-dangle.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-discriminator.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-invoke.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-profile-metadata-2.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-profile.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-update.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-verify.ll
Log Message:
-----------
[PseudoProbe] Mix block and call probe ID in lexical order (#75092)
Before all the call probe ids are after block ids, in this change, it
mixed the call probe and block probe by reordering them in
lexical(line-number) order. For example:
```
main():
BB1
if(...)
BB2 foo(..);
else
BB3 bar(...);
BB4
```
Before the profile is
```
main
1: ..
2: ..
3: ...
4: ...
5: foo ...
6: bar ...
```
Now the new order is
```
main
1: ..
2: ..
3: foo ...
4: ...
5: bar ...
6: ...
```
This can potentially make it more tolerant of profile mismatch, either from stale profile or frontend change. e.g. before if we add one block, even the block is the last one, all the call probes are shifted and mismatched. Moreover, this makes better use of call-anchor based stale profile matching. Blocks are matched based on the closest anchor, there would be more anchors used for the matching, reduce the mismatch scope.
Commit: d57884011e8c57b118b831614b692ba4bc8b5aca
https://github.com/llvm/llvm-project/commit/d57884011e8c57b118b831614b692ba4bc8b5aca
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-reorder-reshuffle.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-reorder-reshuffle.ll
M llvm/test/Transforms/SLPVectorizer/slp-umax-rdx-matcher-crash.ll
Log Message:
-----------
[SLP]Add support for commutative intrinsics.
Implemented long-standing TODO to support commutative intrinsics.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/86316
Commit: b15d27e24902444129bfec4095d68bf80f3af700
https://github.com/llvm/llvm-project/commit/b15d27e24902444129bfec4095d68bf80f3af700
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
Log Message:
-----------
[VectorCombine][X86] Add additional tests for #87510
Add zext nneg tests and check we don't fold casts with different src types
Commit: 52ae02db4044b5d6e55b48133ac641b0c998ef49
https://github.com/llvm/llvm-project/commit/52ae02db4044b5d6e55b48133ac641b0c998ef49
Author: David Green <david.green at arm.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/sve-nontemporal-masked-ldst.ll
Log Message:
-----------
[AArch64] Add a test for non-temporal masked loads / stores. NFC
Commit: 7c68a958e2213a5190d91ce6dddddb72ce732f1e
https://github.com/llvm/llvm-project/commit/7c68a958e2213a5190d91ce6dddddb72ce732f1e
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/DSDIRInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
Log Message:
-----------
AMDGPU: Use PseudoInstr to name SIMCInstr for DSDIR and SOPs, NFC (#87537)
We should consistently use PseudoInstr instead of Mnemonic to name
SIMCInstr, even though they may be the same in most cases
Commit: e29228efae67cadfd18c532f944d19b4e16ff229
https://github.com/llvm/llvm-project/commit/e29228efae67cadfd18c532f944d19b4e16ff229
Author: Joe Nash <joseph.nash at amd.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/VOPCInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
M llvm/test/MC/AMDGPU/gfx12_asm_features.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_err.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
Log Message:
-----------
[AMDGPU][MC] Allow VOP3C dpp src1 to be imm or SGPR (#87418)
Allows src1 of VOP3 encoded VOPC to be an SGPR or inline immediate on
GFX1150Plus
The w32 and w64 _e64_dpp assembler only real instructions were unused,
and erroneously constructed in a way that bugged parsing of the new
instructions. They are removed.
This patch is a follow up to PR
https://github.com/llvm/llvm-project/pull/87382
Commit: a8425d2fa2e0d29b83d16eac008441ecb9516320
https://github.com/llvm/llvm-project/commit/a8425d2fa2e0d29b83d16eac008441ecb9516320
Author: Kevin Frei <kevinfrei at users.noreply.github.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
A lldb/test/API/debuginfod/Normal/Makefile
A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
A lldb/test/API/debuginfod/Normal/main.c
A lldb/test/API/debuginfod/SplitDWARF/Makefile
A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
A lldb/test/API/debuginfod/SplitDWARF/main.c
Log Message:
-----------
DebugInfoD issues, take 2 (#86812)
The previous diff (and it's subsequent fix) were reverted as the tests
didn't work properly on the AArch64 & ARM LLDB buildbots. I made a
couple more minor changes to tests (from @clayborg's feedback) and
disabled them for non Linux-x86(_64) builds, as I don't have the ability
do anything about an ARM64 Linux failure. If I had to guess, I'd say the
toolchain on the buildbots isn't respecting the `-Wl,--build-id` flag.
Maybe, one day, when I have a Linux AArch64 system I'll dig in to it.
>From the reverted PR:
I've migrated the tests in my
https://github.com/llvm/llvm-project/pull/79181 from shell to API (at
@JDevlieghere's suggestion) and addressed a couple issues that were
exposed during testing.
The tests first test the "normal" situation (no DebugInfoD involvement,
just normal debug files sitting around), then the "no debug info"
situation (to make sure the test is seeing failure properly), then it
tests to validate that when DebugInfoD returns the symbols, things work
properly. This is duplicated for DWP/split-dwarf scenarios.
---------
Co-authored-by: Kevin Frei <freik at meta.com>
Commit: 607b4bc602eda79e97a91a9bc3552a6004e5ac47
https://github.com/llvm/llvm-project/commit/607b4bc602eda79e97a91a9bc3552a6004e5ac47
Author: Emma Pilkington <emma.pilkington95 at gmail.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-cov5.s
Log Message:
-----------
[AMDGPU] Add a missing COV6 case to getAMDHSACodeObjectVersion() (#87492)
Commit: 899855d2b11856a44e530fffe854d76be69b9008
https://github.com/llvm/llvm-project/commit/899855d2b11856a44e530fffe854d76be69b9008
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-icmp-to-trunc.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-with-multi-users.ll
Log Message:
-----------
[SLP]Improve minbitwidth analysis for operands of IToFP and ICmp instructions.
Compiler can improve analysis for operands of UIToFP/SIToFP instructions
and operands of ICmp instruction.
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/85966
Commit: fa2bbea14df3273b3403f34cc295c56233fdbd0d
https://github.com/llvm/llvm-project/commit/fa2bbea14df3273b3403f34cc295c56233fdbd0d
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-icmp-to-trunc.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-node-with-multi-users.ll
Log Message:
-----------
Revert "[SLP]Improve minbitwidth analysis for operands of IToFP and ICmp instructions."
This reverts commit 899855d2b11856a44e530fffe854d76be69b9008 to fix the
issue reported in https://lab.llvm.org/buildbot/#/builders/165/builds/51659.
Commit: e506dd0f14ea9fe0b0ac6c3492a118d4d2244fee
https://github.com/llvm/llvm-project/commit/e506dd0f14ea9fe0b0ac6c3492a118d4d2244fee
Author: Christopher Di Bella <cjdb at google.com>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M llvm/include/llvm/ADT/iterator_range.h
Log Message:
-----------
fully qualifies use of `detail` namespace (#87536)
Some TUs apparently end up with an ambiguity between `::llvm::detail`
and `support::detail`, so we close that gap at the source.
Commit: c2c73540eeaa20a2c35f04c42b8dd6b4ff58c2f7
https://github.com/llvm/llvm-project/commit/c2c73540eeaa20a2c35f04c42b8dd6b4ff58c2f7
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-03 (Wed, 03 Apr 2024)
Changed paths:
M .github/CODEOWNERS
M .github/workflows/email-check.yaml
M .github/workflows/issue-write.yml
M .github/workflows/pr-code-format.yml
M bolt/include/bolt/Core/AddressMap.h
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryData.h
M bolt/include/bolt/Core/BinaryDomTree.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/BinaryLoop.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/DebugData.h
M bolt/include/bolt/Core/DebugNames.h
M bolt/include/bolt/Core/FunctionLayout.h
M bolt/include/bolt/Core/MCPlus.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/BinaryPasses.h
M bolt/include/bolt/Passes/CacheMetrics.h
M bolt/include/bolt/Passes/DominatorAnalysis.h
M bolt/include/bolt/Passes/ReachingDefOrUse.h
M bolt/include/bolt/Passes/ReachingInsns.h
M bolt/include/bolt/Passes/ReorderUtils.h
M bolt/include/bolt/Profile/ProfileReaderBase.h
M bolt/include/bolt/Profile/ProfileYAMLMapping.h
M bolt/include/bolt/Rewrite/DWARFRewriter.h
M bolt/include/bolt/Rewrite/MetadataManager.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/include/bolt/RuntimeLibs/RuntimeLibrary.h
M bolt/include/bolt/Utils/NameShortener.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/FunctionLayout.cpp
M bolt/lib/Core/HashUtilities.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/CMOVConversion.cpp
M bolt/lib/Passes/FixRISCVCallsPass.cpp
M bolt/lib/Passes/FixRelaxationPass.cpp
M bolt/lib/Passes/FrameOptimizer.cpp
M bolt/lib/Passes/Hugify.cpp
M bolt/lib/Passes/Inliner.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
M bolt/lib/Passes/SplitFunctions.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Passes/ValidateInternalCalls.cpp
M bolt/lib/Profile/CMakeLists.txt
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Profile/Heatmap.cpp
R bolt/lib/Profile/ProfileReaderBase.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/JITLinkLinker.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/test/X86/linux-bug-table.s
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/heatmap/heatmap.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
A clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
A clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.h
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.c
A clang-tools-extra/test/clang-tidy/checkers/readability/enum-initial-value.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/diagnostic.cpp
M clang/cmake/caches/CrossWinToARMLinux.cmake
M clang/cmake/caches/Fuchsia.cmake
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/HLSL/FunctionCalls.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UndefinedBehaviorSanitizer.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/FormatString.h
M clang/include/clang/AST/OperationKinds.def
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Sanitizers.def
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Basic/arm_neon.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/ExtractAPI/API.h
A clang/include/clang/ExtractAPI/APIRecords.inc
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIActionBase.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/FrontendActions.h
A clang/include/clang/ExtractAPI/Serialization/APISetVisitor.h
R clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/InstallAPI/DylibVerifier.h
M clang/include/clang/InstallAPI/MachO.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Sema.h
A clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ComputeDependence.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/FormatString.cpp
M clang/lib/AST/Interp/ByteCodeStmtGen.h
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/Basic/TargetInfo.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/Basic/Targets/LoongArch.cpp
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/M68k.cpp
M clang/lib/Basic/Targets/M68k.h
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/VE.h
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDebugInfo.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/CGRecordLayoutBuilder.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Clang.h
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/DragonFly.cpp
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/InstallAPI/CMakeLists.txt
M clang/lib/InstallAPI/DylibVerifier.cpp
M clang/lib/InstallAPI/Visitor.cpp
M clang/lib/Interpreter/Value.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
M clang/lib/Tooling/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
A clang/test/APINotes/Inputs/Headers/Templates.apinotes
A clang/test/APINotes/Inputs/Headers/Templates.h
M clang/test/APINotes/Inputs/Headers/module.modulemap
A clang/test/APINotes/templates.cpp
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream-note.c
A clang/test/C/C11/n1482.c
M clang/test/C/C2x/n2350.c
A clang/test/C/C99/float_h-characteristics.c
A clang/test/C/C99/n570.c
A clang/test/C/C99/n782.c
A clang/test/C/C99/n835.c
M clang/test/C/drs/dr4xx.c
M clang/test/CXX/drs/dr16xx.cpp
A clang/test/CodeGen/M68k/inline-asm-gcc-regs.c
A clang/test/CodeGen/aapcs-bitfield-access-unit.c
M clang/test/CodeGen/aapcs-bitfield.c
A clang/test/CodeGen/aarch64-v8.2a-neon-intrinsics-generic.c
M clang/test/CodeGen/aarch64-v8.2a-neon-intrinsics.c
A clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/arm-bitfield-alignment.c
A clang/test/CodeGen/arm-v8.2a-neon-intrinsics-generic.c
M clang/test/CodeGen/arm-v8.2a-neon-intrinsics.c
M clang/test/CodeGen/arm64-be-bitfield.c
M clang/test/CodeGen/atomic.c
M clang/test/CodeGen/bitfield-2.c
A clang/test/CodeGen/bitfield-access-pad.c
A clang/test/CodeGen/bitfield-access-unit.c
M clang/test/CodeGen/debug-info-bitfield-0-struct.c
M clang/test/CodeGen/no-bitfield-type-align.c
M clang/test/CodeGen/pseudo-probe-emit.c
M clang/test/CodeGen/struct-x86-darwin.c
M clang/test/CodeGen/tbaa-struct.cpp
A clang/test/CodeGen/ubsan-bitfield-conversion.c
A clang/test/CodeGenCXX/bitfield-access-empty.cpp
A clang/test/CodeGenCXX/bitfield-access-tail.cpp
A clang/test/CodeGenCXX/bitfield-ir.cpp
M clang/test/CodeGenCXX/bitfield.cpp
A clang/test/CodeGenCXX/ubsan-bitfield-conversion.cpp
A clang/test/CodeGenCXX/x86_32-vaarg.cpp
A clang/test/CodeGenHLSL/ArrayTemporary.hlsl
M clang/test/CodeGenHLSL/builtins/round.hlsl
M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_subcall.hlsl
A clang/test/CodeGenHLSL/convergent-functions.hlsl
R clang/test/Driver/Inputs/in.so
R clang/test/Driver/Inputs/libomptarget/libomptarget-new-nvptx-sm_35.bc
R clang/test/Driver/Inputs/libomptarget/libomptarget-new-nvptx-test.bc
R clang/test/Driver/Inputs/openmp_static_device_link/empty.o
R clang/test/Driver/Inputs/openmp_static_device_link/lib.bc
R clang/test/Driver/Inputs/openmp_static_device_link/libFatArchive.a
M clang/test/Driver/cl-outputs.c
M clang/test/Driver/compiler-rt-unwind.c
M clang/test/Driver/constructors.c
M clang/test/Driver/cuda-detect.cu
A clang/test/Driver/darwin-ld-reexports.c
M clang/test/Driver/dragonfly.c
M clang/test/Driver/env.c
M clang/test/Driver/fsanitize.c
M clang/test/Driver/haiku.c
M clang/test/Driver/hexagon-toolchain-elf.c
M clang/test/Driver/hip-link-shared-library.hip
M clang/test/Driver/linux-header-search.cpp
M clang/test/Driver/linux-ld.c
M clang/test/Driver/linux-musl-header-search.cpp
M clang/test/Driver/linux-per-target-runtime-dir.c
M clang/test/Driver/mips-reduced-toolchain.cpp
M clang/test/Driver/module-output.cppm
M clang/test/Driver/msvc-link.c
M clang/test/Driver/netbsd.cpp
M clang/test/Driver/ohos.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/pic.c
M clang/test/Driver/riscv-features.c
M clang/test/Driver/solaris-ld-sanitizer.c
M clang/test/Driver/solaris-ld-values.c
M clang/test/Driver/solaris-ld-values.cpp
M clang/test/Driver/solaris-ld.c
M clang/test/ExtractAPI/anonymous_record_no_typedef.c
M clang/test/ExtractAPI/availability.c
M clang/test/ExtractAPI/bool.c
M clang/test/ExtractAPI/bool.cpp
M clang/test/ExtractAPI/class.cpp
M clang/test/ExtractAPI/class_template.cpp
M clang/test/ExtractAPI/class_template_param_inheritance.cpp
M clang/test/ExtractAPI/class_template_partial_spec.cpp
M clang/test/ExtractAPI/class_template_spec.cpp
M clang/test/ExtractAPI/concept.cpp
M clang/test/ExtractAPI/constructor_destructor.cpp
M clang/test/ExtractAPI/conversions.cpp
M clang/test/ExtractAPI/emit-symbol-graph/multi_file.c
M clang/test/ExtractAPI/emit-symbol-graph/single_file.c
M clang/test/ExtractAPI/enum.c
M clang/test/ExtractAPI/field_template.cpp
M clang/test/ExtractAPI/function_noexcepts.cpp
M clang/test/ExtractAPI/global_func_template.cpp
M clang/test/ExtractAPI/global_func_template_spec.cpp
M clang/test/ExtractAPI/global_record.c
M clang/test/ExtractAPI/global_record_multifile.c
M clang/test/ExtractAPI/global_var_template.cpp
M clang/test/ExtractAPI/global_var_template_partial_spec.cpp
M clang/test/ExtractAPI/global_var_template_spec.cpp
M clang/test/ExtractAPI/known_files_only.c
M clang/test/ExtractAPI/language.c
M clang/test/ExtractAPI/macro_undefined.c
M clang/test/ExtractAPI/macros.c
A clang/test/ExtractAPI/metadata_and_module.c
M clang/test/ExtractAPI/method_template.cpp
M clang/test/ExtractAPI/method_template_spec.cpp
M clang/test/ExtractAPI/methods.cpp
M clang/test/ExtractAPI/multiple_inheritance.cpp
M clang/test/ExtractAPI/namespace.cpp
M clang/test/ExtractAPI/nested_namespaces.cpp
M clang/test/ExtractAPI/objc_block.m
M clang/test/ExtractAPI/objc_category.m
A clang/test/ExtractAPI/objc_external_category.m
M clang/test/ExtractAPI/objc_id_protocol.m
M clang/test/ExtractAPI/objc_instancetype.m
M clang/test/ExtractAPI/objc_interface.m
R clang/test/ExtractAPI/objc_module_category.m
M clang/test/ExtractAPI/objc_property.m
M clang/test/ExtractAPI/objc_protocol.m
R clang/test/ExtractAPI/objc_various_categories.m
M clang/test/ExtractAPI/operator_overload.cpp
M clang/test/ExtractAPI/relative_include.m
M clang/test/ExtractAPI/simple_inheritance.cpp
M clang/test/ExtractAPI/struct.c
M clang/test/ExtractAPI/typedef.c
M clang/test/ExtractAPI/typedef_anonymous_record.c
M clang/test/ExtractAPI/typedef_chain.c
M clang/test/ExtractAPI/typedef_struct_enum.c
M clang/test/ExtractAPI/underscored.c
M clang/test/ExtractAPI/union.c
M clang/test/ExtractAPI/vfs_redirected_include.m
M clang/test/Index/extract-api-cursor.m
A clang/test/InstallAPI/diagnostics-dsym.test
M clang/test/Modules/language-linkage.cppm
A clang/test/Modules/no-local-decl-in-reduced-bmi.cppm
A clang/test/Modules/reduced-bmi-size.cppm
M clang/test/OpenMP/atomic_capture_codegen.cpp
M clang/test/OpenMP/atomic_read_codegen.c
M clang/test/OpenMP/atomic_update_codegen.cpp
M clang/test/OpenMP/atomic_write_codegen.c
M clang/test/Parser/c2x-typeof-ext-warns.c
A clang/test/Sema/GH70594.cpp
M clang/test/Sema/code_align.c
A clang/test/Sema/constant-builtins-all-args-evaluated.cpp
A clang/test/Sema/format-strings-signedness-fixit.c
A clang/test/Sema/format-strings-signedness.c
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
A clang/test/SemaCXX/typeof_unqual.cpp
A clang/test/SemaHLSL/ArrayParams.hlsl
A clang/test/SemaHLSL/ArrayTemporary.hlsl
M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
A clang/test/SemaObjCXX/Inputs/nullability-consistency-smart.h
M clang/test/SemaTemplate/concepts-friends.cpp
M clang/test/SemaTemplate/ctad.cpp
M clang/test/SemaTemplate/instantiation-depth-default.cpp
M clang/tools/clang-installapi/InstallAPIOpts.td
M clang/tools/clang-installapi/Options.cpp
M clang/tools/clang-installapi/Options.h
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXExtractAPI.cpp
M clang/unittests/AST/DeclPrinterTest.cpp
M clang/unittests/AST/DeclTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Lex/PPDependencyDirectivesTest.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M compiler-rt/lib/msan/msan_linux.cpp
M compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/common.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/tests/strings_test.cpp
M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c.inc
M compiler-rt/lib/scudo/standalone/wrappers_c_checks.h
M compiler-rt/lib/ubsan/ubsan_handlers.cpp
M compiler-rt/lib/ubsan/ubsan_handlers.h
M compiler-rt/test/dfsan/mmap_at_init.c
A compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
M flang/include/flang/Common/api-attrs.h
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/AbstractConverter.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
M flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Numeric.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/runtime/descriptor-io.h
M flang/runtime/edit-output.cpp
M flang/runtime/emit-encoded.h
M flang/runtime/io-stmt.cpp
M flang/runtime/io-stmt.h
M flang/runtime/numeric-templates.h
M flang/runtime/unit.cpp
M flang/runtime/unit.h
M flang/test/Lower/AMD/code-object-version.f90
A flang/test/Lower/HLFIR/procedure-pointer-component-default-init.f90
M flang/test/Lower/Intrinsics/modulo.f90
M flang/test/Transforms/stack-arrays.fir
M flang/unittests/Runtime/Numeric.cpp
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/config.json
M libc/config/darwin/arm/entrypoints.txt
M libc/config/gpu/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/configure.rst
M libc/docs/dev/printf_behavior.rst
M libc/docs/gpu/rpc.rst
M libc/docs/math/index.rst
M libc/include/llvm-libc-types/rpc_opcodes_t.h
M libc/spec/gpu_ext.td
M libc/spec/posix.td
M libc/spec/stdc.td
M libc/src/__support/FPUtil/BasicOperations.h
M libc/src/__support/arg_list.h
M libc/src/__support/macros/config.h
M libc/src/gpu/CMakeLists.txt
A libc/src/gpu/rpc_fprintf.cpp
A libc/src/gpu/rpc_fprintf.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/atan2f.cpp
M libc/src/math/generic/atanf.cpp
M libc/src/math/generic/inv_trigf_utils.cpp
M libc/src/math/generic/inv_trigf_utils.h
M libc/src/stdio/CMakeLists.txt
A libc/src/stdio/fseeko.h
A libc/src/stdio/ftello.h
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/generic/fseek.cpp
A libc/src/stdio/generic/fseeko.cpp
M libc/src/stdio/generic/ftell.cpp
A libc/src/stdio/generic/ftello.cpp
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/converter_utils.h
M libc/src/stdio/printf_core/core_structs.h
M libc/src/stdio/printf_core/int_converter.h
M libc/src/stdio/printf_core/parser.h
M libc/src/stdio/printf_core/write_int_converter.h
M libc/src/unistd/CMakeLists.txt
A libc/src/unistd/_exit.cpp
A libc/src/unistd/_exit.h
M libc/test/UnitTest/PrintfMatcher.cpp
M libc/test/integration/src/stdio/CMakeLists.txt
A libc/test/integration/src/stdio/gpu/CMakeLists.txt
A libc/test/integration/src/stdio/gpu/printf.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/atan2f_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/CanonicalizeTest.h
A libc/test/src/math/smoke/atan2f_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/ftell_test.cpp
M libc/test/src/stdio/printf_core/parser_test.cpp
M libc/test/src/stdio/sprintf_test.cpp
M libc/test/src/unistd/CMakeLists.txt
A libc/test/src/unistd/_exit_test.cpp
M libc/utils/HdrGen/Generator.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M libc/utils/MPFRWrapper/MPFRUtils.h
M libc/utils/gpu/loader/Loader.h
M libc/utils/gpu/loader/amdgpu/Loader.cpp
M libc/utils/gpu/loader/nvptx/Loader.cpp
M libc/utils/gpu/server/CMakeLists.txt
M libc/utils/gpu/server/llvmlibc_rpc_server.h
M libc/utils/gpu/server/rpc_server.cpp
M libcxx/benchmarks/algorithms/mismatch.bench.cpp
A libcxx/docs/DesignDocs/NodiscardPolicy.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/Cxx23.rst
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/docs/index.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/mismatch.h
M libcxx/include/__algorithm/ranges_contains_subrange.h
M libcxx/include/__algorithm/ranges_mismatch.h
M libcxx/include/__algorithm/simd_utils.h
A libcxx/include/__chrono/leap_second.h
M libcxx/include/__chrono/tzdb.h
M libcxx/include/__exception/operations.h
M libcxx/include/__expected/bad_expected_access.h
M libcxx/include/__filesystem/copy_options.h
M libcxx/include/__filesystem/directory_options.h
M libcxx/include/__filesystem/file_status.h
M libcxx/include/__filesystem/file_time_type.h
M libcxx/include/__filesystem/file_type.h
M libcxx/include/__filesystem/perm_options.h
M libcxx/include/__filesystem/perms.h
M libcxx/include/__filesystem/space_info.h
M libcxx/include/__format/container_adaptor.h
M libcxx/include/__format/format_args.h
M libcxx/include/__format/format_context.h
M libcxx/include/__format/formatter.h
M libcxx/include/__format/formatter_bool.h
M libcxx/include/__format/formatter_char.h
M libcxx/include/__format/formatter_integer.h
M libcxx/include/__format/formatter_pointer.h
M libcxx/include/__format/formatter_string.h
A libcxx/include/__fwd/deque.h
M libcxx/include/__fwd/format.h
A libcxx/include/__fwd/memory.h
A libcxx/include/__fwd/queue.h
M libcxx/include/__fwd/sstream.h
A libcxx/include/__fwd/stack.h
M libcxx/include/__fwd/string.h
A libcxx/include/__fwd/vector.h
M libcxx/include/__iterator/advance.h
M libcxx/include/__locale
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/uses_allocator_construction.h
M libcxx/include/__memory_resource/polymorphic_allocator.h
M libcxx/include/__random/seed_seq.h
M libcxx/include/__ranges/subrange.h
M libcxx/include/__ranges/zip_view.h
M libcxx/include/__thread/support/pthread.h
R libcxx/include/__tuple/pair_like.h
M libcxx/include/__tuple/tuple_like.h
A libcxx/include/__tuple/tuple_like_no_subrange.h
M libcxx/include/__type_traits/apply_cv.h
M libcxx/include/__utility/pair.h
M libcxx/include/any
M libcxx/include/chrono
M libcxx/include/deque
M libcxx/include/format
M libcxx/include/future
M libcxx/include/iosfwd
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap
M libcxx/include/new
M libcxx/include/queue
M libcxx/include/shared_mutex
M libcxx/include/stack
M libcxx/include/stddef.h
M libcxx/include/thread
M libcxx/include/tuple
M libcxx/include/typeinfo
M libcxx/include/variant
M libcxx/include/vector
M libcxx/include/version
M libcxx/modules/std/chrono.inc
M libcxx/src/CMakeLists.txt
M libcxx/src/include/overridable_function.h
A libcxx/src/include/tzdb/leap_second_private.h
M libcxx/src/tzdb.cpp
M libcxx/test/libcxx/diagnostics/chrono.nodiscard_extensions.compile.pass.cpp
M libcxx/test/libcxx/diagnostics/chrono.nodiscard_extensions.verify.cpp
M libcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.pass.cpp
M libcxx/test/libcxx/input.output/filesystems/convert_file_time.pass.cpp
A libcxx/test/libcxx/time/time.zone/time.zone.db/leap_seconds.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.db/rules.pass.cpp
M 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/libcxx/utilities/tuple/__tuple_like.compile.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains_subrange.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.cons/deduct.verify.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/generic_category.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count_sentinel.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
A libcxx/test/std/language.support/support.limits/support.limits.general/random.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
A libcxx/test/std/numerics/rand/rand.util/rand.util.seedseq/generate.mandates.verify.cpp
M libcxx/test/std/ranges/range.adaptors/range.elements/range.concept.compile.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.zip/borrowing.compile.pass.cpp
M libcxx/test/std/ranges/range.utility/range.subrange/operator.pair_like.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.db/leap_seconds.pass.cpp
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.tzdb/tzdb.members.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/assign.copy.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/cons.copy.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/members/date.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/members/value.pass.cpp
A libcxx/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_incomplete.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_structured_bindings.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_value_sfinae.pass.cpp
M libcxx/test/support/deduction_guides_sfinae_checks.h
A libcxx/test/support/test_chrono_leap_second.h
M libcxx/test/support/test_iterators.h
M libcxx/utils/generate_feature_test_macro_components.py
M libcxxabi/src/private_typeinfo.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/SyntheticSections.cpp
M lld/test/ELF/allow-shlib-undefined.s
M lld/test/ELF/gnu-ifunc-nonpreemptible.s
R lld/test/ELF/gnu-ifunc-relative.s
M lld/test/ELF/shlib-undefined-local.s
M lldb/include/lldb/Utility/Scalar.h
M lldb/include/lldb/lldb-private-enumerations.h
M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
M lldb/source/Breakpoint/BreakpointIDList.cpp
M lldb/source/Plugins/Process/Utility/AuxVector.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Utility/RegisterValue.cpp
M lldb/source/Utility/Scalar.cpp
A lldb/test/API/debuginfod/Normal/Makefile
A lldb/test/API/debuginfod/Normal/TestDebuginfod.py
A lldb/test/API/debuginfod/Normal/main.c
A lldb/test/API/debuginfod/SplitDWARF/Makefile
A lldb/test/API/debuginfod/SplitDWARF/TestDebuginfodDWP.py
A lldb/test/API/debuginfod/SplitDWARF/main.c
M lldb/test/API/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
M lldb/test/API/functionalities/type_find_first/Makefile
M lldb/test/API/functionalities/type_find_first/TestFindFirstType.py
M lldb/test/API/functionalities/type_find_first/main.cpp
A lldb/test/API/functionalities/type_find_first/other.cpp
M lldb/unittests/Utility/ScalarTest.cpp
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/docs/LangRef.rst
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/iterator_range.h
M llvm/include/llvm/Analysis/EHUtils.h
M llvm/include/llvm/Analysis/IndirectCallVisitor.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/CodeGen/RegisterBankInfo.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/Mangler.h
M llvm/include/llvm/IR/PassManager.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/MC/MCContext.h
M llvm/include/llvm/Object/COFF.h
M llvm/include/llvm/Object/COFFImportFile.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/Object/WindowsMachineFlag.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/ProfileData/InstrProf.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/InstrProfWriter.h
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/Support/FormatAdapters.h
M llvm/include/llvm/Support/FormatCommon.h
M llvm/include/llvm/Support/FormatProviders.h
M llvm/include/llvm/Support/FormatVariadic.h
M llvm/include/llvm/Support/FormatVariadicDetails.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/TextAPI/DylibReader.h
M llvm/include/llvm/TextAPI/Record.h
A llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/include/llvm/Transforms/IPO/SampleProfileProbe.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
M llvm/lib/Analysis/AliasSetTracker.cpp
M llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
M llvm/lib/Analysis/MemorySSA.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Analysis/ReplayInlineAdvisor.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ExpandLargeDivRem.cpp
M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
A llvm/lib/CodeGen/GlobalISel/CombinerHelperVectorOps.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/IntrinsicLowering.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachinePipeliner.cpp
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/ShrinkWrap.cpp
M llvm/lib/CodeGen/TypePromotion.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Mangler.cpp
M llvm/lib/IR/Operator.cpp
M llvm/lib/MC/MCContext.cpp
M llvm/lib/Object/COFFImportFile.cpp
M llvm/lib/Object/COFFObjectFile.cpp
M llvm/lib/Object/GOFFObjectFile.cpp
M llvm/lib/Object/WindowsResource.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/InstrProfWriter.cpp
M llvm/lib/Support/APInt.cpp
M llvm/lib/Support/FormatVariadic.cpp
M llvm/lib/Support/Unix/Threading.inc
M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/DSDIRInstructions.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOPCInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/AVR/AVRInstrInfo.td
M llvm/lib/Target/BPF/BPFISelLowering.cpp
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/M68k/M68kInstrInfo.td
M llvm/lib/Target/Mips/Mips32r6InstrInfo.td
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h
M llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86SchedBroadwell.td
M llvm/lib/Target/X86/X86SchedHaswell.td
M llvm/lib/Target/X86/X86SchedSkylakeClient.td
M llvm/lib/Target/X86/X86SchedSkylakeServer.td
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/TextAPI/BinaryReader/CMakeLists.txt
M llvm/lib/TextAPI/BinaryReader/DylibReader.cpp
M llvm/lib/Transforms/IPO/CMakeLists.txt
M llvm/lib/Transforms/IPO/SampleProfile.cpp
A llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Instrumentation/ValueProfilePlugins.inc
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/AliasSet/intrinsics.ll
M llvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
M llvm/test/Analysis/CostModel/RISCV/cast.ll
M llvm/test/Analysis/CostModel/RISCV/int-min-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-max.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-min.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-fp.ll
M llvm/test/Analysis/CostModel/RISCV/reduce-scalable-int.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-insertelement.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
M llvm/test/Analysis/CostModel/free-intrinsics-datalayout.ll
M llvm/test/Analysis/CostModel/free-intrinsics-no_info.ll
A llvm/test/Analysis/MemorySSA/allow-check.ll
M llvm/test/Assembler/flags.ll
M llvm/test/Bitcode/flags.ll
A llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-extract-vec-elt.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.mir
A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-trunc.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cmpxchg-128.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cmpxchg-with-success.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ctpop-no-implicit-float.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select.mir
A llvm/test/CodeGen/AArch64/allow-check.ll
M llvm/test/CodeGen/AArch64/dllexport.ll
M llvm/test/CodeGen/AArch64/extract-vector-elt.ll
M llvm/test/CodeGen/AArch64/extractvector-oob-load.mir
M llvm/test/CodeGen/AArch64/fp-intrinsics.ll
M llvm/test/CodeGen/AArch64/hadd-combine.ll
M llvm/test/CodeGen/AArch64/sadd_sat.ll
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
A llvm/test/CodeGen/AArch64/sms-regpress.mir
M llvm/test/CodeGen/AArch64/ssub_sat.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/stackmap.ll
M llvm/test/CodeGen/AArch64/strictfp_f16_abi_promote.ll
A llvm/test/CodeGen/AArch64/sve-nontemporal-masked-ldst.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-atomic-cmpxchg-with-success.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddo.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-saddsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubo.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssubsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sbfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
A llvm/test/CodeGen/AMDGPU/allow-check.ll
M llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
M llvm/test/CodeGen/AMDGPU/neighboring-mfma-padding.mir
M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
A llvm/test/CodeGen/BPF/cttz-ctlz.ll
A llvm/test/CodeGen/DirectX/ceil.ll
A llvm/test/CodeGen/DirectX/ceil_error.ll
M llvm/test/CodeGen/DirectX/round.ll
M llvm/test/CodeGen/DirectX/round_error.ll
A llvm/test/CodeGen/Generic/allow-check.ll
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/add.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/ctpop.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/cttz.mir
M llvm/test/CodeGen/Mips/GlobalISel/legalizer/mul.mir
A llvm/test/CodeGen/NVPTX/common-linkage.ll
M llvm/test/CodeGen/NVPTX/weak-global.ll
M llvm/test/CodeGen/PowerPC/legalize-vaarg.ll
M llvm/test/CodeGen/PowerPC/sms-regpress.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-add-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-ext-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-ext-rv64.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-bitcast.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-xor.mir
A llvm/test/CodeGen/RISCV/allow-check.ll
M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
M llvm/test/CodeGen/RISCV/ctz_zero_return_test.ll
M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb.ll
A llvm/test/CodeGen/RISCV/rv64-typepromotion.ll
M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsll.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
M llvm/test/CodeGen/SPIRV/ExecutionMode.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/abs.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/ceil.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cos.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/exp.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/exp2.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/floor.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/fmad.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/fmax.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/fmin.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/log.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/log10.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/log2.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/pow.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reversebits.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/round.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sin.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smax.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smin.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/sqrt.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/trunc.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/umax.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/umin.ll
M llvm/test/CodeGen/SPIRV/instructions/atomic.ll
M llvm/test/CodeGen/SPIRV/instructions/atomic_acqrel.ll
M llvm/test/CodeGen/SPIRV/instructions/atomic_seq.ll
A llvm/test/CodeGen/SPIRV/pointers/bitcast-fix-accesschain.ll
A llvm/test/CodeGen/SPIRV/pointers/type-deduce-by-call-complex.ll
M llvm/test/CodeGen/X86/AppendingLinkage.ll
A llvm/test/CodeGen/X86/allow-check.ll
M llvm/test/CodeGen/X86/combine-pavg.ll
M llvm/test/CodeGen/X86/indirect-branch-tracking-eh2.ll
M llvm/test/CodeGen/X86/shuffle-vs-trunc-256.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
A llvm/test/CodeGen/X86/vector-trunc-nowrap.ll
M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
M llvm/test/MC/AMDGPU/gfx11_asm_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_features.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.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/AMDGPU/gfx12_asm_vop3c_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
M llvm/test/MC/AMDGPU/vop_dpp.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_features.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
M llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6-el.txt
M llvm/test/MC/Disassembler/Mips/mips32r6/valid-mips32r6.txt
M llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6-el.txt
M llvm/test/MC/Disassembler/Mips/mips64r6/valid-mips64r6.txt
A llvm/test/MC/Disassembler/X86/apx/imulzu.txt
M llvm/test/MC/Mips/mips32r6/valid.s
M llvm/test/MC/Mips/mips64r6/valid.s
A llvm/test/MC/WebAssembly/module-asm.ll
A llvm/test/MC/X86/apx/imulzu-att.s
A llvm/test/MC/X86/apx/imulzu-intel.s
M llvm/test/MachineVerifier/test_g_splat_vector.mir
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
M llvm/test/TableGen/HwModeEncodeDecode2.td
M llvm/test/TableGen/HwModeEncodeDecode3.td
M llvm/test/TableGen/MacroFusion.td
M llvm/test/TableGen/x86-fold-tables.inc
M llvm/test/ThinLTO/X86/pseudo-probe-desc-import.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
A llvm/test/Transforms/ExpandLargeDivRem/X86/vector.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptosi129.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-fptoui129.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-si129tofp.ll
M llvm/test/Transforms/ExpandLargeFpConvert/X86/expand-large-fp-convert-ui129tofp.ll
M llvm/test/Transforms/FunctionAttrs/noundef.ll
M llvm/test/Transforms/InstCombine/X86/x86-avx512-inseltpoison.ll
M llvm/test/Transforms/InstCombine/X86/x86-avx512.ll
A llvm/test/Transforms/InstCombine/allow-checks.ll
M llvm/test/Transforms/InstCombine/apint-shl-trunc.ll
M llvm/test/Transforms/InstCombine/cast.ll
M llvm/test/Transforms/InstCombine/catchswitch-phi.ll
M llvm/test/Transforms/InstCombine/freeze.ll
M llvm/test/Transforms/InstCombine/icmp-mul-and.ll
M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
M llvm/test/Transforms/InstCombine/mul-masked-bits.ll
M llvm/test/Transforms/InstCombine/mul.ll
M llvm/test/Transforms/InstCombine/phi.ll
M llvm/test/Transforms/InstCombine/ptr-int-cast.ll
M llvm/test/Transforms/InstCombine/reduction-add-sext-zext-i1.ll
M llvm/test/Transforms/InstCombine/reduction-xor-sext-zext-i1.ll
M llvm/test/Transforms/InstCombine/select.ll
M llvm/test/Transforms/InstCombine/trunc.ll
A llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
A llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
A llvm/test/Transforms/PGOProfile/vtable_prof_unsupported.ll
A llvm/test/Transforms/PGOProfile/vtable_profile.ll
M llvm/test/Transforms/PhaseOrdering/X86/merge-functions.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-reorder-reshuffle.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/init-ext-node-not-truncable.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/mixed-extracts-types.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/ext-alt-node-must-ext.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/ext-not-resized-op-resized.ll
A llvm/test/Transforms/SLPVectorizer/X86/ext-int-reduced-not-operand.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
A llvm/test/Transforms/SLPVectorizer/X86/icmp-altopcode-after-reordering.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll
M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/sext-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/sext.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-reorder-reshuffle.ll
M llvm/test/Transforms/SLPVectorizer/X86/zext-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/zext.ll
M llvm/test/Transforms/SLPVectorizer/slp-umax-rdx-matcher-crash.ll
A llvm/test/Transforms/SampleProfile/Inputs/non-probe-stale-profile-matching.prof
M llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-profile.prof
M llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-update.prof
A llvm/test/Transforms/SampleProfile/non-probe-stale-profile-matching.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-callee-profile-mismatch.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-dangle.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-discriminator.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-eh.ll
A llvm/test/Transforms/SampleProfile/pseudo-probe-invoke.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-profile-metadata-2.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-profile.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-matching-lto.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-matching.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-update.ll
M llvm/test/Transforms/SampleProfile/pseudo-probe-verify.ll
M llvm/test/Transforms/SimplifyCFG/HoistCode.ll
M llvm/test/Transforms/SpeculativeExecution/PR46267.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-inseltpoison.ll
A llvm/test/Transforms/VectorCombine/X86/shuffle-of-casts.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle.ll
A llvm/test/tools/dsymutil/ARM/firmware.test
A llvm/test/tools/dsymutil/Inputs/private/tmp/firmware/test.o
A llvm/test/tools/dsymutil/Inputs/private/tmp/firmware/test.out
A llvm/test/tools/llc/new-pm/machine-function-properties.mir
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
M llvm/test/tools/llvm-mca/X86/Broadwell/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/Broadwell/resources-sse41.s
M llvm/test/tools/llvm-mca/X86/Haswell/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/Haswell/resources-sse41.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse41.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-sse41.s
M llvm/test/tools/llvm-objcopy/ELF/compress-sections-within-segment.s
M llvm/test/tools/llvm-objcopy/ELF/compress-sections.s
M llvm/test/tools/llvm-objcopy/ELF/discard-locals-rel.test
M llvm/test/tools/llvm-objcopy/ELF/strip-reloc-symbol.test
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-cov5.s
A llvm/test/tools/llvm-profdata/Inputs/vtable-value-prof.proftext
A llvm/test/tools/llvm-profdata/vtable-value-prof.test
M llvm/tools/dsymutil/CMakeLists.txt
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/unittests/ADT/APIntTest.cpp
M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
M llvm/unittests/CodeGen/GlobalISel/CSETest.cpp
M llvm/unittests/IR/PatternMatch.cpp
M llvm/unittests/ProfileData/InstrProfTest.cpp
M llvm/unittests/Support/FormatVariadicTest.cpp
M llvm/unittests/Support/KnownBitsTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/TableGen/MacroFusionPredicatorEmitter.cpp
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn
M mlir/docs/PassManagement.md
M mlir/include/mlir/Conversion/ArithCommon/AttrToLLVMConverter.h
M mlir/include/mlir/Dialect/Arith/IR/Arith.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/DLTI/DLTI.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.h
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/include/mlir/ExecutionEngine/SparseTensor/Storage.h
M mlir/include/mlir/ExecutionEngine/SparseTensorRuntime.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/OpDefinition.h
M mlir/include/mlir/IR/OperationSupport.h
M mlir/include/mlir/IR/OwningOpRef.h
M mlir/include/mlir/IR/PatternMatch.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.h
M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
M mlir/include/mlir/Pass/Pass.h
M mlir/include/mlir/Pass/PassOptions.h
M mlir/include/mlir/Support/Timing.h
M mlir/include/mlir/TableGen/Format.h
M mlir/include/mlir/Transforms/Passes.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/Conversion/ArithCommon/AttrToLLVMConverter.cpp
M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/MemRefToSPIRV/MapMemRefStorageClassPass.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Affine/Utils/LoopFusionUtils.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Arith/Transforms/UnsignedWhenEquivalent.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
M mlir/lib/Dialect/DLTI/DLTI.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseToLinalg.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SPIRV/IR/CooperativeMatrixOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/lib/Dialect/Shape/IR/Shape.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Utils/Merger.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
M mlir/lib/Dialect/Traits.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/lib/ExecutionEngine/CMakeLists.txt
M mlir/lib/ExecutionEngine/SparseTensor/Storage.cpp
M mlir/lib/ExecutionEngine/SparseTensorRuntime.cpp
M mlir/lib/IR/AffineMap.cpp
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Operation.cpp
M mlir/lib/IR/PatternMatch.cpp
M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/lib/Pass/PassRegistry.cpp
M mlir/lib/Support/Timing.cpp
M mlir/lib/TableGen/Class.cpp
M mlir/lib/TableGen/Format.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Transforms/CMakeLists.txt
A mlir/lib/Transforms/CompositePass.cpp
M mlir/lib/Transforms/InlinerPass.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
M mlir/python/requirements.txt
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/ops.mlir
M mlir/test/Dialect/LLVMIR/layout.mlir
M mlir/test/Dialect/LLVMIR/sroa.mlir
M mlir/test/Dialect/Math/expand-math.mlir
M mlir/test/Dialect/SCF/canonicalize.mlir
M mlir/test/Dialect/SparseTensor/one_shot_bufferize_tensor_copy_insertion.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/Dialect/Transform/ops.mlir
A mlir/test/Dialect/Transform/test-interpreter-printing.mlir
M mlir/test/Dialect/Transform/test-pass-application.mlir
M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
A mlir/test/IR/greedy-pattern-rewrite-driver-bottom-up.mlir
A mlir/test/IR/greedy-pattern-rewrite-driver-top-down.mlir
R mlir/test/IR/greedy-pattern-rewriter-driver.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
M mlir/test/Pass/pass-timing.mlir
M mlir/test/Target/Cpp/subscript.mlir
A mlir/test/Transforms/composite-pass.mlir
M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
M mlir/test/lib/Dialect/Math/TestExpandMath.cpp
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
M mlir/test/lib/Transforms/CMakeLists.txt
A mlir/test/lib/Transforms/TestCompositePass.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
M mlir/unittests/Interfaces/DataLayoutInterfacesTest.cpp
A offload/README.md
M openmp/README.rst
M openmp/docs/design/Runtimes.rst
M openmp/libomptarget/DeviceRTL/src/Debug.cpp
M openmp/libomptarget/include/PluginManager.h
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/common/include/RPC.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/common/src/RPC.cpp
M openmp/libomptarget/src/PluginManager.cpp
A openmp/libomptarget/test/offloading/d2d_memcpy_sync.c
M openmp/runtime/CMakeLists.txt
M openmp/runtime/cmake/LibompGetArchitecture.cmake
M openmp/runtime/cmake/LibompUtils.cmake
M openmp/runtime/cmake/config-ix.cmake
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/src/kmp_affinity.h
M openmp/runtime/src/kmp_gsupport.cpp
M openmp/runtime/src/kmp_os.h
M openmp/runtime/src/kmp_platform.h
M openmp/runtime/src/kmp_runtime.cpp
M openmp/runtime/src/kmp_tasking.cpp
M openmp/runtime/src/z_Linux_asm.S
M openmp/runtime/src/z_Linux_util.cpp
A openmp/runtime/test/affinity/kmp-abs-hw-subset.c
M openmp/runtime/test/ompt/callback.h
A openmp/runtime/test/tasking/hidden_helper_task/issue-87117.c
A openmp/runtime/test/tasking/issue-87307.c
M openmp/runtime/tools/lib/Platform.pm
M openmp/runtime/tools/lib/Uname.pm
M third-party/benchmark/src/cycleclock.h
M third-party/benchmark/src/internal_macros.h
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
A utils/bazel/llvm-project-overlay/llvm/driver.bzl
M utils/bazel/llvm-project-overlay/llvm/lit_test.bzl
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
improve tests
Created using spr 1.3.5-bogner
Compare: https://github.com/llvm/llvm-project/compare/93bd86dd7d00...c2c73540eeaa
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