[all-commits] [llvm/llvm-project] 3f8d77: Revert "[AArch64][SVE] Improve code quality of vec...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Tue Jul 23 09:17:02 PDT 2024
Branch: refs/heads/users/MaskRay/spr/arm-create-mapping-symbols-with-non-unique-names
Home: https://github.com/llvm/llvm-project
Commit: 3f8d77bcc7f3c6ada0650d848d76ea9827e78de4
https://github.com/llvm/llvm-project/commit/3f8d77bcc7f3c6ada0650d848d76ea9827e78de4
Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/double_reduct.ll
M llvm/test/CodeGen/AArch64/sve-doublereduct.ll
M llvm/test/CodeGen/AArch64/sve-fixed-vector-zext.ll
M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
R llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
Log Message:
-----------
Revert "[AArch64][SVE] Improve code quality of vector unsigned/signed add reductions. (#97339)"
This reverts commit b7b0071680e60c60da9d4d858f944fd95d76fd42.
The change caused regression in a performance testing.
Commit: fa5971c298c96c965ba6d8fb855867f23518aad4
https://github.com/llvm/llvm-project/commit/fa5971c298c96c965ba6d8fb855867f23518aad4
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
A flang/test/Transforms/debug-92391.fir
Log Message:
-----------
[flang][debug] Generate correct name for external function. (#99510)
The `ExternalNameConversion` will add an _ at the end of the external
functions. We extract the real function name to use in the debug info.
The convention is to use the real name of function in the `name` field
and mangled name with extra _ at the end in the `linkageName` field.
Fixes #92391.
Commit: d221662ed0cc758331ea4277d46f5983ea76f36d
https://github.com/llvm/llvm-project/commit/d221662ed0cc758331ea4277d46f5983ea76f36d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] In emitSelectPseudo, copy call frame size from LastSelectPseudo instead of MI.
The split point is LastSelectPseudo. If MI is earlier, we might
sink it to LastSelectPseudo.
Commit: 0950533cff55478af0eb802c3698ff5a4e94bb73
https://github.com/llvm/llvm-project/commit/0950533cff55478af0eb802c3698ff5a4e94bb73
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Move call to EmitLoweredCascadedSelect above some variable declarations. NFC
These variables aren't used if we call EmitLoweredCascadedSelect
so move the call above them.
Commit: bee2654300a8f524e05dd4cad41411d597246ac0
https://github.com/llvm/llvm-project/commit/bee2654300a8f524e05dd4cad41411d597246ac0
Author: Wei Wang <apollo.mobility at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
A llvm/test/Instrumentation/AddressSanitizer/skip-coro.ll
Log Message:
-----------
[Asan] Skip pre-split coroutine and noop coroutine frame (#99415)
CoroSplit expects the second parameter of `llvm.coro.id` to be the
promise alloca. Applying Asan on a pre-split coroutine breaks this
assumption and causes split to fail. This should be NFC because asan
pass happens late in the pipeline where all coroutines are split. This
is to prevent crash in case the order of passes are switched.
Also `NoopCoro.Frame.Const` is a special coroutine frame that does
nothing when resumed or destroyed. There is no point to do
instrumentation on it.
Commit: 146fd7cd454d71afb94d5d7ad7a3dbd6f3344d04
https://github.com/llvm/llvm-project/commit/146fd7cd454d71afb94d5d7ad7a3dbd6f3344d04
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Linux.cpp
A clang/test/Driver/Inputs/multilib_aarch64_linux_tree/usr/include/aarch64-linux-gnu/.keep
A clang/test/Driver/Inputs/multilib_aarch64_linux_tree/usr/include/aarch64-linux-pauthtest/.keep
A clang/test/Driver/aarch64-multilib-pauthabi.c
M clang/test/Driver/aarch64-ptrauth.c
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/TargetParser/Triple.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
Log Message:
-----------
[PAC][Driver] Support `pauthtest` ABI for AArch64 Linux triples (#97237)
When `pauthtest` is either passed as environment part of AArch64 Linux
triple
or passed via `-mabi=`, enable the following ptrauth flags:
- `intrinsics`;
- `calls`;
- `returns`;
- `auth-traps`;
- `vtable-pointer-address-discrimination`;
- `vtable-pointer-type-discrimination`;
- `init-fini`.
Some related stuff is still subject to change, and the ABI itself might
be changed, so end users are not expected to use this and the ABI name
has 'test' suffix.
If `-mabi=pauthtest` option is used, it's normalized to effective
triple.
When the environment part of the effective triple is `pauthtest`, try
to use `aarch64-linux-pauthtest` as multilib directory.
The following is not supported:
- combination of `pauthtest` ABI with any branch protection scheme
except BTI;
- explicit set of environment part of the triple to a value different
from `pauthtest` in combination with `-mabi=pauthtest`;
- usage on non-Linux OS.
---------
Co-authored-by: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Commit: 511e93b96ee74438cbd643cec63281aff0663933
https://github.com/llvm/llvm-project/commit/511e93b96ee74438cbd643cec63281aff0663933
Author: James Y Knight <jyknight at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/test/Sema/atomic-ops.c
Log Message:
-----------
Handle constant "pointers" for `__atomic_always_lock_free`/`__atomic_is_lock_free`. (#99340)
The second argument passed to these builtins is used to validate whether
the object's alignment is sufficient for atomic operations of the given
size.
Currently, the builtins can be folded at compile time only when the
argument is 0/nullptr, or if the _type_ of the pointer guarantees
appropriate alignment.
This change allows the compiler to also evaluate non-null constant
pointers, which enables callers to check a specified alignment, instead
of only the type or an exact object. E.g.:
`__atomic_is_lock_free(sizeof(T), (void*)4)`
can be potentially evaluated to true at compile time, instead of
generating a libcall. This is also supported by GCC, and used by
libstdc++, and is also useful for libc++'s atomic_ref.
Also helps with (but doesn't fix) issue #75081.
This also fixes a crash bug, when the second argument was a non-pointer
implicitly convertible to a pointer (such as an array, or a function).
Commit: 315561c867784ebd9ca387e94ea6597918e7cc1c
https://github.com/llvm/llvm-project/commit/315561c867784ebd9ca387e94ea6597918e7cc1c
Author: Nicolas van Kempen <nvankemp at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[run-clang-tidy.py] Refactor, add progress indicator, add type hints (#89490)
[There is
work](https://discourse.llvm.org/t/rfc-upgrading-llvms-minimum-required-python-version/67571)
to make Python 3.8 the minimum Python version for LLVM.
I edited this script because I wanted some indicator of progress while
going through files.
It now outputs `[XX/YYY]` with the number of processed and total files
after each completion.
The current version of this script is compatible downto Python 3.6 (this
is PyYAML's minimum version).
It would probably work with older Python 3 versions with an older PyYAML
or when YAML is disabled.
With the updates here, it is compatible downto Python 3.7. Python 3.7
was released June 2018.
https://github.com/llvm/llvm-project/pull/89302 is also touching this
file, I don't mind rebasing on top of that work if needed.
### Summary
- Add type annotations.
- Replace `threading` + `queue` with `asyncio`.
- **Add indicator of processed files over total files**. This is what I
set out to do initially.
- Only print the filename after completion, not the entire Clang-Tidy
invocation command. I find this neater but the behavior can easily be
restored.
Commit: 9d76231fcd3f6ddf9bd6aafe7f143404cad7e4a1
https://github.com/llvm/llvm-project/commit/9d76231fcd3f6ddf9bd6aafe7f143404cad7e4a1
Author: matthew-f <matthewf at cat.co.za>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
Log Message:
-----------
[clang-tidy] Ensure functions are anchored in the global namespace (for cert-err-33) (#99380)
The regular expressions match functions that aren't anchored in the
global namespace. For example `::remove` matches any object with a
`removeXyz` method. This change is to remove these false positives
Commit: 9374216d4b2c408a4537bdb6af05f1bc1e5e562b
https://github.com/llvm/llvm-project/commit/9374216d4b2c408a4537bdb6af05f1bc1e5e562b
Author: dyung <douglas.yung at sony.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M cross-project-tests/lit.cfg.py
Log Message:
-----------
Replace distutils.version with packaging.version since the former was deprecated in python 3.10 and removed in 3.12. (#99852)
Attempt to reland #99549, but using packaging.version instead of
looseversion, based on the usage used for LLDB in #93712.
Commit: 0eb719fef57e560179cdeff02130638537970c24
https://github.com/llvm/llvm-project/commit/0eb719fef57e560179cdeff02130638537970c24
Author: Jessica Del <50999226+OutOfCache at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
Log Message:
-----------
[AMDGPU] Fix build failure in raw.atomic.buffer.load tests (#99912)
This fixes the failing tests after rebasing
over the attributor move.
Commit: 735974e550dae84b40bad06cbe8cf5f22d318896
https://github.com/llvm/llvm-project/commit/735974e550dae84b40bad06cbe8cf5f22d318896
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/lib/builtins/fp_extend.h
M compiler-rt/lib/builtins/fp_lib.h
Log Message:
-----------
[builtins] Use __builtin_clzll for 64-bit types (#99874)
This addresses the issue with `__LP64__` not being defined for targets
with 32-bit pointers but 64-bit longs, resulting in worse codegen.
Commit: 2ef12b55b2a655262b03204581076522261d5eb3
https://github.com/llvm/llvm-project/commit/2ef12b55b2a655262b03204581076522261d5eb3
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/unittests/Tooling/RecursiveASTVisitorTests/DeductionGuide.cpp
Log Message:
-----------
[clang] Fix the broken DeductionGuide ToolingTests after c7bfc41860a6abe5c92dc5afb47348b0c9e69963
Commit: bb8a74075b164ea0d9b3155f64d0590fc6072cdd
https://github.com/llvm/llvm-project/commit/bb8a74075b164ea0d9b3155f64d0590fc6072cdd
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
Log Message:
-----------
[lldb] Change GetStartSymbol to GetStartAddress in DynamicLoader (#99909)
On linux, the start address doesn't necessarily have a symbol attached
to it.
This is why this patch replaces `DynamicLoader::GetStartSymbol` with
`DynamicLoader::GetStartAddress` instead to make it more generic.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 52dd4dbb1ad30ed057c532148cc95f34efe34aa0
https://github.com/llvm/llvm-project/commit/52dd4dbb1ad30ed057c532148cc95f34efe34aa0
Author: Hana Dusíková <hanicka at hanicka.net>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
Log Message:
-----------
[clang-tidy] `bugprone-exception-escape` didn't detech catching of an exception with pointer type by `void *` exception handler (#99773)
As in title, code which checks eligibility of exceptions with pointer
types to be handled by exception handler of type `void *` disallowed
this case. It was working like this:
```c++
if (isStandardPointerConvertible(ExceptionCanTy, HandlerCanTy) &&
isUnambiguousPublicBaseClass(
ExceptionCanTy->getTypePtr()->getPointeeType().getTypePtr(),
HandlerCanTy->getTypePtr()->getPointeeType().getTypePtr())) {
```
but in `isUnambiguousPublicBaseClass` there was code which looked for
definitions:
```c++
bool isUnambiguousPublicBaseClass(const Type *DerivedType,
const Type *BaseType) {
const auto *DerivedClass =
DerivedType->getCanonicalTypeUnqualified()->getAsCXXRecordDecl();
const auto *BaseClass =
BaseType->getCanonicalTypeUnqualified()->getAsCXXRecordDecl();
if (!DerivedClass || !BaseClass)
return false;
```
This code disallowed usage of `void *` type which was already correctly
detected in `isStandardPointerConvertible`.
AFAIK this seems like misinterpretation of specification:
> 14.4 Handling an exception
> a standard [pointer conversion](https://eel.is/c++draft/conv.ptr) not
involving conversions to pointers to private or protected or ambiguous
classes
(https://eel.is/c++draft/except.handle#3.3.1)
and
> 7.3.12 Pointer conversions
> ... If B is an inaccessible
([[class.access]](https://eel.is/c++draft/class.access)) or ambiguous
([[class.member.lookup]](https://eel.is/c++draft/class.member.lookup))
base class of D, a program that necessitates this conversion is
ill-formed[.](https://eel.is/c++draft/conv.ptr#3.sentence-2) ...
(https://eel.is/c++draft/conv.ptr#3)
14.4 is carving out private, protected, and ambiguous base classes, but
they are already carved out in 7.3.12 and implemented in
`isStandardPointerConvertible`
---------
Co-authored-by: Piotr Zegar <me at piotrzegar.pl>
Commit: 50c4e0392a42d1203fc17339c86216d7c378b21f
https://github.com/llvm/llvm-project/commit/50c4e0392a42d1203fc17339c86216d7c378b21f
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/unittests/Tooling/CMakeLists.txt
Log Message:
-----------
[clang][test] Add missing test file to cmake (#99907)
Seems like this test was never running with cmake, but is running with
bazel and broke at head.
Commit: d6e17d70969722a3a2ecf6690a7fddcaca2ea14f
https://github.com/llvm/llvm-project/commit/d6e17d70969722a3a2ecf6690a7fddcaca2ea14f
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/Tooling/BUILD.gn
Log Message:
-----------
[gn build] Port 50c4e0392a42
Commit: 3b24e5d450c01080610e3cbf79727b454cad0d32
https://github.com/llvm/llvm-project/commit/3b24e5d450c01080610e3cbf79727b454cad0d32
Author: Edd Dawson <edd.dawson at sony.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/test/DebugInfo/omit-empty.ll
Log Message:
-----------
Omit .debug_aranges if it is empty (#99897)
SIE tracker: https://jira.sie.sony.com/browse/TOOLCHAIN-16575
Commit: a6341718967a708149159e8583549fa15198f902
https://github.com/llvm/llvm-project/commit/a6341718967a708149159e8583549fa15198f902
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
Log Message:
-----------
[InstrPGO][TypeProf]Annotate vtable types when they are present in the profile (#99402)
Before this change, when `file.profdata` have vtable profiles but `--enable-vtable-value-profiling` is not on for optimized build, warnings from this line [1] will show up. They are benign for performance but confusing.
It's better to automatically annotate vtable profiles if `file.profdata` has them. This PR implements it in profile use pass.
* If `-icp-max-num-vtables` is zero (default value is 6), vtable profiles won't be annotated.
[1] https://github.com/llvm/llvm-project/blob/464d321ee8dde1eaf14b5537eaf030e6df513849/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp#L1762-L1768
Commit: da2f7201f3a24c2eb3120960eeae0ab6bcd5cfa2
https://github.com/llvm/llvm-project/commit/da2f7201f3a24c2eb3120960eeae0ab6bcd5cfa2
Author: Petr Hosek <phosek at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
Log Message:
-----------
[libc] Include cbrt in baremetal targets (#99916)
This is a follow up to #99262.
Commit: 04d5003f59c1ef10a036d2158f1aa61de506e707
https://github.com/llvm/llvm-project/commit/04d5003f59c1ef10a036d2158f1aa61de506e707
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/add_new_check.py
M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.Move.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/optin.taint.TaintedAlloc.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.BlockInCriticalSection.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
Log Message:
-----------
[clang-tidy][DOC] Update check documentation
Fix issues in list.rst, addapt add_new_check.py to new
format of that file, and run gen-static-analyzer-docs.py
to generate missing documentation for clang-analyzer.
Commit: bdee9b05ded9c5b90556f3a8b22f75e204e54a46
https://github.com/llvm/llvm-project/commit/bdee9b05ded9c5b90556f3a8b22f75e204e54a46
Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
Revert "[BOLT][DWARF][NFC] Split processUnitDIE into two lambdas" (#99904)
Reverts llvm/llvm-project#99225
Commit: e6fdecd29059c0951a4970e9e6cf478972844099
https://github.com/llvm/llvm-project/commit/e6fdecd29059c0951a4970e9e6cf478972844099
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Drop references to Ingredient from VPWidenRecipe comments (NFC)
VPWidenRecipe has been updated to use Opcode + operands instead of an
Instruction 'ingredient'. Reword the comments.
Commit: e09032f7a36ffb5eb8638a3933aeca7015a9579a
https://github.com/llvm/llvm-project/commit/e09032f7a36ffb5eb8638a3933aeca7015a9579a
Author: David Green <david.green at arm.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
Log Message:
-----------
[StackFrameLayoutAnalysis] Add basic Scalable stack slot output (#99883)
The existing StackFrameLayoutAnalysis details do not do well with
Scalable vector stack slots, which are not marked as scalable and
intertwined with the other fixed-size slots. This patch adds some very
basic support, marking them as scalable and sorting them to the end of
the list. The slot addresses are not really correct (for fixed as well
as scalable), but this prints something a little better with the limited
information curently available.
Commit: 9a8b0407fc16af4ca6f79a2583297318a645d88a
https://github.com/llvm/llvm-project/commit/9a8b0407fc16af4ca6f79a2583297318a645d88a
Author: Daniel Bertalan <dani at danielbertalan.dev>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M lld/MachO/Driver.cpp
M lld/docs/ReleaseNotes.rst
M lld/test/MachO/arm64-32-stubs.s
M lld/test/MachO/arm64-stubs.s
M lld/test/MachO/dyld-stub-binder.s
M lld/test/MachO/invalid/chained-fixups-incompatible.s
M lld/test/MachO/objc-selrefs.s
Log Message:
-----------
Reapply "[lld] enable fixup chains by default (#79894)" (#99255)
This reverts commit f55b79f59a77b4be586d649e9ced9f8667265011.
The known issues with chained fixups have been addressed by #98913,
#98305, #97156 and #95171.
Compared to the original commit, support for xrOS (which postdates
chained fixups' introduction) was added and an unnecessary test change
was removed.
----------
Original commit message:
Enable chained fixups in lld when all platform and version criteria are
met. This is an attempt at simplifying the logic used in ld 907:
https://github.com/apple-oss-distributions/ld64/blob/93d74eafc37c0558b4ffb88a8bc15c17bed44a20/src/ld/Options.cpp#L5458-L5549
Some changes were made to simplify the logic:
- only enable chained fixups for macOS from 13.0 to avoid the arch check
- only enable chained fixups for iphonesimulator from 16.0 to avoid the
arch check
- don't enable chained fixups for not specifically listed platforms
- don't enable chained fixups for arm64_32
Commit: 3cb82f49dc990dc20a765856c0e126193992fe44
https://github.com/llvm/llvm-project/commit/3cb82f49dc990dc20a765856c0e126193992fe44
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/SystemZ/cmp-ptr-minmax.ll
Log Message:
-----------
[SLP]Fix PR99899: Use canonical type instead of original vector of ptr.
Use adjusted canonical integer type instead of the original ptr type to
fix the crash in the TTI.
Fixes https://github.com/llvm/llvm-project/issues/99899
Commit: 8972979c37b7368735a0b224d5212c29041dcd5c
https://github.com/llvm/llvm-project/commit/8972979c37b7368735a0b224d5212c29041dcd5c
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/docs/dev/header_generation.rst
Log Message:
-----------
[libc] Updated header_generation.rst (#99712)
Added new headergen documentation.
Commit: d2f42c737234662d1bdc2f2e393e1b59536f8a93
https://github.com/llvm/llvm-project/commit/d2f42c737234662d1bdc2f2e393e1b59536f8a93
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M mlir/unittests/IR/ShapedTypeTest.cpp
Log Message:
-----------
[mlir] Add unit test for RankedTensorType wrapper example. (#99789)
Add example as unit test for creating a wrapper type/view for
RankedTensorType with encoding. This view provides a more restricted &
typed API while it allows one to avoid repeated casting queries and
accessing the encoding directly.
For users with more advance encodings, the expectation would be a
separate attribute type, but here just StringAttr is used.
Commit: 6777c3400708abbd607e7c167f73922eb0d807dc
https://github.com/llvm/llvm-project/commit/6777c3400708abbd607e7c167f73922eb0d807dc
Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/docs/DirectX/DXILOpTableGenDesign.rst
Log Message:
-----------
[DXIL][Doc] Update specification of TableGen DXIL properties (#99055)
Update the specification of various DXIL Operation properties that
are predicated by DXIL version.
Commit: aac3a2a291598f3aef01833927fa754c53849cdf
https://github.com/llvm/llvm-project/commit/aac3a2a291598f3aef01833927fa754c53849cdf
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/at_quick_exit.cpp
M libc/src/stdlib/atexit.cpp
R libc/src/stdlib/exit_handler.cpp
M libc/src/stdlib/exit_handler.h
Log Message:
-----------
[libc] Fix callback type in `exit_handlers.cpp` not matching (#97642)
Summary:
This file is an object library, but uses the `LIBC_COPT_PUBLIC_PACKAING`
option. This will always be undefined which leads to a type mismatch
when uses actually try to link against it. This patch simply removes
this and turns it into a header only library. This means that the
implementations of the callback lists and the mutexes need to live in
their respective files. The result is that `atexit` needs to be defined
for `at_quick_exit` to be valid.
Commit: b177ac4a44ec4024fec6927f4870ee96e9070696
https://github.com/llvm/llvm-project/commit/b177ac4a44ec4024fec6927f4870ee96e9070696
Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan.h
M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
Log Message:
-----------
[compiler-rt][rtsan] Use sanitizer internal allocator during rtsan init to avoid segfault in dlsym (#98679)
Follows https://github.com/llvm/llvm-project/pull/98268 with a fix for a
segfault during preinit on `ubuntu:20.04` environments. Previously,
`rtsan` was not handling the situation where `dlsym` calls `calloc`
during the interceptors initialization, resulting in a call to a
function at a null address.
@cjappl and I took inspiration from the solution in `nsan`, but we
re-used the sanitizer internal allocator instead of our own static
buffer. This PR also re-enables the existing non-instrumented `rtsan`
tests for `x86_64` and `arm64` architectures.
---------
Co-authored-by: Chris Apple <cja-private at pm.me>
Commit: b8461769507d5b4a8c90d3722830b802d948e8b5
https://github.com/llvm/llvm-project/commit/b8461769507d5b4a8c90d3722830b802d948e8b5
Author: Chris Apple <cja-private at pm.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/rtsan/tests/CMakeLists.txt
M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
Log Message:
-----------
[compiler-rt] Moved cmake libatomic check to top level config-ix (#99437)
Also add atomic check to rtsan for when the tests are merged (related
review #98679)
Commit: d48d4805f792adbdac58d480f890449def4964ea
https://github.com/llvm/llvm-project/commit/d48d4805f792adbdac58d480f890449def4964ea
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
Log Message:
-----------
[clang-tidy][NFC] Fix tiny bug in areStatementsIdentical
Function areStatementsIdentical had an early exit
when classes of stmt does not match. That if were
added to speed up checking and do not calculate
hash id of both objects if they are not the same
type. Due to some bug, wrong pointer were used
and this resulted with comparing self to self.
This patch fixes this issue.
Commit: 25897ba420b93449542a60ffc9542e62b7480807
https://github.com/llvm/llvm-project/commit/25897ba420b93449542a60ffc9542e62b7480807
Author: xur-llvm <59886942+xur-llvm at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/include/profile/InstrProfData.inc
Log Message:
-----------
[PGO] Sync InstrProfData.inc from llvm to compiler-rt (#99930)
Sync InstrProfData.inc from llvm to compiler-rt. The difference was
introduced from https://github.com/llvm/llvm-project/pull/69535.
Commit: ae96bde89f0097c6259bde8fe23ffb7b684e198e
https://github.com/llvm/llvm-project/commit/ae96bde89f0097c6259bde8fe23ffb7b684e198e
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[github][mlir] Add kuhar to code owners for vector IR (#99955)
This is so that I can track vector dialect changes and pay attention to
the maintenance required on the SPIR-V lowering side.
Commit: 93eb9ec368817e63e2e8a2ef567bc23211acb776
https://github.com/llvm/llvm-project/commit/93eb9ec368817e63e2e8a2ef567bc23211acb776
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
[libc] New HeaderGen Switch Flip (#99929)
Flipped option from OFF to ON for automatically building libc with New
HeaderGen.
Commit: 9da087147a6be2053365e3bb30f0864456efaea0
https://github.com/llvm/llvm-project/commit/9da087147a6be2053365e3bb30f0864456efaea0
Author: Michael Jones <michaelrj at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/src/__support/threads/thread.h
M libc/src/math/generic/expm1.cpp
Log Message:
-----------
[libc][NFC] clean up some includes (#99719)
While looking through the list of includes for #99693 I found these
includes that also need to be cleaned up. I removed the extra includes
in expm1.cpp, but the include in thread.h needs more attention so I just
marked it with a todo.
Commit: 1efcc532bab505db079bd3becffe32f742287c71
https://github.com/llvm/llvm-project/commit/1efcc532bab505db079bd3becffe32f742287c71
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/warn-fsyntax-only.c
Log Message:
-----------
[Clang][Driver] Warn about `-c/-S` with `-fsyntax-only` (#98607)
Emit warning that `-S` and/or `-c` arguments are not used if
`-fsyntax-only` is also passed to clang
`addPGOAndCoverageFlags` is not the right place
to produce this warning
Now `-fsyntax-only -c/-S` combination handles like `-fsyntax-only -E` in
`BuildJobs()` driver function
Commit: b2060965fd57ff71b52729985abfe4ea1929a4fd
https://github.com/llvm/llvm-project/commit/b2060965fd57ff71b52729985abfe4ea1929a4fd
Author: Chris Apple <cja-private at pm.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
[rtsan] Remove android support (#99964)
Based on failing build:
https://lab.llvm.org/buildbot/#/builders/186/builds/829
Follow up to #98679
Commit: d6ad4c2834a0ed679f19536a49628c4ff76fe8d0
https://github.com/llvm/llvm-project/commit/d6ad4c2834a0ed679f19536a49628c4ff76fe8d0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Log Message:
-----------
[GlobalISel] Reorder code in CombinerHelper::buildUDivUsingMul. NFC (#99565)
Group the code for handling Exact udiv together above the code for
non-Exact. Move the computeKnownBits call to after the Exact udiv
handling.
Commit: a1359f5ed446a2a6c5f87bfa938448b1016f9b12
https://github.com/llvm/llvm-project/commit/a1359f5ed446a2a6c5f87bfa938448b1016f9b12
Author: Ryan Prichard <rprichard at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libcxx/utils/ci/vendor/android/Dockerfile.emulator
M libcxx/utils/ci/vendor/android/emulator-entrypoint.sh
Log Message:
-----------
[libc++][Android] Pass -no-metrics to emulator (#99627)
The Android Emulator has started printing this message, so pass the
`-no-metrics` option:
```
##############################################################################
## WARNING - ACTION REQUIRED ##
## Consider using the '-metrics-collection' flag to help improve the ##
## emulator by sending anonymized usage data. Or use the '-no-metrics' ##
## flag to bypass this warning and turn off the metrics collection. ##
## In a future release this warning will turn into a one-time blocking ##
## prompt to ask for explicit user input regarding metrics collection. ##
## ##
## Please see '-help-metrics-collection' for more details. You can use ##
## '-metrics-to-file' or '-metrics-to-console' flags to see what type of ##
## data is being collected by emulator as part of usage statistics. ##
##############################################################################
```
Commit: 173514ff129620364ac0ed61027e81194d997d76
https://github.com/llvm/llvm-project/commit/173514ff129620364ac0ed61027e81194d997d76
Author: Michael Jones <michaelrj at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
Log Message:
-----------
[libc] Disable epoll_pwait2 for now. (#99967)
This patch reverts #99781 and part of #99771 since `epoll_pwait2` is not
in fact available on all supported systems. It is my opinion that we
shouldn't provide a version of a function that doesn't perform as
expected, which is why this revert needs to happen.
The `epoll_pwait2` function can be reenabled when we have a way to check
if it is available on the target system, tracking bug for that is #80060
Commit: 7467f41a7d4bc2e305fb368c591790936ad5ef33
https://github.com/llvm/llvm-project/commit/7467f41a7d4bc2e305fb368c591790936ad5ef33
Author: vporpo <vporpodas at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/include/llvm/SandboxIR/SandboxIRValues.def
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement ReturnInst (#99784)
This patch adds the implementation of the SandboxIR ReturnInst which
mirrors llvm::ReturnInst.
Commit: db1d88137212fec6c884dcb0f76a8dfab4fcab98
https://github.com/llvm/llvm-project/commit/db1d88137212fec6c884dcb0f76a8dfab4fcab98
Author: Angel Zhang <angel.zhang at amd.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
Log Message:
-----------
[mlir][spirv] Fix bug for `vector.broadcast` op in `convert-vector-to-spirv` pass (#99928)
This PR addresses
[!17976](https://github.com/iree-org/iree/issues/17976) by using
converted `resultType` instead of the original result type obtained from
`castOp.getResultVectorType`. A new LIT test is also included.
Commit: 70c52b62c5669993e341664a63bfbe5245e32884
https://github.com/llvm/llvm-project/commit/70c52b62c5669993e341664a63bfbe5245e32884
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCELFObjectWriter.h
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
Log Message:
-----------
[MC] Export llvm::ELFObjectWriter
Similar to commit 28fcafb50274be2520117eacb0a886adafefe59d (2011) for
MachObjectWriter and commit 9539a7796094ff5fb59d9c685140ea2e214b945c for
WinCOFFObjectWriter.
MCELFStreamer can now access ELFObjectWriter directly without adding
ELF-specific markGnuAbi (https://reviews.llvm.org/D97976) and
setOverrideABIVersion to MCObjectWriter.
A few member variables have to be made public since we cannot use a
friend declaration for ELFWriter.
Commit: 40954d7f9bb38b2407fe48a524befc5216f13ccc
https://github.com/llvm/llvm-project/commit/40954d7f9bb38b2407fe48a524befc5216f13ccc
Author: Haowei <haowei at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/cmake/caches/Fuchsia-stage2.cmake
Log Message:
-----------
[Fuchsia] Disable new hdrgen in Fuchsia toolchain build (#100001)
We are seeing a PyYaml issue after the new libc_hdrgen was enabled by
default. This patch disables it in Fuchsia toolchain build so we restore
the builder while we are investigating.
Commit: 37d0568a6593adfe791c1327d99731050540e97a
https://github.com/llvm/llvm-project/commit/37d0568a6593adfe791c1327d99731050540e97a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
A clang/docs/ClangNVLinkWrapper.rst
M clang/docs/index.rst
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
M clang/test/Driver/cuda-cross-compiling.c
A clang/test/Driver/nvlink-wrapper.c
M clang/test/lit.cfg.py
M clang/tools/CMakeLists.txt
A clang/tools/clang-nvlink-wrapper/CMakeLists.txt
A clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
A clang/tools/clang-nvlink-wrapper/NVLinkOpts.td
Log Message:
-----------
[Clang] Introduce 'clang-nvlink-wrapper' to work around 'nvlink' (#96561)
Summary:
The `clang-nvlink-wrapper` is a utility that I removed awhile back
during the transition to the new driver. This patch adds back in a new,
upgraded version that does LTO + archive linking. It's not an easy
choice to reintroduce something I happily deleted, but this is the only
way to move forward with improving GPU support in LLVM.
While NVIDIA provides a linker called 'nvlink', its main interface is
very difficult to work with. It does not provide LTO, or static linking,
requires all files to be named a non-standard `.cubin`, and rejects link
jobs that other linkers would be fine with (i.e empty). I have spent a
great deal of time hacking around this in the GPU `libc` implementation,
where I deliberately avoid LTO and static linking and have about 100
lines of hacky CMake dedicated to storing these files in a format that
the clang-linker-wrapper accepts to avoid this limitation.
The main reason I want to re-intorudce this tool is because I am
planning on creating a more standard C/C++ toolchain for GPUs to use.
This will install files like the following.
```
<install>/lib/nvptx64-nvidia-cuda/libc.a
<install>/lib/nvptx64-nvidia-cuda/libc++.a
<install>/lib/nvptx64-nvidia-cuda/libomp.a
<install>/lib/clang/19/lib/nvptx64-nvidia-cuda/libclang_rt.builtins.a
```
Linking in these libraries will then simply require passing `-lc` like
is already done for non-GPU toolchains. However, this doesn't work with
the currently deficient `nvlink` linker, so I consider this a blocking
issue to massively improving the state of building GPU libraries.
In the future we may be able to convince NVIDIA to port their linker to
`ld.lld`, but for now this is the only workable solution that allows us
to hack around the weird behavior of their closed-source software.
This also copies some amount of logic from the clang-linker-wrapper,
but not enough for it to be worthwhile to merge them I feel. In the
future it may be possible to delete that handling from there entirely.
Commit: e391ba07fabd3990edb9be9f3d715abba7e43343
https://github.com/llvm/llvm-project/commit/e391ba07fabd3990edb9be9f3d715abba7e43343
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
Log Message:
-----------
[Clang] Fix incorrect value assignment in nvlink wrapper
Summary:
Gah, forgot to push this before I merged.
Commit: ab1722aaabb454111d65cce60cdb8735631d5114
https://github.com/llvm/llvm-project/commit/ab1722aaabb454111d65cce60cdb8735631d5114
Author: Brad Smith <brad at comstyle.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Basic/Targets/X86.h
Log Message:
-----------
[Clang] Remove NetBSD/i386 workaround for FP eval method with older versions (#74025)
NetBSD 6.x is long EoL. Make 7.x the minimum and even that is EoL.
Commit: d4da96d6b1d5d8128fc57c8148785144c7b96705
https://github.com/llvm/llvm-project/commit/d4da96d6b1d5d8128fc57c8148785144c7b96705
Author: RoseZhang03 <rosezhang at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/CMakeLists.txt
Log Message:
-----------
Revert "[libc] New HeaderGen Switch Flip" (#100003)
Reverts llvm/llvm-project#99929
Commit: b6dbda67d8f687350de66e68a7fd61433fac7107
https://github.com/llvm/llvm-project/commit/b6dbda67d8f687350de66e68a7fd61433fac7107
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/Frontend/CompilerInvocation.cpp
A clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
Log Message:
-----------
[clang] Implement type/address discrimination of type_info vtable. (#99726)
We want to be able to support full type and address discrimination of
type_info on targets that don't have existing ABI compatibility
constraints.
This patch does not enable such behavior on any platform, it just adds
the necessary machinery.
In clang we add a new commandline argument to control the type_info
vtable ABI:
-fptrauth-type-info-vtable-pointer-discrimination
and a feature flag to allow source level detection of the ABI:
__has_feature(ptrauth_type_info_vtable_pointer_discrimination)
Co-authored-by: Oliver Hunt <oliver at apple.com>
Commit: 3d494bfc7ff73cb0a8dbe16ac41db6f47910eef1
https://github.com/llvm/llvm-project/commit/3d494bfc7ff73cb0a8dbe16ac41db6f47910eef1
Author: Tianqing Wang <tianqing.wang at intel.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Transforms/Utils/SimplifyCFGOptions.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Other/new-pm-print-pipeline.ll
A llvm/test/Transforms/SimplifyCFG/two-entry-phi-fold-unpredictable.ll
Log Message:
-----------
[SimplifyCFG] Increase budget for FoldTwoEntryPHINode() if the branch is unpredictable. (#98495)
The `!unpredictable` metadata has been present for a long time, but
it's usage in optimizations is still limited. This patch teaches
`FoldTwoEntryPHINode()` to be more aggressive with an unpredictable
branch to reduce mispredictions.
A TTI interface `getBranchMispredictPenalty()` is added to distinguish
between different hardwares to ensure we don't go too far for simpler
cores. For simplicity, only a naive x86 implementation is included for
the time being.
Commit: 023c6454971dc33e409ce9a1035b20bd0ff893f2
https://github.com/llvm/llvm-project/commit/023c6454971dc33e409ce9a1035b20bd0ff893f2
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/include/llvm/MC/MCXCOFFObjectWriter.h
M llvm/lib/MC/MCXCOFFStreamer.cpp
M llvm/lib/MC/XCOFFObjectWriter.cpp
Log Message:
-----------
MCObjectWriter: Remove XCOFF specific virtual functions
Add forwarders for now. XCOFFObjectWriter should eventually be exported
like Mach-O/COFF/ELF (commit 70c52b62c5669993e341664a63bfbe5245e32884).
Commit: 03936534b520ba28be37de7e24c59ba28d0c10d7
https://github.com/llvm/llvm-project/commit/03936534b520ba28be37de7e24c59ba28d0c10d7
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
Log Message:
-----------
[AMDGPU] Protect against null entries in ValMap
Change-Id: Icbda7c3fecf38679d06006986e5e17cb1f1b8749
Commit: 41f6599ae1d4afa7e0bdca01dd3da1783ce4a56d
https://github.com/llvm/llvm-project/commit/41f6599ae1d4afa7e0bdca01dd3da1783ce4a56d
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M offload/DeviceRTL/src/Parallelism.cpp
Log Message:
-----------
[NFC][Offload] Move variables to where they are used (#99956)
Commit: 624d3221d1159bff98964d77c1b76e04a367d9d4
https://github.com/llvm/llvm-project/commit/624d3221d1159bff98964d77c1b76e04a367d9d4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/test/CMakeLists.txt
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
Log Message:
-----------
[Clang] Fix 'clang-nvlink-wrapper' not working w/o CUDA
Summary:
This would try to find `nvlink` and then fail even in `dry-run` mode.
We now just let it continue and pretend like we found it. Also add it to
the depends.
Commit: ba0744ed2cdf82e862a2dba7070aa30b6b412354
https://github.com/llvm/llvm-project/commit/ba0744ed2cdf82e862a2dba7070aa30b6b412354
Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/newhdrgen/yaml_to_classes.py
Log Message:
-----------
[libc][newheadergen]: yaml.load instead of safe_load (#100024)
Co-authored-by: Rose Zhang <rosezhang at google.com>
Commit: 9147147b5c191c22a740f8e596e62a6de1fc4f70
https://github.com/llvm/llvm-project/commit/9147147b5c191c22a740f8e596e62a6de1fc4f70
Author: Qiongsi Wu <274595+qiongsiwu at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Driver/Options.td
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/include/clang/Parse/Parser.h
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Parse/ParsePragma.cpp
A clang/test/Preprocessor/pragma_mc_func.c
Log Message:
-----------
[AIX] Detect `#pragma mc_func` (#99888)
`#pragma mc_func` is an IBM XL feature that should be replaced by inline
assembly. This PR adds an option `-ferr-pragma-mc-func-aix` to detect
uses of `#pragma mc_func` and reports an error if the option is in
effect. If `-fno-err-pragma-mc-func-aix` is in effect, `#pragma mc_func`
is ignored even if `-Werror=unknown-pragmas` is in effect.
Commit: ad6685b252b9a6feb830ee3b9cc7f121a01292ba
https://github.com/llvm/llvm-project/commit/ad6685b252b9a6feb830ee3b9cc7f121a01292ba
Author: Greg Roth <grroth at microsoft.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/docs/HLSL/AvailabilityDiagnostics.rst
M clang/docs/HLSL/ExpectedDifferences.rst
Log Message:
-----------
Correct confusing headers in HLSLDocs (#100017)
AvailabilityDiagnostics.rst and ExpectedDifferences.rst both had
multiple headers that were perceived to be the "top-level".
In AvailabilityDiagnostics.rst two headers had both over and underlines.
The second was the "Examples" section so it showed up in the top level
HLSL docs. The overline is removed here so it's clear it's a subheader.
In ExpectedDifferences.rst, the first header had no overline, so a few
headers that looked the same were included. The overline is added to the
top header to make clear that it's the main header.
Commit: f540160e9ce7235cdda0d8f3ea324d7eb2a5b534
https://github.com/llvm/llvm-project/commit/f540160e9ce7235cdda0d8f3ea324d7eb2a5b534
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/tools/clang-nvlink-wrapper/CMakeLists.txt
Log Message:
-----------
[libc] Remove leftover debugging in `clang-nvlink-wrapper`
Summary:
This was accidentally left in.
Commit: c473e75adeaf2998e4fb444b0bdbf2dd19312e50
https://github.com/llvm/llvm-project/commit/c473e75adeaf2998e4fb444b0bdbf2dd19312e50
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCELFObjectWriter.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFStreamer.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFStreamer.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
Log Message:
-----------
MCAssmembler: Move ELFHeaderEFlags to ELFObjectWriter
Now that MCELFStreamer can access ELFObjectWriter (commit
70c52b62c5669993e341664a63bfbe5245e32884), we can move ELFHeaderEFlags
there.
Commit: d3fb41dddc11b0ebc338a3b9e6a5ab7288ff7d1d
https://github.com/llvm/llvm-project/commit/d3fb41dddc11b0ebc338a3b9e6a5ab7288ff7d1d
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
A llvm/include/llvm/CodeGenData/CodeGenData.h
A llvm/include/llvm/CodeGenData/CodeGenData.inc
A llvm/include/llvm/CodeGenData/CodeGenDataReader.h
A llvm/include/llvm/CodeGenData/CodeGenDataWriter.h
M llvm/lib/CodeGenData/CMakeLists.txt
A llvm/lib/CodeGenData/CodeGenData.cpp
A llvm/lib/CodeGenData/CodeGenDataReader.cpp
A llvm/lib/CodeGenData/CodeGenDataWriter.cpp
M llvm/test/CMakeLists.txt
M llvm/test/lit.cfg.py
A llvm/test/tools/llvm-cgdata/dump.test
A llvm/test/tools/llvm-cgdata/empty.test
A llvm/test/tools/llvm-cgdata/error.test
A llvm/test/tools/llvm-cgdata/merge-archive.test
A llvm/test/tools/llvm-cgdata/merge-concat.test
A llvm/test/tools/llvm-cgdata/merge-double.test
A llvm/test/tools/llvm-cgdata/merge-single.test
A llvm/test/tools/llvm-cgdata/show.test
A llvm/tools/llvm-cgdata/CMakeLists.txt
A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
Log Message:
-----------
[CGData] llvm-cgdata (#89884)
The llvm-cgdata tool has been introduced to handle reading and writing
of codegen data. This data includes an optimistic codegen summary that
can be utilized to enhance subsequent codegen. Currently, the tool
supports saving and restoring the outlined hash tree, facilitating
machine function outlining across modules. Additional codegen summaries
can be incorporated into separate sections as required. This patch
primarily establishes basic support for the reader and writer, similar
to llvm-profdata.
The high-level operations of llvm-cgdata are as follows:
1. It reads local raw codegen data from a custom section (for example,
__llvm_outline) embedded in native binary files
2. It merges local raw codegen data into an indexed codegen data,
complete with a suitable header.
3. It handles reading and writing of the indexed codegen data into a
standalone file.
This depends on https://github.com/llvm/llvm-project/pull/89792.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.
---------
Co-authored-by: Kyungwoo Lee <kyulee at fb.com>
Commit: 4dcd91aea3858fe60c65701a92060a04f789886f
https://github.com/llvm/llvm-project/commit/4dcd91aea3858fe60c65701a92060a04f789886f
Author: Oliver Hunt <oliver at apple.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
A clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
Log Message:
-----------
[PAC] Implement authentication for C++ member function pointers (#99576)
Introduces type based signing of member function pointers. To support
this discrimination schema we no longer emit member function pointer to
virtual methods and indices into a vtable but migrate to using thunks.
This does mean member function pointers are no longer necessarily
directly comparable, however as such comparisons are UB this is
acceptable.
We derive the discriminator from the C++ mangling of the type of the
pointer being authenticated.
Co-Authored-By: Akira Hatanaka ahatanaka at apple.com
Co-Authored-By: John McCall rjmccall at apple.com
Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>
Commit: 1f8b2b146141f3563085a1acb77deb50857a636d
https://github.com/llvm/llvm-project/commit/1f8b2b146141f3563085a1acb77deb50857a636d
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/CodeGenData/CodeGenDataReader.cpp
Log Message:
-----------
[CGData] Fix -Wpessimizing-move in CodeGenDataReader.cpp (NFC)
/llvm-project/llvm/lib/CodeGenData/CodeGenDataReader.cpp:78:12:
error: moving a local object in a return statement prevents copy elision [-Werror,-Wpessimizing-move]
return std::move(E);
^
/llvm-project/llvm/lib/CodeGenData/CodeGenDataReader.cpp:78:12: note: remove std::move call here
return std::move(E);
^~~~~~~~~~ ~
1 error generated.
Commit: d251a328b809ec66ca25cf72f71e127204eabfeb
https://github.com/llvm/llvm-project/commit/d251a328b809ec66ca25cf72f71e127204eabfeb
Author: Jordan Brantner <81778785+brantnej at users.noreply.github.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M bolt/docs/CommandLineArgumentReference.md
M bolt/lib/Core/BinaryContext.cpp
Log Message:
-----------
[BOLT] Fix typo from alterantive to alternative (#99704)
Fix typo from `alterantive` -> `alternative`
Signed-off-by: Jordan Brantner <brantnej at oregonstate.edu>
Commit: 4572efea90f2ddf51c618790a119ad9b6fc2c7ed
https://github.com/llvm/llvm-project/commit/4572efea90f2ddf51c618790a119ad9b6fc2c7ed
Author: yronglin <yronglin777 at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
M clang/test/CodeGen/builtins.c
Log Message:
-----------
[Clang][Interp] `__builtin_os_log_format_buffer_size` should be an unevaluated builtin (#99895)
Follow the current behavior of constant evaluator,
`__builtin_os_log_format_buffer_size` should be an unevaluated builtin.
The following code is well-formed:
```
void test_builtin_os_log(void *buf, int i, const char *data) {
constexpr int len = __builtin_os_log_format_buffer_size("%d %{public}s %{private}.16P", i, data, data);
}
```
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 03e92bf4836e888910815a54c66b07058cc8bb50
https://github.com/llvm/llvm-project/commit/03e92bf4836e888910815a54c66b07058cc8bb50
Author: Tianqing Wang <tianqing.wang at intel.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
A llvm/test/Transforms/SimplifyCFG/X86/two-entry-phi-fold-unpredictable.ll
R llvm/test/Transforms/SimplifyCFG/two-entry-phi-fold-unpredictable.ll
Log Message:
-----------
[SimplifyCFG] Fix LIT failure introduced in 3d494bfc7. (#100049)
Commit: 6049cd62871d529b2e80b4f80fb7d74e347fb725
https://github.com/llvm/llvm-project/commit/6049cd62871d529b2e80b4f80fb7d74e347fb725
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
A llvm/test/CodeGen/AArch64/hardened-br-jump-table.ll
Log Message:
-----------
[AArch64][PAC] Lower jump-tables using hardened pseudo. (#97666)
This introduces an alternative hardened lowering for jump-table
dispatch, controlled by the function attribute
`"aarch64-jump-table-hardening"`.
The implementation is centered around a pseudo, BR_JumpTable:
> A hardened but more expensive version of jump-table dispatch.
> This combines the target address computation (otherwise done using
> the JumpTableDest pseudos above) with the branch itself (otherwise
> done using a plain BR) in a single non-attackable sequence.
>
> We take the final entry index as an operand to allow isel freedom.
> This does mean that the index can be attacker-controlled. To
> address that, we also do limited checking of the offset, mainly
> ensuring it still points within the jump-table array. When it
> doesn't, this branches to the first entry. We might want it to
> trap instead.
>
> This is intended for use in conjunction with ptrauth for other
> code pointers, to avoid signing jump-table entries and turning
> them into pointers.
>
> Entry index is passed in x16. Clobbers x16/x17/nzcv.
Jump-table compression isn't supported yet.
Commit: c33878c5787c128234d533ad19d672dc3eea19a8
https://github.com/llvm/llvm-project/commit/c33878c5787c128234d533ad19d672dc3eea19a8
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/CodeGenData/CodeGenDataReader.cpp
Log Message:
-----------
Fix build break for https://github.com/llvm/llvm-project/pull/89884 (#100050)
- A missing header
Commit: b5f23e56902ec37c6ac1c13f21ba5d863d66b3de
https://github.com/llvm/llvm-project/commit/b5f23e56902ec37c6ac1c13f21ba5d863d66b3de
Author: dyung <douglas.yung at sony.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
R clang/test/Driver/warn-fsyntax-only.c
Log Message:
-----------
Revert "[Clang][Driver] Warn about `-c/-S` with `-fsyntax-only`" (#100052)
Reverts llvm/llvm-project#98607
The test added was failing on some build bots:
- https://lab.llvm.org/buildbot/#/builders/144/builds/2918
- https://lab.llvm.org/buildbot/#/builders/46/builds/2069
Commit: 78735d8070a8e4f2024d58baa5a4cacc9fa08d3e
https://github.com/llvm/llvm-project/commit/78735d8070a8e4f2024d58baa5a4cacc9fa08d3e
Author: Nico Weber <thakis at chromium.org>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
A llvm/utils/gn/secondary/clang/tools/clang-nvlink-wrapper/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
Log Message:
-----------
[gn] port 37d0568a6593a (clang-nvlink-wrapper)
Commit: adea9f9362085310d95a193f881978f51a79a3ba
https://github.com/llvm/llvm-project/commit/adea9f9362085310d95a193f881978f51a79a3ba
Author: Nico Weber <thakis at chromium.org>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGenData/BUILD.gn
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
A llvm/utils/gn/secondary/llvm/tools/llvm-cgdata/BUILD.gn
Log Message:
-----------
[gn build] Port d3fb41dddc11 (llvm-cgdata)
Commit: 9e97f80cc5fe802e52f56699ce2df40a3aa989e3
https://github.com/llvm/llvm-project/commit/9e97f80cc5fe802e52f56699ce2df40a3aa989e3
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCELFObjectWriter.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCELFStreamer.cpp
Log Message:
-----------
MCAssembler: Move Symvers to ELFObjectWriter
Similar to c473e75adeaf2998e4fb444b0bdbf2dd19312e50
Commit: e7a2405383e9f36aa6fe75a49632f7ca9a2f7b12
https://github.com/llvm/llvm-project/commit/e7a2405383e9f36aa6fe75a49632f7ca9a2f7b12
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/gpu/entrypoints.txt
M libc/test/UnitTest/CMakeLists.txt
Log Message:
-----------
[libc] Remove workarounds for lack of functional NVPTX linker (#96972)
Summary:
Currently we have several hacks to work around the fact that the NVPTX
linker, 'nvlink', does not support static libraries or LTO linking.
The patch in https://github.com/llvm/llvm-project/pull/96561 introduces
a wrapper in the toolchain that allows us to use a standard `ld.lld`
like interface. This means all the divergence with this target can be
removed.
Depends on https://github.com/llvm/llvm-project/pull/96561
Commit: 219d80bcb734bc4cbe3846fc49c5f21c31ba11be
https://github.com/llvm/llvm-project/commit/219d80bcb734bc4cbe3846fc49c5f21c31ba11be
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCObjectWriter.cpp
M llvm/lib/MC/WinCOFFObjectWriter.cpp
M llvm/lib/MC/XCOFFObjectWriter.cpp
Log Message:
-----------
MCAssembler: Move FileNames and CompilerVersion to MCObjectWriter
Commit: d6905ea9b089d07d37fa860c8a97f7f42ade682c
https://github.com/llvm/llvm-project/commit/d6905ea9b089d07d37fa860c8a97f7f42ade682c
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
Log Message:
-----------
[Clang] Fix r-value binding that Windows doesn't like
Commit: 87c35d782795b54911b3e3a91a5b738d4d870e55
https://github.com/llvm/llvm-project/commit/87c35d782795b54911b3e3a91a5b738d4d870e55
Author: WANG Rui <wangrui at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/test/CodeGen/LoongArch/psabi-restricted-scheduling.ll
Log Message:
-----------
[LoongArch][test] Add --relocation-model=pic option to psabi-restricted-scheduling. NFC
Add --relocation-model=pic option for generating %gd_pc_hi20 and %ld_pc_hi20.
Commit: 1eec5942a282acaaf33e0cc2bc88ade020e6860f
https://github.com/llvm/llvm-project/commit/1eec5942a282acaaf33e0cc2bc88ade020e6860f
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/CodeGenData/CMakeLists.txt
Log Message:
-----------
[CGData] Fix link error introduced in #89884
Commit: 73ffeeab12d54211fd838d6ff988d111369ea196
https://github.com/llvm/llvm-project/commit/73ffeeab12d54211fd838d6ff988d111369ea196
Author: vporpo <vporpodas at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/include/llvm/SandboxIR/SandboxIRValues.def
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
Log Message:
-----------
[SandboxIR] Implement SelectInst (#99996)
This patch implements sandboxir::SelectInst which mirrors
llvm::SelectInst.
Commit: 464ea880cf7710cc8675c83001d7ae020406cf42
https://github.com/llvm/llvm-project/commit/464ea880cf7710cc8675c83001d7ae020406cf42
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvilv.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvpack.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvpick.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvrepl128vei.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf4i.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vilv.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vpack.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vpick.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vreplvei.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf4i.ll
Log Message:
-----------
[LoongArch][CodeGen] Implement 128-bit and 256-bit vector shuffle. (#100054)
[LoongArch][CodeGen] Implement 128-bit and 256-bit vector shuffle
operations.
In LoongArch, shuffle operations can be divided into two types:
- Single-vector shuffle: Shuffle using only one vector, with the other
vector being `undef` or not selected by mask. This can be expanded to
instructions such as `vreplvei` and `vshuf4i`.
- Two-vector shuffle: Shuflle using two vectors. This can be expanded to
instructions like `vilv[l/h]`, `vpack[ev/od]`, `vpick[ev/od]` and the
basic `vshuf`.
In the future, more optimizations may be added, such as handling 1-bit
vectors and processing single element patterns, etc.
Commit: 34ab855826b8cb0c3b46c770b83390bd1fe95c64
https://github.com/llvm/llvm-project/commit/34ab855826b8cb0c3b46c770b83390bd1fe95c64
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/lib/Lex/DependencyDirectivesScanner.cpp
M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
Log Message:
-----------
[clang][deps] Ignore import/include directives with missing filenames (#99520)
Previously source input like `#import ` resulted in infinite calls
append the same token into `CurDirTokens`. This patch now ignores those
directive lines if they won't actually end up being compiled. (e.g.
macro guarded)
resolves: rdar://121247565
Commit: b8721fa0afa65e8e44d7f264712499d24f3cc68b
https://github.com/llvm/llvm-project/commit/b8721fa0afa65e8e44d7f264712499d24f3cc68b
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/test/CodeGen/ptrauth-function-attributes.c
A clang/test/Sema/ptrauth-indirect-goto.c
M llvm/docs/PointerAuth.md
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64FastISel.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
A llvm/test/CodeGen/AArch64/ptrauth-indirectbr.ll
Log Message:
-----------
[AArch64][PAC] Sign block addresses used in indirectbr. (#97647)
Enabled in clang using:
-fptrauth-indirect-gotos
and at the IR level using function attribute:
"ptrauth-indirect-gotos"
Signing uses IA and a per-function integer discriminator. The
discriminator isn't ABI-visible, and is currently:
ptrauth_string_discriminator("<function_name> blockaddress")
A sufficiently sophisticated frontend could benefit from per-indirectbr
discrimination, which would need additional machinery, such as allowing
"ptrauth" bundles on indirectbr. For our purposes, the simple scheme
above is sufficient.
This approach doesn't support subtracting label addresses and using
the result as offsets, because each label address is signed.
Pointer arithmetic on signed pointers corrupts the signature bits,
and because label address expressions aren't typed beyond void*,
we can't do anything reliably intelligent on the arithmetic exprs.
Not signing addresses when used to form offsets would allow
easily hijacking control flow by overwriting the offset.
This diagnoses the basic cases (`&&lbl2 - &&lbl1`) in the frontend,
while we evaluate either alternative implementations (e.g., lowering
blockaddress to a bb number, and indirectbr to a checked jump-table),
or better diagnostics (both at the frontend level and on unencodable
IR constants).
Commit: 67937a3f969aaf97a745a45281a0d22273bff713
https://github.com/llvm/llvm-project/commit/67937a3f969aaf97a745a45281a0d22273bff713
Author: Kyungwoo Lee <kyulee at meta.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/test/tools/llvm-cgdata/merge-archive.test
M llvm/test/tools/llvm-cgdata/merge-concat.test
M llvm/test/tools/llvm-cgdata/merge-double.test
M llvm/test/tools/llvm-cgdata/merge-single.test
Log Message:
-----------
Fix tests for https://github.com/llvm/llvm-project/pull/89884 (#100061)
Commit: d7e8a7487cd793df0fdf51a94afc25ab0a325a9a
https://github.com/llvm/llvm-project/commit/d7e8a7487cd793df0fdf51a94afc25ab0a325a9a
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
A llvm/test/CodeGen/AArch64/ptrauth-fpac.ll
A llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign-with-blend.ll
A llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign.ll
Log Message:
-----------
[AArch64][PAC] Lower auth/resign into checked sequence. (#79024)
This introduces 3 hardening modes in the authentication step of
auth/resign lowering:
- unchecked, which uses the AUT instructions as-is
- poison, which detects authentication failure (using an XPAC+CMP
sequence), explicitly yielding the XPAC result rather than the
AUT result, to avoid leaking
- trap, which additionally traps on authentication failure,
using BRK #0xC470 + key (IA C470, IB C471, DA C472, DB C473.)
Not all modes are necessarily useful in all contexts, and there
are more performant alternative lowerings in specific contexts
(e.g., when I/D TBI enablement is a target ABI guarantee.)
These will be implemented separately.
This is controlled by the `ptrauth-auth-traps` function attributes,
and can be overridden using `-aarch64-ptrauth-auth-checks=`.
This also adds the FPAC extension, which we haven't needed
before, to improve isel when we can rely on HW checking.
Commit: 9cc11b98a76c9b2f39b84f709566aac6f962f07a
https://github.com/llvm/llvm-project/commit/9cc11b98a76c9b2f39b84f709566aac6f962f07a
Author: donald chen <chenxunyu1993 at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/Utils/IndexingUtils.h
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Utils/IndexingUtils.cpp
M mlir/test/Dialect/Linalg/canonicalize.mlir
Log Message:
-----------
[mlir] [linalg] Add pattern to swap transpose with broadcast (#97063)
Add a pattern that implement:
transpose(broadcast(input)) -> broadcast(transpose(input))
Commit: ae3c85a708dcb8e9a1721d69943232af3e263099
https://github.com/llvm/llvm-project/commit/ae3c85a708dcb8e9a1721d69943232af3e263099
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCObjectWriter.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/MC/MachObjectWriter.cpp
M llvm/lib/MC/WinCOFFObjectWriter.cpp
Log Message:
-----------
MCAssembler: Move CGProfile to MCObjectWriter
Commit: eb2239299e51df64fe97e247aacbc4552349c2f9
https://github.com/llvm/llvm-project/commit/eb2239299e51df64fe97e247aacbc4552349c2f9
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCMachObjectWriter.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MachObjectWriter.cpp
Log Message:
-----------
MCAssembler: Move LinkerOptions to MachObjectWriter
Commit: 7acd4dd1c040ee88125ff16aaee118cbf816da87
https://github.com/llvm/llvm-project/commit/7acd4dd1c040ee88125ff16aaee118cbf816da87
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Interp.h
Log Message:
-----------
[clang][Interp][NFC] Diagnose div by 0 more like the current interpreter
CCEDiag when it's a floating point operation, FFDiag otherwise.
Commit: 99e6631e30969e0e3ba82a044c917a836e27b22a
https://github.com/llvm/llvm-project/commit/99e6631e30969e0e3ba82a044c917a836e27b22a
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
Log Message:
-----------
MCAssembler: Remove getWriterPtr
Commit 8728e097dfbec3630a1dd907431c0f14274a1ae8 (2018) introduced
getWriterPtr, which might be nullptr for MCAsmStreamer. This lured call
sites to use getWriterPtr when it's guaranteed to be non-null for
MCObjectstreamer. Remove this misleading API.
Commit: bcf9fb9802baad73e2f2acf142519e0dcfd3cc7f
https://github.com/llvm/llvm-project/commit/bcf9fb9802baad73e2f2acf142519e0dcfd3cc7f
Author: David Benjamin <davidben at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M libcxx/cmake/caches/Generic-hardening-mode-fast-with-abi-breaks.cmake
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/include/__configuration/abi.h
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/string
M libcxx/include/vector
M libcxx/test/libcxx/containers/sequences/vector/abi.compile.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.add.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.decrement.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.dereference.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.increment.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.index.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.add.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.decrement.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.dereference.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.increment.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.index.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/fill_to_capacity.h
M libcxx/test/libcxx/strings/basic.string/alignof.compile.pass.cpp
M libcxx/test/libcxx/strings/basic.string/sizeof.compile.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.add.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.decrement.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.dereference.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.increment.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.index.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.add.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.decrement.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.dereference.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.increment.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.index.pass.cpp
A libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
M libcxx/test/std/strings/basic.string/string.capacity/resize_and_overwrite.pass.cpp
M libcxx/utils/libcxx/test/features.py
Log Message:
-----------
[libc++][hardening] Use bounded iterators in std::vector and std::string (#78929)
~~NB: This PR depends on #78876. Ignore the first commit when reviewing,
and don't merge it until #78876 is resolved. When/if #78876 lands, I'll
clean this up.~~
This partially restores parity with the old, since removed debug build.
We now can re-enable a bunch of the disabled tests. Some things of note:
- `bounded_iter`'s converting constructor has never worked. It needs a
friend declaration to access the other `bound_iter` instantiation's
private fields.
- The old debug iterators also checked that callers did not try to
compare iterators from different objects. `bounded_iter` does not
currently do this, so I've left those disabled. However, I think we
probably should add those. See
https://github.com/llvm/llvm-project/issues/78771#issuecomment-1902999181
- The `std::vector` iterators are bounded up to capacity, not size. This
makes for a weaker safety check. This is because the STL promises not to
invalidate iterators when appending up to the capacity. Since we cannot
retroactively update all the iterators on `push_back()`, I've instead
sized it to the capacity. This is not as good, but at least will stop
the iterator from going off the end of the buffer.
There was also no test for this, so I've added one in the `std`
directory.
- `std::string` has two ambiguities to deal with. First, I opted not to
size it against the capacity. https://eel.is/c++draft/string.require#4
says iterators are invalidated on an non-const operation. Second,
whether the iterator can reach the NUL terminator. The previous debug
tests and the special-case in https://eel.is/c++draft/string.access#2
suggest no. If either of these causes widespread problems, I figure we
can revisit.
- `resize_and_overwrite.pass.cpp` assumed `std::string`'s iterator
supported `s.begin().base()`, but I see no promise of this in the
standard. GCC also doesn't support this. I fixed the test to use
`std::to_address`.
- `alignof.compile.pass.cpp`'s pointer isn't enough of a real pointer.
(It needs to satisfy `NullablePointer`, `LegacyRandomAccessIterator`,
and `LegacyContiguousIterator`.) `__bounded_iter` seems to instantiate
enough to notice. I've added a few more bits to satisfy it.
Fixes #78805
Commit: ee07547487a3502f7436968bbfc243b054c14071
https://github.com/llvm/llvm-project/commit/ee07547487a3502f7436968bbfc243b054c14071
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Preprocessor/pragma_mc_func.c
Log Message:
-----------
[NFC] make the case only require frontend
Fixes buildbot failure like: https://lab.llvm.org/buildbot/#/builders/144/builds/2931
caused by https://github.com/llvm/llvm-project/pull/99888
Commit: 786b491ef40629ee6ccd9bf848710a38d734da8b
https://github.com/llvm/llvm-project/commit/786b491ef40629ee6ccd9bf848710a38d734da8b
Author: AtariDreams <gfunni234 at gmail.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Utils/DXILResource.cpp
Log Message:
-----------
[Utils] Fix clang-tidy warning: Use boolean false, not 0 (NFC) (#99828)
Commit: b830790547c304aa2a771ce0706b337ea5ec7a02
https://github.com/llvm/llvm-project/commit/b830790547c304aa2a771ce0706b337ea5ec7a02
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Preprocessor/pragma_mc_func.c
Log Message:
-----------
[NFC] changes all run lines
Fix https://github.com/llvm/llvm-project/pull/99888
Commit: b4ef0ba244899a64a1b1e6448eca942cfa5eda18
https://github.com/llvm/llvm-project/commit/b4ef0ba244899a64a1b1e6448eca942cfa5eda18
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/test/Driver/loongarch-features.c
M clang/test/Driver/loongarch-mlasx.c
M clang/test/Driver/loongarch-msimd.c
M clang/test/Driver/loongarch-msingle-float.c
M clang/test/Driver/loongarch-msoft-float.c
M clang/test/Preprocessor/init-loongarch.c
Log Message:
-----------
[LoongArch] Enable 128-bits vector by default (#100056)
This commit is to enable 128 vector feature by default, in order to be
consistent with gcc.
Commit: 5a1b9896ad5a7dcd25a1cc7a4d3fd44155e4b22d
https://github.com/llvm/llvm-project/commit/5a1b9896ad5a7dcd25a1cc7a4d3fd44155e4b22d
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Basic/Targets/LoongArch.cpp
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/test/Driver/loongarch-march.c
M clang/test/Preprocessor/init-loongarch.c
M llvm/lib/TargetParser/LoongArchTargetParser.cpp
Log Message:
-----------
[LoongArch] Support -march=la64v1.0 and -march=la64v1.1 (#100057)
The newly added strings `la64v1.0` and `la64v1.1` in `-march` are as
described in LoongArch toolchains conventions (see [1]).
The target-cpu/feature attributes are forwarded to compiler when
specifying particular `-march` parameter. The default cpu `loongarch64`
is returned when archname is `la64v1.0` or `la64v1.1`.
In addition, this commit adds `la64v1.0`/`la64v1.1` to
"__loongarch_arch" and adds definition for macro "__loongarch_frecipe".
[1]: https://github.com/loongson/la-toolchain-conventions
Commit: 211494705b55ca8e1eaaaf74ba93d94a4d450a64
https://github.com/llvm/llvm-project/commit/211494705b55ca8e1eaaaf74ba93d94a4d450a64
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/MC/MCObjectStreamer.cpp
Log Message:
-----------
MCObjectStreamer: Remove an unneeded getBackendPtr test
All of `MCAsmBackend`, `MCCodeEmitter`, and `MCObjectWriter` must be
non-null.
Commit: f9c349fd4c9cd0e921bed9a5f02b15ff82a2f248
https://github.com/llvm/llvm-project/commit/f9c349fd4c9cd0e921bed9a5f02b15ff82a2f248
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
M llvm/test/MC/RISCV/mapping-across-sections.s
Log Message:
-----------
[RISCV] Create mapping symbols with non-unique names
Similar to #99836 for AArch64.
Non-unique names save .strtab space and match GNU assembler.
Pull Request: https://github.com/llvm/llvm-project/pull/99903
Commit: de2bfe009c6f593dfe5348c3fdb47bf90a5db11f
https://github.com/llvm/llvm-project/commit/de2bfe009c6f593dfe5348c3fdb47bf90a5db11f
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFStreamer.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFStreamer.h
M llvm/test/DebugInfo/Symbolize/ELF/csky-mapping-symbol.s
Log Message:
-----------
[CSKY] Create mapping symbols with non-unique names
Similar to #99836 for AArch64.
Non-unique names save .strtab space and match GNU assembler.
Commit: cd9e42cb0f2fdf1834e2e6ad2befdba0d7cc84b5
https://github.com/llvm/llvm-project/commit/cd9e42cb0f2fdf1834e2e6ad2befdba0d7cc84b5
Author: Thomas Schenker <thomas.schenker at protonmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
Log Message:
-----------
[clang-tidy] fix misc-const-correctness to work with function-try-blocks (#99925)
Make the clang-tidy check misc-const-correctness work with
function-try-blocks.
Fixes #99860.
Commit: ea486290aaa1cd6a45971a79d961ab5b2d26673f
https://github.com/llvm/llvm-project/commit/ea486290aaa1cd6a45971a79d961ab5b2d26673f
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/Descriptor.cpp
M clang/lib/AST/Interp/Descriptor.h
M clang/lib/AST/Interp/Pointer.cpp
M clang/lib/AST/Interp/Pointer.h
M clang/test/AST/Interp/codegen.cpp
Log Message:
-----------
[clang][Interp] Calculate APValue offsets for base classes
Commit: 019136e30fea8b8e6ef9c6dda1f9dd20a504c573
https://github.com/llvm/llvm-project/commit/019136e30fea8b8e6ef9c6dda1f9dd20a504c573
Author: Alexander Pivovarov <pivovaa at amazon.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M mlir/include/mlir-c/BuiltinTypes.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/include/mlir/IR/Types.h
M mlir/lib/AsmParser/TokenKinds.def
M mlir/lib/AsmParser/TypeParser.cpp
M mlir/lib/Bindings/Python/IRTypes.cpp
M mlir/lib/CAPI/IR/BuiltinTypes.cpp
M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Types.cpp
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
M mlir/python/mlir/extras/types.py
M mlir/test/IR/attribute.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/test/python/ir/builtin_types.py
M mlir/utils/lldb-scripts/mlirDataFormatters.py
M mlir/utils/tree-sitter-mlir/grammar.js
Log Message:
-----------
[MLIR] Add f8E4M3 IEEE 754 type (#97118)
This PR adds `f8E4M3` type to mlir.
`f8E4M3` type follows IEEE 754 convention
```c
f8E4M3 (IEEE 754)
- Exponent bias: 7
- Maximum stored exponent value: 14 (binary 1110)
- Maximum unbiased exponent value: 14 - 7 = 7
- Minimum stored exponent value: 1 (binary 0001)
- Minimum unbiased exponent value: 1 − 7 = −6
- Precision specifies the total number of bits used for the significand (mantisa),
including implicit leading integer bit = 3 + 1 = 4
- Follows IEEE 754 conventions for representation of special values
- Has Positive and Negative zero
- Has Positive and Negative infinity
- Has NaNs
Additional details:
- Max exp (unbiased): 7
- Min exp (unbiased): -6
- Infinities (+/-): S.1111.000
- Zeros (+/-): S.0000.000
- NaNs: S.1111.{001, 010, 011, 100, 101, 110, 111}
- Max normal number: S.1110.111 = +/-2^(7) x (1 + 0.875) = +/-240
- Min normal number: S.0001.000 = +/-2^(-6)
- Max subnormal number: S.0000.111 = +/-2^(-6) x 0.875 = +/-2^(-9) x 7
- Min subnormal number: S.0000.001 = +/-2^(-6) x 0.125 = +/-2^(-9)
```
Related PRs:
- [PR-97179](https://github.com/llvm/llvm-project/pull/97179) [APFloat]
Add support for f8E4M3 IEEE 754 type
Commit: 5da431008222e2653f618f3a112af58a94417251
https://github.com/llvm/llvm-project/commit/5da431008222e2653f618f3a112af58a94417251
Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
Log Message:
-----------
[MLIR][LLVM] Always print variadic callee type (#99293)
This commit updates the LLVM dialect CallOp and InvokeOp to always print
the variadic callee type (previously callee type) if present. An
additional verifier checks that only variadic calls have a non-null
variadic callee type, and the builders are adapted accordingly to set
the variadic callee type for variadic calls only. Finally, the CallOp
and InvokeOp verifiers are strengthened to check that the variadic
callee type matches the call argument and result types.
The motivation of this change is that CallOp and InvokeOp don't have
hidden state that is not pretty printed, but used during the export to
LLVM IR. Previously, it could happen that a call looked correct in MLIR,
but the return type changed after exporting to LLVM IR (since it has
been taken from the hidden callee type attribute). After landing this
change, this is not possible anymore since the variadic callee type is
always printed if present.
Commit: f017d89b22f74a67d28c7bef23b71afaf0bd50b2
https://github.com/llvm/llvm-project/commit/f017d89b22f74a67d28c7bef23b71afaf0bd50b2
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCObjectWriter.cpp
M llvm/lib/MC/MachObjectWriter.cpp
Log Message:
-----------
MCAssembler: Move SubsectionsViaSymbols; to MCObjectWriter
Commit: b2f5ac678f36c675c0c59eb34e352576f43305bd
https://github.com/llvm/llvm-project/commit/b2f5ac678f36c675c0c59eb34e352576f43305bd
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/lib/MC/MCAssembler.cpp
Log Message:
-----------
MCAssembler: Remove unused functions
Commit: 566363981bb9ff6a6081490f05aa6b19aefc16f0
https://github.com/llvm/llvm-project/commit/566363981bb9ff6a6081490f05aa6b19aefc16f0
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
M clang/test/Analysis/builtin-functions.cpp
M clang/test/Analysis/diagnostics/explicit-suppression.cpp
A clang/test/Analysis/issue-94193.cpp
M clang/test/Analysis/use-after-move.cpp
Log Message:
-----------
[analyzer] Model builtin-like functions as builtin functions (#99886)
Some template function instantiations don't have a body, even though
their templates did have a body.
Examples are: `std::move`, `std::forward`, `std::addressof` etc.
They had bodies before
https://github.com/llvm/llvm-project/commit/72315d02c432a0fe0acae9c96c69eac8d8e1a9f6
After that change, the sentiment was that these special functions should
be considered and treated as builtin functions.
Fixes #94193
CPP-5358
Commit: 0a6233a68c7b575d05bca0f0c708b7e97cc710d1
https://github.com/llvm/llvm-project/commit/0a6233a68c7b575d05bca0f0c708b7e97cc710d1
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/ASTImporter.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
[clang][ASTImporter] Fix import of anonymous enums if multiple are present (#99281)
After changes in PR #87144 and #93923 regressions appeared in some
cases. The problem was that if multiple anonymous enums are present in a
class and are imported as new the import of the second enum can fail
because it is detected as different from the first and causes ODR error.
Now in case of enums without name an existing similar enum is searched,
if not found the enum is imported. ODR error is not detected. This may
be incorrect if non-matching structures are imported, but this is the
less important case (import of matching classes is more important to
work).
Commit: f0fad9f3e00dbe8e58024d1c98e36b7b9b1b17a9
https://github.com/llvm/llvm-project/commit/f0fad9f3e00dbe8e58024d1c98e36b7b9b1b17a9
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
Log Message:
-----------
Revert "[clang-tidy] fix misc-const-correctness to work with function-try-blocks" (#100069)
Reverts llvm/llvm-project#99925
Commit: 404ca229fb9e0c3ed204363f5f2784d1424b5ec9
https://github.com/llvm/llvm-project/commit/404ca229fb9e0c3ed204363f5f2784d1424b5ec9
Author: Amy Huang <akhuang at google.com>
Date: 2024-07-22 (Mon, 22 Jul 2024)
Changed paths:
M compiler-rt/test/asan/TestCases/Posix/ignore_free_hook.cpp
M compiler-rt/test/hwasan/TestCases/Posix/ignore_free_hook.cpp
Log Message:
-----------
Replace |& with 2>&1 in ignore_free_hooks test. (#100004)
The test file ignore_free_hooks.cpp (added in
https://github.com/llvm/llvm-project/pull/96749/files) fails on mac
because `|&` doesn't work on mac. Replace with `2>&1`.
Commit: 70e7d26e560173c8b9db4c75ab4a3004cd5f021a
https://github.com/llvm/llvm-project/commit/70e7d26e560173c8b9db4c75ab4a3004cd5f021a
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.rst
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/TargetParser/Host.cpp
M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/atomic-rmw.ll
M llvm/test/CodeGen/RISCV/atomic-signext.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/rv32zacas-invalid.s
M llvm/test/MC/RISCV/rv32zacas-valid.s
M llvm/test/MC/RISCV/rv64zacas-invalid.s
M llvm/test/MC/RISCV/rv64zacas-valid.s
M llvm/test/MC/RISCV/rvzabha-zacas-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Mark zacas as experimental again due to unresolved ABI issue (#99898)
As discussed at the last sync-up call, mark Zacas as experimental until
this ABI issue is resolved
<https://github.com/riscv-non-isa/riscv-elf-psabi-doc/issues/444>.
Don't return Zacas in getHostCPUFeatures (leaving a TODO there) as even if requesting detection of "native" features, the user likely doesn't want to automatically opt in to experimental codegen.
Commit: fcec298087dba0c83f6d0bbafd6cd934c42cbf82
https://github.com/llvm/llvm-project/commit/fcec298087dba0c83f6d0bbafd6cd934c42cbf82
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Driver/loongarch-march.c
M clang/test/Driver/loongarch-mtune.c
M clang/test/Preprocessor/init-loongarch.c
M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/TargetParser/Host.cpp
M llvm/test/CodeGen/LoongArch/cpus.ll
Log Message:
-----------
[LoongArch] Support la664 (#100068)
A new ProcessorModel called `la664` is defined in LoongArch.td to
support `-march/-mtune=la664`.
Commit: 2db576c8ef4184933aa8fed20dcf0240a89ffc49
https://github.com/llvm/llvm-project/commit/2db576c8ef4184933aa8fed20dcf0240a89ffc49
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/include/llvm/MC/MCELFObjectWriter.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCAsmBackend.cpp
Log Message:
-----------
ELFObjectWriter: Remove unneeded subclasses
Commit: 89d1eb67342d75d1de8d210157fdeaeb6a4724b6
https://github.com/llvm/llvm-project/commit/89d1eb67342d75d1de8d210157fdeaeb6a4724b6
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
M llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
Log Message:
-----------
[LoongArch] Remove experimental `auto-vec` feature. (#100070)
Currently, automatic vectorization will be enabled with `-mlsx/-mlasx`
enabled.
Commit: 8a615bcf2f8c8140c6eadae964c8ea7fb4cfee33
https://github.com/llvm/llvm-project/commit/8a615bcf2f8c8140c6eadae964c8ea7fb4cfee33
Author: Weining Lu <luweining at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M llvm/docs/ReleaseNotes.rst
Log Message:
-----------
[LoongArch] Summary the release notes for LLVM 19
Commit: d59925c39856f255f4dd4427ccc650f2c2692a24
https://github.com/llvm/llvm-project/commit/d59925c39856f255f4dd4427ccc650f2c2692a24
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Preprocessor/init-loongarch.c
Log Message:
-----------
[LoongArch] Fix test issue of init-loongarch.c
Commit: 2de1333af9a76fbdc46e117bebb3513e8991cd1f
https://github.com/llvm/llvm-project/commit/2de1333af9a76fbdc46e117bebb3513e8991cd1f
Author: Alex Bradbury <asb at igalia.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
Log Message:
-----------
[clang][test][RISCV] Add missing test change from #99898
Commit: 26c99c421794902b0d929fd9eff81314da55675c
https://github.com/llvm/llvm-project/commit/26c99c421794902b0d929fd9eff81314da55675c
Author: Thomas Schenker <thomas.schenker at protonmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
Log Message:
-----------
[clang-tidy] fix misc-const-correctness to work with function-try-blocks (#99925)
Make the clang-tidy check misc-const-correctness work with
function-try-blocks.
Fixes #99860.
Commit: 2dd82c5ac56623d38de977ef027b252b4908e4c5
https://github.com/llvm/llvm-project/commit/2dd82c5ac56623d38de977ef027b252b4908e4c5
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
Log Message:
-----------
[clang-tidy][NFC] Added -fexceptions to const-correctness-values.cp
Related to #99925.
Commit: 6db5f4fd2a287de9d20adc7a44cfcc66fc462c9c
https://github.com/llvm/llvm-project/commit/6db5f4fd2a287de9d20adc7a44cfcc66fc462c9c
Author: Bill Wendling <5993918+bwendling at users.noreply.github.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGRecordLayout.h
M clang/test/CodeGen/attr-counted-by.c
Log Message:
-----------
[Clang] Ignore empty FieldDecls when asking for the field number (#100040)
A FieldDecl that's an empty struct may not show up in CGRecordLayout. Go
ahead and ignore such a field as it shouldn't make a difference to these
calculations.
Fixes: 1f6f97e2b64a ("[Clang] Loop over FieldDecls instead of all Decls (#99574)")
Co-authored-by: Eli Friedman <efriedma at quicinc.com>
Commit: 939a6624ac95e68a4dca4ba3ef8a9dfe26182522
https://github.com/llvm/llvm-project/commit/939a6624ac95e68a4dca4ba3ef8a9dfe26182522
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
A llvm/test/CodeGen/AMDGPU/required-export-priority.ll
A llvm/test/CodeGen/AMDGPU/required-export-priority.mir
Log Message:
-----------
[AMDGPU] Implement workaround for GFX11.5 export priority (#99273)
On GFX11.5 shaders having completed exports need to execute/wait at a
lower priority than shaders still executing exports.
Add code to maintain normal priority of 2 for shaders that export and
drop to priority 0 after exports.
Commit: eeb7feb5e6f75934dad36b0fb7d861d0de0775d3
https://github.com/llvm/llvm-project/commit/eeb7feb5e6f75934dad36b0fb7d861d0de0775d3
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SMInstructions.td
Log Message:
-----------
[AMDGPU] Define constrained multi-dword scalar load instructions. (#96161)
Commit: 96d412135395a251f2931b8fca4dd8150aeed9ba
https://github.com/llvm/llvm-project/commit/96d412135395a251f2931b8fca4dd8150aeed9ba
Author: Petr Hosek <phosek at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/tools/llvm-cgdata/CMakeLists.txt
Log Message:
-----------
[llvm-cgdata] Remove `GENERATE_DRIVER` option (#100066)
This tool shouldn't be used in the driver build until it is converted to
use `OptTable` for option parsing, otherwise the `cl::opt` options might
conflict with options in other tools resulting in link failures.
Commit: 2d2d6853cf3ee28f1788f9ff38c2892c76722c82
https://github.com/llvm/llvm-project/commit/2d2d6853cf3ee28f1788f9ff38c2892c76722c82
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/legalize-threeway-cmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/scmp.ll
M llvm/test/CodeGen/AArch64/ucmp.ll
Log Message:
-----------
[GlobalIsel][AArch64] Legalize G_SCMP and G_UCMP (#99820)
https://github.com/llvm/llvm-project/pull/91871
https://github.com/llvm/llvm-project/pull/98774
Commit: 0998e3c4e66ded6e42b8ce162748df05b5ddb627
https://github.com/llvm/llvm-project/commit/0998e3c4e66ded6e42b8ce162748df05b5ddb627
Author: Youngsuk Kim <joseph942010 at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/lib/AST/ASTConcept.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
Log Message:
-----------
[clang] Add method 'backupStr' to ASTContext (#99417)
Method 'backupStr' extracts common code of dynamically allocating memory
with ASTContext to hold a copy of a string's contents.
Commit: a1d7da05d0e8db4690d605e0c767f30e7891ceb2
https://github.com/llvm/llvm-project/commit/a1d7da05d0e8db4690d605e0c767f30e7891ceb2
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/build_vector.ll
M llvm/test/CodeGen/AMDGPU/cluster_stores.ll
M llvm/test/CodeGen/AMDGPU/combine-cond-add-sub.ll
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
M llvm/test/CodeGen/AMDGPU/fdiv.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/fmuladd.f16.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fshl.ll
M llvm/test/CodeGen/AMDGPU/fshr.ll
M llvm/test/CodeGen/AMDGPU/global_atomics.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pkrtz.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.atomic.csub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
M llvm/test/CodeGen/AMDGPU/llvm.round.ll
M llvm/test/CodeGen/AMDGPU/lshr.v2i16.ll
M llvm/test/CodeGen/AMDGPU/madak.ll
M llvm/test/CodeGen/AMDGPU/memory_clause.ll
M llvm/test/CodeGen/AMDGPU/merge-s-load.mir
M llvm/test/CodeGen/AMDGPU/move-to-valu-ctlz-cttz.ll
M llvm/test/CodeGen/AMDGPU/mul_int24.ll
M llvm/test/CodeGen/AMDGPU/mul_uint24-amdgcn.ll
M llvm/test/CodeGen/AMDGPU/packed-op-sel.ll
M llvm/test/CodeGen/AMDGPU/ptr-buffer-alias-scheduling.ll
M llvm/test/CodeGen/AMDGPU/rotl.ll
M llvm/test/CodeGen/AMDGPU/rotr.ll
M llvm/test/CodeGen/AMDGPU/shl.v2i16.ll
M llvm/test/CodeGen/AMDGPU/sub.ll
M llvm/test/CodeGen/AMDGPU/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
M llvm/test/CodeGen/AMDGPU/v_sat_pk_u8_i16.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
Log Message:
-----------
[AMDGPU][SILoadStoreOptimizer] Merge constrained sloads (#96162)
Consider the constrained multi-dword loads while merging
individual loads to a single multi-dword load.
Commit: 7d0a5848f2c72854d7d5a795fcc265b8ba787782
https://github.com/llvm/llvm-project/commit/7d0a5848f2c72854d7d5a795fcc265b8ba787782
Author: Petr Hosek <phosek at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/tools/llvm-cgdata/CMakeLists.txt
Log Message:
-----------
Revert "[llvm-cgdata] Remove `GENERATE_DRIVER` option" (#100078)
Reverts llvm/llvm-project#100066
Commit: 229e11855983ead8c8e3d5421238dbd4acdf2d29
https://github.com/llvm/llvm-project/commit/229e11855983ead8c8e3d5421238dbd4acdf2d29
Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/SMInstructions.td
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fract.f64.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smrd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/widen-i8-i16-scalar-loads.ll
M llvm/test/CodeGen/AMDGPU/add.ll
M llvm/test/CodeGen/AMDGPU/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/amd.endpgm.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-load-offset-from-reg.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/and.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
M llvm/test/CodeGen/AMDGPU/clamp.ll
M llvm/test/CodeGen/AMDGPU/combine-vload-extract.ll
M llvm/test/CodeGen/AMDGPU/copy_to_scc.ll
M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fmul.f16.ll
M llvm/test/CodeGen/AMDGPU/fmuladd.f16.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fpext.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/fsub.f16.ll
M llvm/test/CodeGen/AMDGPU/global-i16-load-store.ll
M llvm/test/CodeGen/AMDGPU/global_atomics.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/idot4s.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pkrtz.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.bf16.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
M llvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/llvm.rint.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.round.ll
M llvm/test/CodeGen/AMDGPU/llvm.sin.f16.ll
M llvm/test/CodeGen/AMDGPU/lshl-add-u64.ll
M llvm/test/CodeGen/AMDGPU/lshr.v2i16.ll
M llvm/test/CodeGen/AMDGPU/mad.u16.ll
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/mul_uint24-amdgcn.ll
M llvm/test/CodeGen/AMDGPU/optimize-compare.ll
M llvm/test/CodeGen/AMDGPU/packed-op-sel.ll
M llvm/test/CodeGen/AMDGPU/post-ra-soft-clause-dbg-info.ll
M llvm/test/CodeGen/AMDGPU/promote-vect3-load.ll
M llvm/test/CodeGen/AMDGPU/ptr-buffer-alias-scheduling.ll
M llvm/test/CodeGen/AMDGPU/saddo.ll
M llvm/test/CodeGen/AMDGPU/sdiv.ll
M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
M llvm/test/CodeGen/AMDGPU/shl.v2i16.ll
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
M llvm/test/CodeGen/AMDGPU/smrd.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/sub.ll
M llvm/test/CodeGen/AMDGPU/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/twoaddr-constrain.ll
M llvm/test/CodeGen/AMDGPU/uaddo.ll
M llvm/test/CodeGen/AMDGPU/usubo.ll
M llvm/test/CodeGen/AMDGPU/v_add_u64_pseudo_sdwa.ll
M llvm/test/CodeGen/AMDGPU/v_pack.ll
M llvm/test/CodeGen/AMDGPU/v_sub_u64_pseudo_sdwa.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/zero_extend.ll
Log Message:
-----------
[AMDGPU] Codegen support for constrained multi-dword sloads (#96163)
For targets that support xnack replay feature (gfx8+), the
multi-dword scalar loads shouldn't clobber any register that
holds the src address. The constrained version of the scalar
loads have the early clobber flag attached to the dst operand
to restrict RA from re-allocating any of the src regs for its
dst operand.
Commit: 430b2545032db9de7898444502915f89e20f7c4c
https://github.com/llvm/llvm-project/commit/430b2545032db9de7898444502915f89e20f7c4c
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/DeclCXX.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
Log Message:
-----------
[Clang] Do not attempt to access the `DefinitionData` of an incomplete type (#99998)
We were asserting here because we were trying to access the
`DefinitionData` of an incomplete type in the `Visit` lambda in
`CXXRecordDecl::hasSubobjectAtOffsetZeroOfEmptyBaseType`.
The code that creates `FieldDecl`s always marks them as invalid
if their type is incomplete, so checking whether the field decl
whose type we’re about to look at is invalid fixes this issue.
Fixes #99868.
Commit: 528a662d3a1e28c3bd4fe2d54bc73506b68ddc4e
https://github.com/llvm/llvm-project/commit/528a662d3a1e28c3bd4fe2d54bc73506b68ddc4e
Author: Johannes Reifferscheid <jreiffers at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M mlir/lib/IR/AffineExpr.cpp
M mlir/unittests/IR/AffineExprTest.cpp
Log Message:
-----------
Fix sign of largest known divisor of div. (#100081)
There's a missing abs, so it returns a negative value if the divisor is
negative. Later this is then cast to uint.
Commit: f2ccf80136a01ca69f766becafb329db6c54c0c8
https://github.com/llvm/llvm-project/commit/f2ccf80136a01ca69f766becafb329db6c54c0c8
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/CodeGen/PowerPC/common-chain.ll
M llvm/test/CodeGen/PowerPC/p10-spill-crlt.ll
A llvm/test/Transforms/LICM/hoist-binop.ll
M llvm/test/Transforms/LICM/sink-foldable.ll
M llvm/test/Transforms/LICM/update-scev-after-hoist.ll
Log Message:
-----------
[LICM] Fold associative binary ops to promote code hoisting (#81608)
Perform the transformation
"(LV op C1) op C2" ==> "LV op (C1 op C2)"
where op is an associative binary op, LV is a loop variant, and C1 and
C2 are loop invariants to hoist.
Similar patterns could be folded (left in comment) but this one seems to
be the most impactful.
Commit: 8f701b5df0adb3a2960d78ca2ad9cf53f39ba2fe
https://github.com/llvm/llvm-project/commit/8f701b5df0adb3a2960d78ca2ad9cf53f39ba2fe
Author: Tobias Hieta <tobias at hieta.se>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M cmake/Modules/LLVMVersion.cmake
M libcxx/include/__config
M llvm/utils/gn/secondary/llvm/version.gni
M llvm/utils/lit/lit/__init__.py
Log Message:
-----------
Set version to 20.0.0git
LLVM 19 release is starting.
Commit: 10c6d6349e51bb245b9deec4aafca9885971135b
https://github.com/llvm/llvm-project/commit/10c6d6349e51bb245b9deec4aafca9885971135b
Author: Tobias Hieta <tobias at hieta.se>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang/docs/ReleaseNotes.rst
M libcxx/docs/ReleaseNotes.rst
M lld/docs/ReleaseNotes.rst
M llvm/docs/ReleaseNotes.rst
M openmp/docs/ReleaseNotes.rst
M pstl/docs/ReleaseNotes.rst
Log Message:
-----------
Clear release notes for upcoming LLVM 20 dev cycle
Commit: b5fb7b209085acdb33748ab4fe33cbfbdbfeeddf
https://github.com/llvm/llvm-project/commit/b5fb7b209085acdb33748ab4fe33cbfbdbfeeddf
Author: goussepi <pierre.gousseau at sony.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/PS4CPU.h
M clang/test/Driver/ps4-ps5-runtime-flags.c
Log Message:
-----------
[PS5] Adopt new compiler-rt naming scheme for the profile library. (#99862)
Changes the driver to look for libclang_rt.profile_nosubmission.a
instead of libclang_rt.profile-x86_64_nosubmission.a
Commit: 5f05d5ec8f9bb15c0ac29fce843a2c73165ac414
https://github.com/llvm/llvm-project/commit/5f05d5ec8f9bb15c0ac29fce843a2c73165ac414
Author: Mitch Phillips <mitchp at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
M clang/test/CodeGen/builtins.c
Log Message:
-----------
Revert "[Clang][Interp] `__builtin_os_log_format_buffer_size` should be an unevaluated builtin (#99895)"
This reverts commit 4572efea90f2ddf51c618790a119ad9b6fc2c7ed.
Reason: Introduced a memory leak that broke the sanitizer buildbots.
More information available in the original pull request
(https://github.com/llvm/llvm-project/pull/99895).
Commit: dd23b347890512ee82741648e941df24e1d666ee
https://github.com/llvm/llvm-project/commit/dd23b347890512ee82741648e941df24e1d666ee
Author: Clement Courbet <courbet at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
Log Message:
-----------
[clang-tidy][performance-unnecessary-value-param] Make `handleMoveFix` virtual (#99867)
... so that downstream checks can override behaviour to do additional
processing.
Refactor the rest of the logic to `handleConstRefFix` (which is also
`virtual`).
This is otherwise and NFC.
This is similar to https://github.com/llvm/llvm-project/pull/73921 but
for `performance-unnecessary-value-param`.
Commit: f18dd9edec9c2135a8906d795258a8c5a24f74f3
https://github.com/llvm/llvm-project/commit/f18dd9edec9c2135a8906d795258a8c5a24f74f3
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
Log Message:
-----------
Reapply "[Clang][Interp] `__builtin_os_log_format_buffer_size` should be an unevaluated builtin (#99895)"
This reverts commit 5f05d5ec8f9bb15c0ac29fce843a2c73165ac414.
Reapply the original commit without the test. The memory leak is caused
by a well known problem in the new constant interpreter.
Commit: b48819dbcdb48fc737dc22304ac343e4fdbae9ff
https://github.com/llvm/llvm-project/commit/b48819dbcdb48fc737dc22304ac343e4fdbae9ff
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/CodeGen/PowerPC/common-chain.ll
M llvm/test/CodeGen/PowerPC/p10-spill-crlt.ll
R llvm/test/Transforms/LICM/hoist-binop.ll
M llvm/test/Transforms/LICM/sink-foldable.ll
M llvm/test/Transforms/LICM/update-scev-after-hoist.ll
Log Message:
-----------
Revert " [LICM] Fold associative binary ops to promote code hoisting (#81608)"
This reverts commit f2ccf80136a01ca69f766becafb329db6c54c0c8.
The flag propagation code is incorrect.
Commit: c1b70fa5bfea973d4141e27cf9668e9325609e19
https://github.com/llvm/llvm-project/commit/c1b70fa5bfea973d4141e27cf9668e9325609e19
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll
Log Message:
-----------
Precommit vscale-fixups.ll test (NFC)
Precommit test for #100080.
Commit: 363e036ac002d5af4bb82e303052b806a98086a1
https://github.com/llvm/llvm-project/commit/363e036ac002d5af4bb82e303052b806a98086a1
Author: Ilya Biryukov <ibiryukov at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/include/clang/AST/ExprCXX.h
M clang/lib/AST/ExprCXX.cpp
Log Message:
-----------
[AST] NFC: add an assertion for invariant of CXXFoldExpr
CXXFoldExpr relies on exactly one of the two operands to have unexpanded
parameter packs. If this invariant does not holds, results of
`getPattern()`, `isLeftFold()` and other related members are incorrect.
Asserting this on construction makes debugging the problems easier as
the failure is happening closer to the code that contains the error.
Also move the constructor to the `.cpp` file to avoid potential ODR
violations from having an `assert` in the header in combination with
precompiled libraries.
Commit: d89f3e8df3160b3afc07bc742c81aa4738ea9646
https://github.com/llvm/llvm-project/commit/d89f3e8df3160b3afc07bc742c81aa4738ea9646
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[VPlan] Remove dead HeaderVPBB argument from addUsersInExitBlock (NFC).
Commit: fde27bd221c3ba011918a50bc2a47130959d33b7
https://github.com/llvm/llvm-project/commit/fde27bd221c3ba011918a50bc2a47130959d33b7
Author: Finlay <finlay.marno at codeplay.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[mlir] Added new attributes to the llvm.call op in llvmir target (#99663)
The new attributes are:
* convergent
* no_unwind
* will_return
* memory effects
Commit: 5bd38a98d7585841c1688f6b9eee8ce150dc429c
https://github.com/llvm/llvm-project/commit/5bd38a98d7585841c1688f6b9eee8ce150dc429c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/AArch64/neon-abd.ll
M llvm/test/CodeGen/ARM/neon_vabd.ll
M llvm/test/CodeGen/X86/abdu.ll
Log Message:
-----------
[DAG] ComputeNumSignBits - subo_carry(x,x,c) -> bitwidth 'allsignbits' (#99935)
Handle cases where the subo_carry is subtracting the same operand (=zero) - so only the subtraction of the 0/1 carry bit is affecting the result, giving a 0/-1 allsignbits value.
Noticed while improving ABDS/ABDU expansion.
Commit: a0971f027caab9714271bcb2457aa7d419a90a45
https://github.com/llvm/llvm-project/commit/a0971f027caab9714271bcb2457aa7d419a90a45
Author: Tobias Hieta <tobias at hieta.se>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M .github/workflows/version-check.yml
Log Message:
-----------
[Infra] Fix version-check workflow (#100090)
Commit: 20d7fff5eaaa9d78807035d63e5c503bfc1b497e
https://github.com/llvm/llvm-project/commit/20d7fff5eaaa9d78807035d63e5c503bfc1b497e
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/InterpBuiltin.cpp
M clang/test/AST/Interp/atomic.c
Log Message:
-----------
[clang][Interp] Fix atomic builtins with integral pointers
Check the integral pointer value.
Commit: d5a614d44d4ef1f7354b89d3c163dde4497a2053
https://github.com/llvm/llvm-project/commit/d5a614d44d4ef1f7354b89d3c163dde4497a2053
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/include/llvm/CodeGen/ISDOpcodes.h
Log Message:
-----------
[CodeGen][NFC] Fix documentation comments (#100092)
Commit: b60fec27fd1bbab8c2c7a77b4be7836a1beb326f
https://github.com/llvm/llvm-project/commit/b60fec27fd1bbab8c2c7a77b4be7836a1beb326f
Author: Balazs Benics <benicsbalazs at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/test/Analysis/stream.c
Log Message:
-----------
[analyzer] Assume the result of 'fopen' can't alias with 'std{in,out,err}' (#100085)
'fopen' should return a new FILE handle, thus we should assume it can't
alias with commonly used FILE handles, such as with 'stdin', 'stdout' or
'stderr'.
This problem appears in code that handles either some input/output file
with stdin or stdout, as the business logic is basically the same no
matter the stream being used.
However, one would should only close the stream if it was opened via
'fopen'. Consequently, such code usually has a condition like `if (f &&
f != stdout)` to guard the `fclose()` call.
This patch brings this assumption, thus eliminates FPs for not taking
the guarded branch.
CPP-5306
Commit: 4d5f81cad55b0b499953ed88608efc05e577ac2e
https://github.com/llvm/llvm-project/commit/4d5f81cad55b0b499953ed88608efc05e577ac2e
Author: Egor Zhdan <e_zhdan at apple.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/test/APINotes/Inputs/Headers/Methods.apinotes
M clang/test/APINotes/Inputs/Headers/Methods.h
M clang/test/APINotes/Inputs/Headers/Namespaces.apinotes
M clang/test/APINotes/Inputs/Headers/Namespaces.h
M clang/test/APINotes/methods.cpp
M clang/test/APINotes/namespaces.cpp
Log Message:
-----------
[APINotes] Support nested tags
This allows annotating C/C++ structs declared within other structs using
API Notes.
rdar://132083354
Commit: ef7d46c7e6b33b6294f23b6df290b335a761fbd5
https://github.com/llvm/llvm-project/commit/ef7d46c7e6b33b6294f23b6df290b335a761fbd5
Author: Braden Helmer <bradenhelmeraus at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Parse/ParseStmt.cpp
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-20.cpp
M clang/test/Parser/cxx-template-decl.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
A clang/test/SemaCXX/invalid-template-declaration.cpp
M clang/test/SemaTemplate/class-template-decl.cpp
M clang/test/SemaTemplate/nested-template.cpp
Log Message:
-----------
Template Diagnostic Improvements (#99933)
It turns out `SemaTemplate` handles this type of diagnostic already,
however when template gets encountered, it never gets parsed as a
possible statement or declaration, only as an expression.
Fixes #17959.
Commit: 73d78973fe072438f0f73088f889c66845b2b51a
https://github.com/llvm/llvm-project/commit/73d78973fe072438f0f73088f889c66845b2b51a
Author: Gulfem Savrun Yeniceri <gulfem at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
R llvm/include/llvm/CodeGenData/CodeGenData.h
R llvm/include/llvm/CodeGenData/CodeGenData.inc
R llvm/include/llvm/CodeGenData/CodeGenDataReader.h
R llvm/include/llvm/CodeGenData/CodeGenDataWriter.h
M llvm/lib/CodeGenData/CMakeLists.txt
R llvm/lib/CodeGenData/CodeGenData.cpp
R llvm/lib/CodeGenData/CodeGenDataReader.cpp
R llvm/lib/CodeGenData/CodeGenDataWriter.cpp
M llvm/test/CMakeLists.txt
M llvm/test/lit.cfg.py
R llvm/test/tools/llvm-cgdata/dump.test
R llvm/test/tools/llvm-cgdata/empty.test
R llvm/test/tools/llvm-cgdata/error.test
R llvm/test/tools/llvm-cgdata/merge-archive.test
R llvm/test/tools/llvm-cgdata/merge-concat.test
R llvm/test/tools/llvm-cgdata/merge-double.test
R llvm/test/tools/llvm-cgdata/merge-single.test
R llvm/test/tools/llvm-cgdata/show.test
R llvm/tools/llvm-cgdata/CMakeLists.txt
R llvm/tools/llvm-cgdata/llvm-cgdata.cpp
Log Message:
-----------
Revert "[CGData] llvm-cgdata (#89884)"
This reverts commit d3fb41dddc11b0ebc338a3b9e6a5ab7288ff7d1d
and forward fix patches because of the issue explained in:
https://github.com/llvm/llvm-project/pull/89884#issuecomment-2244348117.
Revert "Fix tests for https://github.com/llvm/llvm-project/pull/89884
(#100061)"
This reverts commit 67937a3f969aaf97a745a45281a0d22273bff713.
Revert "Fix build break for https://github.com/llvm/llvm-project/pull/89884 (#100050)"
This reverts commit c33878c5787c128234d533ad19d672dc3eea19a8.
Revert "[CGData] Fix -Wpessimizing-move in CodeGenDataReader.cpp (NFC)"
This reverts commit 1f8b2b146141f3563085a1acb77deb50857a636d.
Commit: 8ebe499e07760b0d18b5721b298efc9e4a241916
https://github.com/llvm/llvm-project/commit/8ebe499e07760b0d18b5721b298efc9e4a241916
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
M llvm/test/Analysis/LoopAccessAnalysis/forward-loop-independent.ll
Log Message:
-----------
[LLVM] Fix typo "depedent"
Commit: eb9bf188918bf5c88151d7735d925a3912a5b596
https://github.com/llvm/llvm-project/commit/eb9bf188918bf5c88151d7735d925a3912a5b596
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Semantics/OpenMP/copyprivate04.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
M flang/test/Semantics/OpenMP/reduction08.f90
M flang/test/Semantics/OpenMP/reduction09.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol05.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol08.f90
M flang/test/Semantics/OpenMP/symbol09.f90
Log Message:
-----------
[flang][OpenMP] Fix copyprivate semantic checks (#95799)
There are some cases in which variables used in OpenMP constructs
are predetermined as private. The semantic checks for copyprivate
were not handling those cases.
Besides that, shared symbols were not being properly represented
in some cases. When there was no previously declared private
(implicit) symbol, no new association symbols, representing
shared ones, were being created.
These symbols must always be inserted in constructs that may
privatize the original symbol: parallel, teams and task
generating constructs.
Fixes #87214 and #86907
Commit: 16f22c0fe6fa9e11ce989d2a7998a8e48e7150c1
https://github.com/llvm/llvm-project/commit/16f22c0fe6fa9e11ce989d2a7998a8e48e7150c1
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/fma.ll
Log Message:
-----------
Fold `fma x, -1.0, y` into `fsub x, y` (#100106)
Alive2 proof (Please run alive-tv locally with larger `smt-to`):
https://alive2.llvm.org/ce/z/YvUVg-
Commit: 2eea9d6a2d1c56df5cbe57972029cd1d8263162a
https://github.com/llvm/llvm-project/commit/2eea9d6a2d1c56df5cbe57972029cd1d8263162a
Author: Finlay <finlay.marno at codeplay.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMInlining.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Conversion/FuncToLLVM/convert-funcs.mlir
M mlir/test/Dialect/LLVMIR/inlining.mlir
M mlir/test/Target/LLVMIR/Import/function-attributes.ll
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[mlir] Rename memory attribute to memory_effects in llvmir dialect (#100108)
This commit renames the memory attribute on operations to "memory_effects" to be in line with the naming LLVM IR is using.
Commit: c74730070a0261d582e01ee7e5eef2e7c39fb11f
https://github.com/llvm/llvm-project/commit/c74730070a0261d582e01ee7e5eef2e7c39fb11f
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/test/OpenMP/generic_loop_ast_print.cpp
M clang/test/OpenMP/generic_loop_codegen.cpp
M clang/test/PCH/pragma-loop.cpp
Log Message:
-----------
[clang][OpenMP] Move "loop" directive mapping from sema to codegen (#99905)
Given "loop" construct, clang will try to treat it as "for",
"distribute" or "simd", depending on either the implied binding, or the
bind clause if present. This patch moves the code that performs this
construct remapping from sema to codegen.
For a "loop" construct without a bind clause, this patch will create an
implicit bind clause based on implied binding to simplify further
analysis.
During codegen the function `EmitOMPGenericLoopDirective` (i.e. "loop")
will invoke the "emit" functions for "for", "distribute" or "simd",
depending on the bind clause.
---------
Co-authored-by: Alexey Bataev <a.bataev at gmx.com>
Commit: a213edd32abff8d154dad96824689b98ec7b5a35
https://github.com/llvm/llvm-project/commit/a213edd32abff8d154dad96824689b98ec7b5a35
Author: DianQK <dianqk at dianqk.net>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
Log Message:
-----------
[FunctionAttrs] Determine underlying object by `getUnderlyingObjectAggressive` (#100102)
Thanks to #99509, we can fix
https://github.com/rust-lang/rust/issues/119573 too.
Commit: 1ee686a55aa6365eff39bbd1dc2059b16be6c2f1
https://github.com/llvm/llvm-project/commit/1ee686a55aa6365eff39bbd1dc2059b16be6c2f1
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
Log Message:
-----------
Revert "[FunctionAttrs] Determine underlying object by `getUnderlyingObjectAggressive` (#100102)"
This reverts commit a213edd32abff8d154dad96824689b98ec7b5a35.
Assertion failures on buildbots.
Commit: cc7308a1563e5ebab4dffeb85deefdde61e6711a
https://github.com/llvm/llvm-project/commit/cc7308a1563e5ebab4dffeb85deefdde61e6711a
Author: Mircea Trofin <mtrofin at google.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/lib/ProfileData/PGOCtxProfReader.cpp
M llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
Log Message:
-----------
[ctx_prof] Make the profile output analyzable by llvm-bcanalyzer (#99563)
This requires output-ing a "Magic" 4-byte header. We also emit a block info block, to describe our blocks and records. The output of `llvm-bcanalyzer` would look like:
```
<BLOCKINFO_BLOCK/>
<Metadata NumWords=17 BlockCodeSize=2>
<Version op0=1/>
<Context NumWords=13 BlockCodeSize=2>
<GUID op0=2/>
<Counters op0=1 op1=2 op2=3/>
```
Instead of having `Unknown` for block and record IDs.
Commit: ec56790c3b27df4fa1513594ca9a74fd8ad5bf7f
https://github.com/llvm/llvm-project/commit/ec56790c3b27df4fa1513594ca9a74fd8ad5bf7f
Author: Ties Stuij <ties.stuij at arm.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M libcxx/include/format
Log Message:
-----------
[libcxx] don't `#include <cwchar>` if wide chars aren't enabled (#99911)
Pull request #96032 unconditionall adds the `cwchar` include in the
`format` umbrella header. However support for wchar_t can be disabled in
the build system (LIBCXX_ENABLE_WIDE_CHARACTERS).
This patch guards against inclusion of `cwchar` in `format` by checking
the `_LIBCPP_HAS_NO_WIDE_CHARACTERS` define.
For clarity I've also merged the include header section that `cwchar`
was in with the one above as they were both guarded by the same `#if`
logic.
Commit: b97bc567160fb9d0b240884121dcbe700ad68d67
https://github.com/llvm/llvm-project/commit/b97bc567160fb9d0b240884121dcbe700ad68d67
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/test/CodeGen/X86/nontemporal.ll
Log Message:
-----------
[X86] Add MMX nontemporal store DAG test
As noticed on #98505 - we had fast-isel test but not SDAG
Commit: 25952ec64791e781f9bdd7bf29ab78f0095b8ee7
https://github.com/llvm/llvm-project/commit/25952ec64791e781f9bdd7bf29ab78f0095b8ee7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrMMX.td
M llvm/test/CodeGen/X86/nontemporal.ll
Log Message:
-----------
[X86] Add MMX nontemporal store pattern
As noticed on #98505 - try to reduce codegen diffs until we're ready to drop MMX entirely
Commit: 1ebfc81a91194c000ac70b4ea53891cc956aa6eb
https://github.com/llvm/llvm-project/commit/1ebfc81a91194c000ac70b4ea53891cc956aa6eb
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/test/MC/RISCV/insn_c.s
Log Message:
-----------
[RISCV] Fix InsnCI register type (#100113)
According to the spec the CI type instructions can take any of the 32
RVI registers.
Fixes #100112
Commit: 1df4d866cca51eeab8f012a97cc50957b45971fe
https://github.com/llvm/llvm-project/commit/1df4d866cca51eeab8f012a97cc50957b45971fe
Author: azhan92 <alisonxzhang at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Driver/ToolChains/Arch/PPC.cpp
M clang/test/Misc/target-invalid-cpu-note.c
M clang/test/Preprocessor/init-ppc64.c
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCSubtarget.h
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/test/CodeGen/PowerPC/check-cpu.ll
M llvm/test/CodeGen/PowerPC/mma-acc-spill.ll
R llvm/test/CodeGen/PowerPC/p10-constants.ll
A llvm/test/CodeGen/PowerPC/p10-p11-constants.ll
M llvm/unittests/TargetParser/Host.cpp
Log Message:
-----------
[PowerPC] Add support for -mcpu=pwr11 / -mtune=pwr11 (#99511)
This PR adds support for -mcpu=pwr11/power11 and -mtune=pwr11/power11 in
clang and llvm.
Commit: 63b382bbde5994e8f2cec75883320e3ad9fd618f
https://github.com/llvm/llvm-project/commit/63b382bbde5994e8f2cec75883320e3ad9fd618f
Author: azhan92 <alisonxzhang at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/CodeGen/aix-builtin-cpu-is.c
M clang/test/CodeGen/builtin-cpu-supports.c
M llvm/include/llvm/TargetParser/PPCTargetParser.def
Log Message:
-----------
[PowerPC] Add builtin_cpu_is P11 support (#99550)
This PR adds support for __builtin_cpu_is ("power11")
Commit: 37123e9915407d266074aaf81c5de9399b672e53
https://github.com/llvm/llvm-project/commit/37123e9915407d266074aaf81c5de9399b672e53
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/unittests/ProfileData/CMakeLists.txt
Log Message:
-----------
Fix link error after cc7308a156 with shared libraries
/usr/bin/ld: CMakeFiles/ProfileDataTests.dir/PGOCtxProfReaderWriterTest.cpp.o: undefined reference to symbol '_ZN4llvm15BitcodeAnalyzer7analyzeESt8optionalINS_13BCDumpOptionsEES1_INS_9StringRefEE'
/usr/bin/ld: /work/kparzysz/git/llvm.org/b/x86/lib/libLLVMBitReader.so.20.0git: error adding symbols: DSO missing from command line
Commit: 5589f2977117ec4685018472ca5f01355424bab9
https://github.com/llvm/llvm-project/commit/5589f2977117ec4685018472ca5f01355424bab9
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/AST/Interp/FunctionPointer.h
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/Pointer.cpp
M clang/lib/AST/Interp/Pointer.h
Log Message:
-----------
[clang][Interp] Merge FunctionPointer into Pointer
Back when I introduced the FunctionPointer class, I assumed that we
can always know that a Pointer is not a FunctionPointer. With the
DecayPtr op, that changed somewhat, but the information whether a
Pointer was created through a FunctionPointer was lost.
However, we need this information, especially when we're in the
codegen stage.
Commit: cd2214b360ff7b1dfe2d43a60cc7fbe5826f741c
https://github.com/llvm/llvm-project/commit/cd2214b360ff7b1dfe2d43a60cc7fbe5826f741c
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h
Log Message:
-----------
[Frontend][OpenMP] Add deduction guide for `ConstructCompositionT`
Commit: f1b76c53b6312a10d2ee4219e980498e7cbe5d53
https://github.com/llvm/llvm-project/commit/f1b76c53b6312a10d2ee4219e980498e7cbe5d53
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vselect-avx.ll
Log Message:
-----------
X86] combineConcatVectorOps - IsConcatFree - peek through bitcasts to find inplace subvectors.
The EXTRACT_SUBVECTOR nodes don't have to be the same type, they just need to be at the correct bit offsets when concatenated back together.
This reapplies d43ec97de081755990264049eba09cb7c83cb321 (after being reverted 68cb903594cd03dd708ef70c85c10807a6deefb5) now that 65e86a8f3fb44dc09dc2e08526d69e3a57f63995 has landed to address a downstream issue.
Commit: 6476a1d6865fc3a4c0fa3e436174a9a99a6ffedb
https://github.com/llvm/llvm-project/commit/6476a1d6865fc3a4c0fa3e436174a9a99a6ffedb
Author: Nico Weber <thakis at chromium.org>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGenData/BUILD.gn
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
R llvm/utils/gn/secondary/llvm/tools/llvm-cgdata/BUILD.gn
Log Message:
-----------
Revert "[gn build] Port d3fb41dddc11 (llvm-cgdata)"
This reverts commit adea9f9362085310d95a193f881978f51a79a3ba.
d3fb41dddc11 was reverted in 73d78973fe07.
Commit: f8cdffab60268ac6517177eab9a0c4cd17b3b20b
https://github.com/llvm/llvm-project/commit/f8cdffab60268ac6517177eab9a0c4cd17b3b20b
Author: Max Beck-Jones <max.beck-jones at arm.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve-i1-add-reduce.ll
Log Message:
-----------
[AArch64] Lower scalable i1 vector add reduction to cntp (#100118)
Doing an add reduction on a vector of i1 elements is the same as
counting the number of set elements so such a reduction can be lowered
to a cntp instruction. This saves a number of instructions over
performing a UADDV. This patch only handles straightforward cases (i.e.
when vectors are not split).
Commit: b4ebf2d2872e28883ac654dec5414cb3a565fa17
https://github.com/llvm/llvm-project/commit/b4ebf2d2872e28883ac654dec5414cb3a565fa17
Author: Alex Crichton <alex at alexcrichton.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Driver/ToolChains/WebAssembly.cpp
Log Message:
-----------
[WebAssembly] Disable running `wasm-opt` on components (#98373)
This commit adds a check that disables `wasm-opt` for the
`wasm32-wasip2` target because `wasm-opt` doesn't support components at
this time. This also fixes a minor issue from #95208 where if `wasm-opt`
was disabled then the linker wouldn't run at all.
Commit: 20fe2525ff97b73e9b6d4bc570682a64d4b58f6e
https://github.com/llvm/llvm-project/commit/20fe2525ff97b73e9b6d4bc570682a64d4b58f6e
Author: Tobias Hieta <tobias at hieta.se>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/utils/release/bump-version.py
Log Message:
-----------
[Utils] Updates to bump-version.py (#100089)
* Add support for --git flag to bump version for a git suffix
* Update location of the new file where the version is stored
Commit: 81e2a57b41de9417f7735c53088876d1ef7b555d
https://github.com/llvm/llvm-project/commit/81e2a57b41de9417f7735c53088876d1ef7b555d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
A llvm/test/MC/AMDGPU/reloc-operands-gfx10.s
Log Message:
-----------
AMDGPU: Fix assembler asserting on expressions in vop3 instructions (#100103)
Fixes #100075
---------
Co-authored-by: Jay Foad <jay.foad at amd.com>
Commit: 58f3c5e696021d9e571f868ed3bb4b27b3722df4
https://github.com/llvm/llvm-project/commit/58f3c5e696021d9e571f868ed3bb4b27b3722df4
Author: Leonard Grey <lgrey at chromium.org>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M lld/MachO/CMakeLists.txt
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/InputSection.cpp
M lld/MachO/OutputSegment.cpp
M lld/MachO/OutputSegment.h
A lld/MachO/Sections.cpp
A lld/MachO/Sections.h
M lld/test/MachO/arm64-thunks.s
M lld/test/MachO/section-order.s
M llvm/utils/gn/secondary/lld/MachO/BUILD.gn
Log Message:
-----------
[lld-macho] Fix thunks for non-__text TEXT sections (#99052)
This supersedes https://github.com/llvm/llvm-project/pull/87818 and
fixes https://github.com/llvm/llvm-project/issues/52767
When calculating arm64 thunks, we make a few assumptions that may not
hold when considering code sections outside of `__text`:
1. That a section needs thunks only if its size is larger than the
branch range.
2. That any calls into `__stubs` are necessarily forward jumps (that is,
the section with the jump is ordered before `__stubs`)
Sections like this exist in the wild, most prominently the
`__lcxx_overrides` section introduced in
https://github.com/llvm/llvm-project/pull/69498
This change:
- Ensures that if one section in `__TEXT` gets thunks, all of them do.
- Makes all code sections in `__TEXT` contiguous (and guaranteed to be
placed before `__stubs`)
Commit: 9628777479a970db5d0c2d0b456dac6633864760
https://github.com/llvm/llvm-project/commit/9628777479a970db5d0c2d0b456dac6633864760
Author: PaulXiCao <paulxicao7 at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M libcxx/include/__math/hypot.h
M libcxx/include/cmath
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/numerics/c.math/cmath.pass.cpp
M libcxx/test/support/fp_compare.h
Log Message:
-----------
[libc++][math] Fix undue overflowing of `std::hypot(x,y,z)` (#93350)
The 3-dimentionsional `std::hypot(x,y,z)` was sub-optimally implemented.
This lead to possible over-/underflows in (intermediate) results which
can be circumvented by this proposed change.
The idea is to to scale the arguments (see linked issue for full
discussion).
Tests have been added for problematic over- and underflows.
Closes #92782
Commit: 1a3cfe5b9dc9c80a375506262b54b51d929df52d
https://github.com/llvm/llvm-project/commit/1a3cfe5b9dc9c80a375506262b54b51d929df52d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/test/Driver/linker-wrapper-libs.c
M clang/test/Driver/linker-wrapper.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[LinkerWrapper] Pass all files to the device linker (#97573)
Summary:
The linker wrapper's job is to extract embedded device code from fat
binaries and create linked images that can then be embedded and
executed. In order to support LTO, we originally reinvented all of the
LTO handling that `ld.lld` normally does. Primarily, this was because
`nvlink` didn't support this at all, and we have special hacks required
for offloading languages interacting with archive libraries.
Now since I wrote https://github.com/llvm/llvm-project/pull/96561 we
should be able to pass all the inputs to the device linker
transparently. This has the advantage of allowing the `clang` Driver to
do its own handling. Primarily, this will be used to implicitly pass
libraries to the device link job to make it more consistent with other
toolchains.
The JIT support is a notable departure, however there is an option
called `--lto-emit-llvm` that performs the exact function where we want
the final link job to output LLVM-IR that we can then embed instead.
This patch does not fully delete the LTO handling, primarily because I
think the SPIR-V people might want it. To see only the relevant patches,
ignore the first commit of the nvlink-wrapper.
Depends on https://github.com/llvm/llvm-project/pull/96561.
Commit: b42fe6740ec696dca0e3dc914d2638088caa3f53
https://github.com/llvm/llvm-project/commit/b42fe6740ec696dca0e3dc914d2638088caa3f53
Author: David Green <david.green at arm.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/arm64-subvector-extend.ll
M llvm/test/CodeGen/AArch64/arm64-vabs.ll
M llvm/test/CodeGen/AArch64/cmp-select-sign.ll
M llvm/test/CodeGen/AArch64/fptoi.ll
M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
M llvm/test/CodeGen/AArch64/nontemporal-load.ll
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
M llvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-minmaxi.ll
M llvm/test/CodeGen/Thumb2/mve-vst3.ll
M llvm/test/CodeGen/Thumb2/mve-vst4.ll
Log Message:
-----------
[DAG] Add users of operand of simplified extract_vector_elt to worklist (#100074)
This helps to ensure we revisit the last extract_element uses of a node
so that it can be optimized away in cases such as extract(insert(scalartovec(x), 1), 0).
Commit: e3b30bc553775f29661eebc8e022efa4cad91610
https://github.com/llvm/llvm-project/commit/e3b30bc553775f29661eebc8e022efa4cad91610
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
A lld/MachO/BPSectionOrderer.cpp
A lld/MachO/BPSectionOrderer.h
M lld/MachO/CMakeLists.txt
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/Options.td
M lld/MachO/SectionPriorities.cpp
A lld/test/MachO/bp-section-orderer-errs.s
A lld/test/MachO/bp-section-orderer-stress.s
A lld/test/MachO/bp-section-orderer.s
Log Message:
-----------
[lld][InstrProf] Profile guided function order (#96268)
Add the lld flags `--irpgo-profile-sort=<profile>` and
`--compression-sort={function,data,both}` to order functions to improve
startup time, and functions or data to improve compressed size,
respectively.
We use Balanced Partitioning to determine the best section order using
traces from IRPGO profiles (see
https://discourse.llvm.org/t/rfc-temporal-profiling-extension-for-irpgo/68068
for details) to improve startup time and using hashes of section
contents to improve compressed size.
In our recent LLVM talk (https://www.youtube.com/watch?v=yd4pbSTjwuA),
we showed that this can reduce page faults during startup by 40% on a
large iOS app and we can reduce compressed size by 0.8-3%.
More details can be found in https://dl.acm.org/doi/10.1145/3660635
---------
Co-authored-by: Vincent Lee <thevinster at users.noreply.github.com>
Commit: 0cf92b1a464e20a397cb64f463b2af6992125e1d
https://github.com/llvm/llvm-project/commit/0cf92b1a464e20a397cb64f463b2af6992125e1d
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/utils/gn/secondary/lld/MachO/BUILD.gn
Log Message:
-----------
[gn build] Port e3b30bc55377
Commit: d1e28e2a7bd4642e6a5ec963a5ca2ad2ba1b2b59
https://github.com/llvm/llvm-project/commit/d1e28e2a7bd4642e6a5ec963a5ca2ad2ba1b2b59
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/test/CodeGen/builtin-cpu-supports.c
M clang/test/Preprocessor/has_builtin_cpuid.c
M clang/test/Sema/builtin-cpu-supports.c
M llvm/include/llvm/TargetParser/RISCVISAInfo.h
M llvm/lib/TargetParser/RISCVISAInfo.cpp
Log Message:
-----------
[RISCV] Support __builtin_cpu_init and __builtin_cpu_supports (#99700)
This implements the __builtin_cpu_init and __builtin_cpu_supports
builtin routines based on the compiler runtime changes in
https://github.com/llvm/llvm-project/pull/85790.
This is inspired by https://github.com/llvm/llvm-project/pull/85786.
Major changes are a) a restriction in scope to only the builtins (which
have a much narrower user interface), and the avoidance of false
generality. This change deliberately only handles group 0 extensions
(which happen to be all defined ones today), and avoids the tblgen
changes from that review.
I don't have an environment in which I can actually test this, but @BeMg
has been kind enough to report that this appears to work as expected.
Before this can make it into a release, we need a change such as
https://github.com/llvm/llvm-project/pull/99958. The gcc docs claim that
cpu_support can be called by "normal" code without calling the cpu_init
routine because the init routine will have been called by a high
priority constructor. Our current compiler-rt mechanism does not do
this.
Commit: fd58e508803483f566f446193250a581107d7181
https://github.com/llvm/llvm-project/commit/fd58e508803483f566f446193250a581107d7181
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV] Reverse iteration/deletion structure in vsetvli coalescing [NFC] (#98936)
The code previously deferred deleting the vsetvli to avoid invalidating
iterators, but eagerly deleted any ADDIs feeding the AVL register
operand. This was safe because the iterator was known to point to a
non-ADDI instruction (the vsetvli which was the previous user.) This
change switches to using an early_inc_range so that we can eagerly
delete the vsetvlis, but have to track ADDIs for later deletion.
This is purely stylistic, but IMO makes the code easier to follow. It
will also simplify a future change to support recursive deletion of
trivially dead instructions (i.e. LUI/ADDI pairs.)
Commit: a138d754cc1833e624aa89d4ac9fdb2086259e9a
https://github.com/llvm/llvm-project/commit/a138d754cc1833e624aa89d4ac9fdb2086259e9a
Author: Thorsten Schütt <schuett at gmail.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-threeway-cmp.mir
Log Message:
-----------
[GlobalIsel] Fix tests for G_SCMP and G_UCMP (#100133)
The return type of both is signed. Thus, we have to use sext.
Follow up to https://github.com/llvm/llvm-project/pull/99820
Commit: d64eccf4335e99360132b724d060d704892fbb02
https://github.com/llvm/llvm-project/commit/d64eccf4335e99360132b724d060d704892fbb02
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
R clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h
A clang/include/clang/CodeGen/ObjectFilePCHContainerWriter.h
A clang/include/clang/Serialization/ObjectFilePCHContainerReader.h
M clang/lib/CodeGen/CMakeLists.txt
R clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
A clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Interpreter/InterpreterUtils.h
M clang/lib/Serialization/CMakeLists.txt
A clang/lib/Serialization/ObjectFilePCHContainerReader.cpp
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/tools/c-index-test/CMakeLists.txt
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-check/ClangCheck.cpp
M clang/tools/driver/cc1_main.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/tools/lldb-instr/Instrument.cpp
Log Message:
-----------
[clang] Split ObjectFilePCHContainerReader from ObjectFilePCHContainerWriter (#99599)
Close https://github.com/llvm/llvm-project/issues/99479
See https://github.com/llvm/llvm-project/issues/99479 for details
Commit: 4854e253590efbe2fe886b1be4ea8ec7aa7a08b0
https://github.com/llvm/llvm-project/commit/4854e253590efbe2fe886b1be4ea8ec7aa7a08b0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M offload/test/api/omp_dynamic_shared_memory_amdgpu.c
M offload/test/api/omp_dynamic_shared_memory_mixed_amdgpu.c
M offload/test/offloading/bug51982.c
Log Message:
-----------
[Offload] Re-enable tests that are now passing
Summary:
Some recent patches made these stop failing so the XFAIL now makes the
bots go red.
Fixes https://github.com/llvm/llvm-project/issues/98903
Commit: b8d2b775f2feada0016648d09c078838dedf11f6
https://github.com/llvm/llvm-project/commit/b8d2b775f2feada0016648d09c078838dedf11f6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[SelectionDAGBuilder] Avoid const_cast on call to matchSelectPattern. NFC (#100053)
By making the LHS and RHS const pointers, we can use the const signature
of matchSelectPattern.
Commit: df4fa47b57a782851d29c0cf7934051f12dda32e
https://github.com/llvm/llvm-project/commit/df4fa47b57a782851d29c0cf7934051f12dda32e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Use MVT::changeVectorElementType. NFC
Commit: 3c8efd79283b4c9d25483bc69e3096ccdbddddef
https://github.com/llvm/llvm-project/commit/3c8efd79283b4c9d25483bc69e3096ccdbddddef
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/test/OpenMP/ompx_attributes_codegen.cpp
M clang/test/OpenMP/parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_debug_codegen.cpp
M clang/test/OpenMP/target_parallel_for_debug_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-3.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M offload/test/offloading/default_thread_limit.c
Log Message:
-----------
[OpenMP] Ensure the actual kernel is annotated with launch bounds (#99927)
In debug mode there is a wrapper (the kernel) around the function in
which we generate the kernel code. We worked around this before to get
the correct kernel name, but now we really distinguish both to attach
the launch bounds to the kernel, not the inner function.
Commit: c2e438675754b83c31d7d5ba40cb13fe77e795de
https://github.com/llvm/llvm-project/commit/c2e438675754b83c31d7d5ba40cb13fe77e795de
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M libcxx/test/std/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
Log Message:
-----------
[libc++][vector<bool>] Tests shrink_to_fit requirement. (#98009)
`vector<bool>`'s shrink_to_fit implementation is using the
"swap-to-free-container-resources-trick" which only shrinks when the
input vector is empty. Since the request to shrink_to_fit is
non-binding, this is a valid implementation. It is not a high-quality
implementation. Since `vector<bool>` is not a very popular container the
implementation has not been changed and only a test to validate the
non-growing property has been added.
This was discovered while investigating #95161.
Commit: 87f2c25f3dad65890fc8e9abbe9765e44979ed9d
https://github.com/llvm/llvm-project/commit/87f2c25f3dad65890fc8e9abbe9765e44979ed9d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M lldb/tools/debugserver/source/PThreadEvent.cpp
M lldb/tools/debugserver/source/PThreadEvent.h
Log Message:
-----------
[lldb] Unify WaitForSetEvents and WaitForEventsToReset (#99997)
Unify the implementations of WaitForSetEvents and WaitForEventsToReset.
The former deals with the possibility of a race between the timeout and
the predicate while the latter does not. The functions were also
inconsistent in when they would recompute the mask. This patch unifies
the two implementations and make them behave exactly the same modulo the
predicate.
rdar://130562344
Commit: ef1367faed1ab68f034a8da01166f5bc66bbbe35
https://github.com/llvm/llvm-project/commit/ef1367faed1ab68f034a8da01166f5bc66bbbe35
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fptosi-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fptoui-sat.ll
Log Message:
-----------
[RISCV] Use vnclip(u) to handle fp_to_(s/u)int_sat that needs additional narrowing. (#100071)
If vncvt doesn't produce the destination type directly, use vnclip to do
additional narrowing with saturation.
Commit: d0ca9f23e8f25b0509c3ff34ed215508b39ea6e7
https://github.com/llvm/llvm-project/commit/d0ca9f23e8f25b0509c3ff34ed215508b39ea6e7
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M libcxx/include/string
M libcxx/test/std/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
Log Message:
-----------
[libc++][string] Fixes shrink_to_fit. (#97961)
This ensures that shrink_to_fit does not increase the allocated size.
Partly addresses #95161
Commit: 162d8eed48c38d01b1e3793876c140b725776806
https://github.com/llvm/llvm-project/commit/162d8eed48c38d01b1e3793876c140b725776806
Author: Fangrui Song <i at maskray.me>
Date: 2024-07-23 (Tue, 23 Jul 2024)
Changed paths:
M .github/CODEOWNERS
M .github/workflows/version-check.yml
M bolt/docs/CommandLineArgumentReference.md
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M clang-tools-extra/clang-tidy/add_new_check.py
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.Move.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/optin.taint.TaintedAlloc.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.PutenvStackArray.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.BlockInCriticalSection.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang/cmake/caches/Fuchsia-stage2.cmake
A clang/docs/ClangNVLinkWrapper.rst
M clang/docs/HLSL/AvailabilityDiagnostics.rst
M clang/docs/HLSL/ExpectedDifferences.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/index.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
R clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h
A clang/include/clang/CodeGen/ObjectFilePCHContainerWriter.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Lex/PreprocessorOptions.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaOpenMP.h
A clang/include/clang/Serialization/ObjectFilePCHContainerReader.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Interp/ByteCodeEmitter.cpp
M clang/lib/AST/Interp/Descriptor.cpp
M clang/lib/AST/Interp/Descriptor.h
M clang/lib/AST/Interp/FunctionPointer.h
M clang/lib/AST/Interp/Interp.cpp
M clang/lib/AST/Interp/Interp.h
M clang/lib/AST/Interp/InterpBuiltin.cpp
M clang/lib/AST/Interp/Pointer.cpp
M clang/lib/AST/Interp/Pointer.h
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/LoongArch.cpp
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGRecordLayout.h
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
R clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
A clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.h
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/lib/Driver/ToolChains/Arch/PPC.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Driver/ToolChains/PS4CPU.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Interpreter/InterpreterUtils.h
M clang/lib/Lex/DependencyDirectivesScanner.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/Serialization/CMakeLists.txt
A clang/lib/Serialization/ObjectFilePCHContainerReader.cpp
M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/test/APINotes/Inputs/Headers/Methods.apinotes
M clang/test/APINotes/Inputs/Headers/Methods.h
M clang/test/APINotes/Inputs/Headers/Namespaces.apinotes
M clang/test/APINotes/Inputs/Headers/Namespaces.h
M clang/test/APINotes/methods.cpp
M clang/test/APINotes/namespaces.cpp
M clang/test/AST/Interp/atomic.c
M clang/test/AST/Interp/codegen.cpp
M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
M clang/test/Analysis/builtin-functions.cpp
M clang/test/Analysis/diagnostics/explicit-suppression.cpp
A clang/test/Analysis/issue-94193.cpp
M clang/test/Analysis/stream.c
M clang/test/Analysis/use-after-move.cpp
M clang/test/CMakeLists.txt
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-20.cpp
M clang/test/CodeGen/aix-builtin-cpu-is.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/builtin-cpu-supports.c
M clang/test/CodeGen/ptrauth-function-attributes.c
A clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
A clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
A clang/test/Driver/Inputs/multilib_aarch64_linux_tree/usr/include/aarch64-linux-gnu/.keep
A clang/test/Driver/Inputs/multilib_aarch64_linux_tree/usr/include/aarch64-linux-pauthtest/.keep
A clang/test/Driver/aarch64-multilib-pauthabi.c
M clang/test/Driver/aarch64-ptrauth.c
M clang/test/Driver/cuda-cross-compiling.c
M clang/test/Driver/linker-wrapper-libs.c
M clang/test/Driver/linker-wrapper.c
M clang/test/Driver/loongarch-features.c
M clang/test/Driver/loongarch-march.c
M clang/test/Driver/loongarch-mlasx.c
M clang/test/Driver/loongarch-msimd.c
M clang/test/Driver/loongarch-msingle-float.c
M clang/test/Driver/loongarch-msoft-float.c
M clang/test/Driver/loongarch-mtune.c
A clang/test/Driver/nvlink-wrapper.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/ps4-ps5-runtime-flags.c
M clang/test/Misc/target-invalid-cpu-note.c
M clang/test/OpenMP/generic_loop_ast_print.cpp
M clang/test/OpenMP/generic_loop_codegen.cpp
M clang/test/OpenMP/ompx_attributes_codegen.cpp
M clang/test/OpenMP/parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_debug_codegen.cpp
M clang/test/OpenMP/target_parallel_for_debug_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-3.cpp
M clang/test/PCH/pragma-loop.cpp
M clang/test/Parser/cxx-template-decl.cpp
M clang/test/Preprocessor/has_builtin_cpuid.c
M clang/test/Preprocessor/init-loongarch.c
M clang/test/Preprocessor/init-ppc64.c
A clang/test/Preprocessor/pragma_mc_func.c
M clang/test/Preprocessor/riscv-target-features.c
M clang/test/Sema/atomic-ops.c
M clang/test/Sema/builtin-cpu-supports.c
A clang/test/Sema/ptrauth-indirect-goto.c
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
A clang/test/SemaCXX/invalid-template-declaration.cpp
M clang/test/SemaTemplate/class-template-decl.cpp
M clang/test/SemaTemplate/nested-template.cpp
M clang/test/lit.cfg.py
M clang/tools/CMakeLists.txt
M clang/tools/c-index-test/CMakeLists.txt
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-check/ClangCheck.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
A clang/tools/clang-nvlink-wrapper/CMakeLists.txt
A clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
A clang/tools/clang-nvlink-wrapper/NVLinkOpts.td
M clang/tools/driver/cc1_main.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
M clang/unittests/Tooling/CMakeLists.txt
M clang/unittests/Tooling/RecursiveASTVisitorTests/DeductionGuide.cpp
M cmake/Modules/LLVMVersion.cmake
M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/include/profile/InstrProfData.inc
M compiler-rt/lib/builtins/fp_extend.h
M compiler-rt/lib/builtins/fp_lib.h
M compiler-rt/lib/rtsan/rtsan.cpp
M compiler-rt/lib/rtsan/rtsan.h
M compiler-rt/lib/rtsan/rtsan_interceptors.cpp
M compiler-rt/lib/rtsan/tests/CMakeLists.txt
M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
M compiler-rt/test/asan/TestCases/Posix/ignore_free_hook.cpp
M compiler-rt/test/hwasan/TestCases/Posix/ignore_free_hook.cpp
M compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
M cross-project-tests/lit.cfg.py
M flang/include/flang/Semantics/tools.h
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Semantics/OpenMP/copyprivate04.f90
M flang/test/Semantics/OpenMP/do05-positivecase.f90
M flang/test/Semantics/OpenMP/do20.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
M flang/test/Semantics/OpenMP/reduction08.f90
M flang/test/Semantics/OpenMP/reduction09.f90
M flang/test/Semantics/OpenMP/symbol01.f90
M flang/test/Semantics/OpenMP/symbol02.f90
M flang/test/Semantics/OpenMP/symbol03.f90
M flang/test/Semantics/OpenMP/symbol05.f90
M flang/test/Semantics/OpenMP/symbol07.f90
M flang/test/Semantics/OpenMP/symbol08.f90
M flang/test/Semantics/OpenMP/symbol09.f90
A flang/test/Transforms/debug-92391.fir
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/gpu/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/dev/header_generation.rst
M libc/newhdrgen/yaml_to_classes.py
M libc/src/__support/threads/thread.h
M libc/src/math/generic/expm1.cpp
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/at_quick_exit.cpp
M libc/src/stdlib/atexit.cpp
R libc/src/stdlib/exit_handler.cpp
M libc/src/stdlib/exit_handler.h
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/test/UnitTest/CMakeLists.txt
M libcxx/cmake/caches/Generic-hardening-mode-fast-with-abi-breaks.cmake
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes.rst
M libcxx/docs/ReleaseNotes/19.rst
M libcxx/include/__config
M libcxx/include/__configuration/abi.h
M libcxx/include/__iterator/bounded_iter.h
M libcxx/include/__math/hypot.h
M libcxx/include/cmath
M libcxx/include/format
M libcxx/include/string
M libcxx/include/vector
M libcxx/test/libcxx/containers/sequences/vector/abi.compile.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.add.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.decrement.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.dereference.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.increment.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/assert.iterator.index.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.add.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.decrement.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.dereference.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.increment.pass.cpp
R libcxx/test/libcxx/containers/sequences/vector/debug.iterator.index.pass.cpp
A libcxx/test/libcxx/containers/sequences/vector/fill_to_capacity.h
M libcxx/test/libcxx/strings/basic.string/alignof.compile.pass.cpp
M libcxx/test/libcxx/strings/basic.string/sizeof.compile.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.add.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.decrement.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.dereference.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.increment.pass.cpp
A libcxx/test/libcxx/strings/basic.string/string.iterators/assert.iterator.index.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.add.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.decrement.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.dereference.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.increment.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.index.pass.cpp
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/std/containers/sequences/vector.bool/shrink_to_fit.pass.cpp
A libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
M libcxx/test/std/numerics/c.math/cmath.pass.cpp
M libcxx/test/std/strings/basic.string/string.capacity/resize_and_overwrite.pass.cpp
M libcxx/test/std/strings/basic.string/string.capacity/shrink_to_fit.pass.cpp
M libcxx/test/support/fp_compare.h
M libcxx/utils/ci/vendor/android/Dockerfile.emulator
M libcxx/utils/ci/vendor/android/emulator-entrypoint.sh
M libcxx/utils/libcxx/test/features.py
A lld/MachO/BPSectionOrderer.cpp
A lld/MachO/BPSectionOrderer.h
M lld/MachO/CMakeLists.txt
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/Config.h
M lld/MachO/Driver.cpp
M lld/MachO/InputSection.cpp
M lld/MachO/Options.td
M lld/MachO/OutputSegment.cpp
M lld/MachO/OutputSegment.h
M lld/MachO/SectionPriorities.cpp
A lld/MachO/Sections.cpp
A lld/MachO/Sections.h
M lld/docs/ReleaseNotes.rst
M lld/test/MachO/arm64-32-stubs.s
M lld/test/MachO/arm64-stubs.s
M lld/test/MachO/arm64-thunks.s
A lld/test/MachO/bp-section-orderer-errs.s
A lld/test/MachO/bp-section-orderer-stress.s
A lld/test/MachO/bp-section-orderer.s
M lld/test/MachO/dyld-stub-binder.s
M lld/test/MachO/invalid/chained-fixups-incompatible.s
M lld/test/MachO/objc-selrefs.s
M lld/test/MachO/section-order.s
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
M lldb/tools/debugserver/source/PThreadEvent.cpp
M lldb/tools/debugserver/source/PThreadEvent.h
M lldb/tools/lldb-instr/Instrument.cpp
M llvm/docs/DirectX/DXILOpTableGenDesign.rst
M llvm/docs/PointerAuth.md
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCELFObjectWriter.h
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCMachObjectWriter.h
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/include/llvm/MC/MCXCOFFObjectWriter.h
M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
M llvm/include/llvm/SandboxIR/SandboxIR.h
M llvm/include/llvm/SandboxIR/SandboxIRValues.def
M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
M llvm/include/llvm/TargetParser/PPCTargetParser.def
M llvm/include/llvm/TargetParser/RISCVISAInfo.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/Utils/SimplifyCFGOptions.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
M llvm/lib/CodeGenData/CMakeLists.txt
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCObjectWriter.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/MC/MCXCOFFStreamer.cpp
M llvm/lib/MC/MachObjectWriter.cpp
M llvm/lib/MC/WinCOFFObjectWriter.cpp
M llvm/lib/MC/XCOFFObjectWriter.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/ProfileData/PGOCtxProfReader.cpp
M llvm/lib/ProfileData/PGOCtxProfWriter.cpp
M llvm/lib/SandboxIR/SandboxIR.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64FastISel.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/lib/Target/AMDGPU/SMInstructions.td
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFStreamer.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFStreamer.h
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFStreamer.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCSubtarget.h
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
M llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrMMX.td
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/LoongArchTargetParser.cpp
M llvm/lib/TargetParser/RISCVISAInfo.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/lib/Transforms/Utils/DXILResource.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/test/Analysis/LoopAccessAnalysis/forward-loop-independent.ll
A llvm/test/CodeGen/AArch64/GlobalISel/legalize-threeway-cmp.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/arm64-subvector-extend.ll
M llvm/test/CodeGen/AArch64/arm64-vabs.ll
M llvm/test/CodeGen/AArch64/cmp-select-sign.ll
M llvm/test/CodeGen/AArch64/double_reduct.ll
M llvm/test/CodeGen/AArch64/fptoi.ll
M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
A llvm/test/CodeGen/AArch64/hardened-br-jump-table.ll
M llvm/test/CodeGen/AArch64/neon-abd.ll
M llvm/test/CodeGen/AArch64/nontemporal-load.ll
A llvm/test/CodeGen/AArch64/ptrauth-fpac.ll
A llvm/test/CodeGen/AArch64/ptrauth-indirectbr.ll
A llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign-with-blend.ll
A llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign.ll
M llvm/test/CodeGen/AArch64/sadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/scmp.ll
M llvm/test/CodeGen/AArch64/ssub_sat_vec.ll
M llvm/test/CodeGen/AArch64/sve-doublereduct.ll
M llvm/test/CodeGen/AArch64/sve-fixed-vector-zext.ll
A llvm/test/CodeGen/AArch64/sve-i1-add-reduce.ll
M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
R llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
M llvm/test/CodeGen/AArch64/ucmp.ll
M llvm/test/CodeGen/AArch64/usub_sat_vec.ll
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fract.f64.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smrd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/widen-i8-i16-scalar-loads.ll
M llvm/test/CodeGen/AMDGPU/add.ll
M llvm/test/CodeGen/AMDGPU/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/amd.endpgm.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-load-offset-from-reg.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/and.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/build_vector.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
M llvm/test/CodeGen/AMDGPU/clamp.ll
M llvm/test/CodeGen/AMDGPU/cluster_stores.ll
M llvm/test/CodeGen/AMDGPU/combine-cond-add-sub.ll
M llvm/test/CodeGen/AMDGPU/combine-vload-extract.ll
M llvm/test/CodeGen/AMDGPU/copy_to_scc.ll
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/fdiv.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fmul.f16.ll
M llvm/test/CodeGen/AMDGPU/fmuladd.f16.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fpext.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/fshl.ll
M llvm/test/CodeGen/AMDGPU/fshr.ll
M llvm/test/CodeGen/AMDGPU/fsub.f16.ll
M llvm/test/CodeGen/AMDGPU/global-i16-load-store.ll
M llvm/test/CodeGen/AMDGPU/global_atomics.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/idot4s.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pkrtz.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.bf16.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.atomic.csub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
M llvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/llvm.rint.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.round.ll
M llvm/test/CodeGen/AMDGPU/llvm.sin.f16.ll
M llvm/test/CodeGen/AMDGPU/lshl-add-u64.ll
M llvm/test/CodeGen/AMDGPU/lshr.v2i16.ll
M llvm/test/CodeGen/AMDGPU/mad.u16.ll
M llvm/test/CodeGen/AMDGPU/madak.ll
M llvm/test/CodeGen/AMDGPU/memory_clause.ll
M llvm/test/CodeGen/AMDGPU/merge-s-load.mir
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-ctlz-cttz.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/mul_int24.ll
M llvm/test/CodeGen/AMDGPU/mul_uint24-amdgcn.ll
M llvm/test/CodeGen/AMDGPU/optimize-compare.ll
M llvm/test/CodeGen/AMDGPU/packed-op-sel.ll
M llvm/test/CodeGen/AMDGPU/post-ra-soft-clause-dbg-info.ll
M llvm/test/CodeGen/AMDGPU/promote-vect3-load.ll
M llvm/test/CodeGen/AMDGPU/ptr-buffer-alias-scheduling.ll
A llvm/test/CodeGen/AMDGPU/required-export-priority.ll
A llvm/test/CodeGen/AMDGPU/required-export-priority.mir
M llvm/test/CodeGen/AMDGPU/rotl.ll
M llvm/test/CodeGen/AMDGPU/rotr.ll
M llvm/test/CodeGen/AMDGPU/saddo.ll
M llvm/test/CodeGen/AMDGPU/sdiv.ll
M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
M llvm/test/CodeGen/AMDGPU/shl.v2i16.ll
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
M llvm/test/CodeGen/AMDGPU/smrd.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/sub.ll
M llvm/test/CodeGen/AMDGPU/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/twoaddr-constrain.ll
M llvm/test/CodeGen/AMDGPU/uaddo.ll
M llvm/test/CodeGen/AMDGPU/usubo.ll
M llvm/test/CodeGen/AMDGPU/v_add_u64_pseudo_sdwa.ll
M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
M llvm/test/CodeGen/AMDGPU/v_pack.ll
M llvm/test/CodeGen/AMDGPU/v_sat_pk_u8_i16.ll
M llvm/test/CodeGen/AMDGPU/v_sub_u64_pseudo_sdwa.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/zero_extend.ll
M llvm/test/CodeGen/ARM/neon_vabd.ll
M llvm/test/CodeGen/LoongArch/cpus.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvilv.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvpack.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvpick.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvrepl128vei.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvshuf4i.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vilv.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vpack.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vpick.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vreplvei.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shuffle-as-vshuf4i.ll
M llvm/test/CodeGen/LoongArch/psabi-restricted-scheduling.ll
M llvm/test/CodeGen/PowerPC/check-cpu.ll
M llvm/test/CodeGen/PowerPC/mma-acc-spill.ll
R llvm/test/CodeGen/PowerPC/p10-constants.ll
A llvm/test/CodeGen/PowerPC/p10-p11-constants.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg-branch-on-result.ll
M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
M llvm/test/CodeGen/RISCV/atomic-rmw.ll
M llvm/test/CodeGen/RISCV/atomic-signext.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fptosi-sat.ll
M llvm/test/CodeGen/RISCV/rvv/fptoui-sat.ll
M llvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
M llvm/test/CodeGen/Thumb2/mve-minmaxi.ll
M llvm/test/CodeGen/Thumb2/mve-vst3.ll
M llvm/test/CodeGen/Thumb2/mve-vst4.ll
M llvm/test/CodeGen/X86/abdu.ll
M llvm/test/CodeGen/X86/nontemporal.ll
M llvm/test/CodeGen/X86/vselect-avx.ll
M llvm/test/DebugInfo/Symbolize/ELF/arm-mapping-symbol.s
M llvm/test/DebugInfo/Symbolize/ELF/csky-mapping-symbol.s
M llvm/test/DebugInfo/omit-empty.ll
A llvm/test/Instrumentation/AddressSanitizer/skip-coro.ll
A llvm/test/MC/AMDGPU/reloc-operands-gfx10.s
M llvm/test/MC/RISCV/insn_c.s
M llvm/test/MC/RISCV/mapping-across-sections.s
M llvm/test/MC/RISCV/rv32zacas-invalid.s
M llvm/test/MC/RISCV/rv32zacas-valid.s
M llvm/test/MC/RISCV/rv64zacas-invalid.s
M llvm/test/MC/RISCV/rv64zacas-valid.s
M llvm/test/MC/RISCV/rvzabha-zacas-valid.s
M llvm/test/Other/new-pm-print-pipeline.ll
M llvm/test/Transforms/InstCombine/fma.ll
M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll
M llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/cmp-ptr-minmax.ll
A llvm/test/Transforms/SimplifyCFG/X86/two-entry-phi-fold-unpredictable.ll
M llvm/unittests/ProfileData/CMakeLists.txt
M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/TargetParser/Host.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
A llvm/utils/gn/secondary/clang/tools/clang-nvlink-wrapper/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/Tooling/BUILD.gn
M llvm/utils/gn/secondary/lld/MachO/BUILD.gn
M llvm/utils/gn/secondary/llvm/version.gni
M llvm/utils/lit/lit/__init__.py
M llvm/utils/release/bump-version.py
M mlir/include/mlir-c/BuiltinTypes.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/Utils/IndexingUtils.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinTypes.h
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/CommonTypeConstraints.td
M mlir/include/mlir/IR/Types.h
M mlir/lib/AsmParser/TokenKinds.def
M mlir/lib/AsmParser/TypeParser.cpp
M mlir/lib/Bindings/Python/IRTypes.cpp
M mlir/lib/CAPI/IR/BuiltinTypes.cpp
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMInlining.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Utils/IndexingUtils.cpp
M mlir/lib/IR/AffineExpr.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/Builders.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Types.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
M mlir/python/mlir/extras/types.py
M mlir/test/Conversion/FuncToLLVM/convert-funcs.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/LLVMIR/inlining.mlir
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Dialect/Linalg/canonicalize.mlir
M mlir/test/IR/attribute.mlir
M mlir/test/Target/LLVMIR/Import/function-attributes.ll
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/test/python/ir/builtin_types.py
M mlir/unittests/IR/AffineExprTest.cpp
M mlir/unittests/IR/ShapedTypeTest.cpp
M mlir/utils/lldb-scripts/mlirDataFormatters.py
M mlir/utils/tree-sitter-mlir/grammar.js
M offload/DeviceRTL/src/Parallelism.cpp
M offload/test/api/omp_dynamic_shared_memory_amdgpu.c
M offload/test/api/omp_dynamic_shared_memory_mixed_amdgpu.c
M offload/test/offloading/bug51982.c
M offload/test/offloading/default_thread_limit.c
M openmp/docs/ReleaseNotes.rst
M pstl/docs/ReleaseNotes.rst
Log Message:
-----------
remove MappingSymbolCounter
Created using spr 1.3.5-bogner
Compare: https://github.com/llvm/llvm-project/compare/91a8756d9438...162d8eed48c3
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