[all-commits] [llvm/llvm-project] baba78: [clang] Fix loss of `dllexport` for exported templ...
Vitaly Buka via All-commits
all-commits at lists.llvm.org
Mon Jun 10 13:56:52 PDT 2024
Branch: refs/heads/users/vitalybuka/spr/main.msan-handle-blendv-intrinsics
Home: https://github.com/llvm/llvm-project
Commit: baba78daf2b3a3ee9bfa21f1f8ff3584aa982ac8
https://github.com/llvm/llvm-project/commit/baba78daf2b3a3ee9bfa21f1f8ff3584aa982ac8
Author: Andrew Ng <andrew.ng at sony.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
A clang/test/CodeGenCXX/windows-instantiate-dllexport-template-specialization.cpp
Log Message:
-----------
[clang] Fix loss of `dllexport` for exported template specialization (#94664)
When dropping DLL attributes, ensure that the most recent declaration is
being checked.
Commit: 77220823daa06c0e177d7571f73d9b69112861cc
https://github.com/llvm/llvm-project/commit/77220823daa06c0e177d7571f73d9b69112861cc
Author: aengelke <engelke at in.tum.de>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/lib/MC/MCObjectStreamer.cpp
Log Message:
-----------
[MC] Maintain MCRelaxAll after reset() (#94945)
RelaxAll was set in the constructor, but cleared after reset().
Commit: 2f9a80b7343606f62b3e907b888a8e9d17c0c551
https://github.com/llvm/llvm-project/commit/2f9a80b7343606f62b3e907b888a8e9d17c0c551
Author: aengelke <engelke at in.tum.de>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCContext.cpp
Log Message:
-----------
[MC][NFC] Make ELFUniquingMap a StringMap (#95006)
This avoid std::map, which is slow, and uses a StringMap. Section name,
group name, linked-to name and unique id are encoded into the key for
fast lookup.
This gives a measurable performance boost (>3%) for applications that
compile many small object files (e.g., functions in JIT compilers).
Commit: 2cddf72042818a03a4d1dfd2b19ae642dc7a2c90
https://github.com/llvm/llvm-project/commit/2cddf72042818a03a4d1dfd2b19ae642dc7a2c90
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/sse41-intrinsics-x86.ll
Log Message:
-----------
[msan][NFC] Make mask in test more interesting (#94874)
Low 4 and high 4 bits of mask have a different purpose.
Irrelevant for the current implementation, but
will be used in the followup patches.
Commit: 66f919272e4eab7ff4f74ea03b2b4f899454f551
https://github.com/llvm/llvm-project/commit/66f919272e4eab7ff4f74ea03b2b4f899454f551
Author: aengelke <engelke at in.tum.de>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCContext.cpp
Log Message:
-----------
Revert "[MC] Make ELFUniquingMap a StringMap" (#95023)
Reverts llvm/llvm-project#95006
Seems like there's some bug where the section name is empty in the `if
(!Section.isSingleStringRef())`. Revert for now to get builds back to
green.
Commit: d63be475e889ba3361799f6907b3c95354684c7d
https://github.com/llvm/llvm-project/commit/d63be475e889ba3361799f6907b3c95354684c7d
Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
M clang-tools-extra/docs/clang-tidy/checks/gen-static-analyzer-docs.py
Log Message:
-----------
[clang-tidy] fix(clang-tools-extra/**.py): fix invalid escape sequences (#94028)
Commit: bc70c29558c6ecb53e61cc8d668768e919e81bde
https://github.com/llvm/llvm-project/commit/bc70c29558c6ecb53e61cc8d668768e919e81bde
Author: Piotr Zegar <me at piotrzegar.pl>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.ArrayDelete.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.Stream.rst
M clang-tools-extra/docs/clang-tidy/checks/gen-static-analyzer-docs.py
M clang-tools-extra/docs/clang-tidy/checks/list.rst
Log Message:
-----------
[clang-tidy][DOC] Update doc for Clang Static Analyzer checks
Fix gen-static-analyzer-docs.py script.
Commit doc for:
- clang-analyzer-cplusplus.ArrayDelete
- clang-analyzer-security.SetgidSetuidOrder
- clang-analyzer-unix.Stream
Commit: 23a33a72c620f7e37778fa26af46e88a0042cd15
https://github.com/llvm/llvm-project/commit/23a33a72c620f7e37778fa26af46e88a0042cd15
Author: Kazu Hirata <kazu at google.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
Log Message:
-----------
[BOLT] Fix a warning
This patch fixes:
bolt/lib/Rewrite/DWARFRewriter.cpp:187:18: error: private field
'Rewriter' is not used [-Werror,-Wunused-private-field]
Note that:
commit 61df854d4c4d5f955693394d57f09b9fcd35be67
Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
Date: Mon Jun 10 10:46:20 2024 -0700
removed the last use of Rewriter.
Commit: 43229977fe0f74bcdfeda20e478065a2072a1846
https://github.com/llvm/llvm-project/commit/43229977fe0f74bcdfeda20e478065a2072a1846
Author: aengelke <engelke at in.tum.de>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCContext.cpp
Log Message:
-----------
[MC] Don't evaluate name of unnamed symbols (#95021)
There's only one way to create unnamed symbols (createTempSymbol).
Previously, the name was evaluated unconditionally, but often
unnecessarily. Avoid this.
Also the parameter names in the header were wrong, fix these.
Commit: a9e5f42e2a4bc94dbd8d5bb027dfab230945eca8
https://github.com/llvm/llvm-project/commit/a9e5f42e2a4bc94dbd8d5bb027dfab230945eca8
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M libc/include/llvm-libc-macros/float16-macros.h
Log Message:
-----------
[libc][math][c23] Temporarily disable float16 on 32-bit Arm (#95027)
See Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/229/builds/27009.
Commit: c7308d405d286674fbcd427da3f7a06f52dd70a2
https://github.com/llvm/llvm-project/commit/c7308d405d286674fbcd427da3f7a06f52dd70a2
Author: David Green <david.green at arm.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/CodeGen/AArch64/sve-lsrchain.ll
Log Message:
-----------
[LSR][AArch64] Optimize chain generation based on legal addressing modes (#94453)
LSR will generate chains of related instructions with a known increment
between them. With SVE, in the case of the test case, this can include
increments like 'vscale * 16 + 8'. The idea of this patch is if we have
a '+8' increment already calculated in the chain, we can generate a
(legal) '+ vscale*16' addressing mode from it, allowing us to use the
'[x16, #1, mul vl]' addressing mode instructions.
In order to do this we keep track of the known 'bases' when generating
chains in GenerateIVChain, checking for each if the accumulated
increment expression from the base neatly folds into a legal addressing
mode. If they do not we fall back to the existing LeftOverExpr, whether
it is legal or not.
This is mostly orthogonal to #88124, dealing with the generation of
chains as opposed to rest of LSR. The existing vscale addressing mode
work has greatly helped compared to the last time I looked at this,
allowing us to check that the addressing modes are indeed legal.
Commit: 65310f34d7edf7924ca4cbe7df836770669f70dc
https://github.com/llvm/llvm-project/commit/65310f34d7edf7924ca4cbe7df836770669f70dc
Author: OverMighty <its.overmighty at gmail.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/CeilTest.h
M libc/test/src/math/FloorTest.h
M libc/test/src/math/RoundEvenTest.h
M libc/test/src/math/RoundTest.h
M libc/test/src/math/TruncTest.h
A libc/test/src/math/ceilf16_test.cpp
A libc/test/src/math/floorf16_test.cpp
A libc/test/src/math/roundevenf16_test.cpp
A libc/test/src/math/roundf16_test.cpp
A libc/test/src/math/truncf16_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
Log Message:
-----------
Reapply "[libc][math][c23] Add MPFR unit tests for {ceil,floor,round,roundeven,trunc}f16 (#94383)" (#94807)
This reverts commit cbe97e959dc67503d7cc44a3810e3124b6d3340e.
Commit: 52050f3ff388773b9345d421d968a7d1ee880531
https://github.com/llvm/llvm-project/commit/52050f3ff388773b9345d421d968a7d1ee880531
Author: Matthias Springer <me at m-sp.org>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M mlir/docs/DialectConversion.md
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
M mlir/lib/Dialect/Linalg/Transforms/Detensorize.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[mlir][Transforms] Dialect Conversion: Simplify block conversion API (#94866)
This commit simplifies and improves documentation for the part of the
`ConversionPatternRewriter` API that deals with signature conversions.
There are now two public functions for signature conversion:
* `applySignatureConversion` converts a single block signature. This
function used to take a `Region *` (but converted only the entry block).
It now takes a `Block *`.
* `convertRegionTypes` converts all block signatures of a region.
`convertNonEntryRegionTypes` is removed because it is not widely used
and can easily be expressed with a call to `applySignatureConversion`
inside a loop. (See `Detensorize.cpp` for an example.)
Note: For consistency, `convertRegionTypes` could be renamed to
`applySignatureConversion` (overload) in the future. (Or
`applySignatureConversion` renamed to `convertBlockTypes`.)
Also clarify when a type converter and/or signature conversion object is
needed and for what purpose.
Internal code refactoring (NFC) of `ConversionPatternRewriterImpl` (the
part that deals with signature conversions). This part of the codebase
was quite convoluted and unintuitive.
>From a functional perspective, this change is NFC. However, the public
API changes, thus not marking as NFC.
Note for LLVM integration: When you see
`applySignatureConversion(region, ...)`, replace with
`applySignatureConversion(region->front(), ...)`. In the unlikely case
that you see `convertNonEntryRegionTypes`, apply the same changes as
this commit did to `Detensorize.cpp`.
---------
Co-authored-by: Markus Böck <markus.boeck02 at gmail.com>
Commit: be067615453bab711fd4996c3c235ca996a306a1
https://github.com/llvm/llvm-project/commit/be067615453bab711fd4996c3c235ca996a306a1
Author: Tom Stellard <tstellar at redhat.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M clang/CMakeLists.txt
M clang/cmake/caches/Release.cmake
M clang/utils/perf-training/CMakeLists.txt
Log Message:
-----------
[clang][cmake] Fixes for PGO builds when invoking ninja twice (#92591)
This fixes two problems with the 2-stage PGO builds. The first problem
was that the stage2-instrumented and stage2 targets would not be built
on the second ninja invocation. For example:
This would work as expected.
$ ninja -v -C build stage2-instrumented-generate-profdata
Edit a file.
$ touch llvm/lib/Support/StringExtras.cpp
This would rebuild stage1 only and not build stage2-instrumented or
regenerate the profile data.
$ ninja -v -C build stage2-instrumented-generate-profdata
The second problem was that in some cases, the profile data would be
regenerated, but not all of the stage2 targets would be rebuilt. One
common scenario where this would happen is:
This would work as expected.
$ ninja -C build stage2-check-all
This would regenerate the profile data, but then only build the
targets that were needed for install, but weren't needed for
check-all. This would cause errors like:
ld.lld: error: Function Import: link error: linking module flags
'ProfileSummary': IDs have conflicting values in ...
This is because the executibles being built for the install target
used the new profile data, but they were linking with libraries that
used the old profile data.
$ ninja -C build stage2-install
With this change we can re-enable PGO for the release builds.
Commit: 4f416989d80ef6a3b5d759a2b1c576c019cbedbe
https://github.com/llvm/llvm-project/commit/4f416989d80ef6a3b5d759a2b1c576c019cbedbe
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Log Message:
-----------
[NFC][msan] Prepare function to extract main logic (#94880)
Commit: 983bf657945e4e400997b127fe4a7b644d63c047
https://github.com/llvm/llvm-project/commit/983bf657945e4e400997b127fe4a7b644d63c047
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Log Message:
-----------
[NFC][msan] Extract `handleSelectLikeInst` (#94881)
`blendv` instructions are very similar to `select`.
We will add support for them in followup patches.
Commit: d3c0ed387c478dc07daac575b2ec1216b8044b56
https://github.com/llvm/llvm-project/commit/d3c0ed387c478dc07daac575b2ec1216b8044b56
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp
M llvm/test/Transforms/Util/libcalls-shrinkwrap-double.ll
M llvm/test/Transforms/Util/libcalls-shrinkwrap-float.ll
M llvm/test/Transforms/Util/libcalls-shrinkwrap-long-double.ll
Log Message:
-----------
[NFCI][metadata][LibCallsShrinkWrap] Use create{Unlikely,Likely}BranchWeights (#89465)
It does not look like 2000 is needed here in particular.
Follow up to #89464
Commit: 1438623eddf002436d2b7f7fc302e502684677cc
https://github.com/llvm/llvm-project/commit/1438623eddf002436d2b7f7fc302e502684677cc
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2024-06-10 (Mon, 10 Jun 2024)
Changed paths:
M bolt/lib/Rewrite/DWARFRewriter.cpp
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/cplusplus.ArrayDelete.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
A clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.Stream.rst
M clang-tools-extra/docs/clang-tidy/checks/gen-static-analyzer-docs.py
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang/CMakeLists.txt
M clang/cmake/caches/Release.cmake
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
A clang/test/CodeGenCXX/windows-instantiate-dllexport-template-specialization.cpp
M clang/utils/perf-training/CMakeLists.txt
M libc/include/llvm-libc-macros/float16-macros.h
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/CeilTest.h
M libc/test/src/math/FloorTest.h
M libc/test/src/math/RoundEvenTest.h
M libc/test/src/math/RoundTest.h
M libc/test/src/math/TruncTest.h
A libc/test/src/math/ceilf16_test.cpp
A libc/test/src/math/floorf16_test.cpp
A libc/test/src/math/roundevenf16_test.cpp
A libc/test/src/math/roundf16_test.cpp
A libc/test/src/math/truncf16_test.cpp
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp
M llvm/test/CodeGen/AArch64/sve-lsrchain.ll
M llvm/test/Transforms/Util/libcalls-shrinkwrap-double.ll
M llvm/test/Transforms/Util/libcalls-shrinkwrap-float.ll
M llvm/test/Transforms/Util/libcalls-shrinkwrap-long-double.ll
M mlir/docs/DialectConversion.md
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
M mlir/lib/Dialect/Linalg/Transforms/Detensorize.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.4
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/c394171bcda4...1438623eddf0
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list