[all-commits] [llvm/llvm-project] ca2570: [AArch64] Regenerate `machine-combiner-subadd2.mir...
Paul Kirth via All-commits
all-commits at lists.llvm.org
Tue Apr 30 14:13:51 PDT 2024
Branch: refs/heads/users/ilovepi/spr/main.llvmprofdatautils-provide-getnumbranchweights-api
Home: https://github.com/llvm/llvm-project
Commit: ca257022aa130f95b2530f9aba98af8d63027b0d
https://github.com/llvm/llvm-project/commit/ca257022aa130f95b2530f9aba98af8d63027b0d
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/machine-combiner-subadd2.mir
Log Message:
-----------
[AArch64] Regenerate `machine-combiner-subadd2.mir` test (NFC)
llvm-clang-x86_64-expensive-checks-debian buildbot was previously failing.
Fixes: https://lab.llvm.org/buildbot/#/builders/16/builds/64701.
Commit: c3598b161a4d868b1cd10a7ee7ac37d68e5a36fe
https://github.com/llvm/llvm-project/commit/c3598b161a4d868b1cd10a7ee7ac37d68e5a36fe
Author: Jack Styles <jack.styles at arm.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.replace.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.replace.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.pass.cpp
Log Message:
-----------
[libc++] Improve libc++ tests when using optimizations (#88897)
Some tests were missing DoNotOptimize annotations.
Commit: 413f6b95a4360fc9854ca775027913a633835cfa
https://github.com/llvm/llvm-project/commit/413f6b95a4360fc9854ca775027913a633835cfa
Author: Kai Nacke <kai.peter.nacke at ibm.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/utils/TableGen/GlobalISelEmitter.cpp
Log Message:
-----------
[TableGen][GISel][NFC] clang-tidy GlobalISelEmitter.cpp (#90492)
Fixes a couple of style issues, such as:
- unused includes
- variable naming
- `else if` after `return`
Commit: 7eac39f650227427a32b0db1a511b2b12c48a0fc
https://github.com/llvm/llvm-project/commit/7eac39f650227427a32b0db1a511b2b12c48a0fc
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M libcxx/include/__mutex/unique_lock.h
M libcxx/include/mutex
M libcxx/test/libcxx/diagnostics/mutex.nodiscard.verify.cpp
R libcxx/test/libcxx/thread/thread.lock/thread.lock.guard/nodiscard.verify.cpp
Log Message:
-----------
[libc++] Mark scoped_lock and unique_lock constructors as [[nodiscard]] (#89397)
It's basically always a bug to discard a scoped_lock or a unique_lock.
Fixes #89388
Commit: 3ab4ae9e58c09dfd8203547ba8916f3458a0a481
https://github.com/llvm/llvm-project/commit/3ab4ae9e58c09dfd8203547ba8916f3458a0a481
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/test/CodeGen/arm64-microsoft-arguments.cpp
Log Message:
-----------
[clang codegen] Fix MS ABI detection of user-provided constructors. (#90151)
In the context of determining whether a class counts as an "aggregate",
a constructor template counts as a user-provided constructor.
Fixes #86384
Commit: b83e65dcf87925efe6b6623b15a160981422b1bb
https://github.com/llvm/llvm-project/commit/b83e65dcf87925efe6b6623b15a160981422b1bb
Author: Pol M <polmarcetsarda at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
Log Message:
-----------
[clang] Constexpr for __builtin_shufflevector and __builtin_convertvector (#76615)
This patch adds constexpr support for __builtin_shufflevector and
__builtin_convertvector.
NB: the changes went in under 2903df02fb3c057849aaa796a91289b01950a5f0 , this commit is just github PR bookkeepping.
Commit: 99ce84cef0185fe9eaec51e40ea80f69f06981f0
https://github.com/llvm/llvm-project/commit/99ce84cef0185fe9eaec51e40ea80f69f06981f0
Author: Troy Butler <118708570+Troy-Butler at users.noreply.github.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/lib/Lex/Pragma.cpp
Log Message:
-----------
[clang][NFC] Reformat suspicious condition (#89923)
Addresses issue #89805.
Assignment + comparison performed in conditional statement. Resolved by
parenthesizing comparison operation.
Fixes #89805.
---------
Signed-off-by: Troy-Butler <squintik at outlook.com>
Commit: 359ab3aebba302fb4c37373b9907bc8880be7363
https://github.com/llvm/llvm-project/commit/359ab3aebba302fb4c37373b9907bc8880be7363
Author: Nathan Lanza <nathanlanza at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/lib/Driver/Driver.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
Log Message:
-----------
[CIR] Add options to emit ClangIR and enable the ClangIR pipeline
Introduce just the option definitions and support for their existance at
a few different points in the frontend. This will be followed soon by
functionality that uses it.
Reviewers: bcardosolopes, jansvoboda11, AaronBallman, erichkeane, MaskRay
Reviewed By: erichkeane
Pull Request: https://github.com/llvm/llvm-project/pull/89030
Commit: 326657f5679889e3374354ba3243e27bda2080f4
https://github.com/llvm/llvm-project/commit/326657f5679889e3374354ba3243e27bda2080f4
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/include/clang/Sema/DeclSpec.h
M clang/lib/AST/DeclBase.cpp
M clang/www/cxx_status.html
Log Message:
-----------
[Clang] Address post commit feedbacks in #89906 (#90495)
* Fix a leak
* Fix a maybe unused warning
* Fix incorrect cxx_status entry
Commit: a5cc95147ed549e850b4e9641e84641e781e0ceb
https://github.com/llvm/llvm-project/commit/a5cc95147ed549e850b4e9641e84641e781e0ceb
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/lib/BinaryFormat/ELF.cpp
M llvm/unittests/BinaryFormat/CMakeLists.txt
A llvm/unittests/BinaryFormat/ELFTest.cpp
Log Message:
-----------
[BinaryFormat] Adjust OSABI functions and add unittests
Adjust #89280:
* ELFOSABI_LINUX is a historical alias that should not be used in new
code. readelf -h displays "UNIX - GNU" instead of "Linux".
* "OS" is inappropriate. Some values are architecture-specific, e.g.
ELFOSABI_ARM.
* Drop lowercase, which seems a job of the caller.
Add some unittests.
Pull Request: https://github.com/llvm/llvm-project/pull/90270
Commit: e5907c88594133e45b8d1d4e29702b96d7f45c77
https://github.com/llvm/llvm-project/commit/e5907c88594133e45b8d1d4e29702b96d7f45c77
Author: Jorge Pinto Sousa <jorge.pinto.sousa at protonmail.ch>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/include/clang/AST/NestedNameSpecifier.h
Log Message:
-----------
[NFC] Fix hasQualifier comment (#90485)
operator bool from NestedNameSpecifierLoc and
member function hasQualifier both do the same thing, returning true if
the private data member Qualifier is not nullptr, so clearly one of the
comments is wrong, and in this case it is the second one.
fixes https://github.com/llvm/llvm-project/issues/90472
Commit: 8ba880b587074ad6c8624ed45ea2b289f653667f
https://github.com/llvm/llvm-project/commit/8ba880b587074ad6c8624ed45ea2b289f653667f
Author: Andy Kaylor <andrew.kaylor at intel.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/docs/UsersManual.rst
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/fp-model.c
M clang/test/Driver/linux-ld.c
M clang/test/Driver/solaris-ld.c
Log Message:
-----------
[Driver] Clean up denormal handling with fast-math-related options (#89477)
This change cleans up the clang driver handling of umbrella options like
-ffast-math, -funsafe-math-optimizations, and -ffp-model, and aligns the
behavior of -ffp-model=fast with -ffast-math with regard to the linking
of crtfastmath.o.
We agreed in a previous review that the fast-math options should not
attempt to change the -fdenormal-fp-math option, which is inherently
target-specific.
The clang user's manual claims that -ffp-model=fast "behaves identically
to specifying both -ffast-math and -ffp-contract=fast." Since
-ffast-math causes crtfastmath.o to be linked if it is available, that should
also happen with -ffp-model=fast.
I am going to be proposing further changes to -ffp-model=fast,
decoupling it from -ffast-math and introducing a new
-ffp-model=aggressive that matches the current behavior, but I wanted
to solidfy the current behavior before I do that.
Commit: 975eca0e6a3459e59e96b0df33ea0cfbd157c597
https://github.com/llvm/llvm-project/commit/975eca0e6a3459e59e96b0df33ea0cfbd157c597
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M lldb/include/lldb/API/SBExpressionOptions.h
M lldb/include/lldb/Expression/Expression.h
M lldb/include/lldb/Expression/LLVMUserExpression.h
M lldb/include/lldb/Expression/UserExpression.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/StackFrame.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/lldb-private-types.h
M lldb/packages/Python/lldbsuite/test/configuration.py
M lldb/packages/Python/lldbsuite/test/dotest.py
M lldb/packages/Python/lldbsuite/test/dotest_args.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/API/CMakeLists.txt
M lldb/source/API/SBExpressionOptions.cpp
M lldb/source/API/SBFrame.cpp
M lldb/source/Breakpoint/Watchpoint.cpp
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
M lldb/source/Commands/CommandObjectType.cpp
M lldb/source/Expression/LLVMUserExpression.cpp
M lldb/source/Expression/UserExpression.cpp
M lldb/source/Expression/UtilityFunction.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Target/Language.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/Target.cpp
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/utils/TableGen/CMakeLists.txt
A lldb/utils/TableGen/LLDBSBAPIDWARFEnum.cpp
M lldb/utils/TableGen/LLDBTableGen.cpp
M lldb/utils/TableGen/LLDBTableGenBackends.h
Log Message:
-----------
Add a new SBExpressionOptions::SetLanguage() API (NFCI) (#89981)
that separates out language and version. To avoid reinventing the wheel
and introducing subtle incompatibilities, this API uses the table of
languages and versiond defined by the upcoming DWARF 6 standard
(https://dwarfstd.org/languages-v6.html). While the DWARF 6 spec is not
finialized, the list of languages is broadly considered stable.
The primary motivation for this is to allow the Swift language plugin to
switch between language dialects between, e.g., Swift 5.9 and 6.0 with
out introducing a ton of new language codes. On the main branch this
change is considered NFC.
Depends on https://github.com/llvm/llvm-project/pull/89980
Commit: 9d955a63c7b0d2d547a63d4074e03cd5ebd1f162
https://github.com/llvm/llvm-project/commit/9d955a63c7b0d2d547a63d4074e03cd5ebd1f162
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M lld/tools/lld/CMakeLists.txt
M llvm/test/tools/llvm-driver/passthrough-lld.test
M llvm/tools/llvm-driver/CMakeLists.txt
M utils/bazel/llvm-project-overlay/llvm/driver.bzl
Log Message:
-----------
[driver] Allow `ld` as a driver alias to lld (#90515)
This adds a "hidden" alias kind that allows using LLD when symlinked as
`ld`; however, it does not install `ld` as a symlink. This is to allow
either using a mixed toolchain with both LLD and GNU ld, or a pure LLD
toolchain where LLD has been installed (or symlinked) to `ld` for
compatibility w/ older tools that expect `ld`.
Commit: 35fa46a56ae2a220de514e5de5c5e6b4607f5ebb
https://github.com/llvm/llvm-project/commit/35fa46a56ae2a220de514e5de5c5e6b4607f5ebb
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
Log Message:
-----------
Improve comment
Commit: 347a02b408567ba15fdc68646129c1f5de97ab7e
https://github.com/llvm/llvm-project/commit/347a02b408567ba15fdc68646129c1f5de97ab7e
Author: Seth Pellegrino <seth at codecopse.net>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/test/Sema/constant_builtins_vector.cpp
Log Message:
-----------
[clang][NFC] Repair tests for __builtin_convertvector on big-endian
Previously, the macro expansion to be explicit for the test cases had
unintentionally forced the tests to always run in little-endian mode.
This change restores the tests' endianness switch, and ensures that
the tests always run on both a little- and big-endian platform.
Commit: 6f390ea60d987f6e1e027d1c72982c2eb7896005
https://github.com/llvm/llvm-project/commit/6f390ea60d987f6e1e027d1c72982c2eb7896005
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/lib/Lex/Pragma.cpp
Log Message:
-----------
[Lex] Fix clang -Wparentheses after #89923
Commit: 5bbf1ea8f18d1f99637b7b8bf6b985c186c808f6
https://github.com/llvm/llvm-project/commit/5bbf1ea8f18d1f99637b7b8bf6b985c186c808f6
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/test/Preprocessor/wasm-target-features.c
Log Message:
-----------
[WebAssembly] Enable multivalue and reference-types in generic CPU config (#80923)
This enables multivalue and reference-types in `-mcpu=generic`
configuration. These proposals have been standardized and supported in
all major browsers for several years at this point:
https://github.com/WebAssembly/proposals/blob/main/finished-proposals.md
Commit: 3a0d894fafddace75f03fa7df25022cadbe2dffc
https://github.com/llvm/llvm-project/commit/3a0d894fafddace75f03fa7df25022cadbe2dffc
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT] Add support for BOLT-reserved space in a binary (#90300)
Allow the user to allocate space in a binary that could be used by BOLT
for allocating new sections. The reservation is specified by two special
symbols recognizable by BOLT: __bolt_reserved_{start,end}.
The reserved space will be useful for optimizing the Linux kernel where
we cannot allocate a new executable segment. However, the support is not
limited to kernel binaries as some user-space application may find it
useful too.
Commit: 869ffcf3f6ca74c8a0ec6eb250d45e6ea0680c81
https://github.com/llvm/llvm-project/commit/869ffcf3f6ca74c8a0ec6eb250d45e6ea0680c81
Author: Kees Cook <keescook at chromium.org>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/regparm-flag.c
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
Log Message:
-----------
[CodeGen][i386] Move -mregparm storage earlier and fix Runtime calls (#89707)
When building the Linux kernel for i386, the -mregparm=3 option is
enabled. Crashes were observed in the sanitizer handler functions, and
the problem was found to be mismatched calling convention.
As was fixed in commit c167c0a4dcdb ("[BuildLibCalls] infer inreg param
attrs from NumRegisterParameters"), call arguments need to be marked as
"in register" when -mregparm is set. Use the same helper developed there
to update the function arguments.
Since CreateRuntimeFunction() is actually part of CodeGenModule, storage
of the -mregparm value is also moved to the constructor, as doing this
in Release() is too late.
Fixes: https://github.com/llvm/llvm-project/issues/89670
Commit: 028546cce2316a1074aa27001450295d856e1fdc
https://github.com/llvm/llvm-project/commit/028546cce2316a1074aa27001450295d856e1fdc
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M lldb/source/Expression/UserExpression.cpp
Log Message:
-----------
Simplify condition (NFC)
Commit: 1f44a0b1ff2daebe10b9916da228f7c0ba66827c
https://github.com/llvm/llvm-project/commit/1f44a0b1ff2daebe10b9916da228f7c0ba66827c
Author: Reid Kleckner <rnk at google.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/utils/creduce-clang-crash.py
Log Message:
-----------
Make minor improvements to the creduce wrapper script
Use shlex.quote instead of pipes.quote. We don't need to support Python
2.7 anymore.
Remove -fcolor-diagnostics first, because that can sometimes interfere
with the interestingness test.
Commit: d47c4984e9ea80ffd01efb084df9485d314d1d14
https://github.com/llvm/llvm-project/commit/d47c4984e9ea80ffd01efb084df9485d314d1d14
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
R llvm/test/CodeGen/AMDGPU/fp_trunc_store_bf16.ll
A llvm/test/CodeGen/AMDGPU/fp_trunc_store_fp32_to_bf16.ll
A llvm/test/CodeGen/AMDGPU/fp_trunc_store_fp64_to_bf16.ll
Log Message:
-----------
[AMDGPU][ISel] Add more trunc store actions regarding bf16 (#90493)
Commit: e24a7bbf4515213f44d410bfc41b3dff27c49c86
https://github.com/llvm/llvm-project/commit/e24a7bbf4515213f44d410bfc41b3dff27c49c86
Author: Brian Gesiak <brian at modocache.io>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M mlir/include/mlir/Tools/lsp-server-support/Transport.h
M mlir/lib/Tools/lsp-server-support/Transport.cpp
M mlir/unittests/Tools/lsp-server-support/Transport.cpp
Log Message:
-----------
[mlir-lsp] Support outgoing requests (#90078)
Add support for outgoing requests to `lsp::MessageHandler`. Much like
`MessageHandler::outgoingNotification`, this allows for the message
handler to send outgoing messages via its JSON transport, but in this
case, those messages are requests, not notifications.
Requests receive responses (also referred to as "replies" in
`MLIRLspServerSupportLib`). These were previously unsupported, and
`lsp::MessageHandler` would log an error each time it processed a JSON
message that appeared to be a response (something with an "id" field,
but no "method" field). However, the `outgoingRequest` method now
handles response callbacks: an outgoing request with a given ID is set
up such that a callback function is invoked when a response with that ID
is received.
Commit: 1b70580dd867195b0442e582eccd42abc41ee12d
https://github.com/llvm/llvm-project/commit/1b70580dd867195b0442e582eccd42abc41ee12d
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/test/API/driver/batch_mode/TestBatchMode.py
M lldb/test/API/driver/job_control/TestJobControl.py
M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
M lldb/test/API/macosx/nslog/TestDarwinNSLogOutput.py
M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py
Log Message:
-----------
Skip various tests under ASAN on green dragon (#90531)
using the macOS version as a proxy. I can't reproduce any of these
failures locally, but the tests all use pexpect and probably have bad
timeout behavior under high load.
Commit: c4c4e17c99f8d4f79bb9e1e3819d1d76e5e09ed1
https://github.com/llvm/llvm-project/commit/c4c4e17c99f8d4f79bb9e1e3819d1d76e5e09ed1
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/X86/register-fragments-bolt-symbols.s
Log Message:
-----------
[BOLT] Use heuristic for matching split local functions (#90424)
Use known order of BOLT split function symbols: fragment symbols
immediately precede the parent fragment symbol.
Depends On: https://github.com/llvm/llvm-project/pull/89648
Test Plan: Added register-fragments-bolt-symbols.s
Commit: 5e9937d1b3ada9c686505c5f2c1e1b054ad9edc2
https://github.com/llvm/llvm-project/commit/5e9937d1b3ada9c686505c5f2c1e1b054ad9edc2
Author: Michael Flanders <flanders.michaelk at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/nearbyintf128.cpp
A libc/src/math/generic/scalbnf128.cpp
A libc/src/math/nearbyintf128.h
A libc/src/math/scalbnf128.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/scalbnf128_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/NearbyIntTest.h
A libc/test/src/math/smoke/nearbyint_test.cpp
A libc/test/src/math/smoke/nearbyintf128_test.cpp
A libc/test/src/math/smoke/nearbyintf_test.cpp
A libc/test/src/math/smoke/nearbyintl_test.cpp
A libc/test/src/math/smoke/scalbnf128_test.cpp
Log Message:
-----------
[libc][math] Adds entrypoint and tests for nearbyintf128,scalbnf128 (#88443)
Closes #84689.
Adding @lntue for review.
I was curious about the implementation of
`round_using_current_rounding_mode` used for the `nearbyint` functions.
It has one of the rounding modes as unreachable
([here](https://github.com/llvm/llvm-project/blob/main/libc/src/__support/FPUtil/NearestIntegerOperations.h#L243)),
and I was wondering if this was okay for the `nearbyint` functions.
---------
Co-authored-by: Michael Flanders <mkf727 at cs.washington.edu>
Commit: ae7ce1c6e728a262049c998c667b79165b285bd8
https://github.com/llvm/llvm-project/commit/ae7ce1c6e728a262049c998c667b79165b285bd8
Author: Kazu Hirata <kazu at google.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
Log Message:
-----------
[CodeGen] Remove extraneous ArrayRef (NFC) (#90423)
We don't need to explicitly create an instance of ArrayRef here
because getIndexedOffsetInType takes ArrayRef, and ArrayRef can be
implicitly constructed from a C array.
Commit: 1cb33713910501c6352d0eb2a15b7a15e6e18695
https://github.com/llvm/llvm-project/commit/1cb33713910501c6352d0eb2a15b7a15e6e18695
Author: David Blaikie <dblaikie at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/test/CodeGenCoroutines/coro-elide-thinlto.cpp
Log Message:
-----------
Ensure test writes objects to test temp dir
Commit: 6566ffdf8a543f50b75e9b3c66d771a3a9eb1560
https://github.com/llvm/llvm-project/commit/6566ffdf8a543f50b75e9b3c66d771a3a9eb1560
Author: Kevin Frei <kevinfrei at users.noreply.github.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/include/llvm/DebugInfo/GSYM/OutputAggregator.h
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
Log Message:
-----------
Clean up the GSym error aggregation code, and pass the aggregator by reference (#89688)
There was a problem with `llvm-gsymutil`s error aggregation code not
properly collecting aggregate errors. The was that the output aggregator
collecting errors from other threads wasn't being passed by reference,
so it was merging them into a copy of the app-wide output aggregator.
While I was at it, I added a better comment above the "Merge" code and
made it a bit more efficient, after learning more details about
`emplace` vs. `insert` or `operator[]` on `std::map`'s.
Co-authored-by: Kevin Frei <freik at meta.com>
Commit: ce3485a0cd12b45c725f008a7836e71a1d72df49
https://github.com/llvm/llvm-project/commit/ce3485a0cd12b45c725f008a7836e71a1d72df49
Author: Max Winkler <max.enrico.winkler at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetLibraryInfo.def
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
A llvm/test/Transforms/GlobalOpt/atexit-dtor.ll
M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
Log Message:
-----------
[llvm][GlobalOpt] Remove empty atexit destructors/handlers (#88836)
https://godbolt.org/z/frjhqMKqc for an example.
Removal of allocations due to empty `__cxa_atexit` destructor calls is
done by the following globalopt pass.
This pass currently does not look for `atexit` handlers generated for
platforms that do not use `__cxa_atexit`.
By default Win32 and AIX use `atexit`.
I don't see an easy way to only remove `atexit` calls that the compiler
generated without looking at the generated mangled name of the atexit
handler that is being registered.
However we can easily remove all `atexit` calls that register empty
handlers since it is trivial to ensure the removed call still returns
`0` which is the value for success.
Commit: 9a1386e5fabb0d2741f2f7c873342eb86e350e9e
https://github.com/llvm/llvm-project/commit/9a1386e5fabb0d2741f2f7c873342eb86e350e9e
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/ADT/FoldingSet.h
M llvm/lib/IR/AttributeImpl.h
M llvm/lib/IR/Attributes.cpp
Log Message:
-----------
[NFC] Remove method from FoldingSet that already existed in APInt. (#90486)
Noticed that there already was a function in APInt that updated a
FoldingSet so there was no need for me to add it in
https://github.com/llvm/llvm-project/pull/84617.
Commit: 65ee8f10b2017349b7742843fbe4accb172736e9
https://github.com/llvm/llvm-project/commit/65ee8f10b2017349b7742843fbe4accb172736e9
Author: Aart Bik <ajcbik at google.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
A mlir/test/Dialect/SparseTensor/sparse_matmul_one.mlir
Log Message:
-----------
[mlir][sparse] fold explicit value during sparsification (#90530)
This ensures the explicit value is generated (and not a load into the
values array). Note that actually not storing values array at all is
still TBD, this is just the very first step.
Commit: b1867e18c346e9621e14270bea2d1acb7d2a9ce0
https://github.com/llvm/llvm-project/commit/b1867e18c346e9621e14270bea2d1acb7d2a9ce0
Author: Dan Liew <delcypher at gmail.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Driver/Options.td
M clang/include/clang/Parse/Parser.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Parse/ParseDecl.cpp
A clang/test/Driver/experimental-late-parse-attributes.c
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[Attributes] Support Attributes being declared as supporting an experimental late parsing mode "extension" (#88596)
This patch changes the `LateParsed` field of `Attr` in `Attr.td` to be
an instantiation of the new `LateAttrParseKind` class. The instation can be one of the following:
* `LateAttrParsingNever` - Corresponds with the false value of `LateParsed` prior to this patch (the default for an attribute).
* `LateAttrParseStandard` - Corresponds with the true value of `LateParsed` prior to this patch.
* `LateAttrParseExperimentalExt` - A new mode described below.
`LateAttrParseExperimentalExt` is an experimental extension to
`LateAttrParseStandard`. Essentially this allows
`Parser::ParseGNUAttributes(...)` to distinguish between these cases:
1. Only `LateAttrParseExperimentalExt` attributes should be late parsed.
2. Both `LateAttrParseExperimentalExt` and `LateAttrParseStandard`
attributes should be late parsed.
Callers (and indirect callers) of `Parser::ParseGNUAttributes(...)`
indicate the desired behavior by setting a flag in the
`LateParsedAttrList` object that is passed to the function.
In addition to the above, a new driver and frontend flag
(`-fexperimental-late-parse-attributes`) with a corresponding LangOpt
(`ExperimentalLateParseAttributes`) is added that changes how
`LateAttrParseExperimentalExt` attributes are parsed.
* When the flag is disabled (default), in cases where only
`LateAttrParsingExperimentalOnly` late parsing is requested, the
attribute will be parsed immediately (i.e. **NOT** late parsed). This
allows the attribute to act just like a `LateAttrParseStandard`
attribute when the flag is disabled.
* When the flag is enabled, in cases where only
`LateAttrParsingExperimentalOnly` late parsing is requested, the
attribute will be late parsed.
The motivation behind this change is to allow the new `counted_by`
attribute (part of `-fbounds-safety`) to support late parsing but
**only** when `-fexperimental-late-parse-attributes` is enabled. This
attribute needs to support late parsing to allow it to refer to fields
later in a struct definition (or function parameters declared later).
However, there isn't a precedent for supporting late attribute parsing
in C so this flag allows the new behavior to exist in Clang but not be
on by default. This behavior was requested as part of the
`-fbounds-safety` RFC process
(https://discourse.llvm.org/t/rfc-enforcing-bounds-safety-in-c-fbounds-safety/70854/68).
This patch doesn't introduce any uses of `LateAttrParseExperimentalExt`.
This will be added for the `counted_by` attribute in a future patch
(https://github.com/llvm/llvm-project/pull/87596). A consequence is the
new behavior added in this patch is not yet testable. Hence, the lack of
tests covering the new behavior.
rdar://125400257
Commit: 6ea0c0a28343b2676baf480db490b5a27fa11d7c
https://github.com/llvm/llvm-project/commit/6ea0c0a28343b2676baf480db490b5a27fa11d7c
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
R llvm/include/llvm/CodeGen/FreeMachineFunction.h
M llvm/include/llvm/CodeGen/MIRParser/MIRParser.h
A llvm/include/llvm/CodeGen/MachineFunctionAnalysis.h
M llvm/include/llvm/CodeGen/MachineModuleInfo.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/IR/LLVMContext.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/DeadMachineInstructionElim.cpp
R llvm/lib/CodeGen/FreeMachineFunction.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
A llvm/lib/CodeGen/MachineFunctionAnalysis.cpp
M llvm/lib/CodeGen/MachinePassManager.cpp
M llvm/lib/IR/LLVMContext.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/test/tools/llc/new-pm/pipeline.ll
M llvm/test/tools/llc/new-pm/pipeline.mir
M llvm/test/tools/llc/new-pm/start-stop.ll
M llvm/tools/llc/NewPMDriver.cpp
M llvm/unittests/CodeGen/PassManagerTest.cpp
M llvm/unittests/MIR/CMakeLists.txt
R llvm/unittests/MIR/PassBuilderCallbacksTest.cpp
Log Message:
-----------
[NewPM][CodeGen] Add `MachineFunctionAnalysis` (#88610)
In new pass system, `MachineFunction` could be an analysis result again,
machine module pass can now fetch them from analysis manager.
`MachineModuleInfo` no longer owns them.
Remove `FreeMachineFunctionPass`, replaced by
`InvalidateAnalysisPass<MachineFunctionAnalysis>`.
Now `FreeMachineFunction` is replaced by
`InvalidateAnalysisPass<MachineFunctionAnalysis>`, the workaround in
`MachineFunctionPassManager` is no longer needed, there is no difference
between `unittests/MIR/PassBuilderCallbacksTest.cpp` and
`unittests/IR/PassBuilderCallbacksTest.cpp`.
Commit: b3291793f11924a3b62601aabebebdcfbb12a9a1
https://github.com/llvm/llvm-project/commit/b3291793f11924a3b62601aabebebdcfbb12a9a1
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[X86] Enable EVEX512 when host CPU has AVX512 (#90479)
This is used when -march=native run on an unknown CPU to old version of
LLVM.
Commit: 9d5411ffba0d94b60050cc873773935addca9533
https://github.com/llvm/llvm-project/commit/9d5411ffba0d94b60050cc873773935addca9533
Author: sinan <sinan.lin at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M bolt/lib/Passes/ValidateMemRefs.cpp
A bolt/test/X86/jt-symbol-disambiguation-4.s
Log Message:
-----------
[BOLT] Avoid reference updates for non-JT symbol operands (#88838)
Skip updating references for operands that do not directly
refer to jump table symbols but fall within a jump table's
address range to prevent unintended modifications.
Commit: 38067c50a9459caed2892e38b2ae5026a8bff8e2
https://github.com/llvm/llvm-project/commit/38067c50a9459caed2892e38b2ae5026a8bff8e2
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/pr90259.cppm
Log Message:
-----------
[C++20] [Modules] [Reduced BMI] Avoid force writing static declarations
within module purview
Close https://github.com/llvm/llvm-project/issues/90259
Technically, the static declarations shouldn't be leaked from the module
interface, otherwise it is an illegal program according to the spec. So
we can get rid of the static declarations from the reduced BMI
technically. Then we can close the above issue.
However, there are too many `static inline` codes in existing headers.
So it will be a pretty big breaking change if we do this globally.
Commit: 62d6560471f0e1151e34c0a56357423350f7a6af
https://github.com/llvm/llvm-project/commit/62d6560471f0e1151e34c0a56357423350f7a6af
Author: thetruestblue <92476612+thetruestblue at users.noreply.github.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp
Log Message:
-----------
Disable test for lsan and x86_64h (#90483)
Disable this test on x86_64h for LSan.
This test is failing with malformed object only on x86_64h.
Disabling for now.
rdar://125052424
Commit: 326667d727546dad0ce9315aa93a3da698c7c71c
https://github.com/llvm/llvm-project/commit/326667d727546dad0ce9315aa93a3da698c7c71c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Merge variable declaration with first assignment. NFC
Commit: 79095b4079e8d4f8176bcc53fdacd2765f310cdb
https://github.com/llvm/llvm-project/commit/79095b4079e8d4f8176bcc53fdacd2765f310cdb
Author: Fangrui Song <i at maskray.me>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M lld/ELF/OutputSections.cpp
Log Message:
-----------
[ELF] --compress-debug-sections=zstd: replace ZSTD_c_nbWorkers parallelism with multi-frame parallelism
https://reviews.llvm.org/D133679 utilizes zstd's multithread API to
create one single frame. This provides a higher compression ratio but is
significantly slower than concatenating multiple frames.
With manual parallelism, it is easier to parallelize memcpy in
OutputSection::writeTo for parallel memcpy.
In addition, as the individual allocated decompression buffers are much
smaller, we can make a wild guess (compressed_size/4) without worrying
about a resize (due to wrong guess) would waste memory.
Commit: fbe4d991323b026eb64cd3d0ee811854b54ca33f
https://github.com/llvm/llvm-project/commit/fbe4d991323b026eb64cd3d0ee811854b54ca33f
Author: Julian Schmidt <git.julian.schmidt at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
Log Message:
-----------
[clang-tidy] fix false-negative for macros in `readability-math-missing-parentheses` (#90279)
When a binary operator is the last operand of a macro, the end location
that is past the `BinaryOperator` will be inside the macro and therefore
an
invalid location to insert a `FixIt` into, which is why the check bails
when encountering such a pattern.
However, the end location is only required for the `FixIt` and the
diagnostic can still be emitted, just without an attached fix.
Commit: bd72f7b0ab98531ab579fafe79c7a8967994583a
https://github.com/llvm/llvm-project/commit/bd72f7b0ab98531ab579fafe79c7a8967994583a
Author: Luke Lau <luke at igalia.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/pr90559.ll
Log Message:
-----------
[RISCV] Add test case for exact vscale miscompile in #90559. NFC
Commit: 18268ac0f48d93c2bcddb69732761971669c09ab
https://github.com/llvm/llvm-project/commit/18268ac0f48d93c2bcddb69732761971669c09ab
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/test/Modules/pr67893.cppm
M clang/test/Modules/search-partitions.cpp
Log Message:
-----------
[NFC] [C++20] [Modules] Use new class CXX20ModulesGenerator to generate module file for C++20 modules instead of PCHGenerator
Previously we're re-using PCHGenerator to generate the module file for
C++20 modules. But this is slighty more or less odd. This patch tries
to use a new class 'CXX20ModulesGenerator' to generate the module file
for C++20 modules.
Commit: 705636a1130551ab105aec95b909a35a0305fc9f
https://github.com/llvm/llvm-project/commit/705636a1130551ab105aec95b909a35a0305fc9f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll
Log Message:
-----------
[SelectionDAG][RISCV] Move VP_REDUCE* legalization to LegalizeDAG.cpp. (#90522)
LegalizeVectorType is responsible for legalizing nodes that perform an
operation on each element may need to scalarize.
This is not true for nodes like VP_REDUCE.*, BUILD_VECTOR,
SHUFFLE_VECTOR, EXTRACT_SUBVECTOR, etc.
This patch drops any nodes with a scalar result from LegalizeVectorOps
and handles them in LegalizeDAG instead.
This required moving the reduction promotion to LegalizeDAG. I have
removed the support integer promotion as it was incorrect for integer
min/max reductions. Since it was untested, it was best to assert on it
until it was really needed.
There are a couple regressions that can be fixed with a small DAG
combine which I will do as a follow up.
Commit: 6e83058138210ab1e219d04974a071b57b3196e1
https://github.com/llvm/llvm-project/commit/6e83058138210ab1e219d04974a071b57b3196e1
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Use an assert insead of a if/else+llvm_unreachable. NFC
Commit: fb21343473e33e9a886b42d2fe95d1cec1cd0030
https://github.com/llvm/llvm-project/commit/fb21343473e33e9a886b42d2fe95d1cec1cd0030
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/Serialization/GeneratePCH.cpp
A clang/test/Modules/pr75057.cppm
Log Message:
-----------
[C++20] [Modules] Don't skip pragma diagnostic mappings
Close https://github.com/llvm/llvm-project/issues/75057
Previously, I thought the diagnostic mappings is not meaningful with
modules incorrectly. And this problem get revealed by another change
recently. So this patch tried to rever the previous "optimization"
partially.
Commit: 940ef9687f5f19ce02b7fa5d2eb6225f458fbdd9
https://github.com/llvm/llvm-project/commit/940ef9687f5f19ce02b7fa5d2eb6225f458fbdd9
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll
M llvm/test/CodeGen/RISCV/rvv/commutable.ll
M llvm/test/CodeGen/RISCV/rvv/copyprop.mir
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
Log Message:
-----------
[RISCV] Remove hasSideEffects=1 for saturating/fault-only-first instructions
Marking them as `hasSideEffects=1` stops some optimizations.
According to `Target.td`:
> // Does the instruction have side effects that are not captured by any
> // operands of the instruction or other flags?
> bit hasSideEffects = ?;
It seems we don't need to set `hasSideEffects` for vleNff since we have
modelled `vl` as an output operand.
As for saturating instructions, I think that explicit Def/Use list
is kind of side effects captured by any operands of the instruction,
so we don't need to set `hasSideEffects` either. And I have just
investigated AArch64's implementation, they don't set this flag and
don't add `Def` list.
These changes make optimizations like `performCombineVMergeAndVOps`
and MachineCSE possible for these instructions.
As a consequence, `copyprop.mir` can't test what we want to test in
https://reviews.llvm.org/D155140, so we replace `vssra.vi` with a
VCIX instruction (it has side effects).
Reviewers: jacquesguan, topperc, preames, asb, lukel97
Reviewed By: topperc, lukel97
Pull Request: https://github.com/llvm/llvm-project/pull/90049
Commit: 6b961e2abfffd8b5a508b5958849b13b0feafa50
https://github.com/llvm/llvm-project/commit/6b961e2abfffd8b5a508b5958849b13b0feafa50
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/test/Modules/pr67893.cppm
R clang/test/Modules/pr75057.cppm
M clang/test/Modules/search-partitions.cpp
Log Message:
-----------
Revert "[C++20] [Modules] Don't skip pragma diagnostic mappings"
and "[NFC] [C++20] [Modules] Use new class CXX20ModulesGenerator to
generate module file for C++20 modules instead of PCHGenerator"
This reverts commit fb21343473e33e9a886b42d2fe95d1cec1cd0030.
and commit 18268ac0f48d93c2bcddb69732761971669c09ab.
It looks like there are some problems about linking the compiler
Commit: 2524146b256002bfc70b38008425291f5b3dd08c
https://github.com/llvm/llvm-project/commit/2524146b256002bfc70b38008425291f5b3dd08c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-29 (Mon, 29 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll
Log Message:
-----------
[RISCV] Add DAG combine for (vmv_s_x_vl (undef) (vmv_x_s X). (#90524)
We can use the original vector as long as the type of X matches the
result type of the vmv_s_x_vl.
Commit: 4a84d8e4c28d873eacfce53f9fd902d67a08a859
https://github.com/llvm/llvm-project/commit/4a84d8e4c28d873eacfce53f9fd902d67a08a859
Author: wanglei <wanglei at loongson.cn>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
M llvm/test/MC/LoongArch/Macros/macros-la-bad.s
M llvm/test/MC/LoongArch/Macros/macros-la.s
M llvm/test/MC/LoongArch/Misc/tls-symbols.s
M llvm/test/MC/LoongArch/Relocations/relocations.s
Log Message:
-----------
[LoongArch] Support parsing la.tls.desc pseudo instruction
Simultaneously implemented parsing support for the `%desc_*` modifiers.
Reviewers: SixWeining, heiher, xen0n
Reviewed By: xen0n, SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/90158
Commit: ec527b21bb4196355184aa95ef31aa561b8e8b7b
https://github.com/llvm/llvm-project/commit/ec527b21bb4196355184aa95ef31aa561b8e8b7b
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Serialization/GeneratePCH.cpp
A clang/test/Modules/pr75057.cppm
Log Message:
-----------
[C++20] [Modules] Don't skip pragma diagnostic mappings
Close https://github.com/llvm/llvm-project/issues/75057
Previously, I thought the diagnostic mappings is not meaningful with
modules incorrectly. And this problem get revealed by another change
recently. So this patch tried to rever the previous "optimization"
partially.
Commit: f4843acd839f4f8687815560b69fa96ed3cbf8cf
https://github.com/llvm/llvm-project/commit/f4843acd839f4f8687815560b69fa96ed3cbf8cf
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[lldb][bazel] Fix BUILD after 975eca0e6a3459e59e96b0df33ea0cfbd157c597. (#90564)
Commit: ce12b12d0d786773b60adead18e994d6e4a0e228
https://github.com/llvm/llvm-project/commit/ce12b12d0d786773b60adead18e994d6e4a0e228
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[mlir][OpenMP] Extend `omp.private` with a `dealloc` region (#90456)
Extends `omp.private` with a new region: `dealloc` where deallocation
logic for Fortran deallocatables will be outlined (this will happen in
later PRs).
Commit: 09f160c6298255f520b379b88161fbd1c365b308
https://github.com/llvm/llvm-project/commit/09f160c6298255f520b379b88161fbd1c365b308
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-weakdeps.c
M clang/test/Analysis/std-c-library-functions-vs-stream-checker.c
M clang/test/Analysis/stream-errno-note.c
M clang/test/Analysis/stream-errno.c
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream-invalidate.c
M clang/test/Analysis/stream-non-posix-function.c
M clang/test/Analysis/stream-noopen.c
M clang/test/Analysis/stream-note.c
M clang/test/Analysis/stream-pedantic.c
M clang/test/Analysis/stream-stdlibraryfunctionargs.c
M clang/test/Analysis/stream.c
M clang/test/Analysis/stream.cpp
M clang/www/analyzer/alpha_checks.html
M clang/www/analyzer/open_projects.html
Log Message:
-----------
[clang][analyzer] Move StreamChecker out of the alpha package. (#89247)
Commit: ff6c0cac7037e78688f589fd635c82e7c1cb42b0
https://github.com/llvm/llvm-project/commit/ff6c0cac7037e78688f589fd635c82e7c1cb42b0
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
Log Message:
-----------
[lldb][Docs] Remove more subtitles from packets doc (#90443)
This removes various subtitles or converts them to bold text so that the
table of contents is less cluttered.
This includes "Example", "Notes", "Priority To Implement" and
"Response".
Commit: eb148aecb3603c2ba6ecbdaebd3b8a87f44349bc
https://github.com/llvm/llvm-project/commit/eb148aecb3603c2ba6ecbdaebd3b8a87f44349bc
Author: wanglei <wanglei at loongson.cn>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/Driver/ToolChains/CommonArgs.cpp
A clang/test/CodeGen/LoongArch/tls-dialect.c
M clang/test/Driver/tls-dialect.c
M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
M llvm/test/CodeGen/LoongArch/tls-models.ll
Log Message:
-----------
[LoongArch][Codegen] Add support for TLSDESC
The implementation only enables when the `-enable-tlsdesc` option is
passed and the TLS model is `dynamic`.
LoongArch's GCC has the same option(-mtls-dialet=) as RISC-V.
Reviewers: heiher, MaskRay, SixWeining
Reviewed By: SixWeining, MaskRay
Pull Request: https://github.com/llvm/llvm-project/pull/90159
Commit: 91a8cb781dbc981356207e0c3608d92ed6d26042
https://github.com/llvm/llvm-project/commit/91a8cb781dbc981356207e0c3608d92ed6d26042
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
A flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
A flang/test/Transforms/debug-fn-info.f90
M flang/test/Transforms/debug-line-table-inc-file.fir
Log Message:
-----------
Reapply "[flang] Improve debug info for functions." with regression fixed. (#90484)
The original PR #90083 had to be reverted in PR #90444 as it caused one
of the gfortran tests to fail. The issue was using `isIntOrIndex` for
checking for integer type. It allowed index type which later caused
assertion when calling `getIntOrFloatBitWidth`. I have now replaced it
with `isInteger` which should fix this regression.
Commit: 09e7d86b99c6e6d4f4a3296647d1b7d803c5bac5
https://github.com/llvm/llvm-project/commit/09e7d86b99c6e6d4f4a3296647d1b7d803c5bac5
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
Log Message:
-----------
[RemoveDIs] Fix findDbgValues to return dbg_assign records too (#90471)
In the debug intrinsic class heirachy, a dbg.assign is a (inherits from)
dbg.value, so `findDbgValues` returns dbg.values and dbg.assigns (by
design). That hierarchy doesn't exist for DbgRecords - fix findDbgValues
to return dbg_assign records as well as dbg_values and add unittest.
Commit: 853344d3ae8bb655b2d15175880bd3f65ab66434
https://github.com/llvm/llvm-project/commit/853344d3ae8bb655b2d15175880bd3f65ab66434
Author: Kristof Beyls <kristof.beyls at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
[docs] Document which online sync-ups are no longer happening (#89361)
Some of the online sync-ups on our Getting Involved page seem to no
longer be happening. Document them as no longer happening, so that
people don't get confused when dialing in to one of these.
Commit: 6c3110464bac3600685af9650269b0b2b8669d34
https://github.com/llvm/llvm-project/commit/6c3110464bac3600685af9650269b0b2b8669d34
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Basic/SourceLocation.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/SourceLocationEncoding.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ModuleFile.cpp
A clang/test/Modules/no-transitive-source-location-change.cppm
M clang/test/Modules/pr61067.cppm
M clang/unittests/Serialization/SourceLocationEncodingTest.cpp
Log Message:
-----------
[Modules] No transitive source location change (#86912)
This is part of "no transitive change" patch series, "no transitive
source location change". I talked this with @Bigcheese in the tokyo's
WG21 meeting.
The idea comes from @jyknight posted on LLVM discourse. That for:
```
// A.cppm
export module A;
...
// B.cppm
export module B;
import A;
...
//--- C.cppm
export module C;
import C;
```
Almost every time A.cppm changes, we need to recompile `B`. Due to we
think the source location is significant to the semantics. But it may be
good if we can avoid recompiling `C` if the change from `A` wouldn't
change the BMI of B.
# Motivation Example
This patch only cares source locations. So let's focus on source
location's example. We can see the full example from the attached test.
```
//--- A.cppm
export module A;
export template <class T>
struct C {
T func() {
return T(43);
}
};
export int funcA() {
return 43;
}
//--- A.v1.cppm
export module A;
export template <class T>
struct C {
T func() {
return T(43);
}
};
export int funcA() {
return 43;
}
//--- B.cppm
export module B;
import A;
export int funcB() {
return funcA();
}
//--- C.cppm
export module C;
import A;
export void testD() {
C<int> c;
c.func();
}
```
Here the only difference between `A.cppm` and `A.v1.cppm` is that
`A.v1.cppm` has an additional blank line. Then the test shows that two
BMI of `B.cppm`, one specified `-fmodule-file=A=A.pcm` and the other
specified `-fmodule-file=A=A.v1.pcm`, should have the bit-wise same
contents.
However, it is a different story for C, since C instantiates templates
from A, and the instantiation records the source information from module
A, which is different from `A` and `A.v1`, so it is expected that the
BMI `C.pcm` and `C.v1.pcm` can and should differ.
# Internal perspective of status quo
To fully understand the patch, we need to understand how we encodes
source locations and how we serialize and deserialize them.
For source locations, we encoded them as:
```
|
|
| _____ base offset of an imported module
|
|
|
|_____ base offset of another imported module
|
|
|
|
| ___ 0
```
As the diagram shows, we encode the local (unloaded) source location
from 0 to higher bits. And we allocate the space for source locations
from the loaded modules from high bits to 0. Then the source locations
from the loaded modules will be mapped to our source location space
according to the allocated offset.
For example, for,
```
// a.cppm
export module a;
...
// b.cppm
export module b;
import a;
...
```
Assuming the offset of a source location (let's name the location as
`S`) in a.cppm is 45 and we will record the value `45` into the BMI
`a.pcm`. Then in b.cppm, when we import a, the source manager will
allocate a space for module 'a' (according to the recorded number of
source locations) as the base offset of module 'a' in the current source
location spaces. Let's assume the allocated base offset as 90 in this
example. Then when we want to get the location in the current source
location space for `S`, we can get it simply by adding `45` to `90` to
`135`. Finally we can get the source location for `S` in module B as
`135`.
And when we want to write module `b`, we would also write the source
location of `S` as `135` directly in the BMI. And to clarify the
location `S` comes from module `a`, we also need to record the base
offset of module `a`, 90 in the BMI of `b`.
Then the problem comes. Since the base offset of module 'a' is computed
by the number source locations in module 'a'. In module 'b', the
recorded base offset of module 'a' will change every time the number of
source locations in module 'a' increase or decrease. In other words, the
contents of BMI of B will change every time the number of locations in
module 'a' changes. This is pretty sensitive. Almost every change will
change the number of locations. So this is the problem this patch want
to solve.
Let's continue with the existing design to understand what's going on.
Another interesting case is:
```
// c.cppm
export module c;
import whatever;
import a;
import b;
...
```
In `c.cppm`, when we import `a`, we still need to allocate a base
location offset for it, let's say the value becomes to `200` somehow.
Then when we reach the location `S` recorded in module `b`, we need to
translate it into the current source location space. The solution is
quite simple, we can get it by `135 + (200 - 90) = 245`. In another
word, the offset of a source location in current module can be computed
as `Recorded Offset + Base Offset of the its module file - Recorded Base
Offset`.
Then we're almost done about how we handle the offset of source
locations in serializers.
# The high level design of current patch
>From the abstract level, what we want to do is to remove the hardcoded
base offset of imported modules and remain the ability to calculate the
source location in a new module unit. To achieve this, we need to be
able to find the module file owning a source location from the encoding
of the source location.
So in this patch, for each source location, we will store the local
offset of the location and the module file index. For the above example,
in `b.pcm`, the source location of `S` will be recorded as `135`
directly. And in the new design, the source location of `S` will be
recorded as `<1, 45>`. Here `1` stands for the module file index of `a`
in module `b`. And `45` means the offset of `S` to the base offset of
module `a`.
So the trade-off here is that, to make the BMI more independent, we need
to record more abstract information. And I feel it is worthy. The
recompilation problem of modules is really annoying and there are still
people complaining this. But if we can make this (including stopping
other changes transitively), I think this may be a killer feature for
modules. And from @Bigcheese , this should be helpful for clang explicit
modules too.
And the benchmarking side, I tested this patch against
https://github.com/alibaba/async_simple/tree/CXX20Modules. No
significant change on compilation time. The size of .pcm files becomes
to 204M from 200M. I think the trade-off is pretty fair.
# Some low level details
I didn't use another slot to record the module file index. I tried to
use the higher 32 bits of the existing source location encodings to
store that information. This design may be safe. Since we use `unsigned`
to store source locations but we use uint64_t in serialization. And
generally `unsigned` is 32 bit width in most platforms. So it might not
be a safe problem. Since all the bits we used to store the module file
index is not used before. So the new encodings may be:
```
|-----------------------|-----------------------|
| A | B | C |
* A: 32 bit. The index of the module file in the module manager + 1. The +1
here is necessary since we wish 0 stands for the current module file.
* B: 31 bit. The offset of the source location to the module file containing it.
* C: The macro bit. We rotate it to the lowest bit so that we can save some
space in case the index of the module file is 0.
```
(The B and C is the existing raw encoding for source locations)
Another reason to reuse the same slot of the source location is to
reduce the impact of the patch. Since there are a lot of places assuming
we can store and get a source location from a slot. And if I tried to
add another slot, a lot of codes breaks. I don't feel it is worhty.
Another impact of this decision is that, the existing small
optimizations for encoding source location may be invalided. The key of
the optimization is that we can turn large values into small values then
we can use VBR6 format to reduce the size. But if we decided to put the
module file index into the higher bits, then maybe it simply doesn't
work. An example may be the `SourceLocationSequence` optimization.
This will only affect the size of on-disk .pcm files. I don't expect
this impact the speed and memory use of compilations. And seeing my
small experiments above, I feel this trade off is worthy.
# Correctness
The mental model for handling source location offsets is not so complex
and I believe we can solve it by adding module file index to each stored
source location.
For the practical side, since the source location is pretty sensitive,
and the patch can pass all the in-tree tests and a small scale projects,
I feel it should be correct.
# Future Plans
I'll continue to work on no transitive decl change and no transitive
identifier change (if matters) to achieve the goal to stop the
propagation of unnecessary changes. But all of this depends on this
patch. Since, clearly, the source locations are the most sensitive
thing.
---
The release nots and documentation will be added seperately.
Commit: 2464c1c153285bbabf1df4a61f1975903ffbe70e
https://github.com/llvm/llvm-project/commit/2464c1c153285bbabf1df4a61f1975903ffbe70e
Author: Johannes de Fine Licht <johannes at musicmedia.dk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/IR/OperationSupport.h
Log Message:
-----------
[MLIR] Sprinkle extra asserts in OperationSupport.h (#90465)
Should hopefully help shave some minutes off developer debugging time in
the future.
Commit: 92ca6fcb87a1b8b0cef3b0a8c960b4d7d0fc12a0
https://github.com/llvm/llvm-project/commit/92ca6fcb87a1b8b0cef3b0a8c960b4d7d0fc12a0
Author: Johannes de Fine Licht <johannes at musicmedia.dk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/test/Dialect/LLVMIR/constant-folding.mlir
Log Message:
-----------
[MLIR][LLVM] Have LLVM::AddressOfOp implement ConstantLike (#90481)
For all means and purposes llvm.mlir.addressof acts like a constant, and
should be treated as such by passes. In particular, the operation should
be propagated rather than passed whenever possible.
Commit: c9d92d215e6bfe14997bb79e6d6a050d1b449843
https://github.com/llvm/llvm-project/commit/c9d92d215e6bfe14997bb79e6d6a050d1b449843
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
A mlir/test/Dialect/Linalg/transform-op-peel-and-vectorize-conv.mlir
Log Message:
-----------
[mlir][test] Add TD example for peel+vectorize (depthwise conv) (#90200)
Adds an example that combines loop peeling and scalable vectorisation of
`linalg.depthwise_conv_2d_nhwc_hwc`. This is similar to
transform-op-peel-and-vectorize.mlir and is meant to demonstrate how to
avoid masking when vectorising using scalable vectors.
Commit: 74e65eec48ee87c34e06a09ad25a1029506dd60d
https://github.com/llvm/llvm-project/commit/74e65eec48ee87c34e06a09ad25a1029506dd60d
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.h
M clang/test/AST/Interp/opencl.cl
Log Message:
-----------
[clang][Interp] Handle Shifts in OpenCL correctly
We need to adjust the RHS to account for the LHS bitwidth.
Commit: 29dda26c65fc50066792f558e95f9603a7d7effc
https://github.com/llvm/llvm-project/commit/29dda26c65fc50066792f558e95f9603a7d7effc
Author: Danial Klimkin <dklimkin at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/source/Host/posix/PipePosix.cpp
Log Message:
-----------
Fix lock guads in PipePosix.cpp (#90572)
Guard object destroyed immediately after creation without naming.
Commit: eaee8aa0afe111f9291d54ecef97a3640a0f6ce0
https://github.com/llvm/llvm-project/commit/eaee8aa0afe111f9291d54ecef97a3640a0f6ce0
Author: Qizhi Hu <836744285 at qq.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
A clang/test/SemaCXX/identical-type-primary-partial-specialization.cpp
Log Message:
-----------
[Clang][Sema] fix a bug on template partial specialization (#89862)
attempt to fix
https://github.com/llvm/llvm-project/issues/68885#issuecomment-1764201896
Deduction of NTTP whose type is `decltype(auto)` would create an
implicit cast expression to dependent type and makes the type of primary
template definition (`InjectedClassNameSpecialization`) and its partial
specialization different. Prevent emitting cast expression to make clang
knows their types are identical by removing `CTAK == CTAK_Deduced` when
the type is `decltype(auto)`.
Co-authored-by: huqizhi <836744285 at qq.com>
Commit: a413c563bdcaac08f7c325c7d69e19f924435e59
https://github.com/llvm/llvm-project/commit/a413c563bdcaac08f7c325c7d69e19f924435e59
Author: Qizhi Hu <836744285 at qq.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
A clang/test/SemaCXX/PR68885.cpp
Log Message:
-----------
[Clang][Sema] Fix a bug on template partial specialization with issue on deduction of nontype template parameter (#90376)
Fix https://github.com/llvm/llvm-project/issues/68885
When build expression from a deduced argument whose kind is
`Declaration` and `NTTPType`(which declared as `decltype(auto)`) is
deduced as a reference type, `BuildExpressionFromDeclTemplateArgument`
just create a `DeclRef`. This is incorrect while we get type from the
expression since we can't get the original reference type from
`DeclRef`. Creating a `SubstNonTypeTemplateParmExpr` expression and make
the deduction correct. `Replacement` expression of
`SubstNonTypeTemplateParmExpr` just helps the deduction and may not be
same with the original expression.
Co-authored-by: huqizhi <836744285 at qq.com>
Commit: 64248d7dee09fef4900058ba98a67feb68eb617c
https://github.com/llvm/llvm-project/commit/64248d7dee09fef4900058ba98a67feb68eb617c
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/Type.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/Symbol/Type.cpp
M lldb/source/Symbol/TypeSystem.cpp
M lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
Log Message:
-----------
[PAC][lldb][Dwarf] Support `__ptrauth`-qualified types in user expressions (#84387)
Depends on #84384 and #90329
This adds support for `DW_TAG_LLVM_ptrauth_type` entries corresponding
to explicitly signed types (e.g. free function pointers) in lldb user
expressions. Applies PR https://github.com/apple/llvm-project/pull/8239
from Apple's downstream and also adds tests and related code.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: f78949a07e33017a798c410a102c95455685a9b1
https://github.com/llvm/llvm-project/commit/f78949a07e33017a798c410a102c95455685a9b1
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
Log Message:
-----------
[NFC][Clang] Add FIXME comment to the workaround for issue #89774
Commit: 7ac1fb01e9b70d09e6c4f39414bcd7c93787ef91
https://github.com/llvm/llvm-project/commit/7ac1fb01e9b70d09e6c4f39414bcd7c93787ef91
Author: Christian Sigg <chsigg at users.noreply.github.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/ADT/TypeSwitch.h
M mlir/include/mlir/IR/Attributes.h
M mlir/include/mlir/IR/Location.h
M mlir/include/mlir/IR/Types.h
M mlir/include/mlir/Tools/PDLL/AST/Types.h
Log Message:
-----------
[mlir] Mark `isa/dyn_cast/cast/...` member functions deprecated. (#90413)
This also removes the member overload in TypeSwitch.
All other users have been removed in
fac349a169976f822fb27f03e623fa0d28aec1f3 and
bd9fdce69b4c4cdb572e715c5f453aaf9b77b83a.
Commit: b2b463bd8f6b21f040b80c4493682cf74f8dced5
https://github.com/llvm/llvm-project/commit/b2b463bd8f6b21f040b80c4493682cf74f8dced5
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/force-transitive-changes.cppm
M clang/test/Modules/no-transitive-source-location-change.cppm
Log Message:
-----------
[C++20] [Modules] Add signature to the BMI recording export imported
modules
After https://github.com/llvm/llvm-project/pull/86912,
for the following example,
```
export module A;
export import B;
```
The generated BMI of `A` won't change if the source location in `A`
changes. Further, we plan avoid more such changes.
However, it is slightly problematic since `export import` should
propagate all the changes.
So this patch adds a signature to the BMI of C++20 modules so that we
can propagate the changes correctly.
Commit: fce0916969218fdb4b89ad0b3e18599204d4138d
https://github.com/llvm/llvm-project/commit/fce0916969218fdb4b89ad0b3e18599204d4138d
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/test/Modules/pr67893.cppm
M clang/test/Modules/search-partitions.cpp
Log Message:
-----------
[NFC] [C++20] [Modules] Use new class CXX20ModulesGenerator to genera… (#90570)
…te module file for C++20 modules instead of PCHGenerator
Previously we're re-using PCHGenerator to generate the module file for
C++20 modules. But this is slighty more or less odd. This patch tries to
use a new class 'CXX20ModulesGenerator' to generate the module file for
C++20 modules.
Commit: 21f8cedc4aa542f628035cd5dafd2d2529eb4397
https://github.com/llvm/llvm-project/commit/21f8cedc4aa542f628035cd5dafd2d2529eb4397
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/test/Transforms/debug-fn-info.f90
Log Message:
-----------
[flang] Fix debug-fn-info.f90 test
91a8cb781dbc981356207e0c3608d92ed6d26042 was originally written
before 8d5386669ed63548daf1bee415596582d6d78d7d landed. The latter
changed how main is emitted which changed the numbering of the
suprograms in the test output.
To fix this I've added a check for the new _QQmain and renumbered
the existing checks.
Commit: 10aab63c9cb49d3ddfbe2cf8992de433efeef6f1
https://github.com/llvm/llvm-project/commit/10aab63c9cb49d3ddfbe2cf8992de433efeef6f1
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/test/Modules/no-transitive-source-location-change.cppm
Log Message:
-----------
[NFC] [tests] Don't try to remove and create the same directory
In the test of
clang/test/Modules/no-transitive-source-location-change.cppm, there were
reports about invalid directory names in windows. The reason may be that
we may remove and create the same directory. This patch tries to avoid
such patterns for that.
Commit: f73e87f53f5d8a86c29251dedc9dbd264179203a
https://github.com/llvm/llvm-project/commit/f73e87f53f5d8a86c29251dedc9dbd264179203a
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/DeclSpec.cpp
M clang/test/Parser/altivec.c
M clang/test/Parser/cxx-altivec.cpp
M clang/test/Sema/zvector.c
M clang/test/Sema/zvector2.c
Log Message:
-----------
[Clang][Sema] Do not accept "vector _Complex" for AltiVec/ZVector (#90467)
The AltiVec (POWER) and ZVector (IBM Z) language extensions do not
support using the "vector" keyword when the element type is a complex
type, but current code does not verify this.
Add a Sema check and diagnostic for this case.
Fixes: https://github.com/llvm/llvm-project/issues/88399
Commit: 62dea99a7d7df9daedbb86133f3d46699cd2728d
https://github.com/llvm/llvm-project/commit/62dea99a7d7df9daedbb86133f3d46699cd2728d
Author: David Stuttard <david.stuttard at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.msaa.load.ll
Log Message:
-----------
[AMDGPU] Fix gfx12 waitcnt type for image_msaa_load (#90201)
image_msaa_load is actually encoded as a VSAMPLE instruction and
requires the appropriate waitcnt variant.
Commit: fb2d3056618e3d03ba9a695627c7b002458e59f0
https://github.com/llvm/llvm-project/commit/fb2d3056618e3d03ba9a695627c7b002458e59f0
Author: Danial Klimkin <dklimkin at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/test/CodeGenCoroutines/coro-elide-thinlto.cpp
Log Message:
-----------
Fix output in coro-elide-thinlto.cpp (#90579)
Current dir can be read-only. Use a temp path instead.
Commit: f10685f3e606e9e50906d9bf4e302a4281664152
https://github.com/llvm/llvm-project/commit/f10685f3e606e9e50906d9bf4e302a4281664152
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] lowerAtomicArith - use DAG::getNegative() helper. NFC.
Commit: 0061616770c15b334c4ad1703a1a2502b6cd4485
https://github.com/llvm/llvm-project/commit/0061616770c15b334c4ad1703a1a2502b6cd4485
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combinePredicateReduction - use DAG::getNegative() helper. NFC.
Commit: 3fca9d71447b7d3536e912d73ffd56a351e10bce
https://github.com/llvm/llvm-project/commit/3fca9d71447b7d3536e912d73ffd56a351e10bce
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineMul - use DAG::getNegative() helper. NFC.
Commit: 066dc1e05b8c5feca1f3957a10edc492705a5db2
https://github.com/llvm/llvm-project/commit/066dc1e05b8c5feca1f3957a10edc492705a5db2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineMulToPMADDWD/combineMulToPMULDQ/reduceVMULWidth - pull out repeated SDLoc(). NFC.
Commit: 2cb97c7e29029dc552c66b3ddf6030d826538d47
https://github.com/llvm/llvm-project/commit/2cb97c7e29029dc552c66b3ddf6030d826538d47
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Add TODO for getTargetConstantFromBasePtr to support non-zero offsets.
As noted on #66991 - we sometimes share vector constant pool entries, referencing subvectors within them via pointer offsets
Commit: 34c89eff64cce7debb8e2d5a0d1c4d896a23e432
https://github.com/llvm/llvm-project/commit/34c89eff64cce7debb8e2d5a0d1c4d896a23e432
Author: Monad <yanwqmonad at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/trunc.ll
Log Message:
-----------
[InstCombine] Fold `trunc nuw/nsw (x xor y) to i1` to `x != y` (#90408)
Fold:
``` llvm
define i1 @src(i8 %x, i8 %y) {
%xor = xor i8 %x, %y
%r = trunc nuw/nsw i8 %xor to i1
ret i1 %r
}
define i1 @tgt(i8 %x, i8 %y) {
%r = icmp ne i8 %x, %y
ret i1 %r
}
```
Proof: https://alive2.llvm.org/ce/z/dcuHmn
Commit: 66e1d2c96a194f572be5b373705f493b1a4dc811
https://github.com/llvm/llvm-project/commit/66e1d2c96a194f572be5b373705f493b1a4dc811
Author: Paul Walker <paul.walker at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
Log Message:
-----------
[NFC][LLVM][SVE] Simplify isel for BSL and NBSL. (#90233)
Commit: 7faf34307ea974886a10d8d06352a67cdeaf1c23
https://github.com/llvm/llvm-project/commit/7faf34307ea974886a10d8d06352a67cdeaf1c23
Author: Luke Lau <luke at igalia.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV] Remove -riscv-insert-vsetvl-strict-asserts flag (#90171)
This flag has been enabled by default for almost two years now since
1f06398e96d4508d22f42b760f70eb5d4e7b1dc9, and at this stage we probably
shouldn't be falling back to the fixups.
This removes the flag so we always perform the assertion, as well as
making sure that CurInfo is always valid on exit: We shouldn't leave
emitVSETVLIs with an uninitialized VSETVLIInfo.
Commit: 2f9462e9e4f2b2b493673c39d4ad665175eb0b59
https://github.com/llvm/llvm-project/commit/2f9462e9e4f2b2b493673c39d4ad665175eb0b59
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/Opcodes.td
M clang/test/AST/Interp/opencl.cl
Log Message:
-----------
[clang][Interp] Fix initializing vectors from a list of other vectors
Commit: af5d41e0caf22536fbfb6e65aa10eff78118c822
https://github.com/llvm/llvm-project/commit/af5d41e0caf22536fbfb6e65aa10eff78118c822
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/test/CodeGenCXX/mangle-ms-vector-types.cpp
Log Message:
-----------
[clang][Interp] Support CXXScalarValueInitExprs of vector type
Commit: 6fab3f2a2b04048aaa7d76d067f6cd4704bb4002
https://github.com/llvm/llvm-project/commit/6fab3f2a2b04048aaa7d76d067f6cd4704bb4002
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/www/cxx_status.html
Log Message:
-----------
[NFC][Clang] Update P2718R0 implementation status to partial supported (#90577)
Once https://github.com/llvm/llvm-project/issues/85613 fixed, we can
mark this feature fully supported.
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: f3ac55fab8c30e71987120f76da70b5b6e9075f7
https://github.com/llvm/llvm-project/commit/f3ac55fab8c30e71987120f76da70b5b6e9075f7
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/LTO/LTOCodeGenerator.cpp
M llvm/test/tools/lto/discard-value-names.ll
Log Message:
-----------
[LTO] Reset DiscardValueNames in optimize(). (#78705)
libLTO parses options late, so at the moment the option is ignored. To
fix that, re-set it in optimize(), as at this point the options have been
parsed. When LTOCodeGenerator's constructor executes, the options
haven't been parsed by the linker to libLTO yet.
Note that we keep the value name of `%add = add..` because when the
module is imported, DiscardValueNames is still set to false (the default
when building with assertions).
I tried to improve this in libLTO, but I am not sure if there's a
suitable callback when all options have been set.
PR: https://github.com/llvm/llvm-project/pull/78705
Commit: bb95f5df732d9188b27c7cd34814ead8b2c4d4ce
https://github.com/llvm/llvm-project/commit/bb95f5df732d9188b27c7cd34814ead8b2c4d4ce
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
M clang/test/AST/Interp/cxx23.cpp
Log Message:
-----------
[clang][Interp] Visit LabelStmt sub statements
Commit: 5cd074fa57c2a22312f479a9529c0eac10013043
https://github.com/llvm/llvm-project/commit/5cd074fa57c2a22312f479a9529c0eac10013043
Author: Maya Amrami <62667278+amrami at users.noreply.github.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/MemRef/resolve-dim-ops.mlir
Log Message:
-----------
[mlir] Add ReifyRankedShapedTypeOpInterface to tosa::TransposeOp (#88890)
Commit: 82219e547bf42102a913fc6d5e3e81c3c888e5d6
https://github.com/llvm/llvm-project/commit/82219e547bf42102a913fc6d5e3e81c3c888e5d6
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/different-strides-safe-dep-due-to-backedge-taken-count.ll
Log Message:
-----------
[LAA] Pass maximum stride to isSafeDependenceDistance. (#90036)
As discussed in https://github.com/llvm/llvm-project/pull/88039, support
different strides with isSafeDependenceDistance by passing the maximum
of both strides.
isSafeDependenceDistance tries to prove that
|Dist| > BackedgeTakenCount * Step
holds. Chosing the maximum stride computes the maximum range accesed by
the loop for all strides.
PR: https://github.com/llvm/llvm-project/pull/90036
Commit: 5e03c0af4745b97f93c06b43e0f2a02abc881292
https://github.com/llvm/llvm-project/commit/5e03c0af4745b97f93c06b43e0f2a02abc881292
Author: Luke Lau <luke at igalia.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/RISCV/rvv/pr90559.ll
Log Message:
-----------
[DAGCombiner] Fix mayAlias not accounting for scalable MMOs with offsets (#90573)
In #70452 DAGCombiner::mayAlias was taught to handle scalable sizes, but
when it checks via AA->isNoAlias it didn't take into account the case
where the size is scalable but there was an offset too.
For the fixed length case the offset was just accounted for by adding to
the LocationSize, but for the scalable case there doesn't seem to be a
way to represent both a scalable and fixed part in it. So this patch
works around it by bailing if there is an offset.
Fixes #90559
Commit: 61b2a0e3336aaa0132bbed06dc185aca4ff5d2db
https://github.com/llvm/llvm-project/commit/61b2a0e3336aaa0132bbed06dc185aca4ff5d2db
Author: Tomas Matheson <Tomas.Matheson at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/utils/TableGen/ARMTargetDefEmitter.cpp
Log Message:
-----------
[AArch64][TargetParser] autogen ArchExtKind enum (#90314)
Thanks to ExtensionSet::toLLVMFeatureList, all values of ArchExtKind
should correspond to a particular -target-feature. The valid values of
-target-feature are in turn defined by SubtargetFeature defs.
Therefore we can generate ArchExtKind from the tablegen data. This is
done by adding an Extension class which derives from SubtargetFeature.
Because the Has* FieldNames do not always correspond to the AEK_
names ("extensions", as defined in TargetParser), and AEK_ names do
not always correspond to -march strings, some additional enum entries
have been added to remap the names. I have renamed these to make the
naming consistent, but split them into a separate PR to keep the diff
reasonable (#90320)
Commit: 1c17252cf049e318695b94a7e8a1c7343452e8bf
https://github.com/llvm/llvm-project/commit/1c17252cf049e318695b94a7e8a1c7343452e8bf
Author: Maxim Moskalets <89240935+maxmosk at users.noreply.github.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Tooling/CommonOptionsParser.h
Log Message:
-----------
[NFC] Update comment in CommonOptionsParser to match documentation (#90441)
See https://clang.llvm.org/docs/LibTooling.html
Commit: e50a857fb16bcfe7cfc99bf87db620bc82d1cff5
https://github.com/llvm/llvm-project/commit/e50a857fb16bcfe7cfc99bf87db620bc82d1cff5
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/test/Misc/target-invalid-cpu-note.c
M clang/test/Preprocessor/aarch64-target-features.c
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
[AArch64] Add support for Cortex-R82AE and improve Cortex-R82 (#90440)
Commit: adabdc12f995b0af74c866201899e738796d0d5e
https://github.com/llvm/llvm-project/commit/adabdc12f995b0af74c866201899e738796d0d5e
Author: Jan Voung <jvoung at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/test/Assembler/thinlto-summary.ll
M llvm/test/Bitcode/summary_version.ll
M llvm/test/Bitcode/thinlto-alias.ll
M llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
M llvm/test/Bitcode/thinlto-function-summary-originalnames.ll
M llvm/test/Bitcode/thinlto-function-summary-paramaccess.ll
M llvm/test/ThinLTO/X86/distributed_indexes.ll
M llvm/test/tools/llvm-lto/thinlto.ll
Log Message:
-----------
Use an abbrev to reduce size of VALUE_GUID records in ThinLTO summaries (#90497)
GUID often have content in the higher bits of a 64-bit entry so using
the unabbrev encoding is inefficient (lots of VBR control bits).
Instead, use an abbrev with two 32-bit fixed width chunks.
The abbrev also helps encode the "count" in one place instead of
in every record.
Reduces size of distributed backend summary files by 8.7% in one
example app.
Co-authored-by: Jan Voung <jvoung at google.com>
Commit: e4c0f4a2ecaf0f9d0a80f57a028bb7bdbe74a7e3
https://github.com/llvm/llvm-project/commit/e4c0f4a2ecaf0f9d0a80f57a028bb7bdbe74a7e3
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
Log Message:
-----------
[NFC] fix typo in clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp (#90606)
Commit: 7ae32bf7581e03d92c78346a72ea20798520b978
https://github.com/llvm/llvm-project/commit/7ae32bf7581e03d92c78346a72ea20798520b978
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/decorators.py
Log Message:
-----------
[lldb] Fixed SyntaxWarning invalid escape sequence '\s' in decorators.py (#90607)
Commit: 35e6bae62c8effa364ded79cc3b0bb988ea88998
https://github.com/llvm/llvm-project/commit/35e6bae62c8effa364ded79cc3b0bb988ea88998
Author: Tomas Matheson <tomas.matheson at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/utils/TableGen/ARMTargetDefEmitter.cpp
Log Message:
-----------
Revert "[AArch64][TargetParser] autogen ArchExtKind enum (#90314)"
This reverts commit 61b2a0e3336aaa0132bbed06dc185aca4ff5d2db.
Reason: AArch64TargetParserDef.inc not found while building clang
Commit: b60a2b931d68b9e119d6e2e6e17126937a646ff9
https://github.com/llvm/llvm-project/commit/b60a2b931d68b9e119d6e2e6e17126937a646ff9
Author: Nico Weber <thakis at chromium.org>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
A llvm/utils/gn/secondary/lldb/include/lldb/API/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
M llvm/utils/gn/secondary/lldb/utils/TableGen/BUILD.gn
Log Message:
-----------
[gn] port 975eca0e6a3 (-gen-lldb-sbapi-dwarf-enum)
Commit: 2aabfc811670beb843074c765c056fff4a7b443b
https://github.com/llvm/llvm-project/commit/2aabfc811670beb843074c765c056fff4a7b443b
Author: Jan Voung <jvoung at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/test/Assembler/thinlto-summary.ll
M llvm/test/Bitcode/summary_version.ll
M llvm/test/Bitcode/thinlto-alias.ll
M llvm/test/Bitcode/thinlto-func-summary-vtableref-pgo.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
M llvm/test/Bitcode/thinlto-function-summary-originalnames.ll
M llvm/test/Bitcode/thinlto-function-summary-paramaccess.ll
M llvm/test/ThinLTO/X86/distributed_indexes.ll
M llvm/test/tools/llvm-lto/thinlto.ll
Log Message:
-----------
Revert "Use an abbrev to reduce size of VALUE_GUID records in ThinLTO summaries" (#90610)
Reverts llvm/llvm-project#90497
Broke some LLD tests.
Commit: c106abfe9f3d3ed78a946009f7625088f28e9065
https://github.com/llvm/llvm-project/commit/c106abfe9f3d3ed78a946009f7625088f28e9065
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbtest.py
Log Message:
-----------
[lldb] Fixed SyntaxWarning invalid escape sequence '\l' in lldbtest.py (#90609)
Commit: c12bc57e23f8c37380ac25e774a60a684fce7bd3
https://github.com/llvm/llvm-project/commit/c12bc57e23f8c37380ac25e774a60a684fce7bd3
Author: Eleanor Bonnici <eleanor.bonnici at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMPredicates.td
M llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp
M llvm/lib/Target/ARM/ARMRegisterInfo.td
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
A llvm/test/CodeGen/ARM/pacbti-indirect-tail-calls-function-flags.ll
A llvm/test/CodeGen/ARM/pacbti-indirect-tail-calls-module-flags1.ll
A llvm/test/CodeGen/ARM/pacbti-indirect-tail-calls-module-flags2.ll
Log Message:
-----------
Do not use R12 for indirect tail calls with PACBTI (#82661)
When compiling for thumbv8.1m with +pacbti and making an indirect tail
call, the compiler was free to put the function pointer into R12.
This is incorrect because R12 is restored to contain authentication code
for the caller's return address.
This patch excludes R12 from the set of registers the compiler can put
the function pointer in.
Fixes https://github.com/llvm/llvm-project/issues/75998
Commit: d333a0de6829616427182b26923b14d779ce1dbb
https://github.com/llvm/llvm-project/commit/d333a0de6829616427182b26923b14d779ce1dbb
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/Basic/SourceLocation.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/SourceLocationEncoding.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ModuleFile.cpp
R clang/test/Modules/no-transitive-source-location-change.cppm
M clang/test/Modules/pr61067.cppm
M clang/unittests/Serialization/SourceLocationEncodingTest.cpp
Log Message:
-----------
Revert "[Modules] No transitive source location change (#86912)"
This reverts commit 6c3110464bac3600685af9650269b0b2b8669d34.
Required by the post commit comments: https://github.com/llvm/llvm-project/pull/86912
Commit: 8d28e5861f8b117a547850ffbb9a332aa6e91459
https://github.com/llvm/llvm-project/commit/8d28e5861f8b117a547850ffbb9a332aa6e91459
Author: WANG Rui <wangrui at loongson.cn>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchFrameLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
Log Message:
-----------
[LoongArch] Apply clang formatting to LoongArch target. NFC
Commit: a7b968a57834a0e522505b56fab0ca4b979cb68f
https://github.com/llvm/llvm-project/commit/a7b968a57834a0e522505b56fab0ca4b979cb68f
Author: Alexandre Eichenberger <alexe at us.ibm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
M mlir/test/Dialect/MemRef/normalize-memrefs-ops.mlir
Log Message:
-----------
Adding memref normalization of affine.prefetch (#89675)
Added support for memref-normalization for prefetch.
Signed-off-by: Alexandre Eichenberger <alexe at us.ibm.com>
Commit: ea81dafd52471db64ed31b4fabb11ee762528066
https://github.com/llvm/llvm-project/commit/ea81dafd52471db64ed31b4fabb11ee762528066
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/MIR/BUILD.gn
Log Message:
-----------
[gn build] Port 6ea0c0a28343
Commit: 622ec1f029b4ba0ac211a2da5abe593846a109f6
https://github.com/llvm/llvm-project/commit/622ec1f029b4ba0ac211a2da5abe593846a109f6
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/BinaryFormat/BUILD.gn
Log Message:
-----------
[gn build] Port a5cc95147ed5
Commit: 6c32a1fdf712e58a324fc0f6e3dfc83ed7d56b1e
https://github.com/llvm/llvm-project/commit/6c32a1fdf712e58a324fc0f6e3dfc83ed7d56b1e
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
M llvm/lib/Target/SystemZ/SystemZInstrFP.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
M llvm/lib/Target/SystemZ/SystemZInstrVector.td
M llvm/lib/Target/SystemZ/SystemZOperators.td
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/test/CodeGen/SystemZ/anyregcc.ll
A llvm/test/CodeGen/SystemZ/foldmem-peep.mir
M llvm/test/CodeGen/SystemZ/fp-add-01.ll
M llvm/test/CodeGen/SystemZ/fp-add-02.ll
M llvm/test/CodeGen/SystemZ/fp-mul-01.ll
M llvm/test/CodeGen/SystemZ/fp-mul-03.ll
M llvm/test/CodeGen/SystemZ/fp-sub-01.ll
M llvm/test/CodeGen/SystemZ/fp-sub-02.ll
A llvm/test/CodeGen/SystemZ/machine-combiner-reassoc-fp.ll
M llvm/test/CodeGen/SystemZ/stackmap.ll
Log Message:
-----------
[SystemZ] Enable MachineCombiner for FP reassociation (#83546)
Enable MachineCombining for FP add, sub and mul.
In order for this to work, the default instruction selection of reg/mem opcodes is disabled for ISD nodes that carry the flags that allow reassociation. The reg/mem folding is instead done after MachineCombiner by PeepholeOptimizer. SystemZInstrInfo optimizeLoadInstr() and foldMemoryOperandImpl() ("LoadMI version") have been implemented for this purpose also by this patch.
Commit: 1b942ae3843ca943a249288612e69df0b2fc188b
https://github.com/llvm/llvm-project/commit/1b942ae3843ca943a249288612e69df0b2fc188b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Use consume_front to parse rv32/rv64 in RISCVISAInfo::parse*ArchString. NFC (#90562)
This replaces some starts_with calls wth consume_front. This allows us
to remove a later assumption that prefix was 4 characters. We would
eventually need to fix this anyway if we ever support rv128.
Noticed while reviewing the RISCVISAInfo code for other reasons.
Commit: f815d1f71f644a6cfd2c22bf7898a1034be235ad
https://github.com/llvm/llvm-project/commit/f815d1f71f644a6cfd2c22bf7898a1034be235ad
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
Log Message:
-----------
[flang][cuda] Fix iv store in cuf kernel (#90551)
Store of the current induction value to the user IV was not placed
correctly in the body of the cuf kernel.
@ImanHosseini
Commit: a9c73f66ce96421ba1e8952950d6df74e9043589
https://github.com/llvm/llvm-project/commit/a9c73f66ce96421ba1e8952950d6df74e9043589
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/test/Fir/cuf.mlir
Log Message:
-----------
[flang][cuda] Add fir.cuda_alloc/fir.cuda_free operations (#90525)
This patch introduces fir.cuda_alloc/fir.cuda_free. These operations
will be used instead of fir.alloca for local CUDA device, managed and
unified variables.
Commit: 114a59d4d3743257d7cfdf94a7124060f04cc0db
https://github.com/llvm/llvm-project/commit/114a59d4d3743257d7cfdf94a7124060f04cc0db
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/MachineLICM.cpp
Log Message:
-----------
MachineLICM: Remove unnecessary isReg checks
COPY operands are always registers.
Commit: cc6113da826e82f19762eb813e6d932fcef09593
https://github.com/llvm/llvm-project/commit/cc6113da826e82f19762eb813e6d932fcef09593
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtPrinter.cpp
A clang/test/AST/ast-print-openacc-compute-construct.cpp
Log Message:
-----------
[OpenACC] Fix ast-print for OpenACC Clauses
Previously we weren't printing expressions correctly, so this patch adds
a test to ensure we do, and fixes how expressions are printed.
Commit: 721c31e3bd37c00bff96e14e784e8d28e9a2b8ba
https://github.com/llvm/llvm-project/commit/721c31e3bd37c00bff96e14e784e8d28e9a2b8ba
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M bolt/lib/Passes/ValidateMemRefs.cpp
R bolt/test/X86/jt-symbol-disambiguation-4.s
Log Message:
-----------
Revert "[BOLT] Avoid reference updates for non-JT symbol operands (#88838)"
This reverts commit 9d5411ffba0d94b60050cc873773935addca9533.
Breaks aarch64 buildbot:
https://lab.llvm.org/buildbot/#/builders/221/builds/22130
Commit: d97f25b948554717a163b28dae3cf982a03434ca
https://github.com/llvm/llvm-project/commit/d97f25b948554717a163b28dae3cf982a03434ca
Author: Scott Egerton <9487234+ScottEgerton at users.noreply.github.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInsertSingleUseVDST.cpp
M llvm/test/CodeGen/AMDGPU/insert-singleuse-vdst.mir
Log Message:
-----------
[AMPGPU] Emit s_singleuse_vdst instructions when a register is used multiple times in the same instruction. (#89601)
Previously, multiple uses of a register within the same instruction were
being counted as multiple uses. This has been corrected to
only count as a single use as per the specification allowing for
more optimisation candidates.
Commit: 5ada3289b107742929f2605aa4b2e3e903d4a690
https://github.com/llvm/llvm-project/commit/5ada3289b107742929f2605aa4b2e3e903d4a690
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
A flang/test/Lower/OpenMP/Todo/reduction-array-intrinsic.f90
Log Message:
-----------
[flang][OpenMP] ensure we hit the TODO for intrinsic array reduction (#90593)
Before this patch we crashed lowering intrinsic array reductions.
I think this lost during a rebase. I've added a test to make sure it
doesn't break again.
Also fixed the TODO message to be more accurate.
Commit: df513f86da13822ed4f99bebd2ac93e53b8b6e0d
https://github.com/llvm/llvm-project/commit/df513f86da13822ed4f99bebd2ac93e53b8b6e0d
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
Log Message:
-----------
[flang] Adapt PolymorphicOpConversion to run on all top level ops (#90597)
We might use polymorphic ops in top-level operations other than
functions some time in the future. We need to ensure that these
operations can be lowered.
See RFC:
https://discourse.llvm.org/t/rfc-add-an-interface-for-top-level-container-operations
Some of the changes are from moving declaration and definition of the
constructor function into tablegen (as requested in code review when
altering another pass).
Commit: 539f626ecd0c5148228fb6d2eda6228b4f2b2fca
https://github.com/llvm/llvm-project/commit/539f626ecd0c5148228fb6d2eda6228b4f2b2fca
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/VPIntrinsics.def
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
A llvm/test/CodeGen/RISCV/rvv/vp-cttz-elts.ll
Log Message:
-----------
[VP][RISCV] Add vp.cttz.elts intrinsic and its RISC-V codegen (#90502)
This intrinsic is the VP version of `experimental.cttz.elts`.
Commit: 97069a86193a617a9e4cf742a29db6116b2bf449
https://github.com/llvm/llvm-project/commit/97069a86193a617a9e4cf742a29db6116b2bf449
Author: Gaurav Shukla <gaurav at nod-labs.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Dialect/Arith/Utils/CMakeLists.txt
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/SplitReduction.cpp
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/PackAndUnpackPatterns.cpp
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-empty-tensor-elimination.mlir
M mlir/test/Dialect/Linalg/bubble-up-extract-slice-op.mlir
M mlir/test/Dialect/Linalg/collapse-dim.mlir
M mlir/test/Dialect/Linalg/convert-conv2d-to-img2col.mlir
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
M mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
M mlir/test/Dialect/Linalg/flatten-elementwise.mlir
M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir
M mlir/test/Dialect/Linalg/fusion-push-reshape.mlir
M mlir/test/Dialect/Linalg/reshape_control_fusion.mlir
M mlir/test/Dialect/Linalg/reshape_fusion.mlir
M mlir/test/Dialect/Linalg/resolve-shaped-type-result-dims.mlir
M mlir/test/Dialect/Linalg/transform-op-split-reduction.mlir
M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir
M mlir/test/Dialect/MemRef/canonicalize.mlir
M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir
M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir
M mlir/test/Dialect/MemRef/invalid.mlir
M mlir/test/Dialect/MemRef/ops.mlir
M mlir/test/Dialect/MemRef/runtime-verification.mlir
M mlir/test/Dialect/SparseTensor/sparse_reshape.mlir
M mlir/test/Dialect/Tensor/bufferize.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Tensor/fold-empty-op.mlir
M mlir/test/Dialect/Tensor/fold-reassociative-reshapes.mlir
M mlir/test/Dialect/Tensor/invalid.mlir
M mlir/test/Dialect/Tensor/ops.mlir
M mlir/test/Dialect/Tensor/simplify-pack-unpack.mlir
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[MLIR] Generalize expand_shape to take shape as explicit input (#90040)
This patch generalizes tensor.expand_shape and memref.expand_shape to
consume the output shape as a list of SSA values. This enables us to
implement generic reshape operations with dynamic shapes using
collapse_shape/expand_shape pairs.
The output_shape input to expand_shape follows the static/dynamic
representation that's also used in `tensor.extract_slice`.
Differential Revision: https://reviews.llvm.org/D140821
---------
Signed-off-by: Gaurav Shukla<gaurav.shukla at amd.com>
Signed-off-by: Gaurav Shukla <gaurav.shukla at amd.com>
Co-authored-by: Ramiro Leal-Cavazos <ramiroleal050 at gmail.com>
Commit: e9305fcf1b4a901f9424388137cecff120a4b303
https://github.com/llvm/llvm-project/commit/e9305fcf1b4a901f9424388137cecff120a4b303
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineAnd/combineAddOrSub - use DAG::getNegative() helper. NFC.
Commit: 38c68e0746dc4ee19480dd4c9ee572895eb07136
https://github.com/llvm/llvm-project/commit/38c68e0746dc4ee19480dd4c9ee572895eb07136
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
A llvm/test/CodeGen/X86/cmp16.ll
Log Message:
-----------
[X86] Add icmp i16 test coverage
Based off #90355 - add basic tests for cases when to extend i16 comparisons to i32
Commit: 91c52b966a09e37a96ed87bcf5b422de7711bf50
https://github.com/llvm/llvm-project/commit/91c52b966a09e37a96ed87bcf5b422de7711bf50
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] Pull out repeated SDLoc() from SHL/SRL/SRA combines. NFC.
We were always calling SDLoc(N) at the top of each visitSHL/SRL/SRA for the FoldConstantArithmetic call, so just reuse this as much as possible.
Commit: fbe8d2a22189233590b15dad62c881a60c74b201
https://github.com/llvm/llvm-project/commit/fbe8d2a22189233590b15dad62c881a60c74b201
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/include/flang/Tools/CrossToolHelpers.h
Log Message:
-----------
[flang][OpenMP] Implement getOpenMPVersionAttribute helper function, NFC (#90086)
Commit: 554be97d7f7f462ab4b8af34f79bca71f4c98977
https://github.com/llvm/llvm-project/commit/554be97d7f7f462ab4b8af34f79bca71f4c98977
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
[flang][OpenMP] Implement getIterationVariableSymbol helper function,… (#90087)
… NFC
Commit: 33ccd037fcd2b4346065ebcdcbb5d8c1887c2639
https://github.com/llvm/llvm-project/commit/33ccd037fcd2b4346065ebcdcbb5d8c1887c2639
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang][OpenMP] Pass symTable to all genXYZ functions, NFC (#90090)
This will unify the interface a bit more.
Commit: 4631e7bad6984beca9f790d01d7e07dd47d407bb
https://github.com/llvm/llvm-project/commit/4631e7bad6984beca9f790d01d7e07dd47d407bb
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/unittests/Frontend/OpenMPCompositionTest.cpp
Log Message:
-----------
[Frontend][OpenMP] Add unit tests for getLeafConstructsOrSelf, NFC (#90110)
Commit: 267329d7e0e7dc6cb6d59b7d71290d5e5f5c6be2
https://github.com/llvm/llvm-project/commit/267329d7e0e7dc6cb6d59b7d71290d5e5f5c6be2
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Log Message:
-----------
[LegalizeDAG] Simplify interface to PromoteReduction. NFC
Return an SDValue instead of pushing to the Results vector. Let
the caller do the push.
Commit: 6ab49fcbb237779042bfb7f5210321fe75f8f432
https://github.com/llvm/llvm-project/commit/6ab49fcbb237779042bfb7f5210321fe75f8f432
Author: Min Hsu <min.hsu at sifive.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/IR/IntrinsicInst.cpp
M llvm/unittests/IR/VPIntrinsicTest.cpp
Log Message:
-----------
[VP] Fix unit test failures caused by #90502
Forgot to add vp.cttz.elts into the unittest. Also, I didn't specify the
positions of overloaded type parameters.
Commit: 4cd11c986f78e19f53b3f3c92143b7b7c1ce54b1
https://github.com/llvm/llvm-project/commit/4cd11c986f78e19f53b3f3c92143b7b7c1ce54b1
Author: Adrian Prantl <aprantl at apple.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/utils/lldb-dotest/lldb-dotest.in
Log Message:
-----------
Thread '--lldb-obj-root' through lldb-dotest for manual testing
Commit: dbe376651a830fb502ff26d89119d1b89da599bc
https://github.com/llvm/llvm-project/commit/dbe376651a830fb502ff26d89119d1b89da599bc
Author: Peiming Liu <peiming at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.h
A mlir/test/Integration/Dialect/SparseTensor/CPU/padded_sparse_conv_2d.mlir
Log Message:
-----------
[mlir][sparse] handle padding on sparse levels. (#90527)
Commit: 30badf96bbaa5ddfd8049442e573fd270a89ddc8
https://github.com/llvm/llvm-project/commit/30badf96bbaa5ddfd8049442e573fd270a89ddc8
Author: Matthias Gehre <matthias.gehre at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/test/Dialect/Arith/expand-ops.mlir
Log Message:
-----------
[MLIR][Arith] expand-ops: Support mini/maxi (#90575)
Expand `arith.minsi`, `arith.minui`, `arith.maxsi`, `arith.maxui` into
`arith.cmpi` and `arith.select`.
---------
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: 600cae7d421e6e280c6513510bb11b4dc7b16b48
https://github.com/llvm/llvm-project/commit/600cae7d421e6e280c6513510bb11b4dc7b16b48
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Try to clarify mustprogress wording. (#90510)
Ensure it's clear that:
- Infinite loops in non-mustprogress functions are well-defined, even if
they're called by mustprogress functions.
- Infinite recursion in mustprogress functions is not well-defined.
Looking at D86233, it's clear this was the intent, but the "transitive"
wording is ambiguous. Instead, just explicitly state that infinite loops
written in non-mustprogress functions count as progress.
Commit: 7dd4ce484c8913ced124f2f62ac4c3eaafa9ef5f
https://github.com/llvm/llvm-project/commit/7dd4ce484c8913ced124f2f62ac4c3eaafa9ef5f
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M libc/src/__support/fixed_point/sqrt.h
M libc/test/src/stdfix/ISqrtTest.h
M libc/test/src/stdfix/SqrtTest.h
M libc/test/src/stdfix/uksqrtui_test.cpp
Log Message:
-----------
[libc][stdfix] Fix overflow problem for fixed point sqrt when the inputs are close to max. (#90558)
Fixes https://github.com/llvm/llvm-project/issues/89668
Commit: 9af7f4061b0a8c5540ec544dab82d3f1b9531549
https://github.com/llvm/llvm-project/commit/9af7f4061b0a8c5540ec544dab82d3f1b9531549
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M libcxx/docs/Status/Cxx2c.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/test/std/numerics/complex.number/complex.tuple/get.pass.cpp
Log Message:
-----------
[libc++][NFC] Fixes a status page note and a minor copy & paste error in a test (#90399)
- Adds a status page note for P3142R0
- Fixes a copy & paste error in tuple protocol for `complex`
Commit: a754ce04893fd2981b265a040f838fed85f53199
https://github.com/llvm/llvm-project/commit/a754ce04893fd2981b265a040f838fed85f53199
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Fix build warning.
Commit: f565b79f9fc278d37e884276212455920b51b47a
https://github.com/llvm/llvm-project/commit/f565b79f9fc278d37e884276212455920b51b47a
Author: Luke Lau <luke at igalia.com>
Date: 2024-05-01 (Wed, 01 May 2024)
Changed paths:
M llvm/include/llvm/Support/TypeSize.h
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
Log Message:
-----------
[RISCV] Handle fixed length vectors with exact VLEN in lowerINSERT_SUBVECTOR (#84107)
This is the insert_subvector equivalent to #79949, where we can avoid
sliding up by the full LMUL amount if we know the exact subregister the
subvector will be inserted into.
This mirrors the lowerEXTRACT_SUBVECTOR changes in that we handle this
in two parts:
- We handle fixed length subvector types by converting the subvector to
a scalable vector. But unlike EXTRACT_SUBVECTOR, we may also need to
convert the vector being inserted into too.
- Whenever we don't need a vslideup because either the subvector fits
exactly into a vector register group *or* the vector is undef, we need
to emit an insert_subreg ourselves because RISCVISelDAGToDAG::Select
doesn't correctly handle fixed length subvectors yet: see d7a28f7ad
A subvector exactly fits into a vector register group if its size is a
known multiple of the size of a vector register, and this adds a new
overload for TypeSize::isKnownMultipleOf for scalable to scalable
comparisons to help reason about this.
I've left RISCVISelDAGToDAG::Select untouched for now (minus relaxing an
invariant), so that the insert_subvector and extract_subvector code
paths are the same.
We should teach it to properly handle fixed length subvectors in a
follow-up patch, so that the "exact subregsiter" logic is handled in one
place instead of being spread across both RISCVISelDAGToDAG.cpp and
RISCVISelLowering.cpp.
Commit: f0cc3735217dd0da36ed14b65823bcb0d289fea6
https://github.com/llvm/llvm-project/commit/f0cc3735217dd0da36ed14b65823bcb0d289fea6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Drop unnecessary curly braces in RISCVISAInfo:parse*ArchString. NFC
Commit: 40083cf378e8c93165c5f9dd9d06611beca78f54
https://github.com/llvm/llvm-project/commit/40083cf378e8c93165c5f9dd9d06611beca78f54
Author: Alex Guteniev <gutenev at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp
M libcxx/test/std/strings/string.conversions/stol.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
Log Message:
-----------
[libc++] Some tests are missing include for `numeric_limits` (#90345)
Noticed while attempting microsoft/STL#4634
Commit: 7a8d15e919dde70118dbfa34e927be1705ded67d
https://github.com/llvm/llvm-project/commit/7a8d15e919dde70118dbfa34e927be1705ded67d
Author: Dave Lee <davelee.com at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/docs/use/variable.rst
M lldb/source/Core/FormatEntity.cpp
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/Makefile
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/TestCustomSummaryLLVMFormat.py
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/main.c
Log Message:
-----------
[lldb] Support custom LLVM formatting for variables (#81196)
Adds support for applying LLVM formatting to variables.
The reason for this is to support cases such as the following.
Let's say you have two separate bytes that you want to print as a
combined hex value. Consider the following summary string:
```
${var.byte1%x}${var.byte2%x}
```
The output of this will be: `0x120x34`. That is, a `0x` prefix is
unconditionally applied to each byte. This is unlike printf formatting
where you must include the `0x` yourself.
Currently, there's no way to do this with summary strings, instead
you'll need a summary provider in python or c++.
This change introduces formatting support using LLVM's formatter system.
This allows users to achieve the desired custom formatting using:
```
${var.byte1:x-}${var.byte2:x-}
```
Here, each variable is suffixed with `:x-`. This is passed to the LLVM
formatter as `{0:x-}`. For integer values, `x` declares the output as
hex, and `-` declares that no `0x` prefix is to be used. Further, one
could write:
```
${var.byte1:x-2}${var.byte2:x-2}
```
Where the added `2` results in these bytes being written with a minimum
of 2 digits.
An alternative considered was to add a new format specifier that would
print hex values without the `0x` prefix. The reason that approach was
not taken is because in addition to forcing a `0x` prefix, hex values
are also forced to use leading zeros. This approach lets the user have
full control over formatting.
Commit: 49bb993959668b3f319e9ea5fa0c97a41ab0890e
https://github.com/llvm/llvm-project/commit/49bb993959668b3f319e9ea5fa0c97a41ab0890e
Author: Maksim Panchenko <maks at fb.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT] Fix build-time assertion in RewriteInstance (#90540)
We use pwrite() in RewriteInstance to update contents of existing
sections. pwrite() requires file position to be set past the written
offset which we guarantee at the start of rewriteFile(). Then we had an
implicit assumption in patchBuildID() that the file position will be set
again in patchELFSymTabs() after being reset in patchELFPHDRTable().
That assumption was broken in #90300. The fix is to save and restore
file position in patchELFPHDRTable(). Then we don't have to update it
again in patchELFSymTabs().
Commit: d2353695f8cb864f88475d3a921249b0dcbcc6f4
https://github.com/llvm/llvm-project/commit/d2353695f8cb864f88475d3a921249b0dcbcc6f4
Author: Peiming Liu <peiming at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/include/mlir/Tools/PDLL/AST/Nodes.h
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Tools/PDLL/AST/Types.cpp
M mlir/lib/Tools/PDLL/CodeGen/MLIRGen.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.cpp
Log Message:
-----------
[mlir][NFC] update code to use `mlir::dyn_cast/cast/isa` (#90633)
Fix compiler warning caused by using deprecated interface
(https://github.com/llvm/llvm-project/pull/90413)
Commit: 7662f95f2c767ae3c9b22eb4bdedb07ffcf258b7
https://github.com/llvm/llvm-project/commit/7662f95f2c767ae3c9b22eb4bdedb07ffcf258b7
Author: Heejin Ahn <aheejin at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/test/Preprocessor/wasm-target-features.c
Log Message:
-----------
[WebAssembly] Add preprocessor define for half-precision (#90528)
This adds the preprocessor define for the half-precision feature and
also adds preprocessor tests.
Commit: f061a395ffb78215a23e0f503e8ea121ee3b13ad
https://github.com/llvm/llvm-project/commit/f061a395ffb78215a23e0f503e8ea121ee3b13ad
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
A clang/test/CXX/class/class.mem/class.mem.general/p8.cpp
A clang/test/CXX/except/except.spec/p13-friend.cpp
Log Message:
-----------
[Clang][Sema][Parse] Delay parsing of noexcept-specifiers in friend function declarations (#90517)
According to [class.mem.general] p8:
> A complete-class context of a class (template) is a
> - function body,
> - default argument,
> - default template argument,
> - _noexcept-specifier_, or
> - default member initializer
>
> within the member-specification of the class or class template.
When testing #90152, it came to my attention that we do _not_ consider
the _noexcept-specifier_ of a friend function declaration to be a
complete-class context (something which the Microsoft standard library
depends on). Although a comment states that this is "consistent with
what other implementations do", the only other implementation that
exhibits this behavior is GCC (MSVC and EDG both late-parse the
_noexcept-specifier_).
This patch changes _noexcept-specifiers_ of friend function declarations
to be late parsed, which is in agreement with the standard & majority of
implementations. Pre-#90152, our existing implementation falls "in
between" the implementation consensus: within non-template classes, we
would not find latter declared members (qualified and unqualified),
while within class templates we would not find latter declared member
when named with a unqualified name, we would find members named with a
qualified name (even when lookup context is the current instantiation).
Therefore, this _shouldn't_ be a breaking change -- any code that didn't
compile will continue to not compile (since a _noexcept-specifier_ is
not part of the deduction substitution
loci (see [temp.deduct.general] p7), and any code which
did compile should continue to do so.
Commit: 8009bbec59d1c5d47ae06c431647ebee6d886ff2
https://github.com/llvm/llvm-project/commit/8009bbec59d1c5d47ae06c431647ebee6d886ff2
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/owning-memory.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Lookup.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Expr.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/AST/HLSL/this-reference-template.hlsl
M clang/test/CXX/drs/dr2xx.cpp
M clang/test/CXX/drs/dr3xx.cpp
A clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
M clang/test/CXX/temp/temp.res/temp.local/p3.cpp
M clang/test/CodeGenCXX/mangle.cpp
M clang/test/Index/annotate-nested-name-specifier.cpp
M clang/test/SemaCXX/member-expr.cpp
M clang/test/SemaTemplate/instantiate-function-1.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
Log Message:
-----------
Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (#84050)" (#90152)
Reapplies #84050, addressing a bug which cases a crash when an
expression with the type of the current instantiation is used as the
_postfix-expression_ in a class member access expression (arrow form).
Commit: fa67986d5b309ddd4c2ea74e8a5eeb0559aa8022
https://github.com/llvm/llvm-project/commit/fa67986d5b309ddd4c2ea74e8a5eeb0559aa8022
Author: Erich Keane <ekeane at nvidia.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ast-print-openacc-compute-construct.cpp
M clang/test/ParserOpenACC/parse-cache-construct.c
M clang/test/ParserOpenACC/parse-clauses.c
A clang/test/SemaOpenACC/compute-construct-private-clause.c
A clang/test/SemaOpenACC/compute-construct-private-clause.cpp
A clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
[OpenACC] Private Clause on Compute Constructs (#90521)
The private clause is the first that takes a 'var-list', thus this has a
lot of additional work to enable the var-list type. A 'var' is a
traditional variable reference, subscript, member-expression, or
array-section, so checking of these is pretty minor.
Note: This ran into some issues with array-sections (aka sub-arrays)
that will be fixed in a follow-up patch.
Commit: 1c979ab7e59feb03c58cac631a93143b0c776c20
https://github.com/llvm/llvm-project/commit/1c979ab7e59feb03c58cac631a93143b0c776c20
Author: AdityaK <hiraditya at msn.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/GVNSink.cpp
A llvm/test/Transforms/GVNSink/different-gep-types.ll
Log Message:
-----------
[GVNSink] Fix incorrect codegen with respect to GEPs #85333 (#88440)
As mentioned in #68882 and
https://discourse.llvm.org/t/rfc-replacing-getelementptr-with-ptradd/68699
Gep arithmetic isn't consistent with different types. GVNSink didn't
realize this and sank all geps
as long as their operands can be wired via PHIs
in a post-dominator.
Fixes: #85333
Commit: 0ecc1646cbbb1bdfce234a11bec33b8c64af29cb
https://github.com/llvm/llvm-project/commit/0ecc1646cbbb1bdfce234a11bec33b8c64af29cb
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/include/__ranges/repeat_view.h
M libcxx/test/std/ranges/range.factories/range.repeat.view/ctad.compile.pass.cpp
M libcxx/test/std/ranges/range.factories/range.repeat.view/views_repeat.pass.cpp
Log Message:
-----------
[libc++][ranges] Implement LWG4053 and LWG4054 (#88612)
Implement
- LWG4053 Unary call to `std::views::repeat` does not decay the argument
- LWG4054 Repeating a `repeat_view` should repeat the view
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 41f9c78f6a4efe38edbb0b62131b0a0bf619c99a
https://github.com/llvm/llvm-project/commit/41f9c78f6a4efe38edbb0b62131b0a0bf619c99a
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
Log Message:
-----------
[OpenACC] Fix test failure from fa67986d
Seemingly some other patch went in that altered how much dependence was
printed vs the actual names, and it changed the ast-dump results.
Commit to fix this test.
Commit: 7cbaaed63612fe6446355c5ffe33ddd57578b929
https://github.com/llvm/llvm-project/commit/7cbaaed63612fe6446355c5ffe33ddd57578b929
Author: Peiming Liu <peiming at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/reshape_dot.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_expand_shape.mlir
Log Message:
-----------
[mlir][sparse] fix sparse tests that uses reshape operations. (#90637)
Due to generalization introduced in
https://github.com/llvm/llvm-project/pull/90040
Commit: 52cb9537896992e0fa689c45469bccb36970c0c7
https://github.com/llvm/llvm-project/commit/52cb9537896992e0fa689c45469bccb36970c0c7
Author: Kazu Hirata <kazu at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
Log Message:
-----------
[flang] Update calls to isa/dyn_cast/dyn_cast_or_null
Commit: 5f88f0c63fa75169665732a3377f5bb3fef6256d
https://github.com/llvm/llvm-project/commit/5f88f0c63fa75169665732a3377f5bb3fef6256d
Author: Kazu Hirata <kazu at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
Log Message:
-----------
[lldb] Fix a warning
This patch fixes:
third-party/unittest/googletest/include/gtest/gtest.h:1379:11:
error: comparison of integers of different signs: 'const unsigned
int' and 'const int' [-Werror,-Wsign-compare]
Commit: 9b07a035f1802e826d2186eae1875d010048618a
https://github.com/llvm/llvm-project/commit/9b07a035f1802e826d2186eae1875d010048618a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
Log Message:
-----------
[Hexagon] Let ArrayRef infer the array size (NFC) (#90534)
Commit: 4e6f6fda8b05524ccdb5a3e42c6c15ddef2454b6
https://github.com/llvm/llvm-project/commit/4e6f6fda8b05524ccdb5a3e42c6c15ddef2454b6
Author: Kazu Hirata <kazu at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/IR/ProfileSummary.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
Log Message:
-----------
[IR] Use StringRef::operator== instead of StringRef::equals (NFC) (#90550)
I'm planning to remove StringRef::equals in favor of
StringRef::operator==.
- StringRef::operator== outnumbers StringRef::equals by a factor of 22
under llvm/ in terms of their usage.
- The elimination of StringRef::equals brings StringRef closer to
std::string_view, which has operator== but not equals.
- S == "foo" is more readable than S.equals("foo"), especially for
!Long.Expression.equals("str") vs Long.Expression != "str".
Commit: a1423ba4278775472523fed074de6dbdfd01898a
https://github.com/llvm/llvm-project/commit/a1423ba4278775472523fed074de6dbdfd01898a
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M mlir/test/Integration/Dialect/Linalg/CPU/test-expand-tensor.mlir
Log Message:
-----------
[mlir][tensor] Fix integration tests that uses reshape ops. (#90649)
Due to generalization introduced in
https://github.com/llvm/llvm-project/pull/90040
Commit: cf49d077fd75278abc405c8c125f40a975c830b4
https://github.com/llvm/llvm-project/commit/cf49d077fd75278abc405c8c125f40a975c830b4
Author: AdityaK <hiraditya at msn.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/GVNSink.cpp
R llvm/test/Transforms/GVNSink/different-gep-types.ll
Log Message:
-----------
Revert "[GVNSink] Fix incorrect codegen with respect to GEPs #85333" (#90658)
Reverts llvm/llvm-project#88440
Test failing on Windows:
https://lab.llvm.org/buildbot/#/builders/233/builds/9396
```
Input file: <stdin>
# | Check file: C:\buildbot\as-builder-8\llvm-nvptx-nvidia-win\llvm-project\llvm\test\Transforms\GVNSink\different-gep-types.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 42: br label %if.end6
# | 43:
# | 44: if.else5: ; preds = %if.else
# | 45: br label %if.end6
# | 46:
# | 47: if.end6: ; preds = %if.else5, %if.then3, %if.then
# | next:67'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | next:67'1 with "IF_THEN" equal to "%if\\.then"
# | next:67'2 with "IF_THEN3" equal to "%if\\.then3"
# | next:67'3 with "IF_ELSE5" equal to "%if\\.else5"
# | 48: %.sink1 = phi i32 [ -8, %if.then3 ], [ -4, %if.else5 ], [ 8, %if.then ]
# | next:67'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:67'4 ? possible intended match
# | 49: %0 = load ptr, ptr %__i, align 4
# | next:67'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 50: %incdec.ptr4 = getelementptr inbounds i8, ptr %0, i32 %.sink1
# | next:67'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 51: store ptr %incdec.ptr4, ptr %__i, align 4
# | next:67'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 52: ret void
# | next:67'0 ~~~~~~~~~~
# | 53: }
# | next:67'0 ~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
```
Commit: 70ada5b178a14363dc6d30fbf531e47d3933a086
https://github.com/llvm/llvm-project/commit/70ada5b178a14363dc6d30fbf531e47d3933a086
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
A llvm/test/CodeGen/PowerPC/peephole-replaceInstr-after-eliminate-extsw.mir
Log Message:
-----------
NFC add a new precommit test case for PPCMIpeephole (#90656)
Add pre-commit MIR test for PR "[Promote Pseudo Opcode from 32-bit to
64-bit after eliminating the extsw instruction in PPCMIPeepholes
optimization](https://github.com/llvm/llvm-project/pull/85451)" which
fixes bug reported in the issue "[Inconsistent Output at -O1 and -O2
Optimization Levels on PowerPC64 Due to Complex Type Casting and Nested
Loop Structure](https://github.com/llvm/llvm-project/issues/71030)".
Commit: 05d04f0a057bc06324c02e00c2c73ee354999dde
https://github.com/llvm/llvm-project/commit/05d04f0a057bc06324c02e00c2c73ee354999dde
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Make RISCVISAInfo::updateMaxELen extension checking more robust. Add inference from V extension. (#90650)
We weren't fully checking that we parsed Zve*x/f/d correctly. This could
break if new extension is added that starts with Zve.
We were assuming the Zve64d is present whenever V is so we only
inferred from Zve*. It's more correct to infer ELEN from V itself too.
Commit: 7538df90aee11603bce5146a3f34c06e9ef3f793
https://github.com/llvm/llvm-project/commit/7538df90aee11603bce5146a3f34c06e9ef3f793
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[llvm][profdata][NFC] Support 64-bit weights in ProfDataUtils (#86607)
Since some places, like SimplifyCFG, work with 64-bit weights, we supply
an API in ProfDataUtils to extract the weights accordingly.
We change the API slightly to disambiguate the 64-bit version from the
32-bit version.
Commit: 2224dce7e490340717adb3bd864f17b5d7da4421
https://github.com/llvm/llvm-project/commit/2224dce7e490340717adb3bd864f17b5d7da4421
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M compiler-rt/lib/dfsan/CMakeLists.txt
Log Message:
-----------
[DFSan] Replace `cat` with `cmake -E cat` (#90557)
`CMake` supports [this
command](https://cmake.org/cmake/help/latest/manual/cmake.1.html#cmdoption-cmake-E-arg-cat)
as of version 3.18. [D151344](https://reviews.llvm.org/D151344) bumped
the minimum version to 3.20, so, it is now possible to remove the
dependency on the external utility. This helps to cross-compile from
Windows to Linux without installing additional tools, such as MSYS2.
Commit: 928db7e7edc5ffeaf92e85610068852ee94b26fb
https://github.com/llvm/llvm-project/commit/928db7e7edc5ffeaf92e85610068852ee94b26fb
Author: Xing Xue <xingxue at outlook.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M openmp/runtime/src/z_Linux_util.cpp
Log Message:
-----------
[OpenMP][AIX] Implement __kmp_is_address_mapped() for AIX (#90516)
This patch implements `__kmp_is_address_mapped()` for AIX by calling
`loadquery()` to get the load info of the process and then checking if
the address falls within the range of the data segment of one of the
loaded modules.
Commit: 75f4baa705829d44c6a0c4f098a1b04763fdfaf8
https://github.com/llvm/llvm-project/commit/75f4baa705829d44c6a0c4f098a1b04763fdfaf8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
A llvm/test/CodeGen/SystemZ/copy-phys-reg-gr128-to-vr128.mir
A llvm/test/CodeGen/SystemZ/copy-phys-reg-vr128-to-gr128.mir
Log Message:
-----------
SystemZ: Implement copyPhysReg between vr128 and gr128 (#90616)
I have no idea if this is correct and I probably swapped the element
ordering somewhere.
Commit: 699243343439285ec2fe61b4ae568c7a958c7ce2
https://github.com/llvm/llvm-project/commit/699243343439285ec2fe61b4ae568c7a958c7ce2
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M clang/www/cxx_status.html
Log Message:
-----------
[Clang][NFC] Fix status colors
Commit: 89519c69d34da603c4e8045d0c6bb5edd03d18f7
https://github.com/llvm/llvm-project/commit/89519c69d34da603c4e8045d0c6bb5edd03d18f7
Author: Paul Kirth <paulkirth at google.com>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/X86/register-fragments-bolt-symbols.s
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/owning-memory.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang/AST/NestedNameSpecifier.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/OpenACCClauses.def
M clang/include/clang/Driver/Options.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/DeclSpec.h
M clang/include/clang/Sema/Lookup.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/Tooling/CommonOptionsParser.h
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/Interp/ByteCodeExprGen.cpp
M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/Opcodes.td
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/DeclSpec.cpp
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/test/AST/HLSL/this-reference-template.hlsl
M clang/test/AST/Interp/cxx23.cpp
M clang/test/AST/Interp/opencl.cl
A clang/test/AST/ast-print-openacc-compute-construct.cpp
M clang/test/Analysis/analyzer-config.c
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
M clang/test/Analysis/std-c-library-functions-arg-weakdeps.c
M clang/test/Analysis/std-c-library-functions-vs-stream-checker.c
M clang/test/Analysis/stream-errno-note.c
M clang/test/Analysis/stream-errno.c
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream-invalidate.c
M clang/test/Analysis/stream-non-posix-function.c
M clang/test/Analysis/stream-noopen.c
M clang/test/Analysis/stream-note.c
M clang/test/Analysis/stream-pedantic.c
M clang/test/Analysis/stream-stdlibraryfunctionargs.c
M clang/test/Analysis/stream.c
M clang/test/Analysis/stream.cpp
A clang/test/CXX/class/class.mem/class.mem.general/p8.cpp
M clang/test/CXX/drs/dr2xx.cpp
M clang/test/CXX/drs/dr3xx.cpp
A clang/test/CXX/except/except.spec/p13-friend.cpp
A clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
M clang/test/CXX/temp/temp.res/temp.local/p3.cpp
A clang/test/CodeGen/LoongArch/tls-dialect.c
M clang/test/CodeGen/arm64-microsoft-arguments.cpp
M clang/test/CodeGen/regparm-flag.c
M clang/test/CodeGenCXX/mangle-ms-vector-types.cpp
M clang/test/CodeGenCXX/mangle.cpp
M clang/test/CodeGenCoroutines/coro-elide-thinlto.cpp
A clang/test/Driver/experimental-late-parse-attributes.c
M clang/test/Driver/fp-model.c
M clang/test/Driver/linux-ld.c
M clang/test/Driver/solaris-ld.c
M clang/test/Driver/tls-dialect.c
M clang/test/Index/annotate-nested-name-specifier.cpp
M clang/test/Misc/target-invalid-cpu-note.c
A clang/test/Modules/force-transitive-changes.cppm
M clang/test/Modules/pr67893.cppm
A clang/test/Modules/pr75057.cppm
A clang/test/Modules/pr90259.cppm
M clang/test/Modules/search-partitions.cpp
M clang/test/Parser/altivec.c
M clang/test/Parser/cxx-altivec.cpp
M clang/test/ParserOpenACC/parse-cache-construct.c
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/wasm-target-features.c
M clang/test/Sema/constant_builtins_vector.cpp
M clang/test/Sema/zvector.c
M clang/test/Sema/zvector2.c
A clang/test/SemaCXX/PR68885.cpp
A clang/test/SemaCXX/identical-type-primary-partial-specialization.cpp
M clang/test/SemaCXX/member-expr.cpp
A clang/test/SemaOpenACC/compute-construct-private-clause.c
A clang/test/SemaOpenACC/compute-construct-private-clause.cpp
A clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
M clang/test/SemaTemplate/instantiate-function-1.cpp
M clang/tools/libclang/CIndex.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/creduce-clang-crash.py
M clang/www/analyzer/alpha_checks.html
M clang/www/analyzer/open_projects.html
M clang/www/cxx_status.html
M compiler-rt/lib/dfsan/CMakeLists.txt
M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CLOptions.inc
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
A flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
M flang/test/Fir/cuf.mlir
M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
A flang/test/Lower/OpenMP/Todo/reduction-array-intrinsic.f90
A flang/test/Transforms/debug-fn-info.f90
M flang/test/Transforms/debug-line-table-inc-file.fir
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/spec/stdc.td
M libc/src/__support/fixed_point/sqrt.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/nearbyintf128.cpp
A libc/src/math/generic/scalbnf128.cpp
A libc/src/math/nearbyintf128.h
A libc/src/math/scalbnf128.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/scalbnf128_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/NearbyIntTest.h
A libc/test/src/math/smoke/nearbyint_test.cpp
A libc/test/src/math/smoke/nearbyintf128_test.cpp
A libc/test/src/math/smoke/nearbyintf_test.cpp
A libc/test/src/math/smoke/nearbyintl_test.cpp
A libc/test/src/math/smoke/scalbnf128_test.cpp
M libc/test/src/stdfix/ISqrtTest.h
M libc/test/src/stdfix/SqrtTest.h
M libc/test/src/stdfix/uksqrtui_test.cpp
M libcxx/docs/Status/Cxx2c.rst
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/__mutex/unique_lock.h
M libcxx/include/__ranges/repeat_view.h
M libcxx/include/mutex
M libcxx/test/libcxx/diagnostics/mutex.nodiscard.verify.cpp
R libcxx/test/libcxx/thread/thread.lock/thread.lock.guard/nodiscard.verify.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.replace.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.replace.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.pass.cpp
M libcxx/test/std/numerics/complex.number/complex.tuple/get.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp
M libcxx/test/std/ranges/range.factories/range.repeat.view/ctad.compile.pass.cpp
M libcxx/test/std/ranges/range.factories/range.repeat.view/views_repeat.pass.cpp
M libcxx/test/std/strings/string.conversions/stol.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
M lld/ELF/OutputSections.cpp
M lld/tools/lld/CMakeLists.txt
M lldb/docs/resources/lldbgdbremote.md
M lldb/docs/use/variable.rst
M lldb/include/lldb/API/SBExpressionOptions.h
M lldb/include/lldb/Expression/Expression.h
M lldb/include/lldb/Expression/LLVMUserExpression.h
M lldb/include/lldb/Expression/UserExpression.h
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/Type.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/StackFrame.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/lldb-private-types.h
M lldb/packages/Python/lldbsuite/test/configuration.py
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/dotest.py
M lldb/packages/Python/lldbsuite/test/dotest_args.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/API/CMakeLists.txt
M lldb/source/API/SBExpressionOptions.cpp
M lldb/source/API/SBFrame.cpp
M lldb/source/Breakpoint/Watchpoint.cpp
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
M lldb/source/Commands/CommandObjectType.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Expression/LLVMUserExpression.cpp
M lldb/source/Expression/UserExpression.cpp
M lldb/source/Expression/UtilityFunction.cpp
M lldb/source/Host/posix/PipePosix.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/Symbol/Type.cpp
M lldb/source/Symbol/TypeSystem.cpp
M lldb/source/Target/Language.cpp
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/Target.cpp
M lldb/test/API/driver/batch_mode/TestBatchMode.py
M lldb/test/API/driver/job_control/TestJobControl.py
M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/Makefile
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/TestCustomSummaryLLVMFormat.py
A lldb/test/API/functionalities/data-formatter/custom-printf-summary/main.c
M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/API/macosx/nslog/TestDarwinNSLogOutput.py
M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py
M lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
M lldb/utils/TableGen/CMakeLists.txt
A lldb/utils/TableGen/LLDBSBAPIDWARFEnum.cpp
M lldb/utils/TableGen/LLDBTableGen.cpp
M lldb/utils/TableGen/LLDBTableGenBackends.h
M lldb/utils/lldb-dotest/lldb-dotest.in
M llvm/docs/GettingInvolved.rst
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/ADT/FoldingSet.h
M llvm/include/llvm/ADT/TypeSwitch.h
M llvm/include/llvm/Analysis/TargetLibraryInfo.def
M llvm/include/llvm/BinaryFormat/ELF.h
R llvm/include/llvm/CodeGen/FreeMachineFunction.h
M llvm/include/llvm/CodeGen/MIRParser/MIRParser.h
A llvm/include/llvm/CodeGen/MachineFunctionAnalysis.h
M llvm/include/llvm/CodeGen/MachineModuleInfo.h
M llvm/include/llvm/CodeGen/MachinePassManager.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/DebugInfo/GSYM/OutputAggregator.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/include/llvm/IR/LLVMContext.h
M llvm/include/llvm/IR/VPIntrinsics.def
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/Support/TypeSize.h
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/BinaryFormat/ELF.cpp
M llvm/lib/CodeGen/CMakeLists.txt
M llvm/lib/CodeGen/DeadMachineInstructionElim.cpp
R llvm/lib/CodeGen/FreeMachineFunction.cpp
M llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
A llvm/lib/CodeGen/MachineFunctionAnalysis.cpp
M llvm/lib/CodeGen/MachineLICM.cpp
M llvm/lib/CodeGen/MachinePassManager.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
M llvm/lib/IR/AttributeImpl.h
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/IntrinsicInst.cpp
M llvm/lib/IR/LLVMContext.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/IR/ProfileSummary.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTOCodeGenerator.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInsertSingleUseVDST.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMPredicates.td
M llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp
M llvm/lib/Target/ARM/ARMRegisterInfo.td
M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
M llvm/lib/Target/LoongArch/LoongArchFrameLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
M llvm/lib/Target/SystemZ/SystemZInstrFP.td
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
M llvm/lib/Target/SystemZ/SystemZInstrVector.td
M llvm/lib/Target/SystemZ/SystemZOperators.td
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/lib/Transforms/Utils/MisExpect.cpp
M llvm/test/Analysis/LoopAccessAnalysis/different-strides-safe-dep-due-to-backedge-taken-count.ll
M llvm/test/CodeGen/AArch64/machine-combiner-subadd2.mir
R llvm/test/CodeGen/AMDGPU/fp_trunc_store_bf16.ll
A llvm/test/CodeGen/AMDGPU/fp_trunc_store_fp32_to_bf16.ll
A llvm/test/CodeGen/AMDGPU/fp_trunc_store_fp64_to_bf16.ll
M llvm/test/CodeGen/AMDGPU/insert-singleuse-vdst.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.msaa.load.ll
A llvm/test/CodeGen/ARM/pacbti-indirect-tail-calls-function-flags.ll
A llvm/test/CodeGen/ARM/pacbti-indirect-tail-calls-module-flags1.ll
A llvm/test/CodeGen/ARM/pacbti-indirect-tail-calls-module-flags2.ll
M llvm/test/CodeGen/LoongArch/tls-models.ll
A llvm/test/CodeGen/PowerPC/peephole-replaceInstr-after-eliminate-extsw.mir
M llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll
M llvm/test/CodeGen/RISCV/rvv/commutable.ll
M llvm/test/CodeGen/RISCV/rvv/copyprop.mir
M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
A llvm/test/CodeGen/RISCV/rvv/pr90559.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
A llvm/test/CodeGen/RISCV/rvv/vp-cttz-elts.ll
M llvm/test/CodeGen/SystemZ/anyregcc.ll
A llvm/test/CodeGen/SystemZ/copy-phys-reg-gr128-to-vr128.mir
A llvm/test/CodeGen/SystemZ/copy-phys-reg-vr128-to-gr128.mir
A llvm/test/CodeGen/SystemZ/foldmem-peep.mir
M llvm/test/CodeGen/SystemZ/fp-add-01.ll
M llvm/test/CodeGen/SystemZ/fp-add-02.ll
M llvm/test/CodeGen/SystemZ/fp-mul-01.ll
M llvm/test/CodeGen/SystemZ/fp-mul-03.ll
M llvm/test/CodeGen/SystemZ/fp-sub-01.ll
M llvm/test/CodeGen/SystemZ/fp-sub-02.ll
A llvm/test/CodeGen/SystemZ/machine-combiner-reassoc-fp.ll
M llvm/test/CodeGen/SystemZ/stackmap.ll
A llvm/test/CodeGen/X86/cmp16.ll
M llvm/test/MC/LoongArch/Macros/macros-la-bad.s
M llvm/test/MC/LoongArch/Macros/macros-la.s
M llvm/test/MC/LoongArch/Misc/tls-symbols.s
M llvm/test/MC/LoongArch/Relocations/relocations.s
A llvm/test/Transforms/GlobalOpt/atexit-dtor.ll
M llvm/test/Transforms/InstCombine/trunc.ll
M llvm/test/tools/llc/new-pm/pipeline.ll
M llvm/test/tools/llc/new-pm/pipeline.mir
M llvm/test/tools/llc/new-pm/start-stop.ll
M llvm/test/tools/llvm-driver/passthrough-lld.test
M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
M llvm/test/tools/lto/discard-value-names.ll
M llvm/tools/llc/NewPMDriver.cpp
M llvm/tools/llvm-driver/CMakeLists.txt
M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
M llvm/unittests/BinaryFormat/CMakeLists.txt
A llvm/unittests/BinaryFormat/ELFTest.cpp
M llvm/unittests/CodeGen/PassManagerTest.cpp
M llvm/unittests/Frontend/OpenMPCompositionTest.cpp
M llvm/unittests/IR/VPIntrinsicTest.cpp
M llvm/unittests/MIR/CMakeLists.txt
R llvm/unittests/MIR/PassBuilderCallbacksTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
M llvm/utils/TableGen/GlobalISelEmitter.cpp
A llvm/utils/gn/secondary/lldb/include/lldb/API/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
M llvm/utils/gn/secondary/lldb/utils/TableGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/BinaryFormat/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/MIR/BUILD.gn
M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/include/mlir/IR/Attributes.h
M mlir/include/mlir/IR/Location.h
M mlir/include/mlir/IR/OperationSupport.h
M mlir/include/mlir/IR/Types.h
M mlir/include/mlir/Tools/PDLL/AST/Nodes.h
M mlir/include/mlir/Tools/PDLL/AST/Types.h
M mlir/include/mlir/Tools/lsp-server-support/Transport.h
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Arith/Utils/CMakeLists.txt
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/SplitReduction.cpp
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorIterator.h
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/PackAndUnpackPatterns.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
M mlir/lib/Tools/PDLL/AST/Types.cpp
M mlir/lib/Tools/PDLL/CodeGen/MLIRGen.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/lib/Tools/lsp-server-support/Transport.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.cpp
M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-empty-tensor-elimination.mlir
M mlir/test/Dialect/LLVMIR/constant-folding.mlir
M mlir/test/Dialect/Linalg/bubble-up-extract-slice-op.mlir
M mlir/test/Dialect/Linalg/collapse-dim.mlir
M mlir/test/Dialect/Linalg/convert-conv2d-to-img2col.mlir
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
M mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
M mlir/test/Dialect/Linalg/flatten-elementwise.mlir
M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir
M mlir/test/Dialect/Linalg/fusion-push-reshape.mlir
M mlir/test/Dialect/Linalg/reshape_control_fusion.mlir
M mlir/test/Dialect/Linalg/reshape_fusion.mlir
M mlir/test/Dialect/Linalg/resolve-shaped-type-result-dims.mlir
A mlir/test/Dialect/Linalg/transform-op-peel-and-vectorize-conv.mlir
M mlir/test/Dialect/Linalg/transform-op-split-reduction.mlir
M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir
M mlir/test/Dialect/MemRef/canonicalize.mlir
M mlir/test/Dialect/MemRef/expand-strided-metadata.mlir
M mlir/test/Dialect/MemRef/fold-memref-alias-ops.mlir
M mlir/test/Dialect/MemRef/invalid.mlir
M mlir/test/Dialect/MemRef/normalize-memrefs-ops.mlir
M mlir/test/Dialect/MemRef/ops.mlir
M mlir/test/Dialect/MemRef/resolve-dim-ops.mlir
M mlir/test/Dialect/MemRef/runtime-verification.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
A mlir/test/Dialect/SparseTensor/sparse_matmul_one.mlir
M mlir/test/Dialect/SparseTensor/sparse_reshape.mlir
M mlir/test/Dialect/Tensor/bufferize.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Tensor/fold-empty-op.mlir
M mlir/test/Dialect/Tensor/fold-reassociative-reshapes.mlir
M mlir/test/Dialect/Tensor/invalid.mlir
M mlir/test/Dialect/Tensor/ops.mlir
M mlir/test/Dialect/Tensor/simplify-pack-unpack.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-expand-tensor.mlir
A mlir/test/Integration/Dialect/SparseTensor/CPU/padded_sparse_conv_2d.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/reshape_dot.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_expand_shape.mlir
M mlir/unittests/Tools/lsp-server-support/Transport.cpp
M openmp/runtime/src/z_Linux_util.cpp
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/driver.bzl
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/ce43650fe06b...89519c69d34d
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