[all-commits] [llvm/llvm-project] 296fbe: [clang-tidy] Fix crash in modernize-loop-convert w...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Mon Jan 22 23:01:18 PST 2024
Branch: refs/heads/users/MaskRay/spr/elf-save-temps-lto-emit-asm-derive-elfasm-file-names-from-bitcode-file-names
Home: https://github.com/llvm/llvm-project
Commit: 296fbee5af89e8e4c31dd98f48a9770c4eb3ca4d
https://github.com/llvm/llvm-project/commit/296fbee5af89e8e4c31dd98f48a9770c4eb3ca4d
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
Log Message:
-----------
[clang-tidy] Fix crash in modernize-loop-convert when int is used as iterator (#78796)
Fix crash when built-in type (like int) is used as iterator, or when
call to begin() return integer.
Closes #78381
Commit: a7d7da6e45992b79fe712c1e228cc57c9f27fa7a
https://github.com/llvm/llvm-project/commit/a7d7da6e45992b79fe712c1e228cc57c9f27fa7a
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add SkipMacroDefinitionBody option (#78682)
Closes #67991.
See also: #70338
Co-authored-by: @tomekpaszek
Commit: 9eb0f86c279f40a792ec27bf0e9b491b8c90a640
https://github.com/llvm/llvm-project/commit/9eb0f86c279f40a792ec27bf0e9b491b8c90a640
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Implement CWG1878 "`operator auto` template" (#78103)
C++14 introduced deduced return type for regular functions, but shortly after [CWG1878](https://wg21.link/cwg1878) was filed and resolved to disallow deduced return types in conversion function templates. So this patch diagnoses such usage of deduced return type in C++14 mode onwards.
Fixes #51776
Commit: 6a433d77b1f49ddeb03e27394a9b7cbf6e472d1a
https://github.com/llvm/llvm-project/commit/6a433d77b1f49ddeb03e27394a9b7cbf6e472d1a
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCheckerImpl.h
M llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
M llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
Log Message:
-----------
[llvm-jitlink] Allow optional stub-kind filter in stub_addr() expressions (#78369)
We use `jitlink-check` lines in LIT tests as the primary tool for
testing JITLink backends. Parsing and evaluation of the expressions is
implemented in `RuntimeDyldChecker`. The `stub_addr(obj, name)`
expression allows to obtain the linker-generated stub for the external
symbol `name` in object file `obj`.
This patch adds support for a filter parameter to select one out of many
stubs. This is necessary for the AArch32 JITLink backend, which must be
able to emit two different kinds of stubs depending on the instruction
set state (Arm/Thumb) of the relocation site. Since the new parameter is
optional, we don't have to update existing tests.
Filters are regular expressions without brackets that match exactly one
existing stub. Given object file `armv7.o` with two stubs for external
function `ext` of kinds `armv7_abs_le` and `thumbv7_abs_le`, we get the
following filter results e.g.:
```
stub_addr(armv7.o, ext, thumb) thumbv7_abs_le
stub_addr(armv7.o, ext, thumbv7) thumbv7_abs_le
stub_addr(armv7.o, ext, armv7_abs_le) armv7_abs_le
stub_addr(armv7.o, ext, v7_.*_le) Error: "ext" has 2 candidate stubs in file "armv7.o". Please refine stub-kind filter "v7_.*_le" for disambiguation (encountered kinds are "thumbv7_abs_le", "armv7_abs_le").
stub_addr(armv7.o, ext, v8) Error: "ext" has 2 stubs in file "armv7.o", but none of them matches the stub-kind filter "v8" (all encountered kinds are "thumbv7_abs_le", "armv7_abs_le").
```
Commit: 1ad1f981a62213c1fc3145e8330f3c9b0dbe2b85
https://github.com/llvm/llvm-project/commit/1ad1f981a62213c1fc3145e8330f3c9b0dbe2b85
Author: Piotr Zegar <piotr.zegar at nokia.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.h
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-casting.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
Log Message:
-----------
[clang-tidy] Add readability-redundant-casting check (#70595)
Detects explicit type casting operations that involve the same source
and destination types, and subsequently recommend their removal. Covers
a range of explicit casting operations. Its primary objective is to
enhance code readability and maintainability by eliminating unnecessary
type casting.
Closes #67534
Commit: 14d59527e7b36cbab7fb92699a52843392aa22c0
https://github.com/llvm/llvm-project/commit/14d59527e7b36cbab7fb92699a52843392aa22c0
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Log Message:
-----------
[gn build] Port 1ad1f981a622
Commit: 7a8f5d97afbff948fa2437c81d08a5963ee7d8cf
https://github.com/llvm/llvm-project/commit/7a8f5d97afbff948fa2437c81d08a5963ee7d8cf
Author: Félix-Antoine Constantin <60141446+felix642 at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-inline-specifier.cpp
Log Message:
-----------
[clang-tidy] Added new check to detect redundant inline keyword (#73069)
This checks find usages of the inline keywork where it is already
implicitly defined by the compiler and suggests it's removal.
Fixes #72397
Commit: d70bfeb4e1461dca6c5d5a56e5aa304daa692ed7
https://github.com/llvm/llvm-project/commit/d70bfeb4e1461dca6c5d5a56e5aa304daa692ed7
Author: Bharathi Ramana Joshi <joshibharathiramana at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M mlir/include/mlir/Analysis/Presburger/IntegerRelation.h
M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
M mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
Log Message:
-----------
[MLIR][Presburger] Implement IntegerRelation::setId (#77872)
Commit: 920bb5430a96c346f7afcbe288e3546513b58012
https://github.com/llvm/llvm-project/commit/920bb5430a96c346f7afcbe288e3546513b58012
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Log Message:
-----------
[gn build] Port 7a8f5d97afbf
Commit: 63d7ca924feea1948329ba80c4dc4fad56112be3
https://github.com/llvm/llvm-project/commit/63d7ca924feea1948329ba80c4dc4fad56112be3
Author: Jay Foad <jay.foad at amd.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
Log Message:
-----------
[AMDGPU] Add GFX12 llvm.amdgcn.s.wait.*cnt intrinsics (#78723)
Commit: fd3346dba825f6b9c2873bdeafe34da8f8b4f3e1
https://github.com/llvm/llvm-project/commit/fd3346dba825f6b9c2873bdeafe34da8f8b4f3e1
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
Log Message:
-----------
[clang-tidy] fix modernize-use-auto incorrect fix hints for pointer (#77943)
Commit: a8a3711e745286fd26f726b3397dbe5fb03ea465
https://github.com/llvm/llvm-project/commit/a8a3711e745286fd26f726b3397dbe5fb03ea465
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
A llvm/test/CodeGen/AArch64/sme-zt0-state.ll
M llvm/unittests/Target/AArch64/SMEAttributesTest.cpp
Log Message:
-----------
[AArch64][SME2] Preserve ZT0 state around function calls (#78321)
If a function has ZT0 state and calls a function which does not
preserve ZT0, the caller must save and restore ZT0 around the call.
If the caller shares ZT0 state and the callee is not shared ZA, we must
additionally call SMSTOP/SMSTART ZA around the call.
This patch adds new AArch64ISDNodes for spilling & filling ZT0.
Where requiresPreservingZT0 is true, ZT0 state will be preserved
across a call.
Commit: fcb6737f82246c6046526f699c9a82a96f71ab55
https://github.com/llvm/llvm-project/commit/fcb6737f82246c6046526f699c9a82a96f71ab55
Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Support of TableGen identifiers beginning with a number. (#78571)
TableGen allows the identifiers beginning with a number.
This patch add the support of the recognition of such identifiers.
Commit: d0986519d58e6d71656019cfa6604efa4bf6d3e7
https://github.com/llvm/llvm-project/commit/d0986519d58e6d71656019cfa6604efa4bf6d3e7
Author: Martin Storsjö <martin at martin.st>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M lld/COFF/InputFiles.cpp
A lld/test/COFF/Inputs/lto-directives.obj
A lld/test/COFF/lto-directives.test
Log Message:
-----------
[LLD] [COFF] Preserve directives and export names from LTO objects (#78802)
The export names are saved as StringRefs pointing into the COFF
directives. In the case of LTO objects, this can be memory allocated
that is owned by the LTO InputFile, which gets destructed when doing the
compilation.
In the case of LTO objects from an older version of LLVM, which require
being upgraded when loaded, the directives string gets destructed, while
when using LTO objects of a matching version (the common case), the
directives string points into memory that doesn't get destructed on LTO
compilation.
Test this by linking a bundled binary LTO object file, from an older
version of LLVM.
This fixes issue #78591, and downstream issue
https://github.com/mstorsjo/llvm-mingw/issues/392.
Commit: d01145f7607432586faa771d6519196cd27458df
https://github.com/llvm/llvm-project/commit/d01145f7607432586faa771d6519196cd27458df
Author: Ryan Landay <rlanday at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
Log Message:
-----------
Fix typo in AttrDocs.td (__single_inhertiance => __single_inheritance) (#78838)
Commit: 0f80f5e362fb43a9335bd154c5f7976a96e32cfc
https://github.com/llvm/llvm-project/commit/0f80f5e362fb43a9335bd154c5f7976a96e32cfc
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/include/clang/Sema/ScopeInfo.h
Log Message:
-----------
[NFC] fix typo in clang/include/clang/Sema/ScopeInfo.h
Commit: b9a1e2ab8dead4863834f70cdae56104ec92d041
https://github.com/llvm/llvm-project/commit/b9a1e2ab8dead4863834f70cdae56104ec92d041
Author: nsurbay <21074287+nsurbay at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
Log Message:
-----------
[AArch64] Rename LDAPR<x>pre to LDAPR<x>post (#77340)
The feature FEAT_LRCPC3 introduces post-increment version of LDAPR and
LDIAPP instructions. The current disassembly of theses instructions is
correct but the opcode name is misleading with a 'pre' suffix instead of
'post'.
see :
-
https://developer.arm.com/documentation/ddi0602/2023-12/Base-Instructions/LDAPR--Load-Acquire-RCpc-Register-
-
https://developer.arm.com/documentation/ddi0602/2023-12/Base-Instructions/LDIAPP--Load-Acquire-RCpc-ordered-Pair-of-registers-
Commit: 818de32f31e8075657dd27938e4aeb1a46f3f631
https://github.com/llvm/llvm-project/commit/818de32f31e8075657dd27938e4aeb1a46f3f631
Author: kelbon <58717435+kelbon at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Analysis/call-invalidation.cpp
M clang/test/CodeGen/function-attributes.c
M clang/test/CodeGen/pragma-weak.c
M clang/test/Import/attr/Inputs/S.cpp
M clang/test/Import/attr/test.cpp
M clang/test/Index/attributes.c
M clang/test/Interpreter/disambiguate-decl-stmt.cpp
M clang/test/Sema/attr-print.c
A clang/test/Sema/incorrect_pure.cpp
M clang/test/SemaCXX/attr-print.cpp
M clang/test/SemaCXX/cxx0x-cursory-default-delete.cpp
M clang/test/SemaCXX/cxx11-attr-print.cpp
M clang/test/SemaCXX/warn-unused-value-cxx11.cpp
Log Message:
-----------
Warning for incorrect use of 'pure' attribute (#78200)
This adds a warning when applying the `pure` attribute along with the `const` attribute, or when applying the `pure` attribute to a function with a `void` return type (including constructors and destructors).
Fixes https://github.com/llvm/llvm-project/issues/77482
Commit: ec0ac85e58f0a80cc52a132336b132ffe7b50b59
https://github.com/llvm/llvm-project/commit/ec0ac85e58f0a80cc52a132336b132ffe7b50b59
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/test/Driver/linker-wrapper.c
Log Message:
-----------
[Clang][Obvious] Correctly disable Windows on linker-wrapper test
Commit: 0880742a60e9436e439eaee05bf0c8acf4c48a62
https://github.com/llvm/llvm-project/commit/0880742a60e9436e439eaee05bf0c8acf4c48a62
Author: Nathan Sidwell <nathan at acm.org>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
Log Message:
-----------
[NFC] Rename internal fns (#77994)
Internal functions should use a lowerCaseName, thus renamed.
Commit: ce8fcad5f4dfaecdc0c74a99508b86e8e5d1d9e8
https://github.com/llvm/llvm-project/commit/ce8fcad5f4dfaecdc0c74a99508b86e8e5d1d9e8
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libc/include/llvm-libc-macros/float-macros.h
Log Message:
-----------
[libc] Fix float.h header to include the system float.h first and add more definitions. (#78857)
Commit: 448b8e6162607f42948a11dd50793517198e4445
https://github.com/llvm/llvm-project/commit/448b8e6162607f42948a11dd50793517198e4445
Author: LEE KYOUNGHEON <stripe2933 at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libcxx/docs/Modules.rst
Log Message:
-----------
Module documentation improvement: prebuilt module location can be directly fetched via CMake variable. (#78405)
CMake officially supports binary directory variable of installed
dependency using `FetchContent`. According to the current documentation,
it fetches `std` module and use its binary directory as hardcoded
string, `${CMAKE_BINARY_DIR}/_deps/std-build`, however it can be
replaced with `${std_BINARY_DIR}`.
Reference: https://cmake.org/cmake/help/latest/module/FetchContent.html
Commit: 0175a1e4d33720ed7e827b3db5a36f88bdd790a3
https://github.com/llvm/llvm-project/commit/0175a1e4d33720ed7e827b3db5a36f88bdd790a3
Author: Daniil Dudkin <unterumarmung at yandex.ru>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
new-prs-labeler: Add `clang-tools-extra` labeling (#78633)
There is no automatic labeling for the Extra Clang Tools, except
Clang-Tidy and ClangD.
Commit: 1cc7cd46a9158e2c254ed72274c69f36f62cf7a3
https://github.com/llvm/llvm-project/commit/1cc7cd46a9158e2c254ed72274c69f36f62cf7a3
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libc/src/__support/CPP/limits.h
Log Message:
-----------
[libc] Fix size_t used without including stddef.h in CPP/limit.h. (#78861)
Commit: 85a8e5c3e0586e85a2fa3ff9cef12455bd039921
https://github.com/llvm/llvm-project/commit/85a8e5c3e0586e85a2fa3ff9cef12455bd039921
Author: Hui <hui.xie1990 at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libcxx/include/condition_variable
A libcxx/test/std/thread/thread.condition/thread.condition.condvarany/helpers.h
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_token_pred.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_token_pred.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_token_pred.pass.cpp
Log Message:
-----------
[libc++] fix condition_variable_any hangs on stop_request (#77127)
When I implemented `condition_variable_any::wait`, I missed the most
important paragraph in the spec:
> The following wait functions will be notified when there is a stop
request on the passed stop_token.
> In that case the functions return immediately, returning false if the
predicate evaluates to false.
From
https://eel.is/c++draft/thread.condition#thread.condvarany.intwait-1.
Fixes #76807
Commit: 2fc2ee136c0183f40af4c0e7a8d27092b8ce3415
https://github.com/llvm/llvm-project/commit/2fc2ee136c0183f40af4c0e7a8d27092b8ce3415
Author: XDeme <66138117+XDeme at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix poor spacing in `AlignArrayOfStructures: Left` (#77868)
Fixes llvm/llvm-project#62904
`AlignArrayOfStructures: Left` combined with `SpacesInParentheses: true`
causes the first cell of every row to have 1 additional space.
We were only setting the first cell of the first row to be against the
left brace, now every row will be against the left brace.
Commit: aaa7de1fc9255f489e760c3449efde9c07ddb1cb
https://github.com/llvm/llvm-project/commit/aaa7de1fc9255f489e760c3449efde9c07ddb1cb
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libcxx/test/libcxx/assertions/modes/enabling_assertions_enables_extensive_mode.pass.cpp
M libcxx/test/libcxx/assertions/modes/override_with_extensive_mode.pass.cpp
M libcxx/test/libcxx/assertions/modes/override_with_fast_mode.pass.cpp
Log Message:
-----------
[libc++][hardening] XFAIL test in fast mode under HWASAN (#78862)
After #77883, `fast` mode uses TRAP, and HWASAN
replaces TRAP with abort or error exit code.
On a quick looks it should be possible to avoid doing
that in HWASAN, but historically this is convention for all
sanitizers. Changing this behavior may break existing
users.
Other sanitizers are not affected because they don't
install TRAP handlers by default. But if they do, they also
replace TRAP with abort/exit.
Commit: 07b5829fcad6514ab1079027e1b4d3565f963ead
https://github.com/llvm/llvm-project/commit/07b5829fcad6514ab1079027e1b4d3565f963ead
Author: Hristo Hristov <hristo.goshev.hristov at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libcxx/test/support/check_assertion.h
Log Message:
-----------
[libc++] FreeBSD CI: Adds `<signal.h>` to `check_assertion.h` (#78863)
...in attempt to fix the FreeBSD CI.
I noticed that suddenly some tests in the latest PRs fail to compile on
FreeBSD (`SIGILL` and `SIGTRAP` not defined). This tries to resolve
the issue.
Co-authored-by: Zingam <zingam at outlook.com>
Commit: 46a9135d61f729da90b88d3d34a3905c91d194d7
https://github.com/llvm/llvm-project/commit/46a9135d61f729da90b88d3d34a3905c91d194d7
Author: OldWorldOrdr <joey.t.reinhart at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M lld/MachO/Driver.cpp
A lld/test/MachO/link-csu-object.s
Log Message:
-----------
[lld-macho] Find objects in library search path (#78628)
Find object files in library search path just like Apple's linker, this
makes building with some older MacOS SDKs easier since clang runs with
`-lcrt1.10.6.o`
Commit: 49212d1601a1f0e34a8867eb1ad2e394f91cade1
https://github.com/llvm/llvm-project/commit/49212d1601a1f0e34a8867eb1ad2e394f91cade1
Author: David Green <david.green at arm.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
M flang/test/Transforms/loop-versioning.fir
Log Message:
-----------
[Flang] Fix for replacing loop uses in LoopVersioning pass (#77899)
The added test case has a loop that is versioned, which has a use of the
loop in an if block after the loop. The current code replaces all uses
of the loop with the new version If, but only if the parent blocks
match. As far as I can see it should be safe to replace all the uses,
then construct the result for the If with op.op.
Commit: 06ca52e25226d406a3e384953abd12955f42ac84
https://github.com/llvm/llvm-project/commit/06ca52e25226d406a3e384953abd12955f42ac84
Author: Vincent Lee <thevinster at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Analysis/InlineOrder.cpp
Log Message:
-----------
[InlineOrder] Fix InlineOrder erase_if implementation (#78684)
The InlineOrder Heap stores a CallBase ptr and InlineHistoryID pair.
When running the `erase_if` method, InlineHistoryID is always returned
with 0. Instead, we should be retrieving it from the `InlineHistoryMap`
(similar to what is done in the `pop` implementation).
This change is completely harmless because no one is using
InlineHistoryID right now as part of the `erase_if` implementation which
is currently only used in the ModuleInliner.
Commit: 84cb8eaeeb108234be1c8498688a014b87fd431d
https://github.com/llvm/llvm-project/commit/84cb8eaeeb108234be1c8498688a014b87fd431d
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/Sema/SemaDeclAttr.cpp
Log Message:
-----------
[Sema] Use llvm::is_contained (NFC)
Commit: 81218356fde328112817075ccc0c17a6d698c664
https://github.com/llvm/llvm-project/commit/81218356fde328112817075ccc0c17a6d698c664
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
Log Message:
-----------
[Sparc] Use StringRef::starts_with_insensitive (NFC)
Commit: aa530c7d0091f9536485385e2c6fa7342d04afd5
https://github.com/llvm/llvm-project/commit/aa530c7d0091f9536485385e2c6fa7342d04afd5
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Passes/StandardInstrumentations.cpp
Log Message:
-----------
[Passes] Use a range-based for loop with llvm::successors (NFC)
Commit: 851143608e2394487d849f56ea1d4b3d3d8f2ead
https://github.com/llvm/llvm-project/commit/851143608e2394487d849f56ea1d4b3d3d8f2ead
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Frontend/TextDiagnosticBuffer.cpp
Log Message:
-----------
[Frontend] Use SmallString::operator std::string (NFC)
Commit: 11b3b1085645f0819552eb8a17e1928f60570fce
https://github.com/llvm/llvm-project/commit/11b3b1085645f0819552eb8a17e1928f60570fce
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/include/llvm/Support/GenericDomTree.h
Log Message:
-----------
[Support] Use llvm::children and llvm::inverse_children (NFC)
Commit: a464e05109088f1f3a0ca4c83d6dd900e83bdb4b
https://github.com/llvm/llvm-project/commit/a464e05109088f1f3a0ca4c83d6dd900e83bdb4b
Author: XDeme <66138117+XDeme at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Handle templated elaborated type specifier in function… (#77013)
… return type.
The behavior now is consistent with the non template version.
Enabled and updated old test.
Commit: 975deb366470e4943a5b73d8f3031ed54dec6e8b
https://github.com/llvm/llvm-project/commit/975deb366470e4943a5b73d8f3031ed54dec6e8b
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libc/config/linux/aarch64/headers.txt
M libc/src/unistd/linux/CMakeLists.txt
Log Message:
-----------
[libc] Add missing header ioctl.h on aarch64. (#78865)
Commit: dedc7d4d362b8045c6810f8ca7f947bbdb63b7ec
https://github.com/llvm/llvm-project/commit/dedc7d4d362b8045c6810f8ca7f947bbdb63b7ec
Author: Jerry Wu <cheyuw at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
Log Message:
-----------
[mlir] Exclude masked ops in VectorDropLeadUnitDim (#76468)
Don't insert cast ops for ops in `vector.mask` region in
`VectorDropLeadUnitDim`.
Commit: 2759e47067ea286f6302adcfe93b653cfaf6f2eb
https://github.com/llvm/llvm-project/commit/2759e47067ea286f6302adcfe93b653cfaf6f2eb
Author: Vassil Vassilev <v.g.vassilev at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/unittests/Interpreter/InterpreterTest.cpp
Log Message:
-----------
[clang-repl] We do not need to call new in the object allocation. (#78843)
This test demonstrates template instantiation via the interpreter code.
In order to do that we can allocate the object on the stack and extend
its lifetime by boxing it into a clang::Value.
That avoids the subtle problem where we call the new operator on an
object only known to the interpreter and we cannot destroy it from
compiled code since there is not suitable facility in clang::Value yet.
That should resolve the asan issues that was reported in
llvm/llvm-project#76218.
Commit: 9b2c25c70466d6f081a2915e661840f965b6056a
https://github.com/llvm/llvm-project/commit/9b2c25c70466d6f081a2915e661840f965b6056a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/ARCMigrate/FileRemapper.cpp
M clang/lib/ARCMigrate/ObjCMT.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/Basic/FileManager.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Tooling/ASTDiff/ASTDiff.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/MveEmitter.cpp
Log Message:
-----------
[clang] Use SmallString::operator std::string (NFC)
Commit: 24790a778822e14abcb09c696bf5113c9a23bf81
https://github.com/llvm/llvm-project/commit/24790a778822e14abcb09c696bf5113c9a23bf81
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
Log Message:
-----------
[Hexagon] Use llvm::children (NFC)
Commit: 1ce5a80d08ad68f53e04d4b7c413d0dbb0065991
https://github.com/llvm/llvm-project/commit/1ce5a80d08ad68f53e04d4b7c413d0dbb0065991
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
Log Message:
-----------
[Mips] Use MachineBasicBlock::pred_size (NFC)
Commit: f523a5522be221e4657daa111431106083e1c053
https://github.com/llvm/llvm-project/commit/f523a5522be221e4657daa111431106083e1c053
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M clang/lib/Sema/Sema.cpp
Log Message:
-----------
[Sema] Use llvm::all_of (NFC)
Commit: bb6564a1b59eaaafbce46b519a45fc9d9e4f8f8a
https://github.com/llvm/llvm-project/commit/bb6564a1b59eaaafbce46b519a45fc9d9e4f8f8a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/utils/TableGen/GlobalISel/CodeExpander.cpp
Log Message:
-----------
[TableGen] Use StringRef::consume_front (NFC)
Commit: 39f1ca522b023e77c4dca6332d8b9c6366d0eab9
https://github.com/llvm/llvm-project/commit/39f1ca522b023e77c4dca6332d8b9c6366d0eab9
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/utils/mlgo-utils/mlgo/corpus/combine_training_corpus_lib.py
M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir_lib.py
M llvm/utils/mlgo-utils/tests/corpus/combine_training_corpus_test.py
M llvm/utils/mlgo-utils/tests/corpus/extract_ir_test.py
M llvm/utils/mlgo-utils/tests/corpus/make_corpus_test.py
Log Message:
-----------
[MLGO] Remove absl dep from libraries
The library files in the new mlgo-utils utilities folder only depend on
absl.logging. The builtin Python logging library is a direct drop-in
replacement here, so we can just change the include and drop the test
dependency.
Commit: 8e99a63899c85972ec1ce9dbfc7e4cc01eddcdb0
https://github.com/llvm/llvm-project/commit/8e99a63899c85972ec1ce9dbfc7e4cc01eddcdb0
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
[Github] Update paths for mlgo PR subscribers
This patch updates the paths in the PR labelling config for the MLGO
label. In particular, the path for the new mlgo-utils subfolder under
llvm/utils has been added and two other files that were missed in the
original introduction.
Commit: a70d3101ba786b76f1796c2c2ac5fe469e9a57bd
https://github.com/llvm/llvm-project/commit/a70d3101ba786b76f1796c2c2ac5fe469e9a57bd
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/utils/mlgo-utils/tests/corpus/combine_training_corpus_test.py
M llvm/utils/mlgo-utils/tests/corpus/extract_ir_test.py
M llvm/utils/mlgo-utils/tests/corpus/make_corpus_test.py
Log Message:
-----------
[MLGO] Disable mlgo-utils tests on Windows builders
This patch disables the mlgo-utils tests on Windows builders. MLGO is
not currently supported on Windows.
These tests were failing as some of them look for specific file paths
and the path conventions are different between Linux and Windows.
Commit: 6bb5c989bd725deb3f96d4374541b5aeec776ba2
https://github.com/llvm/llvm-project/commit/6bb5c989bd725deb3f96d4374541b5aeec776ba2
Author: ZhangYin <zhangyin2018 at iscas.ac.cn>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/docs/Status/ParallelismProjects.csv
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/simd.h
M libcxx/include/experimental/__simd/simd_mask.h
M libcxx/include/experimental/__simd/vec_ext.h
A libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp
A libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_load.pass.cpp
M libcxx/test/std/experimental/simd/test_utils.h
Log Message:
-----------
[libc++] <experimental/simd> Add load constructor for class simd/simd_mask (#76610)
Commit: 3412bc765887d2b2244e4338adc2f49420cce9c8
https://github.com/llvm/llvm-project/commit/3412bc765887d2b2244e4338adc2f49420cce9c8
Author: Hristo Hristov <hristo.goshev.hristov at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/__config
M libcxx/include/variant
A libcxx/test/std/utilities/variant/variant.visit.member/robust_against_adl.pass.cpp
A libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
A libcxx/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][variant] P2637R3: Member `visit` (`std::variant`) (#76447)
Implements parts of: `P2637R3` https://wg21.link/P2637R3
(https://eel.is/c++draft/variant.visit)
Implements:
`variant.visit()`
`variant.visit<R>()`
The tests are as close as possible to the non-member function.
To land after: https://github.com/llvm/llvm-project/pull/76268
---------
Co-authored-by: Zingam <zingam at outlook.com>
Commit: f9614b328ad502cecfeb0d923f7abda30173d4be
https://github.com/llvm/llvm-project/commit/f9614b328ad502cecfeb0d923f7abda30173d4be
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/nonlazybind.ll
Log Message:
-----------
[AArch64] Improve nonlazybind test
Prepare for -fno-plt implementation.
Commit: aa04d2b78bbbfef213d860876948b934ab18b1aa
https://github.com/llvm/llvm-project/commit/aa04d2b78bbbfef213d860876948b934ab18b1aa
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
A .github/workflows/release-mlgo-utils.yml
Log Message:
-----------
Add workflow to release mlgo utils
Commit: 61d098962e1b304224fb5309b94162a3e43852bb
https://github.com/llvm/llvm-project/commit/61d098962e1b304224fb5309b94162a3e43852bb
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
R .github/workflows/release-mlgo-utils.yml
Log Message:
-----------
Revert "Add workflow to release mlgo utils"
This reverts commit aa04d2b78bbbfef213d860876948b934ab18b1aa.
Meant to push this to my fork and did not realize I was on main and not
a separate branch.
Commit: f0c920ffb7e98adbad369c33c01e0996260c4ade
https://github.com/llvm/llvm-project/commit/f0c920ffb7e98adbad369c33c01e0996260c4ade
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libcxx/test/libcxx/assertions/modes/enabling_assertions_enables_extensive_mode.pass.cpp
M libcxx/test/libcxx/assertions/modes/override_with_extensive_mode.pass.cpp
M libcxx/test/libcxx/assertions/modes/override_with_fast_mode.pass.cpp
Log Message:
-----------
[libc++][hardening] XFAIL tests with HWASAN (#78866)
Follow up to #78862
These tests control hardening mode with `ADDITIONAL_COMPILE_FLAGS`, and
always set modes which use on TRAP. So we don't need to check
`libcpp-hardening-mode=fast`, and they must always fail with the current
HWASAN implementation.
Commit: dc57752031fb14166dff2174b36c28d27d742382
https://github.com/llvm/llvm-project/commit/dc57752031fb14166dff2174b36c28d27d742382
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M libcxx/include/__algorithm/clamp.h
M libcxx/include/__algorithm/ranges_clamp.h
M libcxx/include/__bit/bit_ceil.h
M libcxx/include/__config
M libcxx/include/__hash_table
M libcxx/include/__memory/assume_aligned.h
M libcxx/include/__numeric/gcd_lcm.h
M libcxx/include/barrier
M libcxx/include/latch
M libcxx/include/semaphore
M libcxx/include/string_view
M libcxx/src/filesystem/operations.cpp
M libcxx/src/include/to_chars_floating_point.h
Log Message:
-----------
[libc++][hardening] Categorize assertions that produce incorrect results (#77183)
Introduce a new `argument-within-domain` category that covers cases
where the given arguments make it impossible to produce a correct result
(or create a valid object in case of constructors). While the incorrect
result doesn't create an immediate problem within the library (like e.g.
a null pointer dereference would), it always indicates a logic error in
user code and is highly likely to lead to a bug in the program once the
value is used.
Commit: d0230446d282396795e5a55b9b70df6961fcd046
https://github.com/llvm/llvm-project/commit/d0230446d282396795e5a55b9b70df6961fcd046
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-20 (Sat, 20 Jan 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/nonlazybind.ll
Log Message:
-----------
[AArch64] Remove non-sensible define nonlazybind test
nonlazybind is for declarations, not for definitions. We could test the
behavior, but the output would be misleading.
Commit: 62bf7710ff295cc7bb0bb281c471ca0c91fd156e
https://github.com/llvm/llvm-project/commit/62bf7710ff295cc7bb0bb281c471ca0c91fd156e
Author: Matthias Springer <me at m-sp.org>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M mlir/include/mlir/IR/PatternMatch.h
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/IR/PatternMatch.cpp
M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
Log Message:
-----------
[mlir][IR] Add `notifyBlockRemoved` callback to listener (#78306)
There is already a "block inserted" notification (in
`OpBuilder::Listener`), so there should also be a "block removed"
notification.
The purpose of this change is to make the listener API more mature.
There is currently a gap between what kind of IR changes can be made and
what IR changes can be listened to. At the moment, the only way to
inform listeners about "block removal" is to send a manual
`notifyOperationModified` for the parent op (e.g., by wrapping the
`eraseBlock(b)` method call in `updateRootInPlace(b->getParentOp())`).
This tells the listener that *something* has changed, but it is somewhat
of an API abuse.
Commit: f9e2e85b07ee2c19bbef8fda50b3f664d6f5193e
https://github.com/llvm/llvm-project/commit/f9e2e85b07ee2c19bbef8fda50b3f664d6f5193e
Author: FantasqueX <fantasquex at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang/tools/c-index-test/c-index-test.c
Log Message:
-----------
[Clang] Use const pointer to eliminate warning with libxml 2.12.0 (#76719)
Currently, if `CLANG_HAVE_LIBXML` is defined, and the version of libxml2
is above 2.12.0, there will be two warnings when building clang.
warning: initializing 'xmlErrorPtr' (aka 'struct _xmlError *') with an
expression of type 'const xmlError *' (aka 'const struct _xmlError *')
discards qualifiers
Since this commit
https://gitlab.gnome.org/GNOME/libxml2/-/commit/45470611b047db78106dcb2fdbd4164163c15ab7,
libxml2 makes cmlGetLastError return a const error. This patch follows
libxml2. Making the result a const pointer should be compatible with
versions before 2.12.0.
Tested on ArchLinux with libxml2 2.12.3 installed.
Commit: fbb62d449c47bb0b49c0727c926373b41a8183c5
https://github.com/llvm/llvm-project/commit/fbb62d449c47bb0b49c0727c926373b41a8183c5
Author: Matthias Springer <me at m-sp.org>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-branchop-interface.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-existing-deallocs.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-function-boundaries.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-other.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-region-branchop-interface.mlir
M mlir/test/Dialect/GPU/bufferization-buffer-deallocation.mlir
M mlir/test/lib/Dialect/Test/TestDialect.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir][bufferization] Buffer deallocation: Make op preconditions stricter (#75127)
The buffer deallocation pass checks the IR ("operation preconditions")
to make sure that there is no IR that is unsupported. In such a case,
the pass signals a failure.
The pass now rejects all ops with unknown memory effects. We do not know
whether such an op allocates memory or not. Therefore, the buffer
deallocation pass does not know whether a deallocation op should be
inserted or not.
Memory effects are queried from the `MemoryEffectOpInterface` interface.
Ops that do not implement this interface but have the
`RecursiveMemoryEffects` trait do not have any side effects (apart from
the ones that their nested ops may have).
Unregistered ops are now rejected by the pass because they do not
implement the `MemoryEffectOpInterface` and neither do we know if they
have `RecursiveMemoryEffects` or not. All test cases that currently have
unregistered ops are updated to use registered ops.
Commit: 38b5f2edfc67d2155d043519c89568bb00a9eced
https://github.com/llvm/llvm-project/commit/38b5f2edfc67d2155d043519c89568bb00a9eced
Author: Hristo Hristov <hristo.goshev.hristov at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/docs/Status/SpaceshipPapers.csv
Log Message:
-----------
[libc++][spaceship][NFC] Status page update (#78894)
Co-authored-by: Zingam <zingam at outlook.com>
Commit: 7d9b5aa65b09126031e1c2903605a7d34aea4bc1
https://github.com/llvm/llvm-project/commit/7d9b5aa65b09126031e1c2903605a7d34aea4bc1
Author: Hristo Hristov <hristo.goshev.hristov at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/Status/FormatIssues.csv
M libcxx/include/__config
M libcxx/include/__format/format_arg.h
M libcxx/include/__format/format_context.h
M libcxx/include/format
A libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
A libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
A libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
M libcxx/test/support/test_basic_format_arg.h
M libcxx/test/support/test_macros.h
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][format] P2637R3: Member `visit` (`std::basic_format_arg`) (#76449)
Implements parts of: `P2637R3` https://wg21.link/P2637R3
(https://eel.is/c++draft/variant.visit)
Implements:
`basic_format_arg.visit()`
`basic_format_arg.visit<R>()`
Deprecates:
`std::visit_format_arg()`
The tests are as close as possible to the non-member function tests.
To land after: https://github.com/llvm/llvm-project/pull/76447,
https://github.com/llvm/llvm-project/pull/76268
---------
Co-authored-by: Zingam <zingam at outlook.com>
Commit: 1d6b6132ff9d59c27f033c8a2003ea9bff421e04
https://github.com/llvm/llvm-project/commit/1d6b6132ff9d59c27f033c8a2003ea9bff421e04
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M libcxx/CMakeLists.txt
M libcxx/cmake/caches/Generic-cxx26.cmake
M libcxx/cmake/caches/Generic-hardening-mode-extensive.cmake
M libcxx/cmake/caches/Generic-no-exceptions.cmake
M libcxx/cmake/caches/Generic-no-experimental.cmake
M libcxx/cmake/caches/Generic-no-filesystem.cmake
M libcxx/cmake/caches/Generic-no-localization.cmake
M libcxx/cmake/caches/Generic-no-random_device.cmake
M libcxx/cmake/caches/Generic-no-threads.cmake
M libcxx/cmake/caches/Generic-no-tzdb.cmake
M libcxx/cmake/caches/Generic-no-unicode.cmake
M libcxx/cmake/caches/Generic-no-wide-characters.cmake
M libcxx/docs/Modules.rst
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/docs/TestingLibcxx.rst
M libcxx/modules/CMakeLists.txt
R libcxx/modules/CMakeLists.txt.in
M libcxx/test/CMakeLists.txt
M libcxx/test/configs/cmake-bridge.cfg.in
M libcxx/test/libcxx/module_std.gen.py
M libcxx/test/libcxx/module_std_compat.gen.py
A libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
A libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
A libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
A libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
R libcxx/test/lit.local.cfg
M libcxx/test/std/modules/std.compat.pass.cpp
M libcxx/test/std/modules/std.pass.cpp
M libcxx/utils/ci/Dockerfile
M libcxx/utils/ci/buildkite-pipeline.yml
M libcxx/utils/ci/run-buildbot
M libcxx/utils/libcxx/test/config.py
M libcxx/utils/libcxx/test/features.py
M libcxx/utils/libcxx/test/format.py
M libcxx/utils/libcxx/test/modules.py
Log Message:
-----------
[libc++] Reland CI module improvements.
Revert "Revert #76246 and #76083"
This reverts commit 5c150e7eeba9db13cc65b329b3c3537b613ae61d.
Adds a small fix that should properly disable the tests on Windows.
Unfortunately the original poster has not provided feedback and the
original patch did not fail in the LLVM CI infrastructure.
Modules are known to fail on Windows due to non compliance of the
C library. Currently not having this patch prevents testing on other
platforms.
Commit: 04757337cdc8ba2da9bc3303fb62af514d5452c5
https://github.com/llvm/llvm-project/commit/04757337cdc8ba2da9bc3303fb62af514d5452c5
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/modules/std.compat.cppm.in
M libcxx/modules/std.cppm.in
M libcxx/test/libcxx/module_std_compat.gen.py
M libcxx/utils/generate_libcxx_cppm_in.py
M libcxx/utils/libcxx/header_information.py
M libcxx/utils/libcxx/test/format.py
Log Message:
-----------
[libc++][modules] Improves std.compat module. (#76330)
Let the std.compat module use the std module instead of duplicating the
exports.
Based on @ChuanqiXu9's suggestion in #71438.
Commit: 8b47bb657b5905d954b9041415020358802407d5
https://github.com/llvm/llvm-project/commit/8b47bb657b5905d954b9041415020358802407d5
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/CMakeLists.txt
M libcxx/cmake/caches/Generic-cxx20.cmake
M libcxx/cmake/caches/Generic-cxx23.cmake
M libcxx/cmake/caches/Generic-cxx26.cmake
M libcxx/cmake/caches/Generic-hardening-mode-extensive.cmake
M libcxx/cmake/caches/Generic-no-exceptions.cmake
M libcxx/cmake/caches/Generic-no-experimental.cmake
M libcxx/cmake/caches/Generic-no-filesystem.cmake
M libcxx/cmake/caches/Generic-no-localization.cmake
M libcxx/cmake/caches/Generic-no-random_device.cmake
M libcxx/cmake/caches/Generic-no-threads.cmake
M libcxx/cmake/caches/Generic-no-unicode.cmake
M libcxx/cmake/caches/Generic-no-wide-characters.cmake
M libcxx/docs/Modules.rst
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/modules/CMakeLists.txt
A libcxx/modules/modules.json.in
M libcxx/src/CMakeLists.txt
Log Message:
-----------
[libc++] Install modules. (#75741)
Installs the source files of the experimental libc++ modules. These
source files (.cppm) are used by the Clang to build the std and
std.compat modules.
The design of this patch is based on a discussing in SG-15 on
12.12.2023. (SG-15 is the ISO C++ Tooling study group):
- The modules are installed at a location, that is not known to build
systems and compilers.
- Next to the library there will be a module manifest json file.
This json file contains the information to build the module from the
libraries sources. This information includes the location where the
sources are installed. @ruoso supplied the specification of this json
file.
- If possible, the compiler has an option to give the location of the
module manifest file
(https://github.com/llvm/llvm-project/pull/76451).
Currently there is no build system support, but it expected to be added
in the future.
Fixes: https://github.com/llvm/llvm-project/issues/73089
Commit: 07e6b983cc21d7f12ee9fe0c94aefc4ed9fa67a9
https://github.com/llvm/llvm-project/commit/07e6b983cc21d7f12ee9fe0c94aefc4ed9fa67a9
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrCompiler.td
Log Message:
-----------
[X86][NFC] Remove unnecessary parameters for MaskedShiftAmountPats/MaskedRotateAmountPats and rename one_bit_patterns
This patch is to extract NFC in #78853 into a separate commit.
Commit: ae8d699d6cfb9eee2331bd5cdf8e1ffbf5168cff
https://github.com/llvm/llvm-project/commit/ae8d699d6cfb9eee2331bd5cdf8e1ffbf5168cff
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/src/CMakeLists.txt
Log Message:
-----------
[NFC][libc++] tab -> space
Commit: 5b7bb56a053702f7ed486aba1427454ec222bb36
https://github.com/llvm/llvm-project/commit/5b7bb56a053702f7ed486aba1427454ec222bb36
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/.clang-tidy
M libcxx/include/__atomic/is_always_lock_free.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/locale
Log Message:
-----------
[libc++] Clang-tidy enable modernize-use-nullptr.
Clang-tidy 18 no longer has false positives with the spaceship operator.
Note that I'm quite sure there are more occurrences in our headers that
are not caught.
This relands https://github.com/llvm/llvm-project/pull/76659 with fixes
tested in https://github.com/llvm/llvm-project/pull/78746.
Commit: b0b491d458962136c696366b8cf535d54511baf3
https://github.com/llvm/llvm-project/commit/b0b491d458962136c696366b8cf535d54511baf3
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/google/readability-casting.cpp
Log Message:
-----------
[clang-tidy] Fix handling of functional cast in google-readability-casting (#71650)
Fix issue with constructor call being interpreted as functional cast and
considered for a replacement
with static cast or being removed as redundant.
Closes #57959
Commit: 3683852d4988e4641fb6c20ca8c3013d5c2989f1
https://github.com/llvm/llvm-project/commit/3683852d4988e4641fb6c20ca8c3013d5c2989f1
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[VPlan] Use replaceUsesWithIf in replaceAllUseswith and add comment (NFCI).
Follow-up to post-commit commens for b1bfe221e6.
Commit: 547685d9e4c64f6f5dadd0ac979ab312b9d395e7
https://github.com/llvm/llvm-project/commit/547685d9e4c64f6f5dadd0ac979ab312b9d395e7
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/google/readability-casting.cpp
Log Message:
-----------
[clang-tidy][NFC] Enable exceptions in test for google-readability-casting
Add missing -fexceptions in test.
Commit: f73bf45d68bd2c17602a909751da4a23138d711a
https://github.com/llvm/llvm-project/commit/f73bf45d68bd2c17602a909751da4a23138d711a
Author: bobsayshilol <bobsayshilol at live.co.uk>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/include/concepts
M libcxx/include/sstream
Log Message:
-----------
[libc++] Fix typo in _LIBCPP_REMOVE_TRANSITIVE_INCLUDES (#78639)
Spotted by inspection when trialling out
`_LIBCPP_REMOVE_TRANSITIVE_INCLUDES`. No other instances of `_LIPCPP_`
were found in the repo.
Commit: 128d53f44cae211ad5501733ec1d9bc787b6f7a9
https://github.com/llvm/llvm-project/commit/128d53f44cae211ad5501733ec1d9bc787b6f7a9
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libc/src/sched/linux/CMakeLists.txt
M libc/src/spawn/linux/CMakeLists.txt
Log Message:
-----------
[libc] add missing header dependencies for sched objects (#78741)
This patch fixes full build problems in
https://github.com/llvm/llvm-project/issues/78721 (the header problem).
The `libc.a` target can be built now.
As a separate issue, `check-libc` is failing because undefined symbols
from `libunwind`, which I do not actually know the reason yet. I will be
looking into it.
Commit: bc82cfb38d83f1afeb2c290aa472c2e2e88919cb
https://github.com/llvm/llvm-project/commit/bc82cfb38d83f1afeb2c290aa472c2e2e88919cb
Author: Emma Pilkington <emma.pilkington95 at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/include/llvm/Support/AMDGPUMetadata.h
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/CodeGen/AMDGPU/codegen-internal-only-func.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-2.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-any.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-not-supported.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-off.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-on.ll
A llvm/test/MC/AMDGPU/elf-header-cov.s
M llvm/test/MC/AMDGPU/hsa-exp.s
M llvm/test/MC/AMDGPU/hsa-gfx12-v4.s
M llvm/test/MC/AMDGPU/hsa-v4.s
M llvm/test/MC/AMDGPU/hsa-v5-uses-dynamic-stack.s
R llvm/test/MC/AMDGPU/hsa_isa_version_attrs.s
Log Message:
-----------
[AMDGPU] Add an asm directive to track code_object_version (#76267)
Named '.amdhsa_code_object_version'. This directive sets the
e_ident[ABIVERSION] in the ELF header, and should be used as the assumed
COV for the rest of the asm file.
This commit also weakens the --amdhsa-code-object-version CL flag.
Previously, the CL flag took precedence over the IR flag. Now the IR
flag/asm directive take precedence over the CL flag. This is implemented
by merging a few COV-checking functions in AMDGPUBaseInfo.h.
Commit: 997ffce43c6d2d3f647eb091c732665049b1f47f
https://github.com/llvm/llvm-project/commit/997ffce43c6d2d3f647eb091c732665049b1f47f
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Frontend/CompilerInvocation.cpp
A clang/test/C/C2x/n2940.c
M clang/test/C/drs/dr3xx.c
M clang/test/Preprocessor/ucn-pp-identifier.c
M clang/www/c_status.html
Log Message:
-----------
[C23] Implement N2490, Remove trigraphs??!
This follows the same implementation logic as with C++ and is
compatible with the GCC behavior in C.
Trigraphs are enabled by default in -std=c* conformance modes before
C23, but are disabled in GNU and Microsoft modes as well as in C23 or
later.
Commit: 30d6806a08f8f453d6389bdfeae4c32e937a9821
https://github.com/llvm/llvm-project/commit/30d6806a08f8f453d6389bdfeae4c32e937a9821
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/docs/Status/Parallelism.rst
M libcxx/docs/Status/Ranges.rst
Log Message:
-----------
[libc++][doc] Update the release notes for LLVM 18 (#78324)
This is a preparation for the upcoming LLVM 18 release.
Commit: 5518a9d7673bfe55b4110bea049140316d032fbf
https://github.com/llvm/llvm-project/commit/5518a9d7673bfe55b4110bea049140316d032fbf
Author: Andrey Ali Khan Bolshakov <32954549+bolshakov-a at users.noreply.github.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ODRHash.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/TemplateArgumentVisitor.h
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/Index/USRGeneration.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CodeGenCXX/mangle-ms-templates.cpp
M clang/test/CodeGenCXX/mangle-template.cpp
A clang/test/CodeGenCXX/template-arguments.cpp
A clang/test/Index/USR/structural-value-tpl-arg.cpp
M clang/test/Modules/odr_hash.cpp
M clang/test/SemaCXX/warn-bool-conversion.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/www/cxx_status.html
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[c++20] P1907R1: Support for generalized non-type template arguments of scalar type. (#78041)
Previously committed as 9e08e51a20d0d2b1c5724bb17e969d036fced4cd, and
reverted because a dependency commit was reverted, then committed again
as 4b574008aef5a7235c1f894ab065fe300d26e786 and reverted again because
"dependency commit" 5a391d38ac6c561ba908334d427f26124ed9132e was
reverted. But it doesn't seem that 5a391d38ac6c was a real dependency
for this.
This commit incorporates 4b574008aef5a7235c1f894ab065fe300d26e786 and
18e093faf726d15f210ab4917142beec51848258 by Richard Smith (@zygoloid),
with some minor fixes, most notably:
- `UncommonValue` renamed to `StructuralValue`
- `VK_PRValue` instead of `VK_RValue` as default kind in lvalue and
member pointer handling branch in
`BuildExpressionFromNonTypeTemplateArgumentValue`;
- handling of `StructuralValue` in `IsTypeDeclaredInsideVisitor`;
- filling in `SugaredConverted` along with `CanonicalConverted`
parameter in `Sema::CheckTemplateArgument`;
- minor cleanup in
`TemplateInstantiator::transformNonTypeTemplateParmRef`;
- `TemplateArgument` constructors refactored;
- `ODRHash` calculation for `UncommonValue`;
- USR generation for `UncommonValue`;
- more correct MS compatibility mangling algorithm (tested on MSVC ver.
19.35; toolset ver. 143);
- IR emitting fixed on using a subobject as a template argument when the
corresponding template parameter is used in an lvalue context;
- `noundef` attribute and opaque pointers in `template-arguments` test;
- analysis for C++17 mode is turned off for templates in
`warn-bool-conversion` test; in C++17 and C++20 mode, array reference
used as a template argument of pointer type produces template argument
of UncommonValue type, and
`BuildExpressionFromNonTypeTemplateArgumentValue` makes
`OpaqueValueExpr` for it, and `DiagnoseAlwaysNonNullPointer` cannot see
through it; despite of "These cases should not warn" comment, I'm not
sure about correct behavior; I'd expect a suggestion to replace `if` by
`if constexpr`;
- `temp.arg.nontype/p1.cpp` and `dr18xx.cpp` tests fixed.
Commit: cc3fd1974696a792ba70ba670ed761937cd0735c
https://github.com/llvm/llvm-project/commit/cc3fd1974696a792ba70ba670ed761937cd0735c
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/Stmt.h
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
Log Message:
-----------
[clang] Remove `CXXNewInitializationStyle::Implicit` (#78793)
This is a follow up to https://github.com/llvm/llvm-project/pull/71417 ,
which aims to resolve concerns brought up there. Namely, this patch
replaces `CXXNewInitializationStyle::Implicit` with a dedicated
`HasInitializer` flag. This makes `CXXNewInitializationStyle` to model
syntax again. This patch also renames `Call` and `List` to less
confusing `Parens` and `Braces`.
Commit: 86b6dfc619695b5bfb1880b2ed9abb4a6805fbe6
https://github.com/llvm/llvm-project/commit/86b6dfc619695b5bfb1880b2ed9abb4a6805fbe6
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/include/variant
Log Message:
-----------
[libc++] Fix Coverity warning about use-after-move (#78780)
While the code is technically correct because the index is never
actually moved from (and anyway that wouldn't matter since it's an
integer), it's still better style not to access an object after it has
been moved-from. Since this is so easy to do, just save the index in a
temporary variable.
rdar://120501577
Commit: c71956d760517a99d5d3d13b454873016333fcb3
https://github.com/llvm/llvm-project/commit/c71956d760517a99d5d3d13b454873016333fcb3
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/utils/mlgo-utils/CMakeLists.txt
A llvm/utils/mlgo-utils/tests/corpus/combine_training_corpus_script.test
A llvm/utils/mlgo-utils/tests/corpus/extract_ir_script.test
A llvm/utils/mlgo-utils/tests/corpus/make_corpus_script.test
M llvm/utils/mlgo-utils/tests/lit.cfg
Log Message:
-----------
[MLGO] Add tests for scripts (#78878)
This patch adds integration tests for the script entry points. The tests
don't exercise all functionality, as that case is better covered by the
unit testing already checked in. This ensures that things like flag
parsing work and that the scripts are syntactically valid.
Commit: 120e0623773dc9c43f393d43be0641c7d7ad26f2
https://github.com/llvm/llvm-project/commit/120e0623773dc9c43f393d43be0641c7d7ad26f2
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/utils/mlgo-utils/mlgo/corpus/combine_training_corpus.py
M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir.py
M llvm/utils/mlgo-utils/mlgo/corpus/make_corpus.py
M llvm/utils/mlgo-utils/pyproject.toml
M llvm/utils/mlgo-utils/tests/corpus/combine_training_corpus_script.test
M llvm/utils/mlgo-utils/tests/corpus/extract_ir_script.test
M llvm/utils/mlgo-utils/tests/corpus/make_corpus_script.test
M llvm/utils/mlgo-utils/tests/lit.local.cfg
Log Message:
-----------
[MLGO] Remove absl dependency from scripts (#78880)
This patch removes the absl dependency from the mlgo-utils scripts. We
were only using absl.logging, and absl.flags, so this patch just
consists of mechanically converting the absl flags parsing to Python's
builtin argparse as Python's logging is a drop in replacement for
absl.logging.
Commit: b54e919573a8ee03b4b813ad9705b36cba62232d
https://github.com/llvm/llvm-project/commit/b54e919573a8ee03b4b813ad9705b36cba62232d
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M llvm/utils/mlgo-utils/tests/corpus/make_corpus_script.test
Log Message:
-----------
[MLGO] Fix make_corpus_script.test
This test is currently failing as the order that the files end up in the
corpus description is somewhat dependent upon platform and the check is
checking for a specific order. This patch switches to using the
CHECK-DAG directive to make the checks order invariant to fix the broken
bots.
Commit: b7355ee99ec63f44a6dc4f7dad9bb5a130bcc0eb
https://github.com/llvm/llvm-project/commit/b7355ee99ec63f44a6dc4f7dad9bb5a130bcc0eb
Author: Dave Lee <davelee.com at gmail.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjCNSDate.py
Log Message:
-----------
[lldb] Skip ObjC timezone tests on macOS >= 14 (NFC) (#78817)
Starting with macOS 14, the `NSTimeZone` and `CFTimeZone` types are backed by swift
implementations. These tests won't pass on mainline lldb, since it doesn't have Swift
support.
Commit: 3a4615c0fe985fe7b971bf5c067ff0f7ce5e3d10
https://github.com/llvm/llvm-project/commit/3a4615c0fe985fe7b971bf5c067ff0f7ce5e3d10
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M lld/ELF/Arch/X86_64.cpp
Log Message:
-----------
[ELF] Clarify the first entry of .got.plt NFC
Differential Revision: https://reviews.llvm.org/D47053
Commit: 1d9a65b220a92b59b0556ba8b3195b5346e71170
https://github.com/llvm/llvm-project/commit/1d9a65b220a92b59b0556ba8b3195b5346e71170
Author: Ben Shi <2283975856 at qq.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
Log Message:
-----------
[clang][analyzer][NFC] Simplify ranges in StdLibraryFunctionsChecker (#78886)
Commit: 890acf8d382d70c07a589d5ab9b83e64841b9e96
https://github.com/llvm/llvm-project/commit/890acf8d382d70c07a589d5ab9b83e64841b9e96
Author: hev <wangrui at loongson.cn>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M llvm/docs/ReleaseNotes.rst
Log Message:
-----------
[docs] Add llvm and clang release notes for the global-var code model attribute (#78664)
Commit: 2e30e31e1e80184d9b2c8aa98f617b4d1cb56d55
https://github.com/llvm/llvm-project/commit/2e30e31e1e80184d9b2c8aa98f617b4d1cb56d55
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M lld/Common/Args.cpp
M lld/ELF/Driver.cpp
Log Message:
-----------
[ELF] Claim recognized -z options. NFC
... so that we can reimplement `checkZOptions` using
https://reviews.llvm.org/D48433
Commit: 665f913e4509e3e4f531aa4a4ebe92ec2ea5c23f
https://github.com/llvm/llvm-project/commit/665f913e4509e3e4f531aa4a4ebe92ec2ea5c23f
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/test/ELF/common-page.s
M lld/test/ELF/driver.test
Log Message:
-----------
[ELF] Reimplement unknown -z options using the isClaimed bit
Maintaining the long list of known -z options
(https://reviews.llvm.org/D48621) turns out to be cumbersome. Go the
D48433 route instead.
max-page-size/common-page-size are claimed when `target` is available.
Inspired by: https://reviews.llvm.org/D48433
Commit: be0fa319f922e6ea3661640aa55f6b9092be5a99
https://github.com/llvm/llvm-project/commit/be0fa319f922e6ea3661640aa55f6b9092be5a99
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/utils/MPFRWrapper/CMakeLists.txt
Log Message:
-----------
[libc] fix unit tests in fullbuild (#78864)
fixes https://github.com/llvm/llvm-project/issues/78743
- For normal objects, the patch removes `RTTI` and exceptions in `fullbuild`
- For FP tests, the patch adds links to `stdc++` and `gcc_s` if `MPFR` is used.
Commit: 04c85587596ab10d885a957a00c8fa22740f15c1
https://github.com/llvm/llvm-project/commit/04c85587596ab10d885a957a00c8fa22740f15c1
Author: Petr Hosek <phosek at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/lib/CMakeLists.txt
Log Message:
-----------
[libc] Fix issue introduces by #76449
Use correct CMake variable.
Commit: 71dbefa446e60dcce86fc3f8531e50b1d12ce31f
https://github.com/llvm/llvm-project/commit/71dbefa446e60dcce86fc3f8531e50b1d12ce31f
Author: Yuxuan Chen <yuxuanchen1997 at outlook.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[Clang] Drop workaround for old gcc versions (#78803)
This workaround existed due to https://gcc.gnu.org/PR56135. The website
says that the bug was fixed in GCC 4.8.0 and the latest host toolchain
requirement says GCC 7.4. I think it would be very safe to drop this
workaround.
Commit: d3cd1ce6ab13ae6be7842e2d905c5f3c783d3f04
https://github.com/llvm/llvm-project/commit/d3cd1ce6ab13ae6be7842e2d905c5f3c783d3f04
Author: XinWang10 <108658776+XinWang10 at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
M llvm/test/CodeGen/X86/cmpccxadd-intrinsics.ll
M llvm/test/MC/Disassembler/X86/apx/cmpccxadd.txt
M llvm/test/MC/X86/apx/cmpccxadd-att.s
M llvm/test/MC/X86/apx/cmpccxadd-intel.s
Log Message:
-----------
[X86] Add lowering tests for promoted CMPCCXADD and update CC representation (#78685)
https://github.com/llvm/llvm-project/pull/76125 supported the enc/dec
for CMPCCXADD instructions, this patch
1. Add lowering test for promoted CMPCCXADD
2. Update the representation of condition code for promoted CMPCCXADD to
align with the existing one
Commit: dd6fec5d4fde803f8aad909be4f43ac9e4fed816
https://github.com/llvm/llvm-project/commit/dd6fec5d4fde803f8aad909be4f43ac9e4fed816
Author: XinWang10 <108658776+XinWang10 at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86LowerTileCopy.cpp
M llvm/test/CodeGen/X86/AMX/amx-lower-tile-copy.ll
M llvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
M llvm/test/CodeGen/X86/AMX/amx-tile-intrinsics.ll
Log Message:
-----------
[X86][APX]Support lowering for APX promoted AMX-TILE instructions (#78689)
The enc/dec of promoted AMX-TILE instructions have been supported in
https://github.com/llvm/llvm-project/pull/76210.
This patch support lowering for promoted AMX-TILE instructions and
integrate test to existing tests.
Commit: c2bef33c5e61557314bbea6dcced710d18bcc413
https://github.com/llvm/llvm-project/commit/c2bef33c5e61557314bbea6dcced710d18bcc413
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp
Log Message:
-----------
[X86][NFC] Auto-generate the function to check predicate for EVEX compression
Commit: 381f5851988f2602ef0bbfd7547e1cfd9f2a3ead
https://github.com/llvm/llvm-project/commit/381f5851988f2602ef0bbfd7547e1cfd9f2a3ead
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp
Log Message:
-----------
[X86] Fix Werror X86GenCompressEVEXTables.inc:1627:2: error: extra ';' outside of a function
Commit: 85337df9e36a10941faa14472b1a4ea0607bfced
https://github.com/llvm/llvm-project/commit/85337df9e36a10941faa14472b1a4ea0607bfced
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/test/Driver/x86-target-features.c
M clang/test/Preprocessor/x86_target_features.c
Log Message:
-----------
[X86][Driver] Enable feature ndd for -mapxf (#78901)
Commit: 03c19e91e8d8cb706b58e02d69f80caeaf7eb0f4
https://github.com/llvm/llvm-project/commit/03c19e91e8d8cb706b58e02d69f80caeaf7eb0f4
Author: Hristo Hristov <hristo.goshev.hristov at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/CMakeLists.txt
A libcxx/include/__numeric/saturation_arithmetic.h
M libcxx/include/libcxx.imp
M libcxx/include/module.modulemap.in
M libcxx/include/numeric
M libcxx/include/version
M libcxx/modules/std/numeric.inc
M libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/add_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/add_sat.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.assert.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/mul_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/mul_sat.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/sub_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/sub_sat.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][numeric] P0543R3: Saturation arithmetic (#77967)
Implements: https://wg21.link/P0543R3
- https://eel.is/c++draft/numeric.sat
Additional references:
- Division: https://eel.is/c++draft/expr.mul#4
- Arithmetic conversions: https://eel.is/c++draft/expr.arith.conv#1
- Clang builtins:
https://clang.llvm.org/docs/LanguageExtensions.html#builtin-functions
Depends on: https://github.com/llvm/llvm-project/pull/78086
---------
Co-authored-by: Zingam <zingam at outlook.com>
Co-authored-by: Mark de Wever <zar-rpg at xs4all.nl>
Commit: 5ffe777c4acd1051c4cebc8464c7e1ae5ca2f689
https://github.com/llvm/llvm-project/commit/5ffe777c4acd1051c4cebc8464c7e1ae5ca2f689
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
Log Message:
-----------
[RISCV] Add Zvkb test to riscv-target-features.c. NFC
Commit: 25063bedb596943e546994a45710c79fdd6539e8
https://github.com/llvm/llvm-project/commit/25063bedb596943e546994a45710c79fdd6539e8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
Log Message:
-----------
[RISCV] Replace Zvbb with Zvkb in the Zvk* combine tests in riscv-target-features.c. NFC
The tests are testing that specifying individual Zvk* extensions
set the preprocessor directives for Zvk* shorthand extensions.
None of the shorthands refer to Zvbb so we should use Zvkb(which
is implied by Zvbb).
Commit: 8bef13ef4f59bae481583913a39e5369730effa7
https://github.com/llvm/llvm-project/commit/8bef13ef4f59bae481583913a39e5369730effa7
Author: Wu Yingcong <yingcong.wu at intel.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M compiler-rt/lib/hwasan/hwasan_report.cpp
Log Message:
-----------
[hwasan] Fix a possible null dereference problem (#77737)
This is clearly a copy-paste mistake, fix it with this patch.
After checking the `local.function_name` is not null, it should check
the len for `local.function_name`, not `local.name`. And this could lead
to possible null dereference since the second
`internal_strlen(local.name)` does not guarantee `local.name` is not
null.
Commit: 745883bba69007f1d2c5135f3d5b0f1efcfc82cd
https://github.com/llvm/llvm-project/commit/745883bba69007f1d2c5135f3d5b0f1efcfc82cd
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M clang/CMakeLists.txt
M clang/cmake/caches/BOLT.cmake
M clang/utils/perf-training/CMakeLists.txt
M clang/utils/perf-training/bolt.lit.cfg
M clang/utils/perf-training/bolt.lit.site.cfg.in
M clang/utils/perf-training/perf-helper.py
Log Message:
-----------
[Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)
Split up and refactor CLANG_BOLT_INSTRUMENT into support for
BOLT instrumentation, perf no-LBR and perf with LBR profiling.
Differential Revision: https://reviews.llvm.org/D143617
Commit: a31a60074717fc40887cfe132b77eec93bedd307
https://github.com/llvm/llvm-project/commit/a31a60074717fc40887cfe132b77eec93bedd307
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/StandardCPlusPlusModules.rst
Log Message:
-----------
[docs] Update StandardCPlusPlusModules.rst with clang18
Changed Things:
- Mentioning we need to specify BMIs for indirectly dependent BMIs too.
- Remove the note for `delayed-template-parsing` since
https://github.com/llvm/llvm-project/issues/61068 got closed.
- Add a note for https://github.com/llvm/llvm-project/issues/78850 since
we've seen it for a lot of times.
- Add a note for https://github.com/llvm/llvm-project/issues/78173 since
we've seen it for a lot of times.
Commit: 21830c913505b1fd2cf10e454253483180c7e10b
https://github.com/llvm/llvm-project/commit/21830c913505b1fd2cf10e454253483180c7e10b
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
Log Message:
-----------
[mlir][nvgpu] Fix 'warpgroup.mma.store' index calculation (#78413)
This PR fixes the 'nvgpu.warpgroup.mma.store' index calculation. When
the destionation memref and current accumulator matrix were small, the
previous code was reaching out of range.
Commit: 12c241b3654800ab708607dbc1998975c893fc14
https://github.com/llvm/llvm-project/commit/12c241b3654800ab708607dbc1998975c893fc14
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
M mlir/test/Conversion/NVVMToLLVM/invalid.mlir
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
M mlir/test/python/dialects/nvvm.py
Log Message:
-----------
[MLIR][NVVM] Explicit Data Type for Output in `wgmma.mma_async` (#78713)
The current implementation of `nvvm.wgmma.mma_async` Op deduces the data
type of the output matrix from the data type of struct member, which can be
non-intuitive, especially in cases where types like `2xf16` are packed
into `i32`.
This PR addresses this issue by improving the Op to include an explicit
data type for the output matrix.
The modified Op now includes an explicit data type for Matrix-D (<f16>),
and looks as follows:
```
%result = llvm.mlir.undef : !llvm.struct<(struct<(i32, i32, ...
nvvm.wgmma.mma_async
%descA, %descB, %result,
#nvvm.shape<m = 64, n = 32, k = 16>,
D [<f16>, #nvvm.wgmma_scale_out<zero>],
A [<f16>, #nvvm.wgmma_scale_in<neg>, <col>],
B [<f16>, #nvvm.wgmma_scale_in<neg>, <col>]
```
Commit: aa4547fcc8eeb9bf4f3cf48cc926f62544e58767
https://github.com/llvm/llvm-project/commit/aa4547fcc8eeb9bf4f3cf48cc926f62544e58767
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
Log Message:
-----------
[MLIR][NVVM] Update cp.async.bulk Ops to use intrinsics (#78900)
This patch updates the cp.async.bulk.{commit/wait}_group Ops to use NVVM
intrinsics.
* Doc updated for the commit_group Op.
* Tests are added to verify the lowering to the intrinsics.
While we are there, fix the FileCheck directive on the
'nvvm.setmaxregister' test.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 5ab2d9c0d9d4ea381cc2f5cbb047c1b1847d0b21
https://github.com/llvm/llvm-project/commit/5ab2d9c0d9d4ea381cc2f5cbb047c1b1847d0b21
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
Log Message:
-----------
[RISCV] Arrange RISCVFeatures.td into sections of related extensions. NFC (#78790)
Put I and Zi* together. Put F/D/Zf* together. Put A and Za* together,
etc.
Commit: 7556626dcff15c8cc5160078a4d6ed2469eed81b
https://github.com/llvm/llvm-project/commit/7556626dcff15c8cc5160078a4d6ed2469eed81b
Author: Ryotaro KASUGA <kasuga.ryotaro at fujitsu.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachinePipeliner.h
M llvm/lib/CodeGen/MachinePipeliner.cpp
A llvm/test/CodeGen/PowerPC/sms-regpress.mir
Log Message:
-----------
[CodeGen][MachinePipeliner] Limit register pressure when scheduling (#74807)
In software pipelining, when searching for the Initiation Interval (II),
`MachinePipeliner` tries to reduce register pressure, but doesn't check
how many variables can actually be alive at the same time. As a result,
a lot of register spills/fills can be generated after register
allocation, which might cause performance degradation. To prevent such
cases, this patch adds a check phase that calculates the maximum
register pressure of the scheduled loop and reject it if the pressure is
too high. This can be enabled this by specifying
`pipeliner-register-pressure`. Additionally, an II search range is
currently fixed at 10, which is too small to find a schedule when the
above algorithm is applied. Therefore this patch also adds a new option
`pipeliner-ii-search-range` to specify the length of the range to
search. There is one more new option
`pipeliner-register-pressure-margin`, which can be used to estimate a
register pressure limit less than actual for conservative analysis.
Discourse thread:
https://discourse.llvm.org/t/considering-register-pressure-when-deciding-initiation-interval-in-machinepipeliner/74725
Commit: 21730eb49b7c53abd47eff898c913b48e2f1dfc9
https://github.com/llvm/llvm-project/commit/21730eb49b7c53abd47eff898c913b48e2f1dfc9
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/InputFiles.cpp
M lld/ELF/DriverUtils.cpp
M lld/MachO/DriverUtils.cpp
M lld/wasm/Driver.cpp
M lld/wasm/WriterUtils.cpp
Log Message:
-----------
[lld] Use SmallString::operator std::string (NFC)
Commit: 8fddf7fd148cbb9e5c09e351cd1be410a513702a
https://github.com/llvm/llvm-project/commit/8fddf7fd148cbb9e5c09e351cd1be410a513702a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
Log Message:
-----------
[llvm] Use MachineBasicBlock::succ_empty (NFC)
Commit: 234da203779be31c83541d99ee28e01ee422c506
https://github.com/llvm/llvm-project/commit/234da203779be31c83541d99ee28e01ee422c506
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Analysis/RetainSummaryManager.cpp
Log Message:
-----------
[Analysis] Use StringRef::ends_with_insensitive (NFC)
Commit: a54463a4c6c32810b064e02b39e2c8f0de974006
https://github.com/llvm/llvm-project/commit/a54463a4c6c32810b064e02b39e2c8f0de974006
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
Log Message:
-----------
[clang-tidy] Use llvm::any_of (NFC)
Commit: 9f290509421b874ecf8082fa8f754850fb121655
https://github.com/llvm/llvm-project/commit/9f290509421b874ecf8082fa8f754850fb121655
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/CodeGen/MachinePipeliner.cpp
Log Message:
-----------
[CodeGen][MachinePipeliner] Fix -Wpessimizing-move in MachinePipeliner.cpp (NFC)
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:1044:19: error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
1044 | CycleInstrs = std::move(Schedule.reorderInstructions(SSD, CycleInstrs));
| ^
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:1044:19: note: remove std::move call here
1044 | CycleInstrs = std::move(Schedule.reorderInstructions(SSD, CycleInstrs));
| ^~~~~~~~~~ ~
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:1395:21: error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
1395 | auto LastUses = std::move(computeLastUses(OrderedInsts, Stages));
| ^
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:1395:21: note: remove std::move call here
1395 | auto LastUses = std::move(computeLastUses(OrderedInsts, Stages));
| ^~~~~~~~~~ ~
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:1502:9: error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
1502 | std::move(computeMaxSetPressure(OrderedInsts, Stages, MaxStage + 1));
| ^
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:1502:9: note: remove std::move call here
1502 | std::move(computeMaxSetPressure(OrderedInsts, Stages, MaxStage + 1));
| ^~~~~~~~~~ ~
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:3381:19: error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
3381 | cycleInstrs = std::move(reorderInstructions(SSD, cycleInstrs));
| ^
/Users/jiefu/llvm-project/llvm/lib/CodeGen/MachinePipeliner.cpp:3381:19: note: remove std::move call here
3381 | cycleInstrs = std::move(reorderInstructions(SSD, cycleInstrs));
| ^~~~~~~~~~ ~
4 errors generated.
Commit: 3b943c0203df5c35089417567cc470d5cdbc497e
https://github.com/llvm/llvm-project/commit/3b943c0203df5c35089417567cc470d5cdbc497e
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/CodeGen/ARM/stack-guard-elf.ll
Log Message:
-----------
[Thumb,test] Improve __stack_chk_guard test
Commit: a2caa4929e8e8a2ffff4ee5f03ab37a9be7462a0
https://github.com/llvm/llvm-project/commit/a2caa4929e8e8a2ffff4ee5f03ab37a9be7462a0
Author: martinboehme <mboehme at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Treat comma operator correctly in `getResultObjectLocation()`. (#78427)
Commit: 21199f9842dffa4f34b38101195c6f57d1bd4630
https://github.com/llvm/llvm-project/commit/21199f9842dffa4f34b38101195c6f57d1bd4630
Author: Dominik Adamski <dominik.adamski at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
A mlir/test/Target/LLVMIR/omptarget-wsloop-collapsed.mlir
A openmp/libomptarget/test/offloading/fortran/target-parallel-do-collapse.f90
Log Message:
-----------
[OpenMP][OMPIRBuilder] Fix LLVM IR codegen for collapsed device loop (#78708)
When we generate the loop body function, we need to be sure, that all
original loop counters are replaced by the new counter.
We need to save all items which use the original loop counter and then
perform replacement of the original loop counter. If we don't do it,
there is a risk that some values are not updated.
Commit: 8658d157654832fe24b4f3d2a9a62784a4d6a162
https://github.com/llvm/llvm-project/commit/8658d157654832fe24b4f3d2a9a62784a4d6a162
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
Log Message:
-----------
Revert "[Clang][Sema] Diagnose function/variable templates that shadow their own template parameters (#78274)"
This reverts commit fc0253264445be7f88d4cf0f9129dcb10c2fb84b.
This errors is disruptive to downstream projects
and should be reintroduced as a separate on-by-default
warning.
https://github.com/llvm/llvm-project/pull/78274
Commit: 262735bbcc22f216a688b934ca9ff50b427c9dc1
https://github.com/llvm/llvm-project/commit/262735bbcc22f216a688b934ca9ff50b427c9dc1
Author: Zoltán Böszörményi <zboszor at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libclc/CMakeLists.txt
Log Message:
-----------
libclc: add missing AMD gfx symlinks (#78884)
Fixes #44186
---------
Signed-off-by: Zoltán Böszörményi <zboszor at gmail.com>
Commit: 376f019609b3eba578723c26e1635d1be31e6057
https://github.com/llvm/llvm-project/commit/376f019609b3eba578723c26e1635d1be31e6057
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
Log Message:
-----------
[AMDGPU][NFC] Update cache policy descriptions (#78768)
Commit: f36845d0c696023ea97931a4201b43ddfababf9c
https://github.com/llvm/llvm-project/commit/f36845d0c696023ea97931a4201b43ddfababf9c
Author: David Chisnall <davidchisnall at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/ObjCRuntime.h
M clang/lib/CodeGen/CGObjCGNU.cpp
A clang/test/CodeGenObjC/gnustep2-direct-method.m
Log Message:
-----------
Enable direct methods and fast alloc calls for libobjc2. (#78030)
These will be supported in the upcoming 2.2 release and so are gated on
that version.
Direct methods call `objc_send_initialize` if they are class methods
that may not have called initialize. This is guarded by checking for the
class flag bit that is set on initialisation in the class. This bit now
forms part of the ABI, but it's been stable for 30+ years so that's fine
as a contract going forwards.
Commit: 5fb39efe680642c6cab072560efa3bfce6646fb0
https://github.com/llvm/llvm-project/commit/5fb39efe680642c6cab072560efa3bfce6646fb0
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/ADT/SmallVector.h
M llvm/lib/Support/SmallVector.cpp
Log Message:
-----------
[LLVM][ADT] Explicitly convert size_t values to SmallVector's size type (#77939)
Multiple places rely on implicit conversion when assigning 'size_t'
values to the member fields (size or capacity) of SmallVector.
Depending on the platform / compiler configuration, this may result in
narrowing conversion warnings (especially given that the size type of
SmallVector's member fields is determined based on type T - in
SmallVector<T>). To avoid the problem altogether, make the conversions
explicit.
Co-authored-by: Orest Chura <orest.chura at intel.com>
Commit: 68a5261d260e95148755c6725f56957cb8fd23a3
https://github.com/llvm/llvm-project/commit/68a5261d260e95148755c6725f56957cb8fd23a3
Author: Abhinav271828 <71174780+Abhinav271828 at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/include/mlir/Analysis/Presburger/Barvinok.h
M mlir/include/mlir/Analysis/Presburger/GeneratingFunction.h
M mlir/include/mlir/Analysis/Presburger/QuasiPolynomial.h
M mlir/include/mlir/Analysis/Presburger/Utils.h
M mlir/lib/Analysis/Presburger/Barvinok.cpp
M mlir/lib/Analysis/Presburger/QuasiPolynomial.cpp
M mlir/lib/Analysis/Presburger/Utils.cpp
M mlir/unittests/Analysis/Presburger/BarvinokTest.cpp
M mlir/unittests/Analysis/Presburger/UtilsTest.cpp
Log Message:
-----------
[MLIR][Presburger] Implement function to evaluate the number of terms in a generating function. (#78078)
We implement `computeNumTerms()`, which counts the number of terms in a
generating function by substituting the unit vector in it.
This is the main function in Barvinok's algorithm – the number of points
in a polytope is given by the number of terms in the generating function
corresponding to it.
We also modify the GeneratingFunction class to have `const` getters and
improve the simplification of QuasiPolynomials.
Commit: 0845514d1a78ca04ef90b775d8819a8a8f19a533
https://github.com/llvm/llvm-project/commit/0845514d1a78ca04ef90b775d8819a8a8f19a533
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream.c
Log Message:
-----------
[clang][analyzer] Add function 'fscanf' to StreamChecker. (#78180)
Commit: 6c47419703acfcd7dcca9e30ab9dba6a7a42f977
https://github.com/llvm/llvm-project/commit/6c47419703acfcd7dcca9e30ab9dba6a7a42f977
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/CMakeLists.txt
M clang/cmake/caches/BOLT.cmake
M clang/utils/perf-training/CMakeLists.txt
M clang/utils/perf-training/bolt.lit.cfg
M clang/utils/perf-training/bolt.lit.site.cfg.in
M clang/utils/perf-training/perf-helper.py
Log Message:
-----------
Revert "[Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)"
This reverts commit 745883bba69007f1d2c5135f3d5b0f1efcfc82cd.
This is failing to configure on many of our bots:
https://lab.llvm.org/buildbot/#/builders/245/builds/19468
This did not get caught right away because generally bots only
clean the build every so often.
Commit: 11d1310b57a9f2defb4d65a35b90a69020c52e46
https://github.com/llvm/llvm-project/commit/11d1310b57a9f2defb4d65a35b90a69020c52e46
Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOverload.cpp
M clang/test/SemaCXX/overloaded-operator.cpp
Log Message:
-----------
[clang] Fix assertion failure with deleted overloaded unary operators (#78316)
When emitting notes related to wrong number of arguments do not consider
object argument.
Fixes https://github.com/llvm/llvm-project/issues/78314
Commit: 7b925c3edb6297df6bcf87dfcfdfd645f03b5388
https://github.com/llvm/llvm-project/commit/7b925c3edb6297df6bcf87dfcfdfd645f03b5388
Author: José Lira Junior <jljuniorpb at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lldb/include/lldb/Core/Address.h
M lldb/include/lldb/Symbol/Symbol.h
M lldb/include/lldb/Symbol/SymbolContext.h
M lldb/include/lldb/Utility/Stream.h
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Symbol/Symbol.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Utility/Stream.cpp
Log Message:
-----------
[lldb] refactor highlighting function for image lookup command (#76112)
Follow-up to #69422.
This PR puts all the highlighting settings into a single struct for
easier handling
Co-authored-by: Talha Tahir <talha.tahir at 10xengineers.ai>
Commit: 11c0dc3d4081b7739500d31332eba0760fed174c
https://github.com/llvm/llvm-project/commit/11c0dc3d4081b7739500d31332eba0760fed174c
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M .github/workflows/issue-subscriber.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-subscriber.yml
Log Message:
-----------
[GitHub][workflows] Run automation script with python3 (#78695)
This means we don't have to chmod, or change permissions any other way.
Commit: 9f7fff7f1391ea3bec394d8251b81cea92175cca
https://github.com/llvm/llvm-project/commit/9f7fff7f1391ea3bec394d8251b81cea92175cca
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
A mlir/include/mlir/Conversion/ArithToArmSME/ArithToArmSME.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/ArmSME/Utils/Utils.h
A mlir/lib/Conversion/ArithToArmSME/ArithToArmSME.cpp
A mlir/lib/Conversion/ArithToArmSME/CMakeLists.txt
M mlir/lib/Conversion/CMakeLists.txt
M mlir/lib/Conversion/VectorToArmSME/VectorToArmSME.cpp
M mlir/lib/Dialect/ArmSME/IR/Utils.cpp
A mlir/test/Conversion/ArithToArmSME/arith-to-arm-sme.mlir
R mlir/test/Dialect/ArmSME/arith-ops-to-sme.mlir
M mlir/test/Dialect/ArmSME/vector-ops-to-llvm.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/fill-2d.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/use-too-many-tiles.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f32.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f64.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-write-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/tile_fill.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-ops.mlir
Log Message:
-----------
[mlir][ArmSME] Add arith-to-arm-sme conversion pass (#78197)
Existing 'arith::ConstantOp' conversion and tests are moved from
VectorToArmSME. There's currently only a single op that's converted at
the moment, but this will grow in the future as things like in-tile add
are implemented. Also, 'createLoopOverTileSlices' is moved to ArmSME
utils since it's relevant for both conversions.
Commit: e280c287e42065736d9c343306603ea07430a82b
https://github.com/llvm/llvm-project/commit/e280c287e42065736d9c343306603ea07430a82b
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
A mlir/lib/ExecutionEngine/ArmRunnerUtils.cpp
M mlir/lib/ExecutionEngine/CMakeLists.txt
M mlir/test/CMakeLists.txt
A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/lit.local.cfg
A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/test-setArmSVLBits.mlir
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/lit.local.cfg
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/test-setArmVLBits.mlir
M mlir/test/lit.cfg.py
Log Message:
-----------
[mlir] Add `mlir_arm_runner_utils` library for use in integration tests (#78583)
This adds a new `mlir_arm_runner_utils` library that contains utils
specific to Arm/AArch64. This is for use in MLIR integration tests.
This initial patch adds `setArmVLBits()` and `setArmSVLBits()`. This
allows changing vector length or streaming vector length at runtime (or
setting it to a known minimum, i.e. 128-bits).
Commit: ac296b696ccf3081b2fc920f860da894fb1d8eb0
https://github.com/llvm/llvm-project/commit/ac296b696ccf3081b2fc920f860da894fb1d8eb0
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-invalid-syncscope.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-store-infinite-loop.ll
Log Message:
-----------
[AMDGPU] Drop verify from SIMemoryLegalizer tests (#78697)
SIMemoryLegalizer tests were slow, with most of them taking 4.5 to 5.3s
to complete and that's on a fast machine. I also recall seeing them in
the slowest tests list on build bots.
This removes the verify-machineinstrs option from these tests to speed
them up, bringing the slowest test down to +-2s.
Verifier still runs in EXPENSIVE_CHECKS builds.
Commit: 5cd8d53cac00feafd739dba6215e1f6eed502e46
https://github.com/llvm/llvm-project/commit/5cd8d53cac00feafd739dba6215e1f6eed502e46
Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/CodeGen/MachineOperand.h
M llvm/lib/CodeGen/MachineOperand.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
M llvm/test/CodeGen/RISCV/inline-asm-mem-constraint.ll
Log Message:
-----------
[RISCV] Teach RISCVMergeBaseOffset to handle inline asm (#78945)
For inline asm with memory operands, we can merge the offset into
the second operand of memory constraint operands.
Differential Revision: https://reviews.llvm.org/D158062
Commit: a43c192567eb4ea2535d73b83da5c7d5ed2b6122
https://github.com/llvm/llvm-project/commit/a43c192567eb4ea2535d73b83da5c7d5ed2b6122
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[llvm-jitlink] Use SmallVectorImpl when referencing StubInfos (NFC)
The element type is declared as SmallVector<T, 1>, but we assign to
SmallVector<T> &. These types are not the same on 32-bit systems,
resulting in a compilation error.
Fix this by using SmallVectorImpl<T> & instead, which is independent
of the small size.
Commit: 50df08cd43ec02c58067797df33ec67c128431bb
https://github.com/llvm/llvm-project/commit/50df08cd43ec02c58067797df33ec67c128431bb
Author: chuongg3 <chuong.goh at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ctpop.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cttz.mir
M llvm/test/CodeGen/AArch64/arm64-neon-across.ll
M llvm/test/CodeGen/AArch64/arm64-vadd.ll
M llvm/test/CodeGen/AArch64/dp1.ll
M llvm/test/CodeGen/AArch64/neon-addlv.ll
M llvm/test/CodeGen/AArch64/popcount.ll
Log Message:
-----------
[GlobalISel][AArch64] Combine Vector Reduction Add Long (#76241)
ADDLV(ADDLP) => ADDLV
Removes unnecessary ADDLP instruction
Already exists for SDAG, adding for GlobalISel
Commit: 54952e95b1ee1ab361f5523744f5a6eedaad4bd4
https://github.com/llvm/llvm-project/commit/54952e95b1ee1ab361f5523744f5a6eedaad4bd4
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
Log Message:
-----------
Fix an unused variable, NFC.
Commit: cc38cff05cfafb92bf91aadc39692ec5e12710a0
https://github.com/llvm/llvm-project/commit/cc38cff05cfafb92bf91aadc39692ec5e12710a0
Author: Christian Sigg <csigg at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Fix BUILD after 9f7fff7f1391ea3bec394d8251b81cea92175cca.
Commit: c9f5b5c935bd12d76d4bafff61d8116cb3229972
https://github.com/llvm/llvm-project/commit/c9f5b5c935bd12d76d4bafff61d8116cb3229972
Author: Mitch Phillips <31459023+hctim at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/test/CodeGen/memtag-globals-asm.cpp
M llvm/lib/Target/AArch64/AArch64GlobalsTagging.cpp
Log Message:
-----------
[MTE] Disable all MTE protection of globals in sections (#78443)
Previous work in this area (#70186) disabled MTE in constructor
sections. Looks like I missed one, ".preinit_array".
Also, in the meantime, I found an exciting feature in the linker where
globals placed into an explicit section, where the section name is a
valid C identifer, gets an implicit '__start_<sectionname>' and
'__stop_<sectionname>' symbol as well. This is convenient for iterating
over some globals, but of course iteration over differently-tagged
globals in MTE explodes.
Thus, disable MTE globals for anything that has a section.
Commit: c4fc563b8d41c28f3e4cbcd4ef943c26d234b5ae
https://github.com/llvm/llvm-project/commit/c4fc563b8d41c28f3e4cbcd4ef943c26d234b5ae
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
Log Message:
-----------
[JITLink][AArch32] Add GOT builder and implement R_ARM_GOT_PREL relocations for ELF (#78753)
LLJIT needs this relocation for running deinitializers. Implementation and
test are adapted from test arm-fpic-got.s in LLD.
Commit: 6aeb7a71d40faed14820523b5be24ff93a4e9bf9
https://github.com/llvm/llvm-project/commit/6aeb7a71d40faed14820523b5be24ff93a4e9bf9
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/IR/DebugInfo.h
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[RemoveDIs][DebugInfo] Add interface changes for AT analysis (#78460)
This patch adds the preliminary changes for handling DPValues in
AssignmentTrackingAnalysis - very few functional changes are included,
but internal data structures have been changed to operate with DPValues
as well as Instructions, allowing future patches to process DPValues
correctly.
Commit: ad01447d30ed48e127254e0c45350c938d72c966
https://github.com/llvm/llvm-project/commit/ad01447d30ed48e127254e0c45350c938d72c966
Author: Michael Schellenberger Costa <miscco at nvidia.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each_n.pass.cpp
Log Message:
-----------
[libcxx] Fix typo in parallel `for_each_n` test (#78954)
This fixes a trivial copy and paste error where we forgot to change
`for_each` to `for_each_n`
Commit: f45249f05ffcda0456dd1d5e9f9a7f0d75a20f84
https://github.com/llvm/llvm-project/commit/f45249f05ffcda0456dd1d5e9f9a7f0d75a20f84
Author: Nico Weber <thakis at chromium.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn] port 03c19e91e8d8
Commit: a590f2315f45615920f244dcce12a7e169148da7
https://github.com/llvm/llvm-project/commit/a590f2315f45615920f244dcce12a7e169148da7
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
A llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll
Log Message:
-----------
[hwasan] Update dbg.assign intrinsics in HWAsan pass (#78606)
llvm.dbg.assign intrinsics have 2 {value, expression} pairs; fix hwasan to update
the second expression.
Fixes #76545
Commit: c1729c8df2e2d0e9ef3c039df78f2711ea8fe65c
https://github.com/llvm/llvm-project/commit/c1729c8df2e2d0e9ef3c039df78f2711ea8fe65c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
Log Message:
-----------
[X86] X86FixupVectorConstants.cpp - pull out rebuildConstant helper for future patches. NFC.
Add helper to convert raw APInt bit stream into ConstantDataVector elements.
This was used internally by rebuildSplatableConstant but will be reused in future patches for #73783 and #71078
Commit: 1a5eeade161beddf9c8b2fabad56af3081cd3629
https://github.com/llvm/llvm-project/commit/1a5eeade161beddf9c8b2fabad56af3081cd3629
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
[X86] Add printZeroUpperMove constant/shuffle comments helper. NFC.
Pull out helper instead of repeating switch cases.
Commit: 865e4a1f33bd3be42ff256c6839aff0860610a5a
https://github.com/llvm/llvm-project/commit/865e4a1f33bd3be42ff256c6839aff0860610a5a
Author: Hana Dusíková <hanicka at hanicka.net>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/test/CoverageMapping/branch-constfolded.cpp
M clang/test/CoverageMapping/if.cpp
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/tools/llvm-cov/SourceCoverageView.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
Log Message:
-----------
[coverage] skipping code coverage for 'if constexpr' and 'if consteval' (#78033)
`if constexpr` and `if consteval` conditional statements code coverage
should behave more like a preprocesor `#if`-s than normal
ConditionalStmt. This PR should fix that.
---------
Co-authored-by: cor3ntin <corentinjabot at gmail.com>
Commit: 365aa1574a1b4a3cdee6648227d095d00536ffde
https://github.com/llvm/llvm-project/commit/365aa1574a1b4a3cdee6648227d095d00536ffde
Author: Rin Dobrescu <irina.dobrescu at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/aarch64-combine-add-zext.ll
M llvm/test/CodeGen/AArch64/avoid-pre-trunc.ll
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
Log Message:
-----------
[AArch64] Convert UADDV(add(zext, zext)) into UADDLV(concat). (#78301)
We can convert a UADDV(add(zext(64-bit source), zext(64-bit source)))
into UADDLV(concat), where the concat represents the 64-bit zext
sources.
Commit: 3c94154c860ea9c2fdd5775bd6ad31ac1db0c261
https://github.com/llvm/llvm-project/commit/3c94154c860ea9c2fdd5775bd6ad31ac1db0c261
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Analysis/Presburger/Barvinok.cpp
Log Message:
-----------
[mlir] Fix -Wunused-variable in Barvinok.cpp (NFC)
llvm-project/mlir/lib/Analysis/Presburger/Barvinok.cpp:262:21:
error: unused variable 'd' [-Werror,-Wunused-variable]
for (const Point &d : ds)
^
1 error generated.
Commit: 09bd2cb70f4db9f6638a2e9c89d0397d051a3897
https://github.com/llvm/llvm-project/commit/09bd2cb70f4db9f6638a2e9c89d0397d051a3897
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
[X86] Add printLaneBroadcast constant comments helper. NFC.
Pull out helper instead of repeating switch cases.
Commit: 60963272c5c83890910fd97f8d941180b6006fca
https://github.com/llvm/llvm-project/commit/60963272c5c83890910fd97f8d941180b6006fca
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
[X86] Add printElementBroadcast constant comments helper. NFC.
Pull out helper instead of repeating switch cases.
Commit: df4ba00c7b50429fa88c3a9991e9194e2422dc76
https://github.com/llvm/llvm-project/commit/df4ba00c7b50429fa88c3a9991e9194e2422dc76
Author: Hirofumi Nakamura <k.nakamura.hirofumi at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Support of TableGen statements in unwrapped line parser (#78846)
Make TableGen's statements to be parsed considering their structure.
- Avoid to parse label
- Avoid class from being parsed as c++'s class
- Support if statement of the form `if <cond> then { ... }`
- Support defset statement of the form `defset <type> <name> {}`
---------
Co-authored-by: Björn Schäpers <github at hazardy.de>
Commit: 27ce26b06655cfece3d54b30e442ef93d3e78ac7
https://github.com/llvm/llvm-project/commit/27ce26b06655cfece3d54b30e442ef93d3e78ac7
Author: bd1976bris <bd1976llvm at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Sema/SemaExprCXX.cpp
A clang/test/CodeGenCXX/visibility-global-new-delete.cpp
A clang/test/Driver/visibility-global-new-delete.cl
Log Message:
-----------
[Sema] Add `-fvisibility-global-new-delete=` option (#75364)
[Sema] Add `-fvisibility-global-new-delete=` option (#75364)
By default the implicitly declared replaceable global new and delete
operators are given a default visibility attribute. Previous work, see:
https://reviews.llvm.org/D53787, added
`-fvisibility-global-new-delete-hidden` to change this to a hidden
visibility attribute.
This change adds `-fvisibility-global-new-delete=` which controls
whether (or not) to add an implicit visibility attribute to the implicit
declarations for these functions, and what visibility that attribute
will specify. The option takes 4 values: `force-hidden`,
`force-protected`, `force-default` and `source`. Option values
`force-hidden`, `force-protected` and `force-default` assign hidden,
protected, and default visibilities respectively; the use of the term
force in the value names is designed to imply to a user that the semantics
of this option differ significantly from `-fvisibility=`. An option
value of `source` implies that no implicit attribute is added; without
the attribute the replaceable global new and delete operators behave
normally (like other functions) with respect to visibility attributes,
pragmas and options.
The motivation for the `source` value is to facilitate users who intend
to replace these functions either for a single linkage unit or a limited
set of linkage units. `-fvisibility-global-new-delete=source` can be
applied globally to the compilations in a build where the existing
`-fvisibility-global-new-delete-hidden` cannot, as it conflicts with a
common pattern where these functions are dynamically imported.
The existing `-fvisibility-global-new-delete-hidden` is now a deprecated
spelling of `-fvisibility-global-new-delete=force-hidden`
A release note has been added for these changes.
`-fvisibility-global-new-delete=source` will be set by default for PS5.
PS5 users that want the normal toolchain behaviour will be able to
supply `-fvisibility-global-new-delete=force-default`.
Commit: 88d1de5ec64210686d93a90529583505635d257d
https://github.com/llvm/llvm-project/commit/88d1de5ec64210686d93a90529583505635d257d
Author: Emilia Kond <emilia at rymiel.space>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format][NFC] Unify token size tests to use ASSERT_EQ
Commit: 4821c90c24d52d4a42990fd9371caedb157bc58b
https://github.com/llvm/llvm-project/commit/4821c90c24d52d4a42990fd9371caedb157bc58b
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/tools/clang-repl/CMakeLists.txt
Log Message:
-----------
[clang-repl] Fix PLT offset too large linker error on ARM (#78959)
I cross-compile clang-repl with GCC-10 on Ubuntu 20.04 and get this
error when linking with gold: PLT offset too large, try linking with
--long-plt
Commit: fa6025e25b5754e8cf39169e3a7085b57ea35de5
https://github.com/llvm/llvm-project/commit/fa6025e25b5754e8cf39169e3a7085b57ea35de5
Author: Emilia Kond <emilia at rymiel.space>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Don't confuse initializer equal signs in for loops (#77712)
clang-format has logic to align declarations of multiple variables of
the same type, aligning them at the equals sign. This logic is applied
in for loops as well. However, this alignment logic also erroneously
affected the equals signs of designated initializers.
This patch forbids alignment if the token 2 tokens back from the equals
sign is a designated initializer period.
Fixes https://github.com/llvm/llvm-project/issues/73902
Commit: ab1b4991cfacfe04a579bf0b0ff4a704a6224d4a
https://github.com/llvm/llvm-project/commit/ab1b4991cfacfe04a579bf0b0ff4a704a6224d4a
Author: Tuan Chuong Goh <chuong.goh at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
A llvm/test/CodeGen/AArch64/shift.ll
Log Message:
-----------
[AArch64] Adding tests for shifts
Commit: b689b4fe55103a04eac847964e126b6048b89ae0
https://github.com/llvm/llvm-project/commit/b689b4fe55103a04eac847964e126b6048b89ae0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/cmake/modules/FindFFI.cmake
M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
Log Message:
-----------
[LLVM][CMake] Add ffi_static target for the FFI static library (#78779)
Summary:
This patch is an attempt to make the `find_package(FFI)` support in LLVM
prefer to provide the static library version if present. This is
currently
an optional library for building `libffi`, and its presence implies that
it should likely be used. This patch is an attempt to fix some problems
observed with testing programs linked against `libffi` on many different
systems that could have conflicting paths. Linking it statically
prevents this.
This patch adds the `ffi_static` target for this library.
Commit: 5266c1285bb9560d8d9d266977167f6c24282e95
https://github.com/llvm/llvm-project/commit/5266c1285bb9560d8d9d266977167f6c24282e95
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
R llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll
Log Message:
-----------
Revert "[hwasan] Update dbg.assign intrinsics in HWAsan pass" (#78971)
Reverts llvm/llvm-project#78606
https://lab.llvm.org/buildbot/#/builders/77/builds/33963
Commit: 490a09a02e81c0034aa08a800fa7a57ec6ef0767
https://github.com/llvm/llvm-project/commit/490a09a02e81c0034aa08a800fa7a57ec6ef0767
Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/unittests/Analysis/UnrollAnalyzerTest.cpp
Log Message:
-----------
[UnrollAnalyzerTest] Remove dependency to pass managers (#78473)
Remove use of LegacyPassManager in the UnrollAnalyzerTest unit test.
Given that the goal isn't to test pass manager interfaces, and since the
LoopUnrollAnalyzer isn't even implemented as a pass, we do not really
need the complexity of using a pass manager. Instead we just make sure
that we run LoopUnrollAnalyzer and other needed analyses standalone
(without any pass manager). This was inspired by the LoopInfoTest unit
test.
Commit: 8fab16c86c9860fa78022a97553761fcdccfa03e
https://github.com/llvm/llvm-project/commit/8fab16c86c9860fa78022a97553761fcdccfa03e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/18.rst
Log Message:
-----------
[libc++][NFC] Remove trailing whitespace from release notes
Commit: 5a667bee9c983f882255732ae27c96d1d94e0893
https://github.com/llvm/llvm-project/commit/5a667bee9c983f882255732ae27c96d1d94e0893
Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
M llvm/test/Transforms/InstCombine/logical-select.ll
Log Message:
-----------
[InstCombine] Try to fold trunc(shuffle(zext)) to just a shuffle (#78636)
Tries to remove extra trunc/ext instruction for shufflevector
instructions.
Differential Review: https://github.com/llvm/llvm-project/pull/78636
Commit: cabe8be6bb2120828a741217365be975c59ac7b6
https://github.com/llvm/llvm-project/commit/cabe8be6bb2120828a741217365be975c59ac7b6
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/src/__support/FPUtil/FPBits.h
M libc/test/src/__support/FPUtil/fpbits_test.cpp
Log Message:
-----------
[libc] `FPRep` builders return `FPRep` instead of raw `StorageType` (#78588)
Commit: bf7b8dae0615884816fff54cac08bc691746b1ee
https://github.com/llvm/llvm-project/commit/bf7b8dae0615884816fff54cac08bc691746b1ee
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/src/__support/FPUtil/FPBits.h
M libc/test/src/__support/FPUtil/fpbits_test.cpp
Log Message:
-----------
Revert "[libc] `FPRep` builders return `FPRep` instead of raw `StorageType`" (#78974)
Reverts llvm/llvm-project#78588
Commit: 4f4690530e8b40cdf3a17c76a352b26c2fb0446c
https://github.com/llvm/llvm-project/commit/4f4690530e8b40cdf3a17c76a352b26c2fb0446c
Author: Jan Kokemüller <jan.kokemueller at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/include/__expected/expected.h
M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/transform_error.mandates.verify.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/transform_error.mandates.verify.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/expected/types.h
Log Message:
-----------
[libc++] Ensure that std::expected has no tail padding (#69673)
Currently std::expected can have some padding bytes in its tail due to
[[no_unique_address]]. Those padding bytes can be used by other objects.
For example, in the current implementation:
sizeof(std::expected<std::optional<int>, bool>) ==
sizeof(std::expected<std::expected<std::optional<int>, bool>, bool>)
As a result, the data layout of an
std::expected<std::expected<std::optional<int>, bool>, bool>
can look like this:
+-- optional "has value" flag
| +--padding
/---int---\ | |
00 00 00 00 01 00 00 00
| |
| +- "outer" expected "has value" flag
|
+- expected "has value" flag
This is problematic because `emplace()`ing the "inner" expected can not
only overwrite the "inner" expected "has value" flag (issue #68552) but
also the tail padding where other objects might live.
This patch fixes the problem by ensuring that std::expected has no tail
padding, which is achieved by conditional usage of [[no_unique_address]]
based on the tail padding that this would create.
This is an ABI breaking change because the following property changes:
sizeof(std::expected<std::optional<int>, bool>) <
sizeof(std::expected<std::expected<std::optional<int>, bool>, bool>)
Before the change, this relation didn't hold. After the change, the relation
does hold, which means that the size of std::expected in these cases increases
after this patch. The data layout will change in the following cases where
tail padding can be reused by other objects:
class foo : std::expected<std::optional<int>, bool> {
bool b;
};
or using [[no_unique_address]]:
struct foo {
[[no_unique_address]] std::expected<std::optional<int>, bool> e;
bool b;
};
The vendor communication is handled in #70820.
Fixes: #70494
Co-authored-by: philnik777 <nikolasklauser at berlin.de>
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: bfef161a80b62723bedad996aa7a697f99e6802a
https://github.com/llvm/llvm-project/commit/bfef161a80b62723bedad996aa7a697f99e6802a
Author: chuongg3 <chuong.goh at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/fcmp.ll
M llvm/test/CodeGen/AArch64/icmp.ll
M llvm/test/CodeGen/AArch64/sext.ll
M llvm/test/CodeGen/AArch64/shift.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalize Shifts for Smaller/Larger Vectors (#78750)
Legalize shl/lshr/ashr for smaller/larger vector widths with legal
element sizes
Smaller than legal vector types does not work at the moment as it relies
on G_ANYEXT to work with smaller than legal vector types
Commit: 3c246efd04210af56ab6ce960b98283ec5bc7c30
https://github.com/llvm/llvm-project/commit/3c246efd04210af56ab6ce960b98283ec5bc7c30
Author: Petr Maj <53400784+zduka at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/test/Transforms/RewriteStatepointsForGC/base-pointers.ll
Log Message:
-----------
True fixpoint algorithm in RS4GC (#75826)
Fixes a problem where the explicit marking of various instructions as
conflicts did not propagate to their users. An example of this:
```
%getelementptr = getelementptr i8, <2 x ptr addrspace(1)> zeroinitializer, <2 x i64> <i64 888, i64 908>
%shufflevector = shufflevector <2 x ptr addrspace(1)> %getelementptr, <2 x ptr addrspace(1)> zeroinitializer, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
%shufflevector1 = shufflevector <2 x ptr addrspace(1)> %getelementptr, <2 x ptr addrspace(1)> zeroinitializer, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
%select = select i1 false, <4 x ptr addrspace(1)> %shufflevector1, <4 x ptr addrspace(1)> %shufflevector
```
Here the vector shuffles will get single base (gep) during the fixpoint
and therefore the select will get a known base (gep). We later mark the
shuffles as conflicts, but this does not change the base of select. This
gets caught by an assert where the select's type will differ from its
(wrong) base later on.
The solution in the MR is to move the explicit conflict marking into the
fixpoint phase.
---------
Co-authored-by: Petr Maj <pmaj at azul.com>
Commit: 1edb43f62ca408774b4392cbe641598e1c4725be
https://github.com/llvm/llvm-project/commit/1edb43f62ca408774b4392cbe641598e1c4725be
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/src/__support/FPUtil/FPBits.h
M libc/test/src/__support/FPUtil/fpbits_test.cpp
Log Message:
-----------
[reland][libc] `FPRep` builders return `FPRep` instead of raw `StorageType` (#78978)
Reland #78588
Commit: 70823fe4871eb6ca3fe8dc8264ac005c8edbfe70
https://github.com/llvm/llvm-project/commit/70823fe4871eb6ca3fe8dc8264ac005c8edbfe70
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/18.rst
Log Message:
-----------
[libc++][NFC] Fix incorrect formatting of release notes
Commit: 52a8bed426e59d10b41a12208d3ba55cd2c76a1f
https://github.com/llvm/llvm-project/commit/52a8bed426e59d10b41a12208d3ba55cd2c76a1f
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
M llvm/test/CodeGen/AMDGPU/si-annotate-dbg-info.ll
Log Message:
-----------
[DebugInfo][RemoveDIs] Adjust AMDGPU passes to work with DPValues (#78736)
This patch tweaks two AMDGPU passes to use iterators rather than
instruction pointers for expressing an insertion point. This is needed
to accurately support DPValues, the non-instruction storage object for
debug-info.
Two tests were sensitive to this change (variable assignments were being
put in the wrong place), and I've added extra run-lines with the "try
new debug-info..." flag. These get tested on our public buildbot to
ensure they continue to work accurately.
Commit: 75b0c913a5fa3895818a7c7a066c0a8e1a214329
https://github.com/llvm/llvm-project/commit/75b0c913a5fa3895818a7c7a066c0a8e1a214329
Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
Log Message:
-----------
[mlir][nfc] Update comments
1. Updates and clarifies a few comments related to hooks for
vector.{insert|extract}_strided_slice.
2. For consistency with vector.insert_strided_slice, removes a TODO from
vector.extract_strided_slice Op def. It's self-explenatory that
adding support for non-unit strides is a "TODO".
Commit: 90af11ea97cf9ab34677720c5b7848eb5e9d4efe
https://github.com/llvm/llvm-project/commit/90af11ea97cf9ab34677720c5b7848eb5e9d4efe
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
A libcxx/docs/ReleaseNotes.rst
M libcxx/docs/index.rst
Log Message:
-----------
[libc++] Make sure to publish release notes at ReleaseNotes.html
In LLVM 17, we switched to numbered RST files for release notes, which
makes it easier to deal with cherry-picks around release points. However,
we stopped publishing `libcxx/docs/ReleaseNotes.html`, which was
referenced by external sites.
This patch ensures that we keep publishing `ReleaseNotes.html` by simply
including the versioned RST file in the unversioned RST file.
Fixes #77955
Commit: 55cb52bbc539777aeb176f22fef0b4bfc70883fc
https://github.com/llvm/llvm-project/commit/55cb52bbc539777aeb176f22fef0b4bfc70883fc
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/include/flang/Lower/OpenMP.h
M flang/lib/Lower/OpenMP.cpp
M flang/test/Lower/OpenMP/FIR/sections.f90
A flang/test/Lower/OpenMP/infinite-loop-in-construct.f90
M flang/test/Lower/OpenMP/sections.f90
A flang/test/Lower/OpenMP/wsloop-unstructured.f90
Log Message:
-----------
[Flang][OpenMP] Restructure recursive lowering in `createBodyOfOp` (#77761)
This brings `createBodyOfOp` to its final intended form. First, input
privatization is performed, then the recursive lowering takes place, and
finally the output privatization (lastprivate) is done.
This enables fixing a known issue with infinite loops inside of an
OpenMP region, and the fix is included in this patch.
Fixes https://github.com/llvm/llvm-project/issues/74348.
Recursive lowering [5/5]
---------
Co-authored-by: Kiran Chandramohan <kiran.chandramohan at arm.com>
Commit: ce519b59b77551d1e9698de17367385a3dbf1352
https://github.com/llvm/llvm-project/commit/ce519b59b77551d1e9698de17367385a3dbf1352
Author: Natalie Chouinard <sudonatalie at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/dxc_spirv.hlsl
Log Message:
-----------
[HLSL][SPIR-V] Add support -fspv-target-env opt (#78611)
Add the -fspv-target-env option to the clang-dxc compatibility driver to
specify the SPIR-V target environment, which is propagated to the target
Triple.
Commit: ebb853fbe5f67ab42d78de45bbcb7b32b6323fb1
https://github.com/llvm/llvm-project/commit/ebb853fbe5f67ab42d78de45bbcb7b32b6323fb1
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
Log Message:
-----------
[ConstraintElim] Remove unused checkCondition() parameters (NFC)
Commit: ac3ee1b1aec424c60660fd245f5b53aaffa2f5b1
https://github.com/llvm/llvm-project/commit/ac3ee1b1aec424c60660fd245f5b53aaffa2f5b1
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
Log Message:
-----------
[Transforms] Fix -Wunused-variable and remove redundant VerifyStates after #75826 (NFC)
llvm-project/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp:1064:18: error: unused variable 'I' [-Werror,-Wunused-variable]
Instruction *I = cast<Instruction>(Pair.first);
^
llvm-project/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp:1066:11: error: unused variable 'BaseValue' [-Werror,-Wunused-variable]
auto *BaseValue = State.getBaseValue();
^
2 errors generated.
Commit: 3440466536c97ced20e366301a60f12f4fd01e30
https://github.com/llvm/llvm-project/commit/3440466536c97ced20e366301a60f12f4fd01e30
Author: carlobertolli <carlo.bertolli at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M openmp/libomptarget/test/lit.cfg
M openmp/libomptarget/test/lit.site.cfg.in
M openmp/libomptarget/test/unified_shared_memory/api.c
M openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
Log Message:
-----------
[OpenMP] Fix two usm tests for amdgpus. (#78824)
Some are missing setting of HSA_XNACK=1 environment variable, used to
enable unified memory support on amdgpu's when it's not been set at
kernel boot time. Some others needed to be marked as supporting
unified_shared_memory in the lit test harness.
Extend lit test harness to enable unified_shared_memory requirement for
AMD GPUs.
Reland: #77851
Commit: ff1cde5ba2da8b227e1ed4a4c47b636ca4fbe59e
https://github.com/llvm/llvm-project/commit/ff1cde5ba2da8b227e1ed4a4c47b636ca4fbe59e
Author: Florian Hahn <flo at fhahn.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll
Log Message:
-----------
[AArch64] Add vec3 load/store tests with GEPs with const offsets.
Extra tests for
https://github.com/llvm/llvm-project/pull/78637
https://github.com/llvm/llvm-project/pull/78632
Commit: 3de5d8e1254977c8812412a159da4185c9853fd0
https://github.com/llvm/llvm-project/commit/3de5d8e1254977c8812412a159da4185c9853fd0
Author: Sam McCall <sam.mccall at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
Log Message:
-----------
[include-cleaner] Add --only-headers flag, opposite of --ignore-headers (#78714)
Commit: af1741ed40ec3a2664c50effe0d0c9bd89e60cdc
https://github.com/llvm/llvm-project/commit/af1741ed40ec3a2664c50effe0d0c9bd89e60cdc
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/lib/Lower/OpenMP.cpp
Log Message:
-----------
[Flang][OpenMP] Reword comment for clarification, NFC
Commit: 0d8e333a7e756fc6ab07305ba1bbce916f510b30
https://github.com/llvm/llvm-project/commit/0d8e333a7e756fc6ab07305ba1bbce916f510b30
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/Parse/Parser.h
M clang/lib/Parse/ParseOpenACC.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
Log Message:
-----------
[OpenACC] Implement 'vector_length' clause parsing.
The 'vector_length' clause is the first of the 'int-expr' clauses that I've
implemented. Currently this is just being parsed as an assignment-expr,
since it needs to be usable in a list. Sema implementation will
enforce the integral-nature of it.
Commit: 6ba62f4f251763745d39194ecd33ebaf7a739059
https://github.com/llvm/llvm-project/commit/6ba62f4f251763745d39194ecd33ebaf7a739059
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/Basic/arm_sve_sme_incl.td
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvt.ll
Log Message:
-----------
[AArch64][SME2] Refine fcvtu/fcvts/scvtf/ucvtf (#77947)
Rename intrinsics for fcvtu to fcvtzu and fcvts to fcvtzs.
Use llvm_anyvector_ty for both multi vector returns and operands,
therefore the return and operands can be specified in the intrinsic
call, e.g.
@llvm.aarch64.sve.scvtf.x4.nxv4f32.nxv4i32
Commit: 51e91b64d0deb6a743861c2a0fba84865250036e
https://github.com/llvm/llvm-project/commit/51e91b64d0deb6a743861c2a0fba84865250036e
Author: itrofimow <i.trofimow at yandex.ru>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/benchmarks/CMakeLists.txt
A libcxx/benchmarks/exception_ptr.bench.cpp
M libcxx/docs/BuildingLibcxx.rst
M libcxx/include/__availability
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/new
M libcxx/include/typeinfo
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxxabi/include/cxxabi.h
M libcxxabi/lib/exceptions.exp
M libcxxabi/src/cxa_exception.cpp
Log Message:
-----------
[libc++abi] Implement __cxa_init_primary_exception and use it to optimize std::make_exception_ptr (#65534)
This patch implements __cxa_init_primary_exception, an extension to the
Itanium C++ ABI. This extension is already present in both libsupc++ and
libcxxrt. This patch also starts making use of this function in
std::make_exception_ptr: instead of going through a full throw/catch
cycle, we are now able to initialize an exception directly, thus making
std::make_exception_ptr around 30x faster.
Commit: 6a80e56ad0c7ae0adb8c4fb3f88eab7643566f41
https://github.com/llvm/llvm-project/commit/6a80e56ad0c7ae0adb8c4fb3f88eab7643566f41
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
Log Message:
-----------
[clang-tidy] Fix macros handling in cppcoreguidelines-prefer-member-initializer (#72037)
Produces now valid fixes for a member variables initialized with macros.
Correctly uses expansion location instead of location inside macro to
get init code.
Close #70189
Commit: 726d940586d7018ef03e87cb86601f4885f66001
https://github.com/llvm/llvm-project/commit/726d940586d7018ef03e87cb86601f4885f66001
Author: Konstantin Zhuravlyov <kzhuravl_dev at outlook.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
AMDGPU/Docs: Add link to MI300 Instruction Set Architecture (#78777)
Commit: 69fedaf830f8a2df4751a3c20189b7299daf88ae
https://github.com/llvm/llvm-project/commit/69fedaf830f8a2df4751a3c20189b7299daf88ae
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/ExtractAPI/API.h
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
A clang/test/ExtractAPI/union.c
Log Message:
-----------
[clang][ExtractAPI] Add support C unions in non C++ parsing mode (#77451)
Ensure that we generate correct symbol kinds and declaration fragments
for unions in C and Objective-C parsing modes.
rdar://120544091
Commit: d9cb37c9045bb0b3692d6faaeac43150a26e42e4
https://github.com/llvm/llvm-project/commit/d9cb37c9045bb0b3692d6faaeac43150a26e42e4
Author: Paul T Robinson <paul.robinson at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Headers/ia32intrin.h
Log Message:
-----------
[Headers][X86] Add macro descriptions to ia32intrin.h (#78613)
These are largely copy-pasted from the corresponding function
descriptions. Updated _rdtsc definition because it was just plain wrong.
Commit: 8c1b7fba1fbe9729d6258127b633bd05339e766b
https://github.com/llvm/llvm-project/commit/8c1b7fba1fbe9729d6258127b633bd05339e766b
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll
Log Message:
-----------
[SelectionDAG][DebugInfo][RemoveDIs] Handle entry value variables in DPValues too (#78726)
This patch abstracts visitEntryValueDbgValue to deal with the substance
of variable locations (Value, Var, Expr, DebugLoc) rather than how
they're stored. That allows us to call it from handleDebugValue, which
is similarly abstracted. This allows the entry-value behaviour (see the
test) to be supported with non-instruction debug-info too!.
Commit: 4e64ed97804ab4146d9cc24db16a624a265aa690
https://github.com/llvm/llvm-project/commit/4e64ed97804ab4146d9cc24db16a624a265aa690
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
[X86] Update X86::getConstantFromPool to take base OperandNo instead of Displacement MachineOperand
This allows us to check the entire constant address calculation, and ensure we're not performing any runtime address math into the constant pool (noticed in an upcoming patch).
Commit: 74ab7958bdda4d10b082129151f434176f99320e
https://github.com/llvm/llvm-project/commit/74ab7958bdda4d10b082129151f434176f99320e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/test/CodeGen/X86/combine-concatvectors.ll
M llvm/test/CodeGen/X86/nontemporal-4.ll
M llvm/test/CodeGen/X86/pr13577.ll
M llvm/test/CodeGen/X86/ret-mmx.ll
Log Message:
-----------
[X86] printZeroUpperMove - add support for constant vectors.
Allows cases where movss/movsd etc. are loading constant (ConstantDataSequential) sub-vectors, ensuring we pad with the correct number of zero upper elements by making repeated printConstant calls to print zeroes in a matching int/fp format.
Commit: c5532124dc0ffc892ded0b093e92244977e748f8
https://github.com/llvm/llvm-project/commit/c5532124dc0ffc892ded0b093e92244977e748f8
Author: Daniel Grumberg <dgrumberg at apple.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/test/ExtractAPI/typedef.c
Log Message:
-----------
[clang][ExtractAPI] Ensure typedef to pointer types are preserved (#78584)
When generating declaration fragments for types that use typedefs to
pointer types ensure that we keep the user-defined typedef form instead
of desugaring the typedef.
rdar://102137655
Commit: bfb09326be2281bdbf4c1f3cea532fc17a28ad15
https://github.com/llvm/llvm-project/commit/bfb09326be2281bdbf4c1f3cea532fc17a28ad15
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
M llvm/unittests/ExecutionEngine/JITLink/AArch32Tests.cpp
Log Message:
-----------
[JITLink][AArch32] Implement ELF relocation R_ARM_TARGET1
Prepare a configuration switch and default to R_ARM_ABS32
Commit: 565470ed27131b2550e71cf334bf3f33f9d82c62
https://github.com/llvm/llvm-project/commit/565470ed27131b2550e71cf334bf3f33f9d82c62
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
M llvm/unittests/ExecutionEngine/JITLink/AArch32Tests.cpp
Log Message:
-----------
[JITLink][AArch32] Implement ELF relocation R_ARM_NONE
Commit: 160ddf71147637b4b806dde2a0c686496aae5f14
https://github.com/llvm/llvm-project/commit/160ddf71147637b4b806dde2a0c686496aae5f14
Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir] Remove duplicate test
The removed test is identical to the one directly above.
Commit: e302950023cd99251371c5dc8a1e3b609dd5a8fe
https://github.com/llvm/llvm-project/commit/e302950023cd99251371c5dc8a1e3b609dd5a8fe
Author: David Spickett <david.spickett at linaro.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/tools/f18/flang-to-external-fc.in
Log Message:
-----------
[flang] Handle -S assemble only flag in flang-to-external-fc (#78979)
Flang was recently updated on Compiler Explorer and by default it's in
assemble only mode, you have to enable linking and executing.
This means that the default output for flang-to-external-fc is nothing,
as it doesn't know what `-S` means. You'd have to know to enable the
link to binary option to see any output.
Handle `-S` so that users of Compiler Explorer don't have to wonder why
the "compiler" is broken.
Commit: 27eb8d53ae44e2f5a6259744446ea389afaf68a2
https://github.com/llvm/llvm-project/commit/27eb8d53ae44e2f5a6259744446ea389afaf68a2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/test/CodeGen/X86/widen_shuffle-1.ll
Log Message:
-----------
[X86] printConstant - add ConstantVector handling
Commit: 06c3c3b67cb0287856145806cfb0179def3214bd
https://github.com/llvm/llvm-project/commit/06c3c3b67cb0287856145806cfb0179def3214bd
Author: Piotr Zegar <piotr.zegar at nokia.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/chained-comparison.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.cpp
Log Message:
-----------
[clang-tidy] Add bugprone-chained-comparison check (#76365)
Check that flags chained comparison expressions,
such as a < b < c or a == b == c, which may have
unintended behavior due to implicit operator
associativity.
Moved from Phabricator (D144429).
Commit: 2bb6d7b8a4d1e31d5c856174c163e77d7d3a0b94
https://github.com/llvm/llvm-project/commit/2bb6d7b8a4d1e31d5c856174c163e77d7d3a0b94
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/tools/clang-repl/CMakeLists.txt
Log Message:
-----------
[clang-repl] Limit use of PLT offset flag to linkers that support it
Follow-up fix from https://github.com/llvm/llvm-project/pull/78959
Commit: 4897b9888f11023bde363fb7dcebea440a0a13e9
https://github.com/llvm/llvm-project/commit/4897b9888f11023bde363fb7dcebea440a0a13e9
Author: Emma Pilkington <emma.pilkington95 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/test/ELF/lto/amdgcn-oses.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
Log Message:
-----------
[AMDGPU] Make a few more tests default COV agnostic (#78926)
Commit: ae99966a279601022d2b4d61dfbec349f7d65c12
https://github.com/llvm/llvm-project/commit/ae99966a279601022d2b4d61dfbec349f7d65c12
Author: carlobertolli <carlo.bertolli at amd.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M openmp/libomptarget/include/Shared/PluginAPI.h
M openmp/libomptarget/include/Shared/PluginAPI.inc
M openmp/libomptarget/include/Shared/Requirements.h
M openmp/libomptarget/include/device.h
M openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa_ext_amd.h
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/src/OpenMP/Mapping.cpp
M openmp/libomptarget/src/PluginManager.cpp
M openmp/libomptarget/src/device.cpp
A openmp/libomptarget/test/mapping/auto_zero_copy.cpp
Log Message:
-----------
[OpenMP] Enable automatic unified shared memory on MI300A. (#77512)
This patch enables applications that did not request OpenMP
unified_shared_memory to run with the same zero-copy behavior, where
mapped memory does not result in extra memory allocations and memory
copies, but CPU-allocated memory is accessed from the device. The name
for this behavior is "automatic zero-copy" and it relies on detecting:
that the runtime is running on a MI300A, that the user did not select
unified_shared_memory in their program, and that XNACK (unified memory
support) is enabled in the current GPU configuration. If all these
conditions are met, then automatic zero-copy is triggered.
This patch also introduces an environment variable OMPX_APU_MAPS that,
if set, triggers automatic zero-copy also on non APU GPUs (e.g., on
discrete GPUs).
This patch is still missing support for global variables, which will be
provided in a subsequent patch.
Co-authored-by: Thorsten Blass <thorsten.blass at amd.com>
Commit: d4d81acb52bd44681210001c148ac86df8a344f0
https://github.com/llvm/llvm-project/commit/d4d81acb52bd44681210001c148ac86df8a344f0
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/AArch64/SMEABIPass.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
Log Message:
-----------
[AArch64][SME2] Extend SMEABIPass to handle functions with new ZT0 state (#78848)
updateNewZAFunctions is extended to generate the following on entry to a
function with either the "aarch64_pstate_za_new" or "arm_new_zt0"
attribute:
- Private-ZA interface: commit any active lazy-saves & enable PSTATE.ZA.
- "aarch64_pstate_za_new": zero ZA.
- "arm_new_zt0": zero ZT0.
Additionally, PSTATE.ZA should disabled before returning if the function
has a private-ZA interface.
Commit: f188f4589cc8f690779c62996520663718df106d
https://github.com/llvm/llvm-project/commit/f188f4589cc8f690779c62996520663718df106d
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll
Log Message:
-----------
[DebugInfo] Disable a test runline temporarily
This is a follow-up to 8c1b7fba1fb -- GlobalISel currently doesn't handle
RemoveDIs mode debug-info, but will (see #75228). Disable this runline
until then.
(This is a patch-landing ordering problem)
Commit: b5df6a90f5365e61d2dfa1583d36cbc79ab5775b
https://github.com/llvm/llvm-project/commit/b5df6a90f5365e61d2dfa1583d36cbc79ab5775b
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[mlir][openacc] Fix num_gang parser (#78792)
Nb of operand per segment is not correctly computed.
Commit: ee6199ca3cf101c764788ebf8df5b0e3e00f5538
https://github.com/llvm/llvm-project/commit/ee6199ca3cf101c764788ebf8df5b0e3e00f5538
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[mlir][openacc][NFC] Cleanup hasOnly functions for device_type support (#78800)
Just a cleanup for all the `has.*Only()` function to avoid code
duplication
Commit: ebd4dc42630e201c15894b48c3ea890eaa8c3b18
https://github.com/llvm/llvm-project/commit/ebd4dc42630e201c15894b48c3ea890eaa8c3b18
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M compiler-rt/test/asan/TestCases/alloca_loop_unpoisoning.cpp
Log Message:
-----------
[asan,test] Make alloca_loop_unpoisoning.cpp robust and fix s390x failure (#78774)
In the test from https://reviews.llvm.org/D7098, `char array[len];` is
32-byte aligned on most targets whether it is instrumented or not
(optimized by StackSafetyAnalysis), due to the the used `*FrameLowering`
being `StackRealignable`.
However, when using `SystemZELFFrameLowering`, an un-instrumented
`char array[len];` is only 8-byte aligned.
Ensure `char array[len];` gets instrumented like what we did to
`alloca_vla_interact.cpp`, to make the test pass on s390x.
Commit: 621bafd5c14cc324612e32c8123ac1ebf1c0530b
https://github.com/llvm/llvm-project/commit/621bafd5c14cc324612e32c8123ac1ebf1c0530b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M openmp/libomptarget/include/Shared/APITypes.h
M openmp/libomptarget/include/Shared/PluginAPI.h
M openmp/libomptarget/include/Shared/PluginAPI.inc
M openmp/libomptarget/include/device.h
M openmp/libomptarget/include/rtl.h
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
M openmp/libomptarget/src/PluginManager.cpp
M openmp/libomptarget/src/device.cpp
M openmp/libomptarget/src/omptarget.cpp
Log Message:
-----------
[Libomptarget] Move target table handling out of the plugins (#77150)
Summary:
This patch removes the bulk of the handling of the
`__tgt_offload_entries` out of the plugins itself. The reason for this
is because the plugins themselves should not be handling this
implementation detail of the OpenMP runtime. Instead, we expose two new
plugin API functions to get the points to a device pointer for a global
as well as a kernel type.
This required introducing a new type to represent a binary image that
has been loaded on a device. We can then use this to load the addresses
as needed. The creation of the mapping table is then handled just in
`libomptarget` where we simply look up each address individually. This
should allow us to expose these operations more generically when we
provide a separate API.
Commit: 76160718df7c1f31ff50a4964d749c2b9d83f9cf
https://github.com/llvm/llvm-project/commit/76160718df7c1f31ff50a4964d749c2b9d83f9cf
Author: OCHyams <orlando.hyams at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
A llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll
Log Message:
-----------
Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass #78606
llvm.dbg.assign intrinsics have 2 {value, expression} pairs; fix hwasan to update
the second expression.
Fixes #76545
Commit: a859df3b0a099648ec4cd305f22c87ea12ebaac9
https://github.com/llvm/llvm-project/commit/a859df3b0a099648ec4cd305f22c87ea12ebaac9
Author: Dominik Wójt <dominik.wojt at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/modules/std.compat/ctime.inc
M libcxx/modules/std/ctime.inc
M libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
M libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
M libcxx/test/std/modules/std.compat.pass.cpp
Log Message:
-----------
[libc++] Add "using-if-exists" to timespec_get in modules (#78686)
Picolibc does not provide timespec_get function. Adding
"using-if-exists" attribute fixes the modules.
This is a follow up patch for
https://github.com/llvm/llvm-project/pull/78580
Commit: 43b13341fbbb718223484a79a539a3c13062f39f
https://github.com/llvm/llvm-project/commit/43b13341fbbb718223484a79a539a3c13062f39f
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LTO.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/ScriptLexer.h
M lld/ELF/ScriptParser.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
M lld/ELF/Writer.cpp
M lld/test/ELF/cref.s
M lld/test/ELF/linkerscript/symbol-ordering-file2.s
M lld/test/ELF/x86-64-gotpc-no-relax-err.s
Log Message:
-----------
[ELF] Add internal InputFile (#78944)
Based on https://reviews.llvm.org/D45375 . Introduce a new InputFile
kind `InternalKind`, use it for
* `ctx.internalFile`: for linker-defined symbols and some synthesized
`Undefined`
* `createInternalFile`: for symbol assignments and --defsym
I picked "internal" instead of "synthetic" to avoid confusion with
SyntheticSection.
Currently a symbol's file is one of: nullptr, ObjKind, SharedKind,
BitcodeKind, BinaryKind. Now it's non-null (I plan to add an
`assert(file)` to Symbol::Symbol and change `toString(const InputFile
*)`
separately).
Debugging and error reporting gets improved. The immediate user-facing
difference is more descriptive "File" column in the --cref output. This
patch may unlock further simplification.
Currently each symbol assignment gets its own
`createInternalFile(cmd->location)`. Two symbol assignments in a linker
script do not share the same file. Making the file the same would be
nice, but would require non trivial code.
Commit: c083b38007c4895cee8b175bd54d24be9fdb5fc0
https://github.com/llvm/llvm-project/commit/c083b38007c4895cee8b175bd54d24be9fdb5fc0
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
Log Message:
-----------
[builtins][FMV][Apple] Use builtin atomic load/store, instead of libdispatch (#78807)
Commit: 9a90aa01edfc5a56d975658a0cbbfa980a0ef7ed
https://github.com/llvm/llvm-project/commit/9a90aa01edfc5a56d975658a0cbbfa980a0ef7ed
Author: Gareth Williamson <gwllx.dev at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/modules/std.compat/cstdlib.inc
Log Message:
-----------
[libc++][modules] Add using_if_exists attribute (#77559) (#78909)
libc on macOS does not provide at_quick_exit or quick_exit. This allows
modules to build on macOS and defer any errors to usage site of these
symbols.
Fixes: https://github.com/llvm/llvm-project/issues/77559
Commit: 312acdfae1409bee29a33f71306e3ae3e1ea7d66
https://github.com/llvm/llvm-project/commit/312acdfae1409bee29a33f71306e3ae3e1ea7d66
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_cnt.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1_vnum.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ldr.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za32.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za64.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za32.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za64.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1_vnum.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_state_funs.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_write.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_zero.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_bmop.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mop.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_target.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
M clang/utils/TableGen/SveEmitter.cpp
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[AArch64][SME] Take arm_sme.h out of draft (#78961)
Commit: 530c72b498e571f2de4850e7ca4b1558a83742da
https://github.com/llvm/llvm-project/commit/530c72b498e571f2de4850e7ca4b1558a83742da
Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
Log Message:
-----------
[TLI] Add missing ArmPL mappings (#78474)
Adds TLI mappings for fixed and scalable vector variants of cospi(f),
fmax(f), ilogb(f) and ldexp(f).
Commit: ed760d170f18b3ca9f53f4e4a2e31d82bf0ba3e7
https://github.com/llvm/llvm-project/commit/ed760d170f18b3ca9f53f4e4a2e31d82bf0ba3e7
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/lib/abi/CHANGELOG.TXT
Log Message:
-----------
[libc++] Mention __cxa_init_primary_exception in the ABI changelog
Commit: 02f95b77515fe18ed1076b94cbb850ea0cf3c77e
https://github.com/llvm/llvm-project/commit/02f95b77515fe18ed1076b94cbb850ea0cf3c77e
Author: Petr Hosek <phosek at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/Status/FormatIssues.csv
M libcxx/include/__config
M libcxx/include/__format/format_arg.h
M libcxx/include/__format/format_context.h
M libcxx/include/format
R libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
R libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
R libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
M libcxx/test/support/test_basic_format_arg.h
M libcxx/test/support/test_macros.h
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
Revert "[libc++][format] P2637R3: Member `visit` (`std::basic_format_arg`) (#76449)"
This reverts commit 7d9b5aa65b09126031e1c2903605a7d34aea4bc1 since
std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
is failing on Windows when building with Clang-cl.
Commit: 0fe20aa45eab5f66ac88776f068b7f41b8204aaf
https://github.com/llvm/llvm-project/commit/0fe20aa45eab5f66ac88776f068b7f41b8204aaf
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/startup/linux/do_start.cpp
Log Message:
-----------
[libc] support PIE relocations (#78993)
For some reasons, we are using `-fpie`
(libc/cmake/modules/LLVMLibCObjectRules.cmake:31) without supporting it.
According to @lntue, some of the hermetic tests are broken without
proper PIE support. This patch implements basic relocations support for
PIE.
Commit: 89aa3355e2366c6cf6ad9ac1f4693ff950d86c30
https://github.com/llvm/llvm-project/commit/89aa3355e2366c6cf6ad9ac1f4693ff950d86c30
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/IR/DebugInfo.h
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
Log Message:
-----------
[RemoveDIs][DebugInfo] Remove redundant DPVAssigns (#78574)
DPValues are already supported by most of the utilities that remove
redundant debug info after certain passes; the exception to this is
`removeUndefDbgAssignsFromEntryBlock`, which applies only to
llvm.dbg.assigns which were previously unimplemented for DPValues. Now
that DPVAssigns exist, we have to support removing redundant instances
in the same way, which this patch implements.
Commit: 19261390cc3d0e58e0130ee4078fd1049889f510
https://github.com/llvm/llvm-project/commit/19261390cc3d0e58e0130ee4078fd1049889f510
Author: Sam Clegg <sbc at chromium.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/ELF/InputFiles.h
A lld/test/wasm/Inputs/start-lib1.s
A lld/test/wasm/Inputs/start-lib2.s
A lld/test/wasm/start-lib.s
M lld/wasm/Driver.cpp
M lld/wasm/InputFiles.h
M lld/wasm/Options.td
M lld/wasm/Symbols.h
Log Message:
-----------
[lld][WebAssembly] Implement `--start-lib`/`--end-lib` (#78821)
Fixes: #77960
Commit: 042a6a1349d512edaaa225380771c64a8d92810a
https://github.com/llvm/llvm-project/commit/042a6a1349d512edaaa225380771c64a8d92810a
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/include/__chrono/ostream.h
M libcxx/include/chrono
M libcxx/test/std/time/time.clock/time.clock.local/ostream.pass.cpp
A libcxx/test/std/time/time.clock/time.clock.local/ostream.verify.cpp
R libcxx/test/std/time/time.clock/time.clock.system/ostream.pass.cpp
A libcxx/test/std/time/time.clock/time.clock.system/sys_date.ostream.pass.cpp
A libcxx/test/std/time/time.clock/time.clock.system/sys_time.ostream.pass.cpp
Log Message:
-----------
[libc++][chrono] Fixes (sys|local)_time formatters. (#76456)
- The sys_time formatter is constrained, which was not implemented.
- There is a sys_days formatter which was not implemented.
- The local_time formatter uses the sys_time formatter in its
implementation so "inherited" the same issues.
Fixes: https://github.com/llvm/llvm-project/issues/73849
Fixes: https://github.com/llvm/llvm-project/issues/67983
Commit: 806f43e3cb9ca2bff7c2ae6f1324a062ddb83cac
https://github.com/llvm/llvm-project/commit/806f43e3cb9ca2bff7c2ae6f1324a062ddb83cac
Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/include/__memory/assume_aligned.h
A libcxx/test/libcxx/utilities/memory/ptr.align/assume_aligned.const_eval.verify.cpp
Log Message:
-----------
[libc++] Diagnoses insufficiently aligned pointers for std::assume_aligned during constant evaluation (#73775)
This is a `libc++` enhancement when violating alignment assumption for
`__builtin_assume_aligned`.
Fixes #64078
Commit: e390bda9782b461f10433aa6728acf87521e22a5
https://github.com/llvm/llvm-project/commit/e390bda9782b461f10433aa6728acf87521e22a5
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/ELF/InputFiles.cpp
M lld/ELF/Symbols.h
M lld/ELF/Writer.cpp
M lld/test/ELF/allow-shlib-undefined.s
Log Message:
-----------
[ELF] Suppress --no-allow-shlib-undefined diagnostic when a SharedSymbol is overridden by a hidden visibility Defined which is later discarded
Commit 1981b1b6b92f7579a30c9ed32dbdf3bc749c1b40 unexpectedly strengthened
--no-allow-shlib-undefined to catch a kind of ODR violation.
More precisely, when all three conditions are met, the new
`--no-allow-shlib-undefined` code reports an error.
* There is a DSO undef that has been satisfied by a definition from
another DSO.
* The `SharedSymbol` is overridden by a non-exported (usually of hidden
visibility) definition in a relocatable object file (`Defined`).
* The section containing the `Defined` is garbage-collected (it is not
part of `.dynsym` and is not marked as live).
Technically, the hidden Defined in the executable can be intentional: it
can be meant to remain non-exported and not interact with any dynamic
symbols of the same name that might exist in other DSOs. To allow for
such use cases, allocate a new bit in
Symbol and relax the --no-allow-shlib-undefined check to before
commit 1981b1b6b92f7579a30c9ed32dbdf3bc749c1b40.
Commit: 7378fb30645ad5398491acea3960a8115d1b171c
https://github.com/llvm/llvm-project/commit/7378fb30645ad5398491acea3960a8115d1b171c
Author: Dmitri Gribenko <gribozavr at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/include/__config
Log Message:
-----------
[libc++] Protect the libc++ implementation from CUDA SDK's __noinline__ macro (#73838)
The CUDA SDK contains an unfortunate definition for the `__noinline__`
macro. This patch works around it by using `__attribute__((noinline))`
instead of `__attribute__((__noinline__))` on CUDA. We are still waiting
for a long-term resolution to this issue in NVIDIA/cccl#1235.
Commit: d7fb9eb818d22085c7dae0ce9a8be7ade963d7e5
https://github.com/llvm/llvm-project/commit/d7fb9eb818d22085c7dae0ce9a8be7ade963d7e5
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/test/CodeGen/X86/select-optimize.ll
Log Message:
-----------
[DebugInfo][RemoveDIs] Handle DPValues in SelectOptimize (#79005)
When there are debug intrinsics in-between groups of select
instructions, select-optimise sinks them into the "end" block. This
needs to be replicated for DPValues, the non-instruction variable
assignment object. Implement that and add a RUN line to a test that was
sensitive to this to ensure it gets tested.
(The exact range of instructions being transformed here is a little
fiddly, hence I've gone with a helper lambda).
Commit: c0a74ad90c34de5e17f713cd2a97223a425dfeb7
https://github.com/llvm/llvm-project/commit/c0a74ad90c34de5e17f713cd2a97223a425dfeb7
Author: Petr Hosek <phosek at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/include/llvm-libc-macros/sys-queue-macros.h
Log Message:
-----------
[libc] Use QUEUE_TYPEOF in STAILQ_LAST (#79011)
This is to ensure this macro is compatible with both C and C++.
Commit: 3eb4178b9cc321da5b74b9bba1a5ad825531e474
https://github.com/llvm/llvm-project/commit/3eb4178b9cc321da5b74b9bba1a5ad825531e474
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/canonicalize.mlir
M mlir/test/Dialect/OpenACC/invalid.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[mlir][openacc] Update acc.loop to be a proper loop like operation (#67355)
The initial design of the `acc.loop` was to be an operation that
encapsulates a loop like operation. This was an early design and we now
want to change it so the `acc.loop` operation becomes a real loop-like
operation by implementing the LoopLikeInterface.
Differential Revision: https://reviews.llvm.org/D159229
This patch is just moved from Phabricator to github
Commit: 5062a178bf9dd46008b8f7a182facb6152c46889
https://github.com/llvm/llvm-project/commit/5062a178bf9dd46008b8f7a182facb6152c46889
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/include/flang/Lower/OpenACC.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-loop-exit.f90
M flang/test/Lower/OpenACC/acc-loop.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/locations.f90
Log Message:
-----------
[flang][openacc] Lower loop directive to the new acc.loop op design (#65417)
acc.loop was redesigned in https://reviews.llvm.org/D159229. This patch
updates the lowering to match the new op.
DO CONCURRENT construct will be added in a follow up patch.
Note that the pre-commit ci will fail until D159229 is merged.
Depends on #67355
Commit: f4c2ee12684a6b4857c9e6777ba53e02555978ba
https://github.com/llvm/llvm-project/commit/f4c2ee12684a6b4857c9e6777ba53e02555978ba
Author: Stephen Tozer <Stephen.Tozer at Sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
Log Message:
-----------
[RemoveDIs] Remove tests for redundant DPVAssigns until DPVAssigns are enabled
This patch fixes commit 89aa3355, which added tests for
the removal of redundant DPVAssigns; unlike other cases where
adding tests for DPVAssigns before they are enabled is harmless,
these tests require them to be enabled, so must be deleted until
we enable them.
Fixes failures on llvm-new-debug-iterators buildbot:
https://lab.llvm.org/buildbot/#/builders/275/builds/3581
Commit: 5ce286849a0cc605210031411265c2a84fc6c633
https://github.com/llvm/llvm-project/commit/5ce286849a0cc605210031411265c2a84fc6c633
Author: Mingming Liu <mingmingl at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Instrumentation/CGProfile.cpp
M llvm/test/Instrumentation/cgprofile.ll
Log Message:
-----------
[CGProfile] Use callee's PGO name when caller->callee is an indirect call. (#78610)
- With PGO, indirect call edges are constructed using value profiles, and the profile address is mapped to a function's PGO name. The PGO name is computed using a functions linkage before LTO internalization or global promotion.
- With ThinLTO, local functions [could be
promoted](https://github.com/llvm/llvm-project/blob/2663d2cb9c9361f0b234c40a0f50c7ba0748eb26/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp#L288) to have external linkage; and with
[full](https://github.com/llvm/llvm-project/blob/2663d2cb9c9361f0b234c40a0f50c7ba0748eb26/llvm/lib/LTO/LTO.cpp#L1328)
or
[thin](https://github.com/llvm/llvm-project/blob/2663d2cb9c9361f0b234c40a0f50c7ba0748eb26/llvm/lib/LTO/LTO.cpp#L448)
LTO, global functions could be internalized. Edge construction should use a function's PGO name before its linkage is updated.
Commit: 4207ad57707f07208dfb1d7c79889e1372c396ab
https://github.com/llvm/llvm-project/commit/4207ad57707f07208dfb1d7c79889e1372c396ab
Author: azhan92 <alisonxzhang at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/src/new.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.except.pass.cpp
M libcxxabi/src/stdlib_new_delete.cpp
Log Message:
-----------
[libc++] Fix noexcept behaviour of operator new helper functions (#74337)
This patch removes the noexcept specifier introduced in #69407 since the
Standard allows a new handler to throw an exception of type bad_alloc
(or derived from it). With the noexcept specifier on the helper
functions, we would immediately terminate the program.
The patch also adds tests for the case that had regressed.
Co-authored-by: Alison Zhang <alisonzhang at ibm.com>
Commit: a301fb11014f9cfdf4ee8cada173c46a7677d9d3
https://github.com/llvm/llvm-project/commit/a301fb11014f9cfdf4ee8cada173c46a7677d9d3
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/Driver.cpp
A clang/test/Driver/modules-print-library-module-manifest-path.cpp
Log Message:
-----------
[clang][modules] Print library module manifest path. (#76451)
This implements a way for the compiler to find the modules.json
associated with the C++23 Standard library modules.
This is based on a discussion in SG15. At the moment no Standard library
installs this manifest. #75741 adds this feature in libc++.
Commit: 04952c5bec69c197ea6ffb718ae80fcf78c7828a
https://github.com/llvm/llvm-project/commit/04952c5bec69c197ea6ffb718ae80fcf78c7828a
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/OpenACCKinds.h
M clang/lib/Parse/ParseOpenACC.cpp
M clang/test/ParserOpenACC/parse-clauses.c
Log Message:
-----------
[OpenACC] Implement remaining 'simple' int-expr clauses.
'num_gangs', 'num_workers', 'device_num', and 'default_async' are all
exactly the same (for the purposes of parsing) as 'vector_length', so
implement these the same way.
Commit: 0cea54a382f3187acbe3e81bd0fd7cf2cb1077b8
https://github.com/llvm/llvm-project/commit/0cea54a382f3187acbe3e81bd0fd7cf2cb1077b8
Author: Alex Langford <alangford at apple.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lldb/include/lldb/Breakpoint/Watchpoint.h
M lldb/include/lldb/Utility/Broadcaster.h
M lldb/source/Breakpoint/BreakpointList.cpp
M lldb/source/Breakpoint/BreakpointLocation.cpp
M lldb/source/Breakpoint/Watchpoint.cpp
M lldb/source/Breakpoint/WatchpointList.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Utility/Broadcaster.cpp
Log Message:
-----------
[lldb][NFCI] Remove EventData* param from BroadcastEvent (#78773)
BroadcastEvent currently takes its EventData* param and shoves it into
an Event object, which takes ownership of the pointer and places it into
a shared_ptr to manage the lifetime.
Instead of relying on `new` and passing raw pointers around, I think it
would make more sense to create the shared_ptr up front.
Commit: 414df7051ac90f186fac9d3d8968aa827eceb697
https://github.com/llvm/llvm-project/commit/414df7051ac90f186fac9d3d8968aa827eceb697
Author: Malavika Samak <malavika.samak at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Fix the crash introduced by the unsafe invocation of span::data warning (#78815)
The patch fixes the crash introduced by the DataInvocation warning
gadget designed to warn against unsafe invocations of span::data method.
It also now considers the invocation of span::data method inside
parenthesis.
Radar: 121223051
---------
Co-authored-by: MalavikaSamak <malavika2 at apple.com>
Commit: 16d2583254284611843b2517c8e9f9d6efe8c627
https://github.com/llvm/llvm-project/commit/16d2583254284611843b2517c8e9f9d6efe8c627
Author: Valentin Clement <clementval at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/test/Lower/OpenACC/acc-loop.f90
Log Message:
-----------
[flang][openacc] Fix test with new loop design
Commit: 1be0d9d7d88a9bdabe6ef4d81720ddf4cf6f71c1
https://github.com/llvm/llvm-project/commit/1be0d9d7d88a9bdabe6ef4d81720ddf4cf6f71c1
Author: Dani <DanielKristofKiss at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
Log Message:
-----------
[AArch64][Clang] Fix linker error for function multiversioning (#74358)
AArch64 part of https://github.com/llvm/llvm-project/pull/71706.
Default version is now mangled with .default.
Resolver for the TargetVersion need to be emitted from the
CodeGenModule::EmitMultiVersionFunctionDefinition.
Commit: 7c53e9f6671b44ffd2c36d8c6f0f05456a6222ea
https://github.com/llvm/llvm-project/commit/7c53e9f6671b44ffd2c36d8c6f0f05456a6222ea
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/Transforms/LoopStrengthReduce/X86/lsr-cond-dbg.ll
M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-1.ll
M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-2.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-0.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-1.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-2.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-3.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-4.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-5.ll
M llvm/test/Transforms/LoopStrengthReduce/optimizemax_debugloc.ll
M llvm/test/Transforms/LoopStrengthReduce/pr12018.ll
M llvm/test/Transforms/LoopStrengthReduce/pr51329.ll
M llvm/test/Transforms/LoopStrengthReduce/pr51656.ll
M llvm/test/Transforms/LoopStrengthReduce/pr52161.ll
Log Message:
-----------
[RemoveDIs][DebugInfo] Add support for DPValues to LoopStrengthReduce (#78706)
This patch trivially extends support for DbgValueInst recovery to
DPValues in LoopStrengthReduce; they are handled identically, so this is
mostly done by reusing the DbgValueInst code (using templates or
auto-parameter lambdas to reduce actual code duplication).
Commit: 6d5f8d3e6e473a6890f232dba8b14b7b46140558
https://github.com/llvm/llvm-project/commit/6d5f8d3e6e473a6890f232dba8b14b7b46140558
Author: Kevin Frei <kevinfrei at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfodProperties.td
M llvm/include/llvm/Debuginfod/Debuginfod.h
M llvm/lib/Debuginfod/Debuginfod.cpp
Log Message:
-----------
Added settings for DEBUGINFOD cache location and timeout (#78605)
I've been working on more/better configuration for improving DEBUGINFOD
support. This is the first (and easiest) slice of the work.
I've added `timeout` and `cache-path` settings that can override the
DEBUGINFOD library defaults (and environment variables.) I also renamed
the `plugin.symbol-locator.debuginfod.server_urls` setting to
`server-urls` to be more consistent with the rest of LLDB's settings
(the underscore switch is switched to a hyphen)
I've got a few tests that validate the cache-path setting (as a
side-effect), but they've exposed a few bugs that I'll be putting up a
separate PR for (which will include the tests).
---------
Co-authored-by: Kevin Frei <freik at meta.com>
Commit: d83a3ea529575f17ea6ea608a43bca0b3065dcfe
https://github.com/llvm/llvm-project/commit/d83a3ea529575f17ea6ea608a43bca0b3065dcfe
Author: Sanjay Marreddi <sanjay.mareddi at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/include/regex
M libcxx/test/std/re/re.const/re.matchflag/match_not_eol.pass.cpp
Log Message:
-----------
[libc++] Fix std::regex_search to match $ alone with match_default flag (#78845)
Using std::regex_search with the regex_constant match_default and a
simple regex pattern `$` is expected to match general strings such as
_"a", "ab", "abc"..._ at `[last, last)` positions. But, the current
implementation fails to do so.
Fixes #75042
Commit: 73ff017c9b39d8a1ecc350f0572e3274dd4c9146
https://github.com/llvm/llvm-project/commit/73ff017c9b39d8a1ecc350f0572e3274dd4c9146
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Sema/AnalysisBasedWarnings.cpp
Log Message:
-----------
[Sema] Fix a warning
This patch fixes:
clang/lib/Sema/AnalysisBasedWarnings.cpp:2269:21: error: unused
variable 'subExpr' [-Werror,-Wunused-variable]
Commit: bb28442c0b9790473363cbca2867630262358018
https://github.com/llvm/llvm-project/commit/bb28442c0b9790473363cbca2867630262358018
Author: Alexandre Ganea <37383324+aganea at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/lib/CodeGen/PatchableFunction.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
A llvm/test/CodeGen/X86/patchable-prologue-tailcall.ll
M llvm/test/CodeGen/X86/patchable-prologue.ll
Log Message:
-----------
[CodeGen][X86] Fix lowering of tailcalls when `-ms-hotpatch` is used (#77245)
Previously, tail jump pseudo-opcodes were skipped by the
`encodeInstruction()` call inside `X86AsmPrinter::LowerPATCHABLE_OP`.
This caused emission of a 2-byte NOP and dropping of the tail jump.
With this PR, we change `PATCHABLE_OP` to not wrap the first
`MachineInstr` anymore, but inserting itself before,
leaving the instruction unaltered. At lowering time in `X86AsmPrinter`,
we now "look ahead" for the next non-pseudo `MachineInstr` and
lower+encode it, to inspect its size. If the size is below what
`PATCHABLE_OP` expects, it inserts NOPs; otherwise it does nothing. That
way, now the first `MachineInstr` is always lowered as usual even if
`"patchable-function"="prologue-short-redirect"` is used.
Fixes https://github.com/llvm/llvm-project/issues/76879,
https://github.com/llvm/llvm-project/issues/76958 and
https://github.com/llvm/llvm-project/issues/59039
Commit: 309dcc112b1d3f0a24ea67e5b0377c649637260f
https://github.com/llvm/llvm-project/commit/309dcc112b1d3f0a24ea67e5b0377c649637260f
Author: Nico Weber <thakis at chromium.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/libcxx/src/BUILD.gn
Log Message:
-----------
[gn] port a80e65e00ada7
See here for context:
https://github.com/llvm/llvm-project/pull/65534#issuecomment-1904633461
Commit: bcfdab87052116ce7bf2a9d9b2b1cc2e40a43618
https://github.com/llvm/llvm-project/commit/bcfdab87052116ce7bf2a9d9b2b1cc2e40a43618
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
Log Message:
-----------
[flang] Fix a warning
This patch fixes:
flang/lib/Lower/OpenACC.cpp:1964:15: error: unused variable
'loopDirective' [-Werror,-Wunused-variable]
Commit: bfd12f39b16e7ba2c342e120b925499f8504f5b3
https://github.com/llvm/llvm-project/commit/bfd12f39b16e7ba2c342e120b925499f8504f5b3
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/TestDataFormatterLibcxxChrono.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/main.cpp
Log Message:
-----------
[lldb][libc++] Adds system_clock data formatters. (#78609)
Commit: f10ec8c77403fd722b3f50710cb73757da4383e4
https://github.com/llvm/llvm-project/commit/f10ec8c77403fd722b3f50710cb73757da4383e4
Author: Petr Hosek <phosek at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/src/__support/FPUtil/riscv/FMA.h
M libc/src/__support/FPUtil/riscv/sqrt.h
Log Message:
-----------
[libc][riscv] Check if we have F or D extension before using them (#79036)
We shouldn't be using instructions that require F or D extensions
unconditionally before checking if those instructions are available.
Commit: 0dd72eb269dd485b98afba2c58a1d747db53dcad
https://github.com/llvm/llvm-project/commit/0dd72eb269dd485b98afba2c58a1d747db53dcad
Author: erichkeane <ekeane at nvidia.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/OpenACCKinds.h
M clang/lib/Parse/ParseOpenACC.cpp
M clang/test/ParserOpenACC/parse-clauses.c
Log Message:
-----------
[OpenACC] Implement 'vector' and 'worker' cluase argument parsing
Both of the clauses 'vector' and 'worker' have an optional 'special'
word followed by an int-expr. The arguments list is optional, as is the
special word, but if the parens are included, an int-expr is required.
This patch implements parsing for both.
Commit: 1e2a4ccb6237b6db9db7dc3fd11a94410ec9b0df
https://github.com/llvm/llvm-project/commit/1e2a4ccb6237b6db9db7dc3fd11a94410ec9b0df
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Sema/SemaChecking.cpp
A clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
A clang/test/Sema/warn-infinity-nan-disabled-win.cpp
Log Message:
-----------
[CLANG] Add warning when INF or NAN are used in a binary operation or as function argument in fast math mode. (#76873)
Check for operations using INF or NaN when in ffast-math mode and
generate a warning.
Commit: 02aa6956b5b6c92f3d4aea0aa466ed0d33343335
https://github.com/llvm/llvm-project/commit/02aa6956b5b6c92f3d4aea0aa466ed0d33343335
Author: Jake Egan <5326451+jakeegan at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/test/Index/Core/designated-inits.c
M clang/test/Index/Core/external-source-symbol-attr-cxx.cpp
M clang/test/Index/Core/external-source-symbol-attr.m
M clang/test/Index/Core/index-dependent-source.cpp
M clang/test/Index/Core/index-instantiated-source.cpp
M clang/test/Index/Core/index-source-invalid-name.cpp
M clang/test/Index/Core/index-source.cpp
M clang/test/Index/Core/index-source.m
M clang/test/Index/Core/index-source.mm
M clang/test/Index/Core/index-subkinds.m
M clang/test/Index/Core/index-with-module.m
M clang/test/Index/ms-property.cpp
M clang/test/Index/using_if_exists.cpp
M clang/tools/libclang/CMakeLists.txt
Log Message:
-----------
[clang][AIX] Only export libclang.map symbols from libclang (#78748)
This will prevent unnecessary symbols being exported in libclang, which
could cause issues with non-unique objects.
Commit: 4f21fb84479286ddc781d73f8df152f81a8264e7
https://github.com/llvm/llvm-project/commit/4f21fb84479286ddc781d73f8df152f81a8264e7
Author: Qiongsi Wu <274595+qiongsiwu at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang/docs/UsersManual.rst
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Frontend/Utils.h
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Profile/c-general.c
M compiler-rt/include/CMakeLists.txt
A compiler-rt/include/profile/instr_prof_interface.h
M compiler-rt/lib/profile/InstrProfiling.h
A compiler-rt/test/profile/Linux/instrprof-weak-symbol.c
A compiler-rt/test/profile/instrprof-api.c
Log Message:
-----------
[PGO] Reland PGO's Counter Reset and File Dumping APIs #76471 (#78285)
https://github.com/llvm/llvm-project/pull/76471 caused buildbot failures
on Windows. For more details, see
https://github.com/llvm/llvm-project/issues/77546.
This PR revises the test and relands
https://github.com/llvm/llvm-project/pull/76471.
Commit: e3172e841899779caf461cee97826940dca806e7
https://github.com/llvm/llvm-project/commit/e3172e841899779caf461cee97826940dca806e7
Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/test/mlir-cpu-runner/global-constructors.mlir
Log Message:
-----------
[mlir] Update "UNSUPPORTED" directive in a test
Add missing "arm64" target to the list of unsupported targets ("arm64"
is used on Darwin).
Commit: 83f82a9efdb4492659396b9a0bcdf64371752cd9
https://github.com/llvm/llvm-project/commit/83f82a9efdb4492659396b9a0bcdf64371752cd9
Author: Nico Weber <thakis at chromium.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/include/BUILD.gn
Log Message:
-----------
[gn] port 4f21fb844792
Commit: 0ab9c382d4ca070cf2335030a689b505bbd967c6
https://github.com/llvm/llvm-project/commit/0ab9c382d4ca070cf2335030a689b505bbd967c6
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
Log Message:
-----------
[gn build] Port 06c3c3b67cb0
Commit: 02a28ee8d981b2a8416c50e41c74cb21e73b8340
https://github.com/llvm/llvm-project/commit/02a28ee8d981b2a8416c50e41c74cb21e73b8340
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Features.def
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Lexer/cxx-features.cpp
M clang/test/Lexer/has_extension_cxx.cpp
Log Message:
-----------
[Clang] Update feature test macros for Clang 18 (#78991)
* Set `__cpp_auto_cast`, as per
https://github.com/cplusplus/CWG/issues/281
* Support `__has_extension(cxx_generalized_nttp)` in C++20 as the
feature isn't stable enough for a feature test macro
* Support `__has_extension(cxx_explicit_this_parameter)` in c++23 as the
feature isn't stable enough for a feature test macro
Commit: 263efb044add93b946ca4a96a8f1699b3eb9ae73
https://github.com/llvm/llvm-project/commit/263efb044add93b946ca4a96a8f1699b3eb9ae73
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
R llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
M llvm/tools/lli/CMakeLists.txt
R llvm/tools/lli/ExecutionUtils.cpp
R llvm/tools/lli/ExecutionUtils.h
M llvm/tools/lli/lli.cpp
Log Message:
-----------
[lli] Revisit Orc debug output tests (#76822)
Integrate in-memory debug-info dumps into the `--orc-lazy-debug`
command-line option instead of exposing built-in functions to be called
from JITed code. This reduces overall amount of code (removing
`ExecutionUtils.cpp`) and seems cleaner anyway.
All existing items of `OrcDumpKind` work on IR level and run in the
IR-transform step of the JIT. The newly added `DumpDebugDescriptor` and
`DumpDebugObjects` must run after debug-registration and thus are
deferred to the Object-transform step of the JIT. This separation is the
major side-effect of the patch.
Commit: 2d373143ad69910c56bbc7161224d365813a95b0
https://github.com/llvm/llvm-project/commit/2d373143ad69910c56bbc7161224d365813a95b0
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/tools/lli/BUILD.gn
Log Message:
-----------
[gn build] Port 263efb044add
Commit: b00aa1c77b0aade04adf89336c52d415a71c9477
https://github.com/llvm/llvm-project/commit/b00aa1c77b0aade04adf89336c52d415a71c9477
Author: gulfemsavrun <gulfem at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
R llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll
Log Message:
-----------
Revert "Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass … (#79053)
…#78606"
This reverts commit 76160718df7c1f31ff50a4964d749c2b9d83f9cf because it
caused an assertion failure in emitDbgValue function in Codegen in Clang
Linux toolchain builders for Fuchsia.
https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8758181086086431185/+/u/clang/build/stdout
Commit: 364a5b5b850a4f3e564da4bde080567a5d1e14d2
https://github.com/llvm/llvm-project/commit/364a5b5b850a4f3e564da4bde080567a5d1e14d2
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/CodeGen/cx-complex-range.c
A clang/test/CodeGen/smiths-complex-div.c
M clang/test/Driver/range.c
Log Message:
-----------
Fix a bug in implementation of Smith's algorithm used in complex div. (#78330)
This patch fixes a bug in Smith's algorithm (thanks to @andykaylor who
detected it) and makes sure that last option in command line rules.
Commit: 9f8ccf50dde17adae1368a0cf41edadc8327aaf4
https://github.com/llvm/llvm-project/commit/9f8ccf50dde17adae1368a0cf41edadc8327aaf4
Author: Julian Schmidt <44101708+5chmidti at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
Log Message:
-----------
[clang-tidy] fix misc-const-correctnes false-positive for fold expressions (#78320)
The check no longer emits a diagnostic for non-parameter-pack
variables in C++17 fold expressions.
The operator used is type-dependent because of the parameter pack
and can therefore not be guaranteed to not mutate the variable.
Fixes: #70323
Commit: 3f3a3e873a684e924d9d873f9e094e217e323f2a
https://github.com/llvm/llvm-project/commit/3f3a3e873a684e924d9d873f9e094e217e323f2a
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
R llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
M llvm/tools/lli/CMakeLists.txt
A llvm/tools/lli/ExecutionUtils.cpp
A llvm/tools/lli/ExecutionUtils.h
M llvm/tools/lli/lli.cpp
Log Message:
-----------
Revert "[lli] Revisit Orc debug output tests" (#79055)
Reverts llvm/llvm-project#76822
This fails to build with gcc 7.5:
```
llvm/tools/lli/lli.cpp:1087:16: error: could not convert ‘Obj’ from ‘std::unique_ptr<llvm::MemoryBuffer>’ to ‘llvm::Expected<std::unique_ptr<llvm::MemoryBuffer> >’
return Obj;
^~~
```
Commit: fa4780fa6cc36188b84b2a977ac15351c39d45dd
https://github.com/llvm/llvm-project/commit/fa4780fa6cc36188b84b2a977ac15351c39d45dd
Author: Jan Patrick Lehr <jplehr at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/OpenMP/force-usm.c
M openmp/libomptarget/test/lit.cfg
A openmp/libomptarget/test/offloading/force-usm.cpp
Log Message:
-----------
[OpenMP][USM] Introduces -fopenmp-force-usm flag (#76571)
This flag forces the compiler to generate code for OpenMP target regions
as if the user specified the #pragma omp requires unified_shared_memory
in each source file.
The option does not have a -fno-* friend since OpenMP requires the
unified_shared_memory clause to be present in all source files. Since
this flag does no harm if the clause is present, it can be used in
conjunction. My understanding is that USM should not be turned off
selectively, hence, no -fno- version.
This adds a basic test to check the correct generation of double
indirect access to declare target globals in USM mode vs non-USM mode.
Which I think is the only difference observable in code generation.
This runtime test checks for the (non-)occurence of data movement between host
and device. It does one run without the flag and one with the flag to
also see that both versions behave as expected. In the case w/o the new
flag data movement between host and device is expected. In the case with
the flag such data movement should not be present / reported.
Commit: 80b67eebd2ca55c571031ee8a6d23ce3c24a86db
https://github.com/llvm/llvm-project/commit/80b67eebd2ca55c571031ee8a6d23ce3c24a86db
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/test/Driver/riscv-cpus.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add Zic64b, Ziccamoa, Ziccif, Zicclsm, Ziccrse, and Za64rs to sifive-p450. (#79030)
Commit: 7c8030e9bbad913a6a87ddf9ea4d69ab33ffb6c4
https://github.com/llvm/llvm-project/commit/7c8030e9bbad913a6a87ddf9ea4d69ab33ffb6c4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
Log Message:
-----------
[RISCV] Combine HasStdExtZfhOrZfhmin and HasStdExtZfhmin. NFC (#78826)
I kept the AssemblerPredicate and diagnostic from HasStdExtZfhOrZfhmin
that mentions both extensions, but replaced all uses with
HasStdExtZfhmin.
Same for the Zhinxmin equivalent.
Commit: 4cb90ca8f8bfbe8dc938a1b8b821d98640cbab4c
https://github.com/llvm/llvm-project/commit/4cb90ca8f8bfbe8dc938a1b8b821d98640cbab4c
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
M llvm/test/CodeGen/ARM/stack-guard-elf.ll
Log Message:
-----------
[Thumb,ELF] Fix access to dso_preemptable __stack_chk_guard with static relocation model (#78950)
PR #70014 fixes A32 to use GOT for dso_preemptable `__stack_chk_guard`
with static relocation model (e.g. -fPIE/-fPIC LTO compiles with -no-pie
linking).
This patch fixes such `__stack_chk_guard` access for Thumb1 and Thumb2.
Note: `t2LDRLIT_ga_pcrel` is only for ELF. mingw needs
`.refptr.__stack_chk_guard` (https://reviews.llvm.org/D92738).
Fix #64999
Commit: 181c4c331a0c661fe90d5e3803049232022aa582
https://github.com/llvm/llvm-project/commit/181c4c331a0c661fe90d5e3803049232022aa582
Author: Jan Patrick Lehr <jplehr at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M openmp/libomptarget/test/offloading/force-usm.cpp
Log Message:
-----------
[OpenMP][Fix] Require USM capability in force-usm test (#79059)
This should fix the AMDGPU buildbot breakage from #76571
Commit: 95c1039eca1fd32bd7f48db2e82c4294564d75d7
https://github.com/llvm/llvm-project/commit/95c1039eca1fd32bd7f48db2e82c4294564d75d7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add TuneNoDefaultUnroll to sifive-p450.
Commit: 8789b7e5559c0c419d5247f60866e29ab3b651a8
https://github.com/llvm/llvm-project/commit/8789b7e5559c0c419d5247f60866e29ab3b651a8
Author: Alan Phipps <a-phipps at ti.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/docs/SourceBasedCodeCoverage.rst
M llvm/docs/CoverageMappingFormat.rst
Log Message:
-----------
[clang][NFC] Update top-level Code Coverage documentation to include MC/DC.
Commit: c532033e0fe7aa7f88127fcee72f67e1af399136
https://github.com/llvm/llvm-project/commit/c532033e0fe7aa7f88127fcee72f67e1af399136
Author: Shilei Tian <i at tianshilei.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
Log Message:
-----------
[NFC][Clang] Fix compile warning caused by #78330
Commit: cd6ed95e48354d14e59871f3c3f3a8665def22c8
https://github.com/llvm/llvm-project/commit/cd6ed95e48354d14e59871f3c3f3a8665def22c8
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
R llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
M llvm/tools/lli/CMakeLists.txt
R llvm/tools/lli/ExecutionUtils.cpp
R llvm/tools/lli/ExecutionUtils.h
M llvm/tools/lli/lli.cpp
Log Message:
-----------
Reland "[lli] Revisit Orc debug output tests (#79055)"
Integrate in-memory debug-info dumps into the `--orc-lazy-debug`
command-line option instead of exposing built-in functions to be called
from JITed code. This reduces overall amount of code (removing
`ExecutionUtils.cpp`) and seems cleaner anyway.
All existing items of `OrcDumpKind` work on IR level and run in the
IR-transform step of the JIT. The newly added `DumpDebugDescriptor` and
`DumpDebugObjects` must run after debug-registration and thus are
deferred to the Object-transform step of the JIT. This separation is the
major side-effect of the patch.
The original commit 263efb044add93b9 was reverted in #79055, because
the gcc 7.5 bot had found a missing std::move().
Commit: cc2c8ab21fd9b831799bff9ca99be2a2243d23b9
https://github.com/llvm/llvm-project/commit/cc2c8ab21fd9b831799bff9ca99be2a2243d23b9
Author: Douglas Yung <douglas.yung at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/CodeGen/PowerPC/sms-regpress.mir
Log Message:
-----------
Require asserts for llvm/test/CodeGen/PowerPC/sms-regpress.mir.
Commit: 8675952583b1c639e6bcbe2869aecda1d01320f2
https://github.com/llvm/llvm-project/commit/8675952583b1c639e6bcbe2869aecda1d01320f2
Author: Philip Reames <preames at rivosinc.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
Log Message:
-----------
[RISCV] Add coverage for shuffles splitable using exact VLEN
Test coverage for an upcoming transform.
Commit: eaef645a5836df56b53800383022a3a384305c6b
https://github.com/llvm/llvm-project/commit/eaef645a5836df56b53800383022a3a384305c6b
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/CodeGen/Thumb/stack_guard_remat.ll
Log Message:
-----------
[test] Update stack_guard_remat.ll
Commit: fe0ec2c91cfbf2aad2a61e402f21b771db685b90
https://github.com/llvm/llvm-project/commit/fe0ec2c91cfbf2aad2a61e402f21b771db685b90
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
Log Message:
-----------
[Coverage] Const-ize `MCDCRecordProcessor` stuff (#78918)
The life of `MCDCRecordProcessor`'s instance is short. It may accept
`const` objects to process.
On the other hand, the life of `MCDCBranches` is shorter than `Record`.
It may be rewritten with reference, rather than copying.
Commit: 672fb5892eb1dd977fd36149fd45d794103b0408
https://github.com/llvm/llvm-project/commit/672fb5892eb1dd977fd36149fd45d794103b0408
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Remove extra semicolons. NFC
Commit: 1000cefc049e313a532fc9df2a48d80826fc80c7
https://github.com/llvm/llvm-project/commit/1000cefc049e313a532fc9df2a48d80826fc80c7
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
M llvm/test/MC/AMDGPU/gfx12_unsupported.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt
Log Message:
-----------
[AMDGPU] Remove s_set_inst_prefetch_distance support from GFX12 (#78786)
This instruction is not supported by GFX12.
Commit: 424b9cf41abf376cc7a34640f5f451c91714f77b
https://github.com/llvm/llvm-project/commit/424b9cf41abf376cc7a34640f5f451c91714f77b
Author: Alan Phipps <a-phipps at ti.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
A clang/test/Profile/c-mcdc-logicalop-ternary.c
Log Message:
-----------
[Coverage][clang] Ensure bitmap for ternary condition is updated before visiting children (#78814)
This is a fix for MC/DC issue https://github.com/llvm/llvm-project/issues/78453 in which a ConditionalOperator that evaluates a complex condition was incorrectly updating its global bitmap after visiting its LHS and RHS children. This
was wrong because if the LHS or RHS also evaluate a complex condition, the MCDC temporary bitmap value will get corrupted. The fix is to ensure that the bitmap is updated prior to visiting the LHS and RHS.
Commit: b83b8d3fd17885438b0ea154e07088d877d293a8
https://github.com/llvm/llvm-project/commit/b83b8d3fd17885438b0ea154e07088d877d293a8
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/CMakeLists.txt
M clang/cmake/caches/BOLT.cmake
M clang/utils/perf-training/CMakeLists.txt
M clang/utils/perf-training/bolt.lit.cfg
M clang/utils/perf-training/bolt.lit.site.cfg.in
M clang/utils/perf-training/perf-helper.py
Log Message:
-----------
Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)
This reverts commit 6c47419703acfcd7dcca9e30ab9dba6a7a42f977.
Default to CLANG_BOLT=OFF
Test Plan:
Build a regular Clang build.
Commit: 1d5c16d7805806e920feee2b4ec93d5800293837
https://github.com/llvm/llvm-project/commit/1d5c16d7805806e920feee2b4ec93d5800293837
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/cmake/modules/CheckCompilerFeatures.cmake
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
Log Message:
-----------
[libc] default enable -ftrivial-auto-var-init=pattern (#78776)
Usage of uninitialized memory is a top memory safety issue in C++ codebases.
Help mitigate this somewhat by default initialize stack allocations to a
pattern (0xAA repeating).
Clang has received optimizations to sink these into control flow paths that
access such values to minimize the overhead of these added initializations.
If there's a measurable slowdown, we can add
-ftrivial-auto-var-init-max-size=<N> for some value N bytes if we have any
large stack allocations, or add attribute uninitialized to any variable
declarations.
Unsupported until GCC 12.1 / Clang 8.
Increases file size of libc.a from a full build by +8.79Ki (+0.2%).
Commit: 6953b367027e4234607a6718a0a1d57eb52ef57e
https://github.com/llvm/llvm-project/commit/6953b367027e4234607a6718a0a1d57eb52ef57e
Author: Amir Ayupov <aaupov at fb.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/CMakeLists.txt
M clang/cmake/caches/BOLT.cmake
M clang/utils/perf-training/CMakeLists.txt
M clang/utils/perf-training/bolt.lit.cfg
M clang/utils/perf-training/bolt.lit.site.cfg.in
M clang/utils/perf-training/perf-helper.py
Log Message:
-----------
Revert "Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)"
This reverts commit b83b8d3fd17885438b0ea154e07088d877d293a8.
Breaks buildbots e.g.
https://lab.llvm.org/buildbot/#/builders/225/builds/29950
Commit: 042bb2850dcdd0b8a519f51678f2e40d0a97f548
https://github.com/llvm/llvm-project/commit/042bb2850dcdd0b8a519f51678f2e40d0a97f548
Author: Dimitry Andric <dimitry at andric.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
Log Message:
-----------
[tsan] Fix build for FreeBSD and NetBSD after 0784b1eefa36 (#79019)
In 0784b1eefa36 some code for re-execution was moved to
`ReExecIfNeeded()`, but also extended with a few Linux-only features.
This leads to compile errors on FreeBSD, or other non-Linux platforms:
compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp:247:25: error: use of
undeclared identifier 'personality'
247 | int old_personality = personality(0xffffffff);
| ^
compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp:249:54: error: use of
undeclared identifier 'ADDR_NO_RANDOMIZE'
249 | (old_personality != -1) && ((old_personality & ADDR_NO_RANDOMIZE)
== 0);
| ^
compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp:281:46: error: use of
undeclared identifier 'ADDR_NO_RANDOMIZE'
281 | CHECK_NE(personality(old_personality | ADDR_NO_RANDOMIZE), -1);
| ^
Surround the affected part with a `#if SANITIZER_LINUX` block for now.
Commit: be0c8098364b4bc9b210db65f5799bf37aefb605
https://github.com/llvm/llvm-project/commit/be0c8098364b4bc9b210db65f5799bf37aefb605
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[NFC][Debuginfo][RemoveDIs] Switch an insertion to use iterators
With the soon-to-land new-debug-info storage model, it's going to be
important to use iterators for instruction insertion rather than
instruction pointers. This (single line in instcombine) is the last place
that trips up our internal testing for debug-info, where we insert a PHI
and it should be using an iterator.
Commit: d37d1c8deaa34216248ad51e549a701852e29fa3
https://github.com/llvm/llvm-project/commit/d37d1c8deaa34216248ad51e549a701852e29fa3
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M flang/test/Driver/linker-flags.f90
Log Message:
-----------
[flang][driver] deprecate manual usage of -lFortran_main (#79016)
Intended to warn users of the 18.x release not to do this.
A better solution should be found for the 19.x release. See discussion
in https://github.com/llvm/llvm-project/pull/78152.
Unfortunately there is no warning on Windows currently. I am rushing to
get this landed before 18.x branches.
Commit: ee0b4d9681047f77d1f7bf53dc185fe140700464
https://github.com/llvm/llvm-project/commit/ee0b4d9681047f77d1f7bf53dc185fe140700464
Author: Félix-Antoine Constantin <60141446+felix642 at users.noreply.github.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/google/runtime-int.cpp
Log Message:
-----------
[clang-tidy] Ignore user-defined literals in google-runtime-int (#78859)
User-defined literals do not accept u?intXX(_t)? variables. So the check
should not emit a warning.
Fixes #54546 #25214
Commit: 50e2581a199da9702841f103eefca8dca2fc7b4f
https://github.com/llvm/llvm-project/commit/50e2581a199da9702841f103eefca8dca2fc7b4f
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M flang/docs/Directives.md
M flang/include/flang/Common/Fortran.h
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/ignore_tkr01.f90
A flang/test/Semantics/ignore_tkr03.f90
Log Message:
-----------
[flang] Allow assumed-shape element pass to dummy arg with ignore_tkr (#78196)
This is allowed by gfortran and ifort with `![GCC|DEC]$ ATTRIBUTES
NO_ARG_CHECK`
Commit: ff9627348e89b9e1a56714448f33dd42cf847777
https://github.com/llvm/llvm-project/commit/ff9627348e89b9e1a56714448f33dd42cf847777
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/tools/llc/llc.cpp
M llvm/tools/opt/opt.cpp
Log Message:
-----------
[NFC][DebugInfo] Set a testing flag to be hidden
This flag (--try-experimental-debuginfo-iterators) only exists for testing
purposes, to get some RUNlines running in new-debug-info mode before it's
properly supported. The flag isn't something that's going to be useful to
people using llvm 18, so hide it from the options list.
Commit: 3ab8d2aac7bc2dd45dda3db0b8a71fd27eefb749
https://github.com/llvm/llvm-project/commit/3ab8d2aac7bc2dd45dda3db0b8a71fd27eefb749
Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
A compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
A compiler-rt/test/builtins/Unit/sme-string-test.cpp
M compiler-rt/test/lit.common.cfg.py
M compiler-rt/test/lit.common.configured.in
M compiler-rt/unittests/lit.common.unit.configured.in
Log Message:
-----------
[AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)
Add naive implementation of memcpy, memset, memmove, memchr for SME
targets.
Co-authored-by: David Sherwood <david.sherwood at arm.com>
Commit: d922c82447e51921ee0545c398f60eb3a6ee24a3
https://github.com/llvm/llvm-project/commit/d922c82447e51921ee0545c398f60eb3a6ee24a3
Author: Anlun Xu <anlunx at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Blaze] Fix build file
Commit: a2d68b4bece54bcfa7bfde1e80058ab19b6d1775
https://github.com/llvm/llvm-project/commit/a2d68b4bece54bcfa7bfde1e80058ab19b6d1775
Author: David Green <david.green at arm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/test/CodeGen/AArch64/selectopt.ll
Log Message:
-----------
[SelectOpt] Add handling for Select-like operations. (#77284)
Some operations behave like selects. For example `or(zext(c), y)` is the
same as select(c, y|1, y)` and instcombine can canonicalize the select
to the or form. These operations can still be worthwhile converting to
branch as opposed to keeping as a select or or instruction.
This patch attempts to add some basic handling for them, creating a
SelectLike abstraction in the select optimization pass. The backend can
opt into handling `or(zext(c),x)` as a select if it could be profitable,
and the select optimization pass attempts to handle them in much the
same way as a `select(c, x|1, x)`. The Or(x, 1) may need to be added as
a new instruction, generated as the or is converted to branches.
This helps fix a regression from selects being converted to or's
recently.
Commit: 7117a4e8409018f31c00b186ac4627586d839e59
https://github.com/llvm/llvm-project/commit/7117a4e8409018f31c00b186ac4627586d839e59
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/include/llvm/Bitcode/BitcodeWriterPass.h
M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
Log Message:
-----------
[BitcodeWriter] Remove ThinLTO-specific bits from legacy pass
Since we shouldn't be doing any LTO logic from the legacy pass manager.
Commit: 029bfd6329aee0b60761998986dadba38e1de6f3
https://github.com/llvm/llvm-project/commit/029bfd6329aee0b60761998986dadba38e1de6f3
Author: lntue <35648136+lntue at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/cmake/modules/CheckCompilerFeatures.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/test/UnitTest/HermeticTestUtils.cpp
Log Message:
-----------
[libc] Replace -nostdlib++ flag when building with gcc and add placement new operator to HermeticTestUtils.cpp. (#78906)
`-nostdlib++` is a clang-only flag. Replacing it with `-nostdlib` when
building with gcc.
Commit: 58cfd56356ed96690150245ca5bcf646d12edc7a
https://github.com/llvm/llvm-project/commit/58cfd56356ed96690150245ca5bcf646d12edc7a
Author: Simeon K <5235180+simeonkr at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/VPIntrinsics.def
M llvm/lib/CodeGen/ExpandVectorPredication.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
A llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
A llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/unittests/IR/VPIntrinsicTest.cpp
Log Message:
-----------
[VP][RISCV] Introduce llvm.vp.minimum/maximum intrinsics (#74840)
Although there are predicated versions of minnum/maxnum, the ones for
minimum/maximum are currently missing. This patch introduces these
intrinsics and implements their lowering to RISC-V.
Commit: 907f2a0927d94d72d59f27e411c595b95aa673e9
https://github.com/llvm/llvm-project/commit/907f2a0927d94d72d59f27e411c595b95aa673e9
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/test/Driver/hipstdpar.c
Log Message:
-----------
[HIP][Driver] Automatically include `hipstdpar` forwarding header (#78915)
The forwarding header used by `hipstdpar` on AMDGPU targets is now
pacakged with `rocThrust`. This change augments the ROCm Driver
component so that it can automatically pick up the packaged header iff
the user hasn't overridden it via the dedicated flag.
Commit: fcff4582f01db2f5a99e3acf452aec9f2d8a126a
https://github.com/llvm/llvm-project/commit/fcff4582f01db2f5a99e3acf452aec9f2d8a126a
Author: wanglei <wanglei at loongson.cn>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
A llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
A llvm/test/Transforms/LoopVectorize/LoongArch/lit.local.cfg
Log Message:
-----------
[LoongArch] Permit auto-vectorization using LSX/LASX with `auto-vec` feature (#78943)
With enough codegen complete, we can now correctly report the size of
vector registers for LSX/LASX, allowing auto vectorization (The
`auto-vec` feature needs to be enabled simultaneously).
As described, the `auto-vec` feature is an experimental one. To ensure
that automatic vectorization is not enabled by default, because the
information provided by the current `TTI` cannot yield additional
benefits for automatic vectorization.
Commit: ea75542db99136a4612d8624ecff8581128cac21
https://github.com/llvm/llvm-project/commit/ea75542db99136a4612d8624ecff8581128cac21
Author: Ben Shi <2283975856 at qq.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/test/Analysis/Inputs/system-header-simulator.h
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/taint-tester.c
Log Message:
-----------
[clang][analyzer] Support 'getdelim' and 'getline' in StreamChecker (#78693)
Commit: 45c84f8011d2be9a2378487607ef811f75b4bfca
https://github.com/llvm/llvm-project/commit/45c84f8011d2be9a2378487607ef811f75b4bfca
Author: Jie Fu <jiefu at tencent.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
Log Message:
-----------
[clang][analyzer] Remove unused variable in StreamChecker.cpp (NFC)
llvm-project/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp:1125:17:
error: unused variable 'ASTC' [-Werror,-Wunused-variable]
1125 | ASTContext &ASTC = C.getASTContext();
| ^~~~
1 error generated.
Commit: 9a03d94a4db6b6d3b7cb1582e9e9cc239e737a30
https://github.com/llvm/llvm-project/commit/9a03d94a4db6b6d3b7cb1582e9e9cc239e737a30
Author: Nico Weber <thakis at chromium.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
Log Message:
-----------
[gn] port 3ab8d2aac7bc
Might want to set this to True (and add a few source files to
builtins) at some point, but for now heal the bots.
Commit: a0a16884ac678564787d3a939ad046b9b66bc3b9
https://github.com/llvm/llvm-project/commit/a0a16884ac678564787d3a939ad046b9b66bc3b9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[Docs] Add anchors for llvm.minimum/maximum in LangRef.rst. NFC
This was missed in 58cfd56356ed96690150245ca5bcf646d12edc7a
Commit: c0fe2b8963aad8ad247eeceffb8eb833ee63a0e7
https://github.com/llvm/llvm-project/commit/c0fe2b8963aad8ad247eeceffb8eb833ee63a0e7
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
Log Message:
-----------
Apply clang-tidy fixes for modernize-loop-convert in Transforms.cpp (NFC)
Commit: 3af5ab21b8da9015a5e336eb711e696781defcc9
https://github.com/llvm/llvm-project/commit/3af5ab21b8da9015a5e336eb711e696781defcc9
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-identifier-naming in Transforms.cpp (NFC)
Commit: 2e0909025ec010981f582d4e13b129e17329ee1b
https://github.com/llvm/llvm-project/commit/2e0909025ec010981f582d4e13b129e17329ee1b
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-simplify-boolean-expr in Vectorization.cpp (NFC)
Commit: acf2f24ac3288c1342edbeaba0fdd4e432b4ccb8
https://github.com/llvm/llvm-project/commit/acf2f24ac3288c1342edbeaba0fdd4e432b4ccb8
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
Log Message:
-----------
Apply clang-tidy fixes for llvm-else-after-return in LLVMDialect.cpp (NFC)
Commit: d4933b3241f463871cae55bbeec8563e7ffe03a2
https://github.com/llvm/llvm-project/commit/d4933b3241f463871cae55bbeec8563e7ffe03a2
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
Log Message:
-----------
Apply clang-tidy fixes for readability-identifier-naming in PolynomialApproximation.cpp (NFC)
Commit: 4db4d7f282d17634966cdfda8ccecee1bfcfe1ff
https://github.com/llvm/llvm-project/commit/4db4d7f282d17634966cdfda8ccecee1bfcfe1ff
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
Log Message:
-----------
[AMDGPU] SILowerSGPRSpills: do not update MRI reserve registers (#77888)
VGPRs used for spilling do not require explicit reservation with MRI.
freezeReservedRegs() executed before register allocation ensures these
are placed in the reserve set.
The only pass after SILowerSGPRSpills is SIPreAllocateWWMRegs which
explicitly tests for interference before register allocation so should
not reuse a WWM VGPR holding spill data. reserveReg prevents calculation
of correct liveness for physical registers which could be used to extend
SIPreAllocateWWMRegs.
Commit: b8e708b9d39862c2b7595c02e7bdc4878a2d7186
https://github.com/llvm/llvm-project/commit/b8e708b9d39862c2b7595c02e7bdc4878a2d7186
Author: Jim Lin <jim at andestech.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
Log Message:
-----------
[RISCV] Merge ADDI with X0 into base offset (#78940)
If offset is `addi rd, x0, imm`, merge imm into base offset.
Commit: e5ca202ef8870f3b46cc19a7a62624e6908be9a8
https://github.com/llvm/llvm-project/commit/e5ca202ef8870f3b46cc19a7a62624e6908be9a8
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_arm.s
A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_multi.s
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[JITLink][AArch32] Multi-stub support for armv7/thumbv7 (#78371)
We want to emit stubs that match the instruction set state of the
relocation site. This is important for branches that have no built-in
switch for the instruction set state. It's the case for Jump24
relocations. Relocations on instructions that support switching on
the fly will be rewritten in a relaxation step in the future. This
affects Call relocations on `BL`/`BLX` instructions.
In this patch, the StubManager gains a second stub symbol slot for each
target and selects which one to use based on the relocation type. For
testing, we select the appropriate slot with a stub-kind filter, i.e.
`arm` or `thumb`. With that we can implement Armv7 stubs and test
that we can have both kinds of stubs for a single external symbol.
Commit: 8c680451a5eff02dd7e5004b69e05b3744f4e1aa
https://github.com/llvm/llvm-project/commit/8c680451a5eff02dd7e5004b69e05b3744f4e1aa
Author: itrofimow <i.trofimow at yandex.ru>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/src/support/runtime/exception_pointer_unimplemented.ipp
Log Message:
-----------
[libc++] Fix linking for platforms that don't implement std::exception_ptr (#79040)
This patch fixes linkage for platforms that don't implement
std::exception_ptr, as such setup was overlooked in #65534.
Commit: 6082478e1a5bde8ac03ac7220b733313a5417a13
https://github.com/llvm/llvm-project/commit/6082478e1a5bde8ac03ac7220b733313a5417a13
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/include/__config
M libcxx/include/__coroutine/coroutine_handle.h
M libcxx/include/__memory_resource/polymorphic_allocator.h
M libcxx/src/filesystem/operations.cpp
M libcxx/src/memory_resource.cpp
M libcxx/src/mutex.cpp
A libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/assert.deallocate.pass.cpp
R libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/debug.deallocate.pass.cpp
Log Message:
-----------
[libc++][hardening] Classify assertions related to leaks and syscalls. (#77164)
Introduce two new categories:
- `_LIBCPP_ASSERT_VALID_DEALLOCATION`;
- `_LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL`.
Commit: 37efa7038d30ea13f62ad919fec1e8c8ce35b3ef
https://github.com/llvm/llvm-project/commit/37efa7038d30ea13f62ad919fec1e8c8ce35b3ef
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/ELF/Driver.cpp
M lld/test/ELF/x86-64-zrel-zrela.s
Log Message:
-----------
[ELF] Fix spurious warning for -z rel && -z rela
Fixes: 665f913e4509e3e4f531aa4a4ebe92ec2ea5c23f
Commit: bffd80d6df6195c8069b655b1f2463ad8622a707
https://github.com/llvm/llvm-project/commit/bffd80d6df6195c8069b655b1f2463ad8622a707
Author: Douglas Yung <douglas.yung at sony.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
R compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
R compiler-rt/test/builtins/Unit/sme-string-test.cpp
M compiler-rt/test/lit.common.cfg.py
M compiler-rt/test/lit.common.configured.in
M compiler-rt/unittests/lit.common.unit.configured.in
Log Message:
-----------
Revert "[AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)"
This reverts commit 3ab8d2aac7bc2dd45dda3db0b8a71fd27eefb749.
This change is causing issues running lit tests on many bots including:
- https://lab.llvm.org/buildbot/#/builders/197/builds/12119
- https://lab.llvm.org/buildbot/#/builders/184/builds/9792
- https://lab.llvm.org/buildbot/#/builders/93/builds/18455
- https://lab.llvm.org/buildbot/#/builders/231/builds/19858
- https://lab.llvm.org/buildbot/#/builders/121/builds/38426
- https://lab.llvm.org/buildbot/#/builders/230/builds/23990
- https://lab.llvm.org/buildbot/#/builders/57/builds/32391
- https://lab.llvm.org/buildbot/#/builders/247/builds/13502
- https://lab.llvm.org/buildbot/#/builders/275/builds/3601
- https://lab.llvm.org/buildbot/#/builders/269/builds/4211
- https://lab.llvm.org/buildbot/#/builders/18/builds/14161
- https://lab.llvm.org/buildbot/#/builders/19/builds/23893
- https://lab.llvm.org/buildbot/#/builders/37/builds/30295
- https://lab.llvm.org/buildbot/#/builders/77/builds/33979
Commit: 5c68c6d70fc204b0efdb2af95dfb328d616129e3
https://github.com/llvm/llvm-project/commit/5c68c6d70fc204b0efdb2af95dfb328d616129e3
Author: Shengchen Kan <shengchen.kan at intel.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrShiftRotate.td
M llvm/lib/Target/X86/X86InstrUtils.td
A llvm/test/CodeGen/X86/apx/rol.ll
A llvm/test/CodeGen/X86/apx/ror.ll
A llvm/test/CodeGen/X86/apx/sar.ll
A llvm/test/CodeGen/X86/apx/shl.ll
A llvm/test/CodeGen/X86/apx/shld.ll
A llvm/test/CodeGen/X86/apx/shr.ll
A llvm/test/CodeGen/X86/apx/shrd.ll
A llvm/test/MC/Disassembler/X86/apx/rcl.txt
A llvm/test/MC/Disassembler/X86/apx/rcr.txt
A llvm/test/MC/Disassembler/X86/apx/rol.txt
A llvm/test/MC/Disassembler/X86/apx/ror.txt
A llvm/test/MC/Disassembler/X86/apx/sar.txt
A llvm/test/MC/Disassembler/X86/apx/shl.txt
A llvm/test/MC/Disassembler/X86/apx/shld.txt
A llvm/test/MC/Disassembler/X86/apx/shr.txt
A llvm/test/MC/Disassembler/X86/apx/shrd.txt
A llvm/test/MC/X86/apx/rcl-att.s
A llvm/test/MC/X86/apx/rcl-intel.s
A llvm/test/MC/X86/apx/rcr-att.s
A llvm/test/MC/X86/apx/rcr-intel.s
A llvm/test/MC/X86/apx/rol-att.s
A llvm/test/MC/X86/apx/rol-intel.s
A llvm/test/MC/X86/apx/ror-att.s
A llvm/test/MC/X86/apx/ror-intel.s
A llvm/test/MC/X86/apx/sar-att.s
A llvm/test/MC/X86/apx/sar-intel.s
A llvm/test/MC/X86/apx/shl-att.s
A llvm/test/MC/X86/apx/shl-intel.s
A llvm/test/MC/X86/apx/shld-att.s
A llvm/test/MC/X86/apx/shld-intel.s
A llvm/test/MC/X86/apx/shr-att.s
A llvm/test/MC/X86/apx/shr-intel.s
A llvm/test/MC/X86/apx/shrd-att.s
A llvm/test/MC/X86/apx/shrd-intel.s
M llvm/test/TableGen/x86-fold-tables.inc
Log Message:
-----------
[X86] Support encoding/decoding and lowering for APX variant SHL/SHR/SAR/ROL/ROR/RCL/RCR/SHLD/SHRD (#78853)
Four variants: promoted legacy, ND (new data destination), NF (no flags
update) and NF_ND (NF + ND).
The syntax of NF instructions is aligned with GNU binutils.
https://sourceware.org/pipermail/binutils/2023-September/129545.html
Commit: afc229b217f499160b3228a0d7d1783613ac9b58
https://github.com/llvm/llvm-project/commit/afc229b217f499160b3228a0d7d1783613ac9b58
Author: Nico Weber <thakis at chromium.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
Log Message:
-----------
Revert "[gn] port 3ab8d2aac7bc"
This reverts commit 9a03d94a4db6b6d3b7cb1582e9e9cc239e737a30.
3ab8d2aac7bc was reverted in bffd80d6df61.
Commit: 9577806b1e6ce06bece48d96b39035f4cee9137d
https://github.com/llvm/llvm-project/commit/9577806b1e6ce06bece48d96b39035f4cee9137d
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
Log Message:
-----------
[JITLink][AArch32] Implement R_ARM_PREL31 and process .ARM.exidx sections (#79044)
`R_ARM_PREL31` is a 31-bits relative data relocation where the
most-significant bit is preserved. It's used primarily in `.ARM.exidx`
sections, which we skipped processing until now, because we didn't
support the relocation type. This was implemented in RuntimeDyld with
https://reviews.llvm.org/D25069 and I implemented it in a similar way in
JITLink in order to reach feature parity.
Commit: 62eb65b36f8e8fa121de047c89fb7dbe5d4c96be
https://github.com/llvm/llvm-project/commit/62eb65b36f8e8fa121de047c89fb7dbe5d4c96be
Author: Sean Fertile <35576261+mandlebug at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/fat-lto-objects.c
Log Message:
-----------
[FatLTO] output of -ffat-lto-objects -S should be assembly. (#79041)
Fat lto with -c compiles to an object file with the IR embedded in a
section of the object, the combination of fat-lto with -S should then
produce an assembly file equivalent of that. The IR output can still be
genreated by using both -S and -emit-llvm.
Commit: 23edf782a268e750b18f720fa082a6891ae9d304
https://github.com/llvm/llvm-project/commit/23edf782a268e750b18f720fa082a6891ae9d304
Author: Petr Hosek <phosek at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/config/baremetal/riscv/entrypoints.txt
M libc/docs/math/index.rst
Log Message:
-----------
[libc] Include missing RISC-V stdlib.h and math.h entrypoints (#79034)
This matches the entrypoints for baremetal ARM.
Commit: 4beb7237103a66e90b90a43b1ca0c77bca872d5b
https://github.com/llvm/llvm-project/commit/4beb7237103a66e90b90a43b1ca0c77bca872d5b
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/app.h
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/src/sys/CMakeLists.txt
A libc/src/sys/auxv/CMakeLists.txt
A libc/src/sys/auxv/getauxval.h
A libc/src/sys/auxv/linux/CMakeLists.txt
A libc/src/sys/auxv/linux/getauxval.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/auxv/CMakeLists.txt
A libc/test/src/sys/auxv/linux/CMakeLists.txt
A libc/test/src/sys/auxv/linux/getauxval_test.cpp
Log Message:
-----------
[libc] implement sys/getauxval (#78493)
This PR implements `sys/getauxval`
that can be used in both overlay builds and full builds.
Commit: 3b171cb968b3f8495b096139fc57ff6263727e40
https://github.com/llvm/llvm-project/commit/3b171cb968b3f8495b096139fc57ff6263727e40
Author: Owen Pan <owenpiano at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/WhitespaceManager.h
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in ContinuationIndenter (#78921)
Fixes #76991.
Commit: 7e63940f69d99c12ccc18c76e1fc6b861fd459ec
https://github.com/llvm/llvm-project/commit/7e63940f69d99c12ccc18c76e1fc6b861fd459ec
Author: Shih-Po Hung <shihpo.hung at sifive.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
Log Message:
-----------
[RISCV][CostModel] Make VMV_S_X and VMV_X_S cost independent of LMUL (#78739)
Following #77963, instructions like VMV_S_X/VMV_X_S
handle single element, so the cost don't scale with LMUL.
Commit: 4ef646eab3023b52ce8ee529d16605c92caba8ba
https://github.com/llvm/llvm-project/commit/4ef646eab3023b52ce8ee529d16605c92caba8ba
Author: Gedare Bloom <gedare at rtems.org>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/Format/ContinuationIndenter.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format]: Fix formatting of if statements with BlockIndent (#77699)
A bug with BlockIndent prevents line breaks within if (and else if)
clauses.
While fixing this bug, it appears that AlignAfterOpenBracket is not
designed to work with loop and if statements, but AlwaysBreak works on
if clauses. The documentation and tests are not clear on whether or not
this behavior is intended.
This PR preserves the `AlwaysBreak` behavior on `if` clauses without
supporting `BlockIndent` on `if` clauses to avoid regressions while
fixing the bug.
It may be reasonable to create an explicit option for alignment of if
(and loop) clauses intentionally for both `AlwaysBreak` and
`BlockIndent`
Fixes #54663.
Migrated from Differential Revision: https://reviews.llvm.org/D154755
See more discussion there. Addressed last open comment from the rev
about refactoring the complex conditional logic involved with the
`AlignAfterOpenBracket` line break behavior.
Commit: 097a40ac899d0b88b4b62b85e6faa43802e87010
https://github.com/llvm/llvm-project/commit/097a40ac899d0b88b4b62b85e6faa43802e87010
Author: Chen Zheng <czhengsz at cn.ibm.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll
Log Message:
-----------
nfc add test cases for PowerPC vector instructions cost analysis
Commit: 314526557ec66ee627ae8a1c03f6ccc610668fdb
https://github.com/llvm/llvm-project/commit/314526557ec66ee627ae8a1c03f6ccc610668fdb
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/docs/ReleaseNotes/18.rst
A libcxx/src/include/overridable_function.h
M libcxx/src/new.cpp
A libcxx/test/libcxx/language.support/support.dynamic/assert.nothrow_new_not_overridden_fno_exceptions.pass.cpp
A libcxx/test/libcxx/language.support/support.dynamic/new_dont_return_nullptr.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.replace.indirect.pass.cpp
M libcxx/test/support/check_assertion.h
M libcxx/test/support/count_new.h
M libcxx/test/support/test.support/test_check_assertion.pass.cpp
M libcxxabi/src/stdlib_new_delete.cpp
Log Message:
-----------
[libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (#69498)
In D144319, Clang tried to land a change that would cause some functions
that are not supposed to return nullptr to optimize better. As reported
in https://reviews.llvm.org/D144319#4203982, libc++ started seeing
failures in its CI shortly after this change was landed.
As explained in D146379, the reason for these failures is that libc++'s
throwing `operator new` can in fact return nullptr when compiled with
exceptions disabled. However, this contradicts the Standard, which
clearly says that the throwing version of `operator new(size_t)` should
never return nullptr. This is actually a long standing issue. I've
previously seen a case where LTO would optimize incorrectly based on the
assumption that `operator new` doesn't return nullptr, an assumption
that was violated in that case because libc++.dylib was compiled with
-fno-exceptions.
Unfortunately, fixing this is kind of tricky. The Standard has a few
requirements for the allocation functions, some of which are impossible
to satisfy under -fno-exceptions:
1. `operator new(size_t)` must never return nullptr
2. `operator new(size_t, nothrow_t)` must call the throwing version and
return nullptr on failure to allocate
3. We can't throw exceptions when compiled with -fno-exceptions
In the case where exceptions are enabled, things work nicely.
`new(size_t)` throws and `new(size_t, nothrow_t)` uses a try-catch to
return nullptr. However, when compiling the library with
-fno-exceptions, we can't throw an exception from `new(size_t)`, and we
can't catch anything from `new(size_t, nothrow_t)`. The only thing we
can do from `new(size_t)` is actually abort the program, which does not
make it possible for `new(size_t, nothrow_t)` to catch something and
return nullptr.
This patch makes the following changes:
1. When compiled with -fno-exceptions, the throwing version of `operator
new` will now abort on failure instead of returning nullptr on failure.
This resolves the issue that the compiler could mis-compile based on the
assumption that nullptr is never returned. This constitutes an API and
ABI breaking change for folks compiling the library with -fno-exceptions
(which is not the general public, who merely uses libc++ headers but use
a shared library that has already been compiled). This should mostly
impact vendors and other folks who compile libc++.dylib themselves.
2. When the library is compiled with -fexceptions, the nothrow version
of `operator new` has no change. When the library is compiled with
-fno-exceptions, the nothrow version of `operator new` will now check
whether the throwing version of `operator new` has been overridden. If
it has not been overridden, then it will use an implementation
equivalent to that of the throwing `operator new`, except it will return
nullptr on failure to allocate (instead of terminating). However, if the
throwing `operator new` has been overridden, it is now an error NOT to
also override the nothrow `operator new`. Indeed, there is no way for us
to implement a valid nothrow `operator new` without knowing the exact
implementation of the throwing version.
In summary, this change will impact people who fall into the following
intersection of conditions:
- They use the libc++ shared/static library built with `-fno-exceptions`
- They do not override `operator new(..., std::nothrow_t)`
- They override `operator new(...)` (the throwing version)
- They use `operator new(..., std::nothrow_t)`
We believe this represents a small number of people.
Fixes #60129
rdar://103958777
Differential Revision: https://reviews.llvm.org/D150610
Commit: 888f2a58a9d441e29a6769ff0d96ec5306262336
https://github.com/llvm/llvm-project/commit/888f2a58a9d441e29a6769ff0d96ec5306262336
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M libcxx/test/support/check_assertion.h
Log Message:
-----------
[libc++][NFC] Fix formatting in check_assertion.h
Commit: f3dd8f10c77f29ff2563482c96c33f2c2bbc847c
https://github.com/llvm/llvm-project/commit/f3dd8f10c77f29ff2563482c96c33f2c2bbc847c
Author: Yitzhak Mandelbaum <ymand at users.noreply.github.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
Log Message:
-----------
[clang][dataflow] Make cap on block visits configurable by caller. (#77481)
Previously, we hard-coded the cap on block visits inside the framework.
This
patch enables the caller to specify the cap in the APIs for running an
analysis.
Commit: 904b0901ef2d33e6232b7a51fa2525c30fd117e8
https://github.com/llvm/llvm-project/commit/904b0901ef2d33e6232b7a51fa2525c30fd117e8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/test/Preprocessor/riscv-target-features.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add FeatureFastUnalignedAccess to sifive-p450. (#79075)
Commit: 35ab0c78cf5f2294e251a6fb1e0d6e58dc80d955
https://github.com/llvm/llvm-project/commit/35ab0c78cf5f2294e251a6fb1e0d6e58dc80d955
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
Log Message:
-----------
ValueTracking: Add tests fcmpToClassTest for fcmp true/false
Commit: 1a99df9f3dfdfd6ff3a3d46113c9e0e9d55ad892
https://github.com/llvm/llvm-project/commit/1a99df9f3dfdfd6ff3a3d46113c9e0e9d55ad892
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
Log Message:
-----------
ValueTracking: Add tests for fcmpToClassTest for fcmp ole/ugt inf
This catches an assertion in a recommit of
dc3faf0ed0e3f1ea9e435a006167d9649f865da1
Commit: 8076b896955e91cc2d16283cf8206f3354702022
https://github.com/llvm/llvm-project/commit/8076b896955e91cc2d16283cf8206f3354702022
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
Log Message:
-----------
ValueTracking: Handle fcmp true/false in fcmpToClassTest
This ensures full compare coverage for certain special constants.
Commit: 28f9041879620b44505d54670f5ccb2ed48b24d9
https://github.com/llvm/llvm-project/commit/28f9041879620b44505d54670f5ccb2ed48b24d9
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
Log Message:
-----------
[DebugInfo] Use DenseMap::lookup (NFC)
Commit: a0b459df256e8d16cade7f38a6fdaf2e763c847f
https://github.com/llvm/llvm-project/commit/a0b459df256e8d16cade7f38a6fdaf2e763c847f
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/include/llvm/IR/GlobalValue.h
Log Message:
-----------
[IR] Use StringRef::consume_front (NFC)
Commit: 47c76e7aba0cf823f7fa883e0d374ad1a160067a
https://github.com/llvm/llvm-project/commit/47c76e7aba0cf823f7fa883e0d374ad1a160067a
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
Log Message:
-----------
[SPIRV] Use llvm::find (NFC)
Commit: 8c3304453c22ad1b5a914e64a7f6435f58f4099c
https://github.com/llvm/llvm-project/commit/8c3304453c22ad1b5a914e64a7f6435f58f4099c
Author: Kazu Hirata <kazu at google.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M llvm/tools/llvm-diff/lib/DifferenceEngine.cpp
Log Message:
-----------
[llvm-diff] Use llvm::predecessors (NFC)
Commit: f1d3ebc9918aa6d1d04cda98da1ecef2dd51978c
https://github.com/llvm/llvm-project/commit/f1d3ebc9918aa6d1d04cda98da1ecef2dd51978c
Author: S. B. Tam <cpplearner at outlook.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
Log Message:
-----------
[libc++][test] Use LIBCPP_ASSERT in some `system_category`-related tests (#78834)
Commit: a6065f0fa55aaf694b5f85ecad7badec5cc02425
https://github.com/llvm/llvm-project/commit/a6065f0fa55aaf694b5f85ecad7badec5cc02425
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/CodeGen/CGCXX.cpp
M llvm/include/llvm/IR/CallingConv.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64.h
A llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64CallingConvention.h
M llvm/lib/Target/AArch64/AArch64CallingConvention.td
M llvm/lib/Target/AArch64/AArch64FastISel.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
M llvm/lib/Target/AArch64/AArch64MCInstLower.h
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
M llvm/test/CodeGen/AArch64/arm64ec-dllimport.ll
A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks-local-linkage.ll
A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
A llvm/test/CodeGen/AArch64/arm64ec-exit-thunks.ll
M llvm/test/CodeGen/AArch64/arm64ec-reservedregs.ll
M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
M llvm/test/CodeGen/AArch64/win-alloca.ll
Log Message:
-----------
Arm64EC entry/exit thunks, consolidated. (#79067)
This combines the previously posted patches with some additional work
I've done to more closely match MSVC output.
Most of the important logic here is implemented in
AArch64Arm64ECCallLowering. The purpose of the
AArch64Arm64ECCallLowering is to take "normal" IR we'd generate for
other targets, and generate most of the Arm64EC-specific bits:
generating thunks, mangling symbols, generating aliases, and generating
the .hybmp$x table. This is all done late for a few reasons: to
consolidate the logic as much as possible, and to ensure the IR exposed
to optimization passes doesn't contain complex arm64ec-specific
constructs.
The other changes are supporting changes, to handle the new constructs
generated by that pass.
There's a global llvm.arm64ec.symbolmap representing the .hybmp$x
entries for the thunks. This gets handled directly by the AsmPrinter
because it needs symbol indexes that aren't available before that.
There are two new calling conventions used to represent calls to and
from thunks: ARM64EC_Thunk_X64 and ARM64EC_Thunk_Native. There are a few
changes to handle the associated exception-handling info,
SEH_SaveAnyRegQP and SEH_SaveAnyRegQPX.
I've intentionally left out handling for structs with small
non-power-of-two sizes, because that's easily separated out. The rest of
my current work is here. I squashed my current patches because they were
split in ways that didn't really make sense. Maybe I could split out
some bits, but it's hard to meaningfully test most of the parts
independently.
Thanks to @dpaoliello for extensive testing and suggestions.
(Originally posted as https://reviews.llvm.org/D157547 .)
Commit: 4ee195a2a791cc338feddfa8d82679eddb330bf1
https://github.com/llvm/llvm-project/commit/4ee195a2a791cc338feddfa8d82679eddb330bf1
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Log Message:
-----------
[gn build] Port a6065f0fa55a
Commit: ce3e767ac5ea1a1d1a166e88c152e2125ec7662b
https://github.com/llvm/llvm-project/commit/ce3e767ac5ea1a1d1a166e88c152e2125ec7662b
Author: ManuelvOK <info at manuel-thieme.de>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
Log Message:
-----------
[Coverage] Map regions from system headers (#76950)
In 2155195131a57f2f01e7cfabb85bb027518c2dc6, the
"system-headers-coverage" option has been added but not used in all
necessary places.
Potential reviewers: @gulfemsavrun @petrhosek
Co-authored-by: Manuel Kalettka <manuel.kalettka at kernkonzept.com>
Commit: 3f740322c5b9b7d6f45a73d2fac948df3c74a3a7
https://github.com/llvm/llvm-project/commit/3f740322c5b9b7d6f45a73d2fac948df3c74a3a7
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M libc/config/linux/arm/entrypoints.txt
Log Message:
-----------
[libc] remove getauxval from arm32 entrypoint list (#79093)
`getauxval` depends on `open/read/close` which are not built on arm32.
Remove `getauxval` for now.
Commit: 86f05477d0bd7347e9bec8c1f9a7d89c167ad556
https://github.com/llvm/llvm-project/commit/86f05477d0bd7347e9bec8c1f9a7d89c167ad556
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M libc/src/sys/auxv/linux/CMakeLists.txt
Log Message:
-----------
[libc] add missing header deps to getauxval (#79091)
`getauxval` depends on `libc.include.sys_auxv`
Commit: fcb8342a219ada8ec641790a4c8a9f969d7d64ee
https://github.com/llvm/llvm-project/commit/fcb8342a219ada8ec641790a4c8a9f969d7d64ee
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2024-01-23 (Tue, 23 Jan 2024)
Changed paths:
M clang/include/clang/Basic/BuiltinsLoongArchBase.def
M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
M clang/include/clang/Basic/BuiltinsLoongArchLSX.def
M clang/lib/Headers/larchintrin.h
M clang/lib/Headers/lasxintrin.h
M clang/lib/Headers/lsxintrin.h
A clang/test/CodeGen/LoongArch/builtin-dbl-approximate.c
A clang/test/CodeGen/LoongArch/builtin-flt-approximate.c
M clang/test/CodeGen/LoongArch/intrinsic-la64-error.c
A clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
A clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
A clang/test/CodeGen/LoongArch/lsx/builtin-approximate-alias.c
A clang/test/CodeGen/LoongArch/lsx/builtin-approximate.c
M llvm/include/llvm/IR/IntrinsicsLoongArch.td
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-dbl.ll
A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-flt.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frecipe.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frsqrte.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frecipe.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frsqrte.ll
Log Message:
-----------
[LoongArch] Add definitions and feature 'frecipe' for FP approximation intrinsics/builtins (#78962)
This PR adds definitions and 'frecipe' feature for FP approximation
intrinsics/builtins. In additions, this adds and complements relative
testcases.
Commit: 39a1b280a170ff8e0e605693f8386b8dd161cf94
https://github.com/llvm/llvm-project/commit/39a1b280a170ff8e0e605693f8386b8dd161cf94
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M lld/test/ELF/lto/cache.ll
M lld/test/ELF/lto/thinlto.ll
Log Message:
-----------
[ELF] Improve ThinLTO tests
Commit: 33e63ef34de43e44c374f9524ea97139d4ab5692
https://github.com/llvm/llvm-project/commit/33e63ef34de43e44c374f9524ea97139d4ab5692
Author: Fangrui Song <i at maskray.me>
Date: 2024-01-22 (Mon, 22 Jan 2024)
Changed paths:
M .github/new-prs-labeler.yml
M .github/workflows/issue-subscriber.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/new-prs.yml
M .github/workflows/pr-subscriber.yml
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.h
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.h
A clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.h
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.h
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/chained-comparison.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-casting.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/readability-casting.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/runtime-int.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-inline-specifier.cpp
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SourceBasedCodeCoverage.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/UsersManual.rst
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/ODRHash.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/TemplateArgumentVisitor.h
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/BuiltinsLoongArchBase.def
M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
M clang/include/clang/Basic/BuiltinsLoongArchLSX.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.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/LangOptions.h
M clang/include/clang/Basic/ObjCRuntime.h
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/Basic/arm_sve_sme_incl.td
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/ExtractAPI/API.h
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
M clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/Utils.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/lib/ARCMigrate/FileRemapper.cpp
M clang/lib/ARCMigrate/ObjCMT.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/Analysis/RetainSummaryManager.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/FileManager.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCXX.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/ExtractAPI/API.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Format/WhitespaceManager.h
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Frontend/TextDiagnosticBuffer.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/ia32intrin.h
M clang/lib/Headers/larchintrin.h
M clang/lib/Headers/lasxintrin.h
M clang/lib/Headers/lsxintrin.h
M clang/lib/Index/USRGeneration.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
M clang/lib/Tooling/ASTDiff/ASTDiff.cpp
M clang/lib/Tooling/CompilationDatabase.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/test/Analysis/Inputs/system-header-simulator.h
M clang/test/Analysis/call-invalidation.cpp
M clang/test/Analysis/stream-error.c
M clang/test/Analysis/stream.c
M clang/test/Analysis/taint-tester.c
A clang/test/C/C2x/n2940.c
M clang/test/C/drs/dr3xx.c
M clang/test/CXX/drs/dr18xx.cpp
M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
A clang/test/CodeGen/LoongArch/builtin-dbl-approximate.c
A clang/test/CodeGen/LoongArch/builtin-flt-approximate.c
M clang/test/CodeGen/LoongArch/intrinsic-la64-error.c
A clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
A clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
A clang/test/CodeGen/LoongArch/lsx/builtin-approximate-alias.c
A clang/test/CodeGen/LoongArch/lsx/builtin-approximate.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_cnt.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1_vnum.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ldr.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za32.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za64.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za32.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za64.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1_vnum.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_state_funs.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_write.c
M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_zero.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_bmop.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mop.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
M clang/test/CodeGen/attr-target-clones-aarch64.c
M clang/test/CodeGen/attr-target-version.c
M clang/test/CodeGen/cx-complex-range.c
M clang/test/CodeGen/function-attributes.c
M clang/test/CodeGen/memtag-globals-asm.cpp
M clang/test/CodeGen/pragma-weak.c
A clang/test/CodeGen/smiths-complex-div.c
M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
M clang/test/CodeGenCXX/attr-target-version.cpp
M clang/test/CodeGenCXX/mangle-ms-templates.cpp
M clang/test/CodeGenCXX/mangle-template.cpp
A clang/test/CodeGenCXX/template-arguments.cpp
A clang/test/CodeGenCXX/visibility-global-new-delete.cpp
A clang/test/CodeGenObjC/gnustep2-direct-method.m
M clang/test/CoverageMapping/branch-constfolded.cpp
M clang/test/CoverageMapping/if.cpp
M clang/test/Driver/dxc_spirv.hlsl
M clang/test/Driver/fat-lto-objects.c
M clang/test/Driver/hipstdpar.c
M clang/test/Driver/linker-wrapper.c
A clang/test/Driver/modules-print-library-module-manifest-path.cpp
M clang/test/Driver/range.c
M clang/test/Driver/riscv-cpus.c
A clang/test/Driver/visibility-global-new-delete.cl
M clang/test/Driver/x86-target-features.c
M clang/test/ExtractAPI/typedef.c
A clang/test/ExtractAPI/union.c
M clang/test/Import/attr/Inputs/S.cpp
M clang/test/Import/attr/test.cpp
M clang/test/Index/Core/designated-inits.c
M clang/test/Index/Core/external-source-symbol-attr-cxx.cpp
M clang/test/Index/Core/external-source-symbol-attr.m
M clang/test/Index/Core/index-dependent-source.cpp
M clang/test/Index/Core/index-instantiated-source.cpp
M clang/test/Index/Core/index-source-invalid-name.cpp
M clang/test/Index/Core/index-source.cpp
M clang/test/Index/Core/index-source.m
M clang/test/Index/Core/index-source.mm
M clang/test/Index/Core/index-subkinds.m
M clang/test/Index/Core/index-with-module.m
A clang/test/Index/USR/structural-value-tpl-arg.cpp
M clang/test/Index/attributes.c
M clang/test/Index/ms-property.cpp
M clang/test/Index/using_if_exists.cpp
M clang/test/Interpreter/disambiguate-decl-stmt.cpp
M clang/test/Lexer/cxx-features.cpp
M clang/test/Lexer/has_extension_cxx.cpp
M clang/test/Modules/odr_hash.cpp
A clang/test/OpenMP/force-usm.c
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-clauses.cpp
M clang/test/Preprocessor/riscv-target-features.c
M clang/test/Preprocessor/ucn-pp-identifier.c
M clang/test/Preprocessor/x86_target_features.c
M clang/test/Profile/c-general.c
A clang/test/Profile/c-mcdc-logicalop-ternary.c
M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_target.c
M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
M clang/test/Sema/attr-print.c
A clang/test/Sema/incorrect_pure.cpp
A clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
A clang/test/Sema/warn-infinity-nan-disabled-win.cpp
M clang/test/SemaCXX/attr-print.cpp
M clang/test/SemaCXX/cxx0x-cursory-default-delete.cpp
M clang/test/SemaCXX/cxx11-attr-print.cpp
M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
M clang/test/SemaCXX/overloaded-operator.cpp
M clang/test/SemaCXX/warn-bool-conversion.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp
M clang/test/SemaCXX/warn-unused-value-cxx11.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
M clang/tools/c-index-test/c-index-test.c
M clang/tools/clang-repl/CMakeLists.txt
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CMakeLists.txt
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Interpreter/InterpreterTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M clang/utils/TableGen/MveEmitter.cpp
M clang/utils/TableGen/SveEmitter.cpp
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M compiler-rt/include/CMakeLists.txt
A compiler-rt/include/profile/instr_prof_interface.h
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
M compiler-rt/lib/hwasan/hwasan_report.cpp
M compiler-rt/lib/profile/InstrProfiling.h
M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
M compiler-rt/test/asan/TestCases/alloca_loop_unpoisoning.cpp
A compiler-rt/test/profile/Linux/instrprof-weak-symbol.c
A compiler-rt/test/profile/instrprof-api.c
M flang/docs/Directives.md
M flang/include/flang/Common/Fortran.h
M flang/include/flang/Lower/OpenACC.h
M flang/include/flang/Lower/OpenMP.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP.cpp
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Driver/linker-flags.f90
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-loop-exit.f90
M flang/test/Lower/OpenACC/acc-loop.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenACC/locations.f90
M flang/test/Lower/OpenMP/FIR/sections.f90
A flang/test/Lower/OpenMP/infinite-loop-in-construct.f90
M flang/test/Lower/OpenMP/sections.f90
A flang/test/Lower/OpenMP/wsloop-unstructured.f90
M flang/test/Semantics/ignore_tkr01.f90
A flang/test/Semantics/ignore_tkr03.f90
M flang/test/Transforms/loop-versioning.fir
M flang/tools/f18/flang-to-external-fc.in
M libc/cmake/modules/CheckCompilerFeatures.cmake
M libc/cmake/modules/LLVMLibCObjectRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/app.h
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/math/index.rst
M libc/include/llvm-libc-macros/float-macros.h
M libc/include/llvm-libc-macros/sys-queue-macros.h
M libc/lib/CMakeLists.txt
M libc/src/__support/CPP/limits.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/riscv/FMA.h
M libc/src/__support/FPUtil/riscv/sqrt.h
M libc/src/sched/linux/CMakeLists.txt
M libc/src/spawn/linux/CMakeLists.txt
M libc/src/sys/CMakeLists.txt
A libc/src/sys/auxv/CMakeLists.txt
A libc/src/sys/auxv/getauxval.h
A libc/src/sys/auxv/linux/CMakeLists.txt
A libc/src/sys/auxv/linux/getauxval.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/startup/linux/do_start.cpp
M libc/test/UnitTest/HermeticTestUtils.cpp
M libc/test/src/__support/FPUtil/fpbits_test.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/auxv/CMakeLists.txt
A libc/test/src/sys/auxv/linux/CMakeLists.txt
A libc/test/src/sys/auxv/linux/getauxval_test.cpp
M libc/utils/MPFRWrapper/CMakeLists.txt
M libclc/CMakeLists.txt
M libcxx/.clang-tidy
M libcxx/CMakeLists.txt
M libcxx/benchmarks/CMakeLists.txt
A libcxx/benchmarks/exception_ptr.bench.cpp
M libcxx/cmake/caches/Generic-cxx20.cmake
M libcxx/cmake/caches/Generic-cxx23.cmake
M libcxx/cmake/caches/Generic-cxx26.cmake
M libcxx/cmake/caches/Generic-hardening-mode-extensive.cmake
M libcxx/cmake/caches/Generic-no-exceptions.cmake
M libcxx/cmake/caches/Generic-no-experimental.cmake
M libcxx/cmake/caches/Generic-no-filesystem.cmake
M libcxx/cmake/caches/Generic-no-localization.cmake
M libcxx/cmake/caches/Generic-no-random_device.cmake
M libcxx/cmake/caches/Generic-no-threads.cmake
M libcxx/cmake/caches/Generic-no-tzdb.cmake
M libcxx/cmake/caches/Generic-no-unicode.cmake
M libcxx/cmake/caches/Generic-no-wide-characters.cmake
M libcxx/docs/BuildingLibcxx.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Hardening.rst
M libcxx/docs/Modules.rst
A libcxx/docs/ReleaseNotes.rst
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/Status/Parallelism.rst
M libcxx/docs/Status/ParallelismProjects.csv
M libcxx/docs/Status/Ranges.rst
M libcxx/docs/Status/SpaceshipPapers.csv
M libcxx/docs/TestingLibcxx.rst
M libcxx/docs/index.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/clamp.h
M libcxx/include/__algorithm/ranges_clamp.h
M libcxx/include/__atomic/is_always_lock_free.h
M libcxx/include/__availability
M libcxx/include/__bit/bit_ceil.h
M libcxx/include/__chrono/ostream.h
M libcxx/include/__config
M libcxx/include/__coroutine/coroutine_handle.h
M libcxx/include/__exception/exception_ptr.h
M libcxx/include/__expected/expected.h
M libcxx/include/__hash_table
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__memory/assume_aligned.h
M libcxx/include/__memory_resource/polymorphic_allocator.h
M libcxx/include/__numeric/gcd_lcm.h
A libcxx/include/__numeric/saturation_arithmetic.h
M libcxx/include/barrier
M libcxx/include/chrono
M libcxx/include/concepts
M libcxx/include/condition_variable
M libcxx/include/experimental/__simd/scalar.h
M libcxx/include/experimental/__simd/simd.h
M libcxx/include/experimental/__simd/simd_mask.h
M libcxx/include/experimental/__simd/vec_ext.h
M libcxx/include/latch
M libcxx/include/libcxx.imp
M libcxx/include/locale
M libcxx/include/module.modulemap.in
M libcxx/include/new
M libcxx/include/numeric
M libcxx/include/regex
M libcxx/include/semaphore
M libcxx/include/sstream
M libcxx/include/string_view
M libcxx/include/typeinfo
M libcxx/include/variant
M libcxx/include/version
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/modules/CMakeLists.txt
R libcxx/modules/CMakeLists.txt.in
A libcxx/modules/modules.json.in
M libcxx/modules/std.compat.cppm.in
M libcxx/modules/std.compat/cstdlib.inc
M libcxx/modules/std.compat/ctime.inc
M libcxx/modules/std.cppm.in
M libcxx/modules/std/ctime.inc
M libcxx/modules/std/numeric.inc
M libcxx/src/CMakeLists.txt
M libcxx/src/filesystem/operations.cpp
A libcxx/src/include/overridable_function.h
M libcxx/src/include/to_chars_floating_point.h
M libcxx/src/memory_resource.cpp
M libcxx/src/mutex.cpp
M libcxx/src/new.cpp
M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
M libcxx/src/support/runtime/exception_pointer_unimplemented.ipp
M libcxx/test/CMakeLists.txt
M libcxx/test/configs/cmake-bridge.cfg.in
M libcxx/test/libcxx/assertions/modes/enabling_assertions_enables_extensive_mode.pass.cpp
M libcxx/test/libcxx/assertions/modes/override_with_extensive_mode.pass.cpp
M libcxx/test/libcxx/assertions/modes/override_with_fast_mode.pass.cpp
A libcxx/test/libcxx/language.support/support.dynamic/assert.nothrow_new_not_overridden_fno_exceptions.pass.cpp
A libcxx/test/libcxx/language.support/support.dynamic/new_dont_return_nullptr.pass.cpp
M libcxx/test/libcxx/module_std.gen.py
M libcxx/test/libcxx/module_std_compat.gen.py
A libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
A libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
A libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
A libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.expected/transform_error.mandates.verify.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
M libcxx/test/libcxx/utilities/expected/expected.void/transform_error.mandates.verify.cpp
A libcxx/test/libcxx/utilities/memory/ptr.align/assume_aligned.const_eval.verify.cpp
A libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/assert.deallocate.pass.cpp
R libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/debug.deallocate.pass.cpp
R libcxx/test/lit.local.cfg
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/pstl.for_each_n.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
A libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp
A libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_load.pass.cpp
M libcxx/test/std/experimental/simd/test_utils.h
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.replace.indirect.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.replace.indirect.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.except.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.indirect.pass.cpp
A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.replace.indirect.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/modules/std.compat.pass.cpp
M libcxx/test/std/modules/std.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/add_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/add_sat.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.assert.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/mul_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/mul_sat.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/sub_sat.compile.pass.cpp
A libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/sub_sat.pass.cpp
M libcxx/test/std/re/re.const/re.matchflag/match_not_eol.pass.cpp
A libcxx/test/std/thread/thread.condition/thread.condition.condvarany/helpers.h
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_token_pred.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_token_pred.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_token_pred.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.local/ostream.pass.cpp
A libcxx/test/std/time/time.clock/time.clock.local/ostream.verify.cpp
R libcxx/test/std/time/time.clock/time.clock.system/ostream.pass.cpp
A libcxx/test/std/time/time.clock/time.clock.system/sys_date.ostream.pass.cpp
A libcxx/test/std/time/time.clock/time.clock.system/sys_time.ostream.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
M libcxx/test/std/utilities/expected/types.h
A libcxx/test/std/utilities/variant/variant.visit.member/robust_against_adl.pass.cpp
A libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
A libcxx/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp
M libcxx/test/support/check_assertion.h
M libcxx/test/support/count_new.h
M libcxx/test/support/test.support/test_check_assertion.pass.cpp
M libcxx/utils/ci/Dockerfile
M libcxx/utils/ci/buildkite-pipeline.yml
M libcxx/utils/ci/run-buildbot
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_libcxx_cppm_in.py
M libcxx/utils/libcxx/header_information.py
M libcxx/utils/libcxx/test/config.py
M libcxx/utils/libcxx/test/features.py
M libcxx/utils/libcxx/test/format.py
M libcxx/utils/libcxx/test/modules.py
M libcxxabi/include/cxxabi.h
M libcxxabi/lib/exceptions.exp
M libcxxabi/src/cxa_exception.cpp
M libcxxabi/src/stdlib_new_delete.cpp
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/InputFiles.cpp
M lld/Common/Args.cpp
M lld/ELF/Arch/ARM.cpp
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/Arch/X86_64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/DriverUtils.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/LTO.cpp
M lld/ELF/LinkerScript.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/ScriptLexer.h
M lld/ELF/ScriptParser.cpp
M lld/ELF/Symbols.h
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Target.cpp
M lld/ELF/Writer.cpp
M lld/MachO/Driver.cpp
M lld/MachO/DriverUtils.cpp
A lld/test/COFF/Inputs/lto-directives.obj
A lld/test/COFF/lto-directives.test
M lld/test/ELF/allow-shlib-undefined.s
M lld/test/ELF/common-archive-lookup.s
M lld/test/ELF/common-page.s
M lld/test/ELF/cref.s
M lld/test/ELF/driver.test
M lld/test/ELF/linkerscript/symbol-ordering-file2.s
M lld/test/ELF/lto/amdgcn-oses.ll
M lld/test/ELF/lto/cache.ll
M lld/test/ELF/lto/thinlto.ll
M lld/test/ELF/x86-64-gotpc-no-relax-err.s
M lld/test/ELF/x86-64-zrel-zrela.s
A lld/test/MachO/link-csu-object.s
A lld/test/wasm/Inputs/start-lib1.s
A lld/test/wasm/Inputs/start-lib2.s
A lld/test/wasm/start-lib.s
M lld/wasm/Driver.cpp
M lld/wasm/InputFiles.h
M lld/wasm/Options.td
M lld/wasm/Symbols.h
M lld/wasm/WriterUtils.cpp
M lldb/include/lldb/Breakpoint/Watchpoint.h
M lldb/include/lldb/Core/Address.h
M lldb/include/lldb/Symbol/Symbol.h
M lldb/include/lldb/Symbol/SymbolContext.h
M lldb/include/lldb/Utility/Broadcaster.h
M lldb/include/lldb/Utility/Stream.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/Breakpoint/BreakpointList.cpp
M lldb/source/Breakpoint/BreakpointLocation.cpp
M lldb/source/Breakpoint/Watchpoint.cpp
M lldb/source/Breakpoint/WatchpointList.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfodProperties.td
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Symbol/Symbol.cpp
M lldb/source/Symbol/SymbolContext.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Utility/Broadcaster.cpp
M lldb/source/Utility/Stream.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjCNSDate.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/TestDataFormatterLibcxxChrono.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/main.cpp
M llvm/cmake/modules/FindFFI.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CoverageMappingFormat.rst
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.rst
M llvm/include/llvm/ADT/SmallVector.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/include/llvm/Bitcode/BitcodeWriterPass.h
M llvm/include/llvm/CodeGen/MachineOperand.h
M llvm/include/llvm/CodeGen/MachinePipeliner.h
M llvm/include/llvm/Debuginfod/Debuginfod.h
M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
M llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h
M llvm/include/llvm/IR/CallingConv.h
M llvm/include/llvm/IR/DebugInfo.h
M llvm/include/llvm/IR/GlobalValue.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/IntrinsicsLoongArch.td
M llvm/include/llvm/IR/VPIntrinsics.def
M llvm/include/llvm/MC/MCObjectWriter.h
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/include/llvm/Support/AMDGPUMetadata.h
M llvm/include/llvm/Support/GenericDomTree.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
M llvm/lib/Analysis/InlineOrder.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/ExpandVectorPredication.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/MachineOperand.cpp
M llvm/lib/CodeGen/MachinePipeliner.cpp
M llvm/lib/CodeGen/PatchableFunction.cpp
M llvm/lib/CodeGen/SelectOptimize.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
M llvm/lib/Debuginfod/Debuginfod.cpp
M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCheckerImpl.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/MC/ELFObjectWriter.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/lib/Support/SmallVector.cpp
M llvm/lib/Target/AArch64/AArch64.h
A llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64CallingConvention.h
M llvm/lib/Target/AArch64/AArch64CallingConvention.td
M llvm/lib/Target/AArch64/AArch64FastISel.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64GlobalsTagging.cpp
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/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
M llvm/lib/Target/AArch64/AArch64MCInstLower.h
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/SMEABIPass.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
M llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
M llvm/lib/Target/LoongArch/LoongArch.td
M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86InstrShiftRotate.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86LowerTileCopy.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/CGProfile.cpp
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-ctpop.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-cttz.mir
A llvm/test/CodeGen/AArch64/aarch64-combine-add-zext.ll
M llvm/test/CodeGen/AArch64/arm64-neon-across.ll
M llvm/test/CodeGen/AArch64/arm64-vadd.ll
M llvm/test/CodeGen/AArch64/arm64ec-dllimport.ll
A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks-local-linkage.ll
A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
A llvm/test/CodeGen/AArch64/arm64ec-exit-thunks.ll
M llvm/test/CodeGen/AArch64/arm64ec-reservedregs.ll
M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
M llvm/test/CodeGen/AArch64/avoid-pre-trunc.ll
M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll
M llvm/test/CodeGen/AArch64/dp1.ll
M llvm/test/CodeGen/AArch64/fcmp.ll
M llvm/test/CodeGen/AArch64/icmp.ll
M llvm/test/CodeGen/AArch64/neon-addlv.ll
M llvm/test/CodeGen/AArch64/nonlazybind.ll
M llvm/test/CodeGen/AArch64/popcount.ll
M llvm/test/CodeGen/AArch64/selectopt.ll
M llvm/test/CodeGen/AArch64/sext.ll
A llvm/test/CodeGen/AArch64/shift.ll
A llvm/test/CodeGen/AArch64/sme-zt0-state.ll
M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvt.ll
M llvm/test/CodeGen/AArch64/stack-protector-target.ll
M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
M llvm/test/CodeGen/AArch64/win-alloca.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/codegen-internal-only-func.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-invalid-syncscope.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-store-infinite-loop.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
M llvm/test/CodeGen/AMDGPU/si-annotate-dbg-info.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-2.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-any.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-not-supported.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-off.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-on.ll
M llvm/test/CodeGen/ARM/stack-guard-elf.ll
A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-dbl.ll
A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-flt.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frecipe.ll
A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frsqrte.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frecipe.ll
A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frsqrte.ll
A llvm/test/CodeGen/PowerPC/sms-regpress.mir
M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
M llvm/test/CodeGen/RISCV/inline-asm-mem-constraint.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
A llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
A llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
M llvm/test/CodeGen/Thumb/stack_guard_remat.ll
M llvm/test/CodeGen/X86/AMX/amx-lower-tile-copy.ll
M llvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
M llvm/test/CodeGen/X86/AMX/amx-tile-intrinsics.ll
A llvm/test/CodeGen/X86/apx/rol.ll
A llvm/test/CodeGen/X86/apx/ror.ll
A llvm/test/CodeGen/X86/apx/sar.ll
A llvm/test/CodeGen/X86/apx/shl.ll
A llvm/test/CodeGen/X86/apx/shld.ll
A llvm/test/CodeGen/X86/apx/shr.ll
A llvm/test/CodeGen/X86/apx/shrd.ll
M llvm/test/CodeGen/X86/cmpccxadd-intrinsics.ll
M llvm/test/CodeGen/X86/combine-concatvectors.ll
M llvm/test/CodeGen/X86/nontemporal-4.ll
A llvm/test/CodeGen/X86/patchable-prologue-tailcall.ll
M llvm/test/CodeGen/X86/patchable-prologue.ll
M llvm/test/CodeGen/X86/pr13577.ll
M llvm/test/CodeGen/X86/ret-mmx.ll
M llvm/test/CodeGen/X86/select-optimize.ll
M llvm/test/CodeGen/X86/widen_shuffle-1.ll
M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_arm.s
A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_multi.s
R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
R llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
A llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
M llvm/test/Instrumentation/cgprofile.ll
A llvm/test/MC/AMDGPU/elf-header-cov.s
M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
M llvm/test/MC/AMDGPU/gfx12_unsupported.s
M llvm/test/MC/AMDGPU/hsa-exp.s
M llvm/test/MC/AMDGPU/hsa-gfx12-v4.s
M llvm/test/MC/AMDGPU/hsa-v4.s
M llvm/test/MC/AMDGPU/hsa-v5-uses-dynamic-stack.s
R llvm/test/MC/AMDGPU/hsa_isa_version_attrs.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt
M llvm/test/MC/Disassembler/X86/apx/cmpccxadd.txt
A llvm/test/MC/Disassembler/X86/apx/rcl.txt
A llvm/test/MC/Disassembler/X86/apx/rcr.txt
A llvm/test/MC/Disassembler/X86/apx/rol.txt
A llvm/test/MC/Disassembler/X86/apx/ror.txt
A llvm/test/MC/Disassembler/X86/apx/sar.txt
A llvm/test/MC/Disassembler/X86/apx/shl.txt
A llvm/test/MC/Disassembler/X86/apx/shld.txt
A llvm/test/MC/Disassembler/X86/apx/shr.txt
A llvm/test/MC/Disassembler/X86/apx/shrd.txt
M llvm/test/MC/X86/apx/cmpccxadd-att.s
M llvm/test/MC/X86/apx/cmpccxadd-intel.s
A llvm/test/MC/X86/apx/rcl-att.s
A llvm/test/MC/X86/apx/rcl-intel.s
A llvm/test/MC/X86/apx/rcr-att.s
A llvm/test/MC/X86/apx/rcr-intel.s
A llvm/test/MC/X86/apx/rol-att.s
A llvm/test/MC/X86/apx/rol-intel.s
A llvm/test/MC/X86/apx/ror-att.s
A llvm/test/MC/X86/apx/ror-intel.s
A llvm/test/MC/X86/apx/sar-att.s
A llvm/test/MC/X86/apx/sar-intel.s
A llvm/test/MC/X86/apx/shl-att.s
A llvm/test/MC/X86/apx/shl-intel.s
A llvm/test/MC/X86/apx/shld-att.s
A llvm/test/MC/X86/apx/shld-intel.s
A llvm/test/MC/X86/apx/shr-att.s
A llvm/test/MC/X86/apx/shr-intel.s
A llvm/test/MC/X86/apx/shrd-att.s
A llvm/test/MC/X86/apx/shrd-intel.s
M llvm/test/TableGen/x86-fold-tables.inc
M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
M llvm/test/Transforms/InstCombine/logical-select.ll
M llvm/test/Transforms/LoopStrengthReduce/X86/lsr-cond-dbg.ll
M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-1.ll
M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-2.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-0.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-1.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-2.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-3.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-4.ll
M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-5.ll
M llvm/test/Transforms/LoopStrengthReduce/optimizemax_debugloc.ll
M llvm/test/Transforms/LoopStrengthReduce/pr12018.ll
M llvm/test/Transforms/LoopStrengthReduce/pr51329.ll
M llvm/test/Transforms/LoopStrengthReduce/pr51656.ll
M llvm/test/Transforms/LoopStrengthReduce/pr52161.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
A llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
A llvm/test/Transforms/LoopVectorize/LoongArch/lit.local.cfg
M llvm/test/Transforms/RewriteStatepointsForGC/base-pointers.ll
M llvm/tools/llc/llc.cpp
M llvm/tools/lli/CMakeLists.txt
R llvm/tools/lli/ExecutionUtils.cpp
R llvm/tools/lli/ExecutionUtils.h
M llvm/tools/lli/lli.cpp
M llvm/tools/llvm-cov/SourceCoverageView.cpp
M llvm/tools/llvm-diff/lib/DifferenceEngine.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.h
M llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
M llvm/tools/opt/opt.cpp
M llvm/unittests/Analysis/UnrollAnalyzerTest.cpp
M llvm/unittests/ExecutionEngine/JITLink/AArch32Tests.cpp
M llvm/unittests/IR/VPIntrinsicTest.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
M llvm/unittests/Target/AArch64/SMEAttributesTest.cpp
M llvm/utils/TableGen/GlobalISel/CodeExpander.cpp
M llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/include/BUILD.gn
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/libcxx/src/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/lli/BUILD.gn
M llvm/utils/mlgo-utils/CMakeLists.txt
M llvm/utils/mlgo-utils/mlgo/corpus/combine_training_corpus.py
M llvm/utils/mlgo-utils/mlgo/corpus/combine_training_corpus_lib.py
M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir.py
M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir_lib.py
M llvm/utils/mlgo-utils/mlgo/corpus/make_corpus.py
M llvm/utils/mlgo-utils/pyproject.toml
A llvm/utils/mlgo-utils/tests/corpus/combine_training_corpus_script.test
M llvm/utils/mlgo-utils/tests/corpus/combine_training_corpus_test.py
A llvm/utils/mlgo-utils/tests/corpus/extract_ir_script.test
M llvm/utils/mlgo-utils/tests/corpus/extract_ir_test.py
A llvm/utils/mlgo-utils/tests/corpus/make_corpus_script.test
M llvm/utils/mlgo-utils/tests/corpus/make_corpus_test.py
M llvm/utils/mlgo-utils/tests/lit.cfg
M llvm/utils/mlgo-utils/tests/lit.local.cfg
M mlir/include/mlir/Analysis/Presburger/Barvinok.h
M mlir/include/mlir/Analysis/Presburger/GeneratingFunction.h
M mlir/include/mlir/Analysis/Presburger/IntegerRelation.h
M mlir/include/mlir/Analysis/Presburger/QuasiPolynomial.h
M mlir/include/mlir/Analysis/Presburger/Utils.h
A mlir/include/mlir/Conversion/ArithToArmSME/ArithToArmSME.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/ArmSME/Utils/Utils.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/IR/PatternMatch.h
M mlir/lib/Analysis/Presburger/Barvinok.cpp
M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
M mlir/lib/Analysis/Presburger/QuasiPolynomial.cpp
M mlir/lib/Analysis/Presburger/Utils.cpp
A mlir/lib/Conversion/ArithToArmSME/ArithToArmSME.cpp
A mlir/lib/Conversion/ArithToArmSME/CMakeLists.txt
M mlir/lib/Conversion/CMakeLists.txt
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Conversion/VectorToArmSME/VectorToArmSME.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/ArmSME/IR/Utils.cpp
M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
A mlir/lib/ExecutionEngine/ArmRunnerUtils.cpp
M mlir/lib/ExecutionEngine/CMakeLists.txt
M mlir/lib/IR/PatternMatch.cpp
M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
M mlir/test/CMakeLists.txt
A mlir/test/Conversion/ArithToArmSME/arith-to-arm-sme.mlir
M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
M mlir/test/Conversion/NVVMToLLVM/invalid.mlir
M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
R mlir/test/Dialect/ArmSME/arith-ops-to-sme.mlir
M mlir/test/Dialect/ArmSME/vector-ops-to-llvm.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-branchop-interface.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-existing-deallocs.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-function-boundaries.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-other.mlir
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-region-branchop-interface.mlir
M mlir/test/Dialect/GPU/bufferization-buffer-deallocation.mlir
M mlir/test/Dialect/OpenACC/canonicalize.mlir
M mlir/test/Dialect/OpenACC/invalid.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/vector-dropleadunitdim-transforms.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/fill-2d.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/use-too-many-tiles.mlir
A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/lit.local.cfg
A mlir/test/Integration/Dialect/Vector/CPU/ArmSME/Emulated/test-setArmSVLBits.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f32.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-outerproduct-f64.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/test-transfer-write-2d.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/tile_fill.mlir
M mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-ops.mlir
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/lit.local.cfg
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/Emulated/test-setArmVLBits.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
A mlir/test/Target/LLVMIR/omptarget-wsloop-collapsed.mlir
M mlir/test/lib/Dialect/Test/TestDialect.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lit.cfg.py
M mlir/test/mlir-cpu-runner/global-constructors.mlir
M mlir/test/python/dialects/nvvm.py
M mlir/unittests/Analysis/Presburger/BarvinokTest.cpp
M mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
M mlir/unittests/Analysis/Presburger/UtilsTest.cpp
M openmp/libomptarget/include/Shared/APITypes.h
M openmp/libomptarget/include/Shared/PluginAPI.h
M openmp/libomptarget/include/Shared/PluginAPI.inc
M openmp/libomptarget/include/Shared/Requirements.h
M openmp/libomptarget/include/device.h
M openmp/libomptarget/include/rtl.h
M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
M openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa_ext_amd.h
M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
M openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
M openmp/libomptarget/src/OpenMP/Mapping.cpp
M openmp/libomptarget/src/PluginManager.cpp
M openmp/libomptarget/src/device.cpp
M openmp/libomptarget/src/omptarget.cpp
M openmp/libomptarget/test/lit.cfg
M openmp/libomptarget/test/lit.site.cfg.in
A openmp/libomptarget/test/mapping/auto_zero_copy.cpp
A openmp/libomptarget/test/offloading/force-usm.cpp
A openmp/libomptarget/test/offloading/fortran/target-parallel-do-collapse.f90
M openmp/libomptarget/test/unified_shared_memory/api.c
M openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
address comments
Created using spr 1.3.4
Compare: https://github.com/llvm/llvm-project/compare/37b3ff263f2b...33e63ef34de4
More information about the All-commits
mailing list