SuccessChanges

Summary

  1. [clangd] NFC, avoid potential ODR violation. (details)
  2. [clangd] Cleanup a remaining Optional<SymbolID> usage, NFC. (details)
  3. [VE][NFC] Clean ISel patterns for LSV and LVS (details)
  4. [compiler-rt] Implement __atomic_is_lock_free (details)
  5. [libc++] Add missing XFAIL to tests that need __atomic_* libcalls (details)
  6. [clangd] go-to-implementation on a base class jumps to all subclasses. (details)
  7. [SLP] limit verifyFunction to debug build (PR48689) (details)
  8. Revert "Revert "Revert "Revert "Revert "[analyzer] NFC: Move path diagnostic consumer implementations to libAnalysis.""""" (details)
  9. [AArch64] Add +pauth archictecture option, allowing the v8.3a pointer authentication extension. (details)
  10. [AArch64] Add +flagm archictecture option, allowing the v8.4a flag modification extension. (details)
  11. [MLIR][NFC] remove unnecessary includes form tablegen command (details)
  12. [lldb][NFC] Refactor setup code for Clang diagnostics (details)
  13. [VP] ISD helper functions [VE] isel for vp_add, vp_and (details)
  14. [gn build] Port 9c4b2225b24 (details)
  15. Revert "[SLP]Need shrink the load vector after reordering." (details)
  16. [OpenCL] Documentation for experimental C++ libs (details)
  17. [WebAssembly] Change label numbers to variables in test (details)
  18. [VE] Support pack_f32p and pack_f32a intrinsic instructions (details)
  19. [MLIR][SPIRV] Add `UsableInSpecConstantOp` trait. (details)
Commit b83b7d08730e2b67d911653f59091b1b311c0213 by hokein.wu
[clangd] NFC, avoid potential ODR violation.
The file was modifiedclang-tools-extra/clangd/index/Merge.cpp
Commit c909512fdb9ed63081b0578410430117811b86e8 by hokein.wu
[clangd] Cleanup a remaining Optional<SymbolID> usage, NFC.
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
Commit 99c84af1a25a072df4f05d3f269f140a6e5ff18a by marukawa
[VE][NFC] Clean ISel patterns for LSV and LVS

Clean ISel patterns for LSV and LVS before upstream more hand-written
ISel patterns.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D94291
The file was modifiedllvm/lib/Target/VE/VEInstrIntrinsicVL.td
Commit 00530dee5d1295dc20ebafdd9a8a79662f41513e by Alexander.Richardson
[compiler-rt] Implement __atomic_is_lock_free

This function is called by the __atomic_is_lock_free() builtin if the value
cannot be resolved to true at compile time. Lack of this function is
causing the non-lockfree atomics tests in libc++ to not be run (see D91911)

This function is also added in D85044, but that review also adds support
for using lock-free atomics in more cases, whereas this is a minimal change
that just adds __atomic_is_lock_free() for the implementation of atomic.c.

Reviewed By: ldionne

Differential Revision: https://reviews.llvm.org/D92302
The file was modifiedcompiler-rt/test/builtins/Unit/atomic_test.c
The file was modifiedcompiler-rt/lib/builtins/atomic.c
Commit 32733c347d7bc77ce2c40b067a3bdaadc4b8aadf by Alexander.Richardson
[libc++] Add missing XFAIL to tests that need __atomic_* libcalls

FreeBSD did not provide the __atomic_* functions as part of the base
system until recently. They were added to libgcc_s in SVN revision r364753
(August 2020), so check for availability of 'non-lockfree-atomics' so that
these tests do not fail unexpectedly on older versions of FreeBSD.

This also removes the #ifndef __APPLE__ from atomic_helpers.h that was used
to work around lack of atomic runtime functions on older Apple platforms
and replaces it with XFAIL: !non-lockfree-atomics.

Reviewed By: #libc, ldionne
Differential Revision: https://reviews.llvm.org/D88818
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_init.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_load.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_is_lock_free.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit.pass.cpp
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.req/atomic_helpers.h
Commit ed3b1f906115a0dcd2542fa294d0382a42eb177d by hokein.wu
[clangd] go-to-implementation on a base class jumps to all subclasses.

Differential Revision: https://reviews.llvm.org/D92749
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.h
Commit 267ff7901c745dc903d55599240464ebc4c0bda3 by spatel
[SLP] limit verifyFunction to debug build (PR48689)

As noted in PR48689, the verifier may have some kind
of exponential behavior that should be addressed
separately. For now, only run it in debug mode to
prevent problems for release+asserts.
That limit is what we had before D80401, and I'm
not sure if there was a reason to change it in that
patch.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 9c4b2225b24de07a728715ce20238803370413ea by pifon
Revert "Revert "Revert "Revert "Revert "[analyzer] NFC: Move path diagnostic consumer implementations to libAnalysis."""""

This reverts commit 6b0ee02747ed22d41e175d15f27025183341e6f8.

Circular dependency again.
The file was removedclang/include/clang/Analysis/PathDiagnosticConsumers.def
The file was modifiedclang/lib/Analysis/CMakeLists.txt
The file was modifiedclang/include/clang/module.modulemap
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/CMakeLists.txt
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
The file was removedclang/lib/Analysis/PlistHTMLPathDiagnosticConsumer.cpp
The file was removedclang/include/clang/Analysis/PathDiagnosticConsumers.h
The file was modifiedclang/include/clang/CrossTU/CrossTranslationUnit.h
The file was removedclang/lib/Analysis/PlistPathDiagnosticConsumer.cpp
The file was removedclang/lib/Analysis/SarifPathDiagnosticConsumer.cpp
The file was addedclang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
The file was removedclang/lib/Analysis/TextPathDiagnosticConsumer.cpp
The file was removedclang/lib/Analysis/HTMLPathDiagnosticConsumer.cpp
The file was addedclang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
The file was removedclang/include/clang/Analysis/CrossTUAnalysisHelper.h
The file was addedclang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
The file was addedclang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
The file was addedclang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
The file was modifiedclang/lib/CrossTU/CrossTranslationUnit.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/Analyses.def
Commit af7cce2fa4d19c3cd09607e1d6ea2e0847cc55b7 by mark.murray
[AArch64] Add +pauth archictecture option, allowing the v8.3a pointer authentication extension.

Differential Revision: https://reviews.llvm.org/D94083
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was modifiedllvm/unittests/Support/TargetParserTest.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64.td
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.h
The file was modifiedllvm/lib/Support/AArch64TargetParser.cpp
The file was modifiedllvm/include/llvm/Support/AArch64TargetParser.def
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/lib/Target/AArch64/AArch64SystemOperands.td
The file was modifiedclang/lib/Basic/Targets/AArch64.cpp
The file was modifiedclang/lib/Basic/Targets/AArch64.h
The file was modifiedllvm/include/llvm/Support/AArch64TargetParser.h
Commit 7d4a8bc417bf75b5e4034674a4255173d0089e68 by mark.murray
[AArch64] Add +flagm archictecture option, allowing the v8.4a flag modification extension.

Differential Revision: https://reviews.llvm.org/D94081
The file was modifiedclang/lib/Basic/Targets/AArch64.cpp
The file was modifiedllvm/lib/Support/AArch64TargetParser.cpp
The file was modifiedllvm/test/MC/AArch64/armv8.4a-flag.s
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/unittests/Support/TargetParserTest.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64.td
The file was modifiedclang/lib/Basic/Targets/AArch64.h
The file was modifiedllvm/include/llvm/Support/AArch64TargetParser.def
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.h
The file was modifiedllvm/include/llvm/Support/AArch64TargetParser.h
Commit 195ffcd890f648187cd110965a419c01d6488f66 by zinenko
[MLIR][NFC] remove unnecessary includes form tablegen command

With [[ https://reviews.llvm.org/D77156 | D77156 ]] includes are not needed here.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D94216
The file was modifiedmlir/cmake/modules/AddMLIR.cmake
Commit b0dc54e08a9b5bee8ba1e874e9c12f4c4859f4a3 by Raphael Isemann
[lldb][NFC] Refactor setup code for Clang diagnostics
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
Commit 611d3c63f32d0d8a7f8e56d425849c610adbd806 by simon.moll
[VP] ISD helper functions [VE] isel for vp_add, vp_and

This implements vp_add, vp_and for the VE target by lowering them to the
VVP_* layer. We also add helper functions for VP SDNodes (isVPSDNode,
getVPMaskIdx, getVPExplicitVectorLengthIdx).

Reviewed By: kaz7

Differential Revision: https://reviews.llvm.org/D93766
The file was modifiedllvm/lib/Target/VE/VVPNodes.def
The file was modifiedllvm/include/llvm/CodeGen/ISDOpcodes.h
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
The file was modifiedllvm/test/CodeGen/VE/Vector/vp_and.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/test/CodeGen/VE/Vector/vp_add.ll
Commit 657db0c6d41a0e09cfb2e1388318e54b27cc6e73 by llvmgnsyncbot
[gn build] Port 9c4b2225b24
The file was modifiedllvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn
Commit bcbdeafa9cb3469a7bf367c17f32d913076a4d55 by pifon
Revert "[SLP]Need shrink the load vector after reordering."

This reverts commit 4284afdf9432f7d756f56b0ab21d69191adefa8d.

This changes computed values in fused_batchnorm_test_cpu.

Not equal to tolerance rtol=1e-06, atol=0.001
Mismatched value: a is different from b.
not close where = (array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
       1, 1]), array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
       1, 1]), array([0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1,
       1, 1]), array([0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3,
       4, 5]))
not close lhs = [-0.6636615  -0.9804948  -1.148275   -0.68193716 -0.8572368  -0.65046215
-0.6993756  -1.2244141  -1.0938729  -0.50369143 -0.51830524 -0.738452
-0.7214286  -0.48115745 -0.9380924  -0.9341769  -0.5916775  -1.2896856
-0.7264182  -0.9746917  -0.783249   -0.7659018  -0.86214024 -0.47784212]
not close rhs = [ 0.44102234  0.12418899 -0.04359123  0.42274666  0.24744703  0.45422167
  0.40530816 -0.11973029  0.01081094  0.6009924   0.5863786   0.3662318
  0.38325527  0.62352633  0.1665914   0.1705069   0.5130063  -0.18500176
  0.37826565  0.12999213  0.3214348   0.338782    0.24254355  0.62684166]
not close dif = [1.1046839 1.1046838 1.1046838 1.1046839 1.1046839 1.1046839 1.1046838
1.1046839 1.1046839 1.1046839 1.1046839 1.1046839 1.1046839 1.1046838
1.1046839 1.1046839 1.1046839 1.1046839 1.1046839 1.1046839 1.1046839
1.1046839 1.1046838 1.1046838]
not close tol = [0.00100044 0.00100012 0.00100004 0.00100042 0.00100025 0.00100045
0.00100041 0.00100012 0.00100001 0.0010006  0.00100059 0.00100037
0.00100038 0.00100062 0.00100017 0.00100017 0.00100051 0.00100019
0.00100038 0.00100013 0.00100032 0.00100034 0.00100024 0.00100063]
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/shrink_after_reorder.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 0ef2b68ff063164a83a37a2a363196d51b76ed8d by anastasia.stulova
[OpenCL] Documentation for experimental C++ libs

Started a new doc section about the OpenCL experimental
features and described ongoing work on C++ libraries
e.g. type traits.

Tags: #clang

Differential Revision: https://reviews.llvm.org/D94188
The file was modifiedclang/docs/OpenCLSupport.rst
Commit d012430eee7d41c9c0e2159bb0fd1c68f50fa065 by aheejin
[WebAssembly] Change label numbers to variables in test

cfg-stackify-eh.ll contains many `CHECK` lines specifying label / catch
comments with numbers. These numbers are subject to change every time
any block/loop/try is added in the middle in existing functions or any
other function is added in the middle of the file, generating a large
number of lines in diffs. This change converts them to variables so they
can be more resistent to future changes.

Reviewed By: dschuff, tlively

Differential Revision: https://reviews.llvm.org/D94037
The file was modifiedllvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
Commit 5ead757f1d89898941f0e10f71f382aaf36d174b by marukawa
[VE] Support pack_f32p and pack_f32a intrinsic instructions

Support pack_f32p and pack_f32a intrinsic instructions and regression tests.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D94296
The file was modifiedllvm/include/llvm/IR/IntrinsicsVE.td
The file was addedllvm/test/CodeGen/VE/VELIntrinsics/pack.ll
The file was modifiedllvm/lib/Target/VE/VEInstrIntrinsicVL.td
Commit 25d882e758cc9af5de12d8a118cb6eecad14d316 by kareem.ergawy
[MLIR][SPIRV] Add `UsableInSpecConstantOp` trait.

Instead of checking explicitly checking for whether an op is usalbe
inside a `SpecConstantOperationOP`, this commit adds a new trait to
filter such ops.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D94288
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
The file was modifiedmlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVArithmeticOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBitOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVLogicalOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVCastOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVOpTraits.h
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVCompositeOps.td