FailedChanges

Changes from Git (git http://labmaster3.local/git/llvm-zorg.git)

Summary

  1. [monorepo_build.py] Add "sudo" and "err_okay" args to the run_ws wrapper too (details)
  2. [monorepo_build.py] Add sccache support (details)
  3. [llvm] Add build bots for ml-driven optimization policies. (details)
  4. build.py: Return commit sha as the branch name if we are in detached HEAD state (details)
Commit 4aa996ae0a8a9e4c1e261932c67ed327b22ef034 by Azharuddin Mohammed
[monorepo_build.py] Add "sudo" and "err_okay" args to the run_ws wrapper too

run_cmd (for which run_ws is a wrapper) already accepts these arguments.
The file was modifiedzorg/jenkins/monorepo_build.py
Commit e4ca265465a5e1d8502fe45b4b57c297e7412ac9 by Azharuddin Mohammed
[monorepo_build.py] Add sccache support
The file was modifiedtest/jenkins/test_monorepo_build.py
The file was modifiedzorg/jenkins/monorepo_build.py
Commit f745b8309563affae8eeea031cf58ad83acd1709 by mtrofin
[llvm] Add build bots for ml-driven optimization policies.

RFC: http://lists.llvm.org/pipermail/llvm-dev/2020-April/140763.html

Reviewers: davidxl, gkistanova

Differential Revision: https://reviews.llvm.org/D81044
The file was modifiedbuildbot/osuosl/master/config/builders.py
The file was modifiedbuildbot/osuosl/master/config/slaves.py
The file was modifiedbuildbot/osuosl/master/config/status.py
Commit 233e18cc425679e363bb63988f1a8007e3419e63 by Azharuddin Mohammed
build.py: Return commit sha as the branch name if we are in detached HEAD state
The file was modifiedzorg/jenkins/monorepo_build.py

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. Revert "Relands "[YAMLVFSWriter][Test][NFC] Add couple tests" vol. 2" (details)
  2. [Analyzer][StreamChecker] Updated initialization of BugType's. (details)
  3. Rename arrow -> arrowToken for unified naming (details)
  4. [libc++] Move away from the standalone build for Apple libc++ and libc++abi (details)
  5. [clang-format] Update GoogleStyle for C# code to match Google's internal C# style guide (details)
  6. DAG: Change computeKnownBitsForFrameIndex to be usable by GISel (details)
  7. [libc++] Merge the Apple install-libcxx and libcxxabi scripts (details)
  8. Use libClangTesting in the unittest for AST matchers (details)
  9. [llvm-dwarfdump] Add a table header for -debug-line -verbose output (details)
  10. [libc++] Disable LLVM benchmarks in the Apple build (details)
  11. [gn build] Port b5fc1deb5ba1f3cd432ecb8b86c2536470463163 (details)
  12. [OPENMP]Fix PR46146: Do not consider globalized variables as NRVO candidates. (details)
  13. [Doc] update ReleaseNotes with new warning note. (details)
  14. [clang-tidy][modernize-loop-convert] Make loop var type human readable (details)
  15. [clang-tidy] ignore builtin varargs from pro-type-vararg-check (details)
  16. [SVE] Eliminate calls to default-false VectorType::get() from SystemZ (details)
  17. [LSR][SCEVExpander] Avoid blind cast 'Factor' to SCEVConstant in FactorOutConstant. (details)
  18. [TRE] Allow accumulator elimination when base case returns non-constant (details)
  19. [lldb] Fix SLEB128 decoding (details)
  20. Make regcoal_remat_empty_subrange.ll test require asserts build. (details)
  21. Disable this test for Windows. (details)
  22. [AArch64][GlobalISel] Move GlobalISel source files to a dedicated subdir. (details)
  23. [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect (details)
  24. [NFC] Temporarily disable check for 'uglygep' while investigating some buildbot failure. (details)
  25. [gn build] Port 49a4f3f7d88 (details)
  26. [gn build] Port 6756a2c9533 (details)
  27. [gn build] Port 69fa84a6e95 (details)
  28. [gn build] Port ba2a01645b5 (details)
  29. [gn build] Port c973ad1878f (details)
  30. [gn build] Port e53f5580578 (details)
  31. [libc++] Avoid warning for large types with std::atomic in the test suite (details)
  32. Propose naming principle for NodeRole and apply it (details)
  33. [docs] Fix self-contradictory description of llvm_unreachable (details)
  34. [InstCombine] move vector select ahead of select-shuffle (details)
  35. [PGO] Enable the working set size scaling under the partial sample PGO. (details)
  36. [flang] avoid GCC < 8 compiler failure after D80794 (details)
  37. AST Matchers test: use arrays instead of vectors (details)
  38. [SemaOverload] Use iterator_range to iterate over VectorTypes (NFC). (details)
  39. [mlir] [VectorOps] Add missing comments to CreateMaskOp lowering (details)
  40. [flang] Add the conversions for types. (details)
  41. [NFC] Move test vscale-factor-out-constant.ll to AArch64 sub-directory. (details)
  42. [flang] Fixed crash on forward referenced `len` parameter (details)
  43. [WebAssembly] Lower llvm.debugtrap properly (details)
  44. [OPENMP50]Codegen for inscan reductions in worksharing directives. (details)
  45. AMDGPU/GlobalISel: Fix trying to use wave32 for gfx9 test (details)
  46. AMDGPU/GlobalISel: Fix making LDS FP atomics legal on SI/CI (details)
  47. AMDGPU: Fix using unencodable instructions in tests (details)
  48. [CUDA][HIP] Fix implicit HD function resolution (details)
  49. [OpenMP] Improve D2D memcpy to use more efficient driver API (details)
  50. [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime (details)
  51. [InstCombine] avoid crashing on select-shuffle detection (details)
  52. AMDGPU: Set mayRaiseFPException (details)
  53. AMDGPU: Add test for fdiv nofpexcept preservation (details)
  54. [mlir] Add support for bf16 to StandardToLLVM conversion (details)
  55. AMDGPU: Select strict_fadd (details)
  56. AMDGPU: Select strict_fma (details)
  57. AMDGPU: Select strict_fmul (details)
  58. AMDGPU: Fix overriding global FP atomic feature predicates (details)
  59. [Reassociate] Teach ConvertShiftToMul to preserve nsw flag if the shift amount is not bitwidth - 1. (details)
  60. Fix undefined behaviour when trying to deref nullptr. (details)
  61. [Docs] Add the entry for `Advanced builds` in UserGuide.rst (details)
  62. [docs] HowToUpdateDebugInfo: Minor cleanups (details)
  63. Make linter happy (details)
  64. Revert "[Fuchsia] Rely on linker switch rather than dead code ref for profile runtime" (details)
  65. [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime (details)
  66. [Statepoint] Switch RS4GC to using gc-live bundle form (details)
  67. [Analyzer][NoUncountedMembersChecker] Fix crash for C structs (details)
  68. [mlir][Linalg] Add a hoistViewAllocOps helper function (details)
  69. [WebAssembly] Fix a testcase to be independent of the sysroot default (details)
  70. [docs] Referenced llvm workflow in HowToAddABuilder (details)
  71. [mlir] Refactor BoolAttr to be a special case of IntegerAttr (details)
  72. [LiveDebugValues] Cache LexicalScopes::getMachineBasicBlocks, NFCI (details)
  73. [Statepoint] Migrate a few tests to gc-live bundle format and fix assert (details)
  74. Set the captures on a CXXRecordDecl representing a lambda closure type (details)
  75. PR46209: properly determine whether a copy assignment operator is (details)
  76. [Driver] Migrate some -f/-fno options to use OptInFFlag and OptOutFFlag (details)
  77. [AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals (details)
  78. [StackSafety,NFC] Ignore callee declarations (details)
  79. [DWARFYAML][debug_aranges] Replace InitialLength with Format and Length. (details)
Commit 3dad3907198b920f5531cedec154e79a72beeec4 by russell.gallop
Revert "Relands "[YAMLVFSWriter][Test][NFC] Add couple tests" vol. 2"

This reverts commit 30949926f98576fbff8d5ad0390be5124ffacd7e.

This was failing on bot here:
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/32749
The file was modifiedllvm/unittests/Support/VirtualFileSystemTest.cpp
Commit 0bfd70bdad7e4ac22d96503fa78a5dd55d4b430e by 1.int32
[Analyzer][StreamChecker] Updated initialization of BugType's.

Summary:
BugType objects are initialized in-class instead of by lazy initialization.
FuchsiaHandleChecker does this already.

Reviewers: Szelethus, baloghadamsoftware, martong

Reviewed By: Szelethus

Subscribers: rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D80725
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
Commit 62305f6db4ed642c6b2b005dcb7951eb38342dca by gribozavr
Rename arrow -> arrowToken for unified naming

Reviewers: gribozavr2

Reviewed By: gribozavr2

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D81155
The file was modifiedclang/include/clang/Tooling/Syntax/Nodes.h
The file was modifiedclang/lib/Tooling/Syntax/Nodes.cpp
Commit 39a116ee07693a0f569ddba77dff540ce542f69e by Louis Dionne
[libc++] Move away from the standalone build for Apple libc++ and libc++abi
The file was modifiedlibcxx/utils/ci/apple-install-libcxx.sh
The file was modifiedlibcxx/utils/ci/apple-install-libcxxabi.sh
Commit 9520bf146dd3baae8608755d7de0855db4664c77 by jbcoe
[clang-format] Update GoogleStyle for C# code to match Google's internal C# style guide

Summary: Google's C# style guide is at https://google.github.io/styleguide/csharp-style.html

Reviewers: krasimir, MyDeveloperDay, sammccall

Reviewed By: MyDeveloperDay

Subscribers: cfe-commits, klimek

Tags: #clang-format, #clang

Differential Revision: https://reviews.llvm.org/D79715
The file was modifiedclang/lib/Format/Format.cpp
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
Commit af867b7850a2078d73eab1c983db21e7fef0665a by Matthew.Arsenault
DAG: Change computeKnownBitsForFrameIndex to be usable by GISel

This wasn't getting much value from the DAG or depth arguments, since
it's only called on the frame index root nodes. FrameIndexes can also
only return a scalar value, so it also didn't need DemandedElts.
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit b68bf11efc46b0a81b22089d6bd78ee9d30a1d22 by Louis Dionne
[libc++] Merge the Apple install-libcxx and libcxxabi scripts

Also, refactor the now-merged script to remove code duplication in the
creation of universal dylibs.
The file was modifiedlibcxx/utils/ci/apple-install-libcxx.sh
The file was modifiedlibcxx/utils/ci/macos-trunk.sh
The file was removedlibcxx/utils/ci/apple-install-libcxxabi.sh
Commit b5fc1deb5ba1f3cd432ecb8b86c2536470463163 by gribozavr
Use libClangTesting in the unittest for AST matchers

Summary:
The unittest for AST matchers has its own way to specify language
standards. I unified it with the shared infrastructure from
libClangTesting.

Reviewers: jdoerfert, hlopko

Reviewed By: hlopko

Subscribers: mgorny, sstefan1, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D81150
The file was modifiedclang/unittests/ASTMatchers/Dynamic/CMakeLists.txt
The file was modifiedclang/include/clang/Testing/CommandLineArgs.h
The file was modifiedclang/lib/Testing/CommandLineArgs.cpp
The file was modifiedclang/unittests/ASTMatchers/CMakeLists.txt
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTest.h
The file was modifiedclang/unittests/Sema/CMakeLists.txt
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersInternalTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
Commit 9be3567df20a9f2819d29d8e32f4eee73a4408fd by maskray
[llvm-dwarfdump] Add a table header for -debug-line -verbose output

Like non-verbose output, so that it is easy to recognize the `Line,Column,File,ISA,Discriminator` column values.

Reviewed By: JDevlieghere, jhenderson

Differential Revision: https://reviews.llvm.org/D80874
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/debug_line_invalid.test
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/verbose.test
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
Commit 68e4e8a8d0db031840ff0495cdde1b6db63f49ef by Louis Dionne
[libc++] Disable LLVM benchmarks in the Apple build
The file was modifiedlibcxx/utils/ci/apple-install-libcxx.sh
Commit 68dd32dd43a21ecc898a0cad511fb0f18383e25d by maskray
[gn build] Port b5fc1deb5ba1f3cd432ecb8b86c2536470463163
The file was modifiedllvm/utils/gn/secondary/clang/unittests/ASTMatchers/Dynamic/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang/unittests/Sema/BUILD.gn
Commit 9ca5a6d3b523688be8b4c2315482297fa943c777 by a.bataev
[OPENMP]Fix PR46146: Do not consider globalized variables as NRVO candidates.

Summary:
If the variables must be globalized in OpenMP mode (local automatic
variable, GPU compilation mode, the variable may escape its declaration
context by the reference or by the pointer), it should not be considered
as the NRVO candidate. Otherwise, incorrect the return value of the
function might not be updated.

Reviewers: jdoerfert

Subscribers: yaxunl, guansong, sstefan1, cfe-commits, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D80936
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was addedclang/test/OpenMP/nvptx_NRVO_variable.cpp
Commit e82e388a493345d8287175f884b34c3f38f71057 by noreply
[Doc] update ReleaseNotes with new warning note.
The file was modifiedclang/docs/ReleaseNotes.rst
Commit 6271b96bef479882cf43397941a4c95aa9f47403 by Zinovy Nis
[clang-tidy][modernize-loop-convert] Make loop var type human readable

Differential Revision: https://reviews.llvm.org/D80536
The file was modifiedclang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/Inputs/modernize-loop-convert/structures.h
Commit e21c3f223a3537df0d9d02fce5038b3d7b98ab52 by n.james93
[clang-tidy] ignore builtin varargs from pro-type-vararg-check

Disables the check from warning on some built in vararg functions, Address [[ https://bugs.llvm.org/show_bug.cgi?id=45860 | Clang-tidy should not consider __builtin_constant_p a variadic function. ]]

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D80887
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-pro-type-vararg.cpp
Commit c2625f330f48f42b44727f4fdf13a688c9fecc8f by ctetreau
[SVE] Eliminate calls to default-false VectorType::get() from SystemZ

Reviewers: efriedma, jnspaulsson, kmclaughlin, sdesmalen, samparker, uweigand

Reviewed By: uweigand

Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80329
The file was modifiedllvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
Commit bd43f78c76632a5c19745e5db2d02c2806c66bfe by huihuiz
[LSR][SCEVExpander] Avoid blind cast 'Factor' to SCEVConstant in FactorOutConstant.

Summary:
In SCEVExpander FactorOutConstant(), when GEP indexing into/over scalable vector,
it is legal for the 'Factor' in a MulExpr to be the size of a scalable vector
instead of a compile-time constant.

Current upstream crash with the test attached.

Reviewers: efriedma, sdesmalen, sanjoy.google, mkazantsev

Reviewed By: efriedma

Subscribers: hiraditya, javed.absar, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80973
The file was addedllvm/test/Transforms/LoopStrengthReduce/vscale-factor-out-constant.ll
The file was modifiedllvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
Commit 7381fcdf6200b7e91d951ff34d82aac8010d0a66 by efriedma
[TRE] Allow accumulator elimination when base case returns non-constant

Remove the requirement, that when performing accumulator elimination,
all other cases must return the same dynamic constant. We can do this by
initializing the accumulator with the identity value of the accumulation
operation, and inserting an additional operation before any return.

Differential Revision: https://reviews.llvm.org/D80844
The file was modifiedllvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
The file was modifiedllvm/test/Transforms/TailCallElim/accum_recursion.ll
Commit 476f520a0bd29d74f559ea1151ac8d0b428d9150 by jan.kratochvil
[lldb] Fix SLEB128 decoding

Bug 46181 shows SLEB128 0xED9A924C00011151 decoded as 0xffffffff80011151.
        LLDB show a wrong value for function argument
        https://bugs.llvm.org/show_bug.cgi?id=46181

Differential Revision: https://reviews.llvm.org/D81119
The file was modifiedlldb/source/Utility/DataExtractor.cpp
The file was addedlldb/test/Shell/SymbolFile/DWARF/DW_TAG_variable-DW_AT_const_value.s
The file was modifiedlldb/unittests/Utility/DataExtractorTest.cpp
Commit fcc199d6967b93ed5b8c5f369a31a6817a02c4af by hans
Make regcoal_remat_empty_subrange.ll test require asserts build.

The -stress-sched flag is only available when asserts are enabled.
The file was modifiedllvm/test/CodeGen/SystemZ/regcoal_remat_empty_subrange.ll
Commit a976a7fcae44ed5ca9e4f13735a4f91378169282 by jingham
Disable this test for Windows.

The printf expression crashes with the message:

Attempted to dereference an invalid pointer

Someone who knows more about Windows should suggest how to fix this.
The file was modifiedlldb/test/API/functionalities/thread/state_after_expression/TestStateAfterExpression.py
Commit e53f558057846760c77f5f2b9967104516a207d7 by Amara Emerson
[AArch64][GlobalISel] Move GlobalISel source files to a dedicated subdir.

Differential Revision: https://reviews.llvm.org/D81116
The file was addedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was addedllvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
The file was addedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was removedllvm/lib/Target/AArch64/AArch64CallLowering.h
The file was addedllvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
The file was addedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.cpp
The file was addedllvm/lib/Target/AArch64/GISel/AArch64CallLowering.h
The file was removedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
The file was removedllvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp
The file was removedllvm/lib/Target/AArch64/AArch64CallLowering.cpp
The file was addedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.h
The file was removedllvm/lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp
The file was removedllvm/lib/Target/AArch64/AArch64LegalizerInfo.h
The file was removedllvm/lib/Target/AArch64/AArch64PostLegalizerCombiner.cpp
Commit 661235e1267c389a7d56023da7fcb036468ecfda by thomasraoux
[mlir][gpu] Add subgroup Id/Size/Num to GPU dialect

Add SubgroupId, SubgroupSize and NumSubgroups to GPU dialect ops and add the
lowering of those ops to SPIRV.

Differential Revision: https://reviews.llvm.org/D81042
The file was modifiedmlir/include/mlir/Dialect/GPU/GPUOps.td
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVLowering.cpp
The file was modifiedmlir/test/Conversion/GPUToSPIRV/builtins.mlir
The file was modifiedmlir/test/Dialect/GPU/ops.mlir
The file was modifiedmlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRV.cpp
Commit f7f1abdb8893af4a606ca1a8f5347a426e9c7f9e by huihuiz
[NFC] Temporarily disable check for 'uglygep' while investigating some buildbot failure.

The purpose of vscale-factor-out-constant.ll is to check we are crashing
with blind cast 'Factor' in a MulExpr to SCEVConstant.
The file was modifiedllvm/test/Transforms/LoopStrengthReduce/vscale-factor-out-constant.ll
Commit 9034dc9c59d550c2d0dd06129dc5592fecea0eae by llvmgnsyncbot
[gn build] Port 49a4f3f7d88
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 48a50fcc9a7186c1d69fb03cc63bd08b716ffa4c by llvmgnsyncbot
[gn build] Port 6756a2c9533
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 3a4bf99f0b43db19cda642a3c587b543b044edc7 by llvmgnsyncbot
[gn build] Port 69fa84a6e95
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 60c2fee426d8a49bb9483992898226a6f999dbf5 by llvmgnsyncbot
[gn build] Port ba2a01645b5
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 5c55033dcec47b0b6176140b209af3e64dc10ec3 by llvmgnsyncbot
[gn build] Port c973ad1878f
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 8b5ee3b9b6a6867d70bb537f74b2063bbfa2e699 by llvmgnsyncbot
[gn build] Port e53f5580578
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit cc78f1e0feee7505f9c1ef6b2c4c307267466e4a by Louis Dionne
[libc++] Avoid warning for large types with std::atomic in the test suite

It is legitimate for the test suite to use types that are slow to use
with std::atomic, since we need coverage for those too. If we don't
disable the warning, it is promoted to an error, which prevents us
from testing such types.
The file was modifiedlibcxx/utils/libcxx/test/config.py
Commit 42f6fec3878d708f2791ab0be3a060b07dac9d76 by gribozavr
Propose naming principle for NodeRole and apply it

Reviewers: gribozavr2

Reviewed By: gribozavr2

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D81157
The file was modifiedclang/lib/Tooling/Syntax/BuildTree.cpp
The file was modifiedclang/include/clang/Tooling/Syntax/Nodes.h
The file was modifiedclang/lib/Tooling/Syntax/Nodes.cpp
Commit 5f5d972d83ee80e9c319b61ee6a4b4704f4557dc by Jan Korous
[docs] Fix self-contradictory description of llvm_unreachable

Just two paragraphs above it says:
"If the compiler does not support this [skipping code generation for a particular branch], it will fall back
to the "abort" implementation."

And that actually correctly describes llvm_unreachable implementation.

Differential Revision: https://reviews.llvm.org/D81130
The file was modifiedllvm/include/llvm/Support/ErrorHandling.h
The file was modifiedllvm/docs/CodingStandards.rst
Commit 8a96c1f627fe790a9c29483730447ff5b739c131 by spatel
[InstCombine] move vector select ahead of select-shuffle

select Cond, (shuf_sel X, Y), X --> shuf_sel X, (select Cond, Y, X)

A select of a select-shuffle ("blend" in x86 lingo) can be reversed
so that the select is done first.
This is a more limited version of what I was trying in D80658,
but it enables existing demanded bits transforms to catch some of the
motivating cases. The tricky bit in that seems to be that by moving
the shuffle later, we can always guarantee that poison is correctly
inhibited by the shuffle mask in the final value.

Alive2 checks for the basic tests:
http://volta.cs.utah.edu:8080/z/Qqd3RK
http://volta.cs.utah.edu:8080/z/S4wchM
http://volta.cs.utah.edu:8080/z/wf9zPL
http://volta.cs.utah.edu:8080/z/wJeEGk

Differential Revision: https://reviews.llvm.org/D81013
The file was modifiedllvm/test/Transforms/InstCombine/vec_demanded_elts.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-select.ll
Commit e52a38db075e4b399227f4ad8f35ce004ad6b981 by yamauchi
[PGO] Enable the working set size scaling under the partial sample PGO.

Summary: Following up D79831.

Reviewers: davidxl

Subscribers: eraman, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80939
The file was modifiedllvm/lib/Analysis/ProfileSummaryInfo.cpp
Commit 3d9bb031d13c884122a5da456659e47dd52ec1f7 by clementval
[flang] avoid GCC < 8 compiler failure after D80794

Summary:
Patch D80794 remove the custom flags for release build for flang.
This leads to build failure with GCC < 8. This patch add upperbound check
in order to avoid the -Werror=array-bounds to trigger a build failure.

```
/home/4vn/versioning/llvm-project/flang/lib/Decimal/big-radix-floating-point.h:183:29: error: array subscript is above array bounds [-Werror=array-bounds]
           digit_[j] = digit_[j + remove];
                       ~~~~~~^
/home/4vn/versioning/llvm-project/flang/lib/Decimal/big-radix-floating-point.h:183:29: error: array subscript is above array bounds [-Werror=array-bounds]
           digit_[j] = digit_[j + remove];
                       ~~~~~~^
/home/4vn/versioning/llvm-project/flang/lib/Decimal/big-radix-floating-point.h:183:29: error: array subscript is above array bounds [-Werror=array-bounds]
           digit_[j] = digit_[j + remove];
                       ~~~~~~^
/home/4vn/versioning/llvm-project/flang/lib/Decimal/big-radix-floating-point.h:183:29: error: array subscript is above array bounds [-Werror=array-bounds]
           digit_[j] = digit_[j + remove];
                       ~~~~~~^
/home/4vn/versioning/llvm-project/flang/lib/Decimal/big-radix-floating-point.h:183:29: error: array subscript is above array bounds [-Werror=array-bounds]
           digit_[j] = digit_[j + remove];
```

```
/home/4vn/versioning/llvm-project/flang/include/flang/Evaluate/integer.h:809:28: error: array subscript is above array bounds [-Werror=array-bounds]
               xy += product[to];
                     ~~~~~~~^
/home/4vn/versioning/llvm-project/flang/include/flang/Evaluate/integer.h:810:22: error: array subscript is above array bounds [-Werror=array-bounds]
               product[to] = xy & partMask;
               ~~~~~~~^
/home/4vn/versioning/llvm-project/flang/include/flang/Evaluate/integer.h:809:28: error: array subscript is above array bounds [-Werror=array-bounds]
               xy += product[to];
                     ~~~~~~~^
```

Reviewers: DavidTruby, sscalpone, jdoerfert

Reviewed By: DavidTruby

Subscribers: llvm-commits

Tags: #llvm, #flang

Differential Revision: https://reviews.llvm.org/D81179
The file was modifiedflang/lib/Decimal/big-radix-floating-point.h
The file was modifiedflang/include/flang/Evaluate/integer.h
Commit a180d5409f218d933bec99bc28f7a9970fb293d4 by gribozavr
AST Matchers test: use arrays instead of vectors

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D81180
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTest.h
Commit 714e84be4615d6e1195f2798c0c3c8c54017dd5f by flo
[SemaOverload] Use iterator_range to iterate over VectorTypes (NFC).

We can simplify the code a bit by using iterator_range instead of
plain iterators. Matrix type support here (added in 6f6e91d19337)
already uses an iterator_range.

Reviewers: rjmccall, arphaman, jfb, Bigcheese

Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D81138
The file was modifiedclang/lib/Sema/SemaOverload.cpp
Commit c19fae507e311723b40a0cafa17d4e48b1664fb9 by ajcbik
[mlir] [VectorOps] Add missing comments to CreateMaskOp lowering

Summary: Add missing comment to CreateMask. Fixed typo in ConstantMask comment.

Reviewers: nicolasvasilache, rriddle, reidtatge, ftynse

Reviewed By: ftynse

Subscribers: mehdi_amini, rriddle, jpienaar, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, stephenneuendorffer, Joonsoo, grosul1, frgossen, Kayjukh, jurahul

Tags: #mlir

Differential Revision: https://reviews.llvm.org/D81125
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
Commit baa12ddb6fa6840c1125f0aa11cd0e05fe82385d by eschweitz
[flang] Add the conversions for types.

Part of lowering is to convert the front-end types to their FIR dialect representations.  These conversions are done by here in the ConvertType module.

proactively update the code to conform better with LLVM coding conventions

Differential Revision: https://reviews.llvm.org/D81034
The file was addedflang/include/flang/Lower/ConvertType.h
The file was modifiedflang/lib/Lower/CMakeLists.txt
The file was addedflang/lib/Lower/ConvertType.cpp
Commit 42048ff97230dcf64a488a1eb5bbbf2c785b47f8 by huihuiz
[NFC] Move test vscale-factor-out-constant.ll to AArch64 sub-directory.

Vscale scalable vector is specific to AArch64 target.

Bring back 'uglygep' check.
The file was removedllvm/test/Transforms/LoopStrengthReduce/vscale-factor-out-constant.ll
The file was addedllvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-factor-out-constant.ll
Commit 1746c8ed2660c83895c79de94453f44f8e729a94 by psteinfeld
[flang] Fixed crash on forward referenced `len` parameter

Summary:
Using a forward reference to define a `len` parameter causes a crash.
The underlying cause was that a previously declared type had an
erroneous expression for its `LEN` param value.  When this expression
was referenced to evaluate a subsequent expression, bad things happened.
I fixed this by putting in code to detect this case.

Reviewers: tskeith, klausler, DavidTruby

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80593
The file was modifiedflang/lib/Evaluate/variable.cpp
The file was modifiedflang/test/Semantics/resolve91.f90
Commit a07c08f74fafcbf196cda4b20f0761538fca3dbe by tlively
[WebAssembly] Lower llvm.debugtrap properly

Summary:
Unlike normal traps, debug traps are allowed to return and can have
additional instructions in the same basic block. Without explicit
backend support for debug traps, they are lowered in ISel as normal
traps. Since normal traps are lowered in the WebAssembly backend to
the UNREACHABLE instruction, which is a terminator, using debug traps
could lead to invalid MBBs when there are additional instructions
after the trap. This patch fixes the issue by lowering debug traps to
a new version of the UNREACHABLE instruction, DEBUG_UNREACHABLE, that
is not a terminator.

An alternative approach would have been to make UNREACHABLE not a
terminator, but that breaks a large number of tests. In particular, it
would require removing the traps inserted after noreturn calls to
@llvm.wasm.throw because otherwise the terminator throw would be
followed by a non-terminator UNREACHABLE and we would be back to
having invalid MBBs. Overall the approach in this patch seems simpler.

Reviewers: aheejin, dschuff

Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81055
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td
The file was addedllvm/test/CodeGen/WebAssembly/debugtrap.ll
Commit bd1c03d7b7c8bdd80b534cf2fa956c36a2f8249f by a.bataev
[OPENMP50]Codegen for inscan reductions in worksharing directives.

Summary:
Implemented codegen for reduction clauses with inscan modifiers in
worksharing constructs.

Emits the code for the directive with inscan reductions.
The code is the following:
```
size num_iters = <num_iters>;
<type> buffer[num_iters];
for (i: 0..<num_iters>) {
  <input phase>;
  buffer[i] = red;
}
for (int k = 0; k != ceil(log2(num_iters)); ++k)
for (size cnt = last_iter; cnt >= pow(2, k); --k)
  buffer[i] op= buffer[i-pow(2,k)];
for (0..<num_iters>) {
  red = InclusiveScan ? buffer[i] : buffer[i-1];
  <scan phase>;
}
```

Reviewers: jdoerfert

Subscribers: yaxunl, guansong, arphaman, cfe-commits, caomhin

Tags: #clang

Differential Revision: https://reviews.llvm.org/D79948
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was addedclang/test/OpenMP/for_scan_codegen.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/test/OpenMP/scan_messages.cpp
Commit 16acc12e1d6b549755674b63fa9d8cbfe217d316 by Matthew.Arsenault
AMDGPU/GlobalISel: Fix trying to use wave32 for gfx9 test
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ptr-add.mir
Commit fe0d5121fa97cd0bbf6d310a2536cc36b435cf5b by Matthew.Arsenault
AMDGPU/GlobalISel: Fix making LDS FP atomics legal on SI/CI
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-atomicrmw-fadd-local.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-atomicrmw-fadd.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit 54a8a8d5095fad1993ac3afaf04eb23f3ae06dcb by Matthew.Arsenault
AMDGPU: Fix using unencodable instructions in tests

There are a number of MIR tests using instructions on subtargets where
they don't really exist. These are some of the easy cases that don't
require splitting up test functions.
The file was modifiedllvm/test/CodeGen/AMDGPU/smrd-fold-offset.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/scalar-store-cache-flush.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/wqm.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/i1_copy_phi_with_phi_incoming_value.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/waitcnt-loop-single-basic-block.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/waitcnt-preexisting.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/buffer-intrinsics-mmo-offsets.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/s_add_co_pseudo_lowering.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/shrink-carry.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/memory_clause.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/remove-short-exec-branches-gpr-idx-mode.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/fold-sgpr-multi-imm.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/vmem-to-salu-hazard.mir
Commit 263390d4f5f23967a31af09eb6e0c12e633d6104 by Yaxun.Liu
[CUDA][HIP] Fix implicit HD function resolution

recommit e03394c6a6ff with fix

When implicit HD function calls a function in device compilation,
if one candidate is an implicit HD function, current resolution rule is:

D wins over HD and H
HD and H are equal

this caused regression when there is an otherwise worse D candidate

This patch changes that to

D, HD and H are all equal

The rationale is that we already know for host compilation there is already
a valid candidate in HD and H candidates that will not cause error. Allowing
HD and H gives us a fall back candidate that will not cause error. If D wins,
that means D has to be a better match otherwise, therefore D should also
be a valid candidate that will not cause error. In this way, we can guarantee
no regression.

Differential Revision: https://reviews.llvm.org/D80450
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/lib/Sema/SemaCUDA.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/test/SemaCUDA/function-overload.cu
Commit a014fbbc219fc8e1dbce382fd6f9280c3b720219 by tianshilei1992
[OpenMP] Improve D2D memcpy to use more efficient driver API

Summary:
In current implementation, D2D memcpy is first to copy data back to host and then
copy from host to device. This is very efficient if the device supports D2D
memcpy, like CUDA.

In this patch, D2D memcpy will first try to use native supported driver API. If
it fails, fall back to original way. It is worth noting that D2D memcpy in this
scenerio contains two ideas:
- Same devices: this is the D2D memcpy in the CUDA context.
- Different devices: this is the PeerToPeer memcpy in the CUDA context.
My implementation merges this two parts. It chooses the best API according to
the source device and destination device.

Reviewers: jdoerfert, AndreyChurbanov, grokos

Reviewed By: jdoerfert

Subscribers: yaxunl, guansong, sstefan1, openmp-commits

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D80649
The file was modifiedopenmp/libomptarget/src/rtl.h
The file was addedopenmp/libomptarget/test/offloading/d2d_memcpy.c
The file was modifiedopenmp/libomptarget/src/api.cpp
The file was modifiedopenmp/libomptarget/src/rtl.cpp
The file was modifiedopenmp/libomptarget/src/device.h
The file was modifiedopenmp/libomptarget/include/omptargetplugin.h
The file was modifiedopenmp/libomptarget/plugins/cuda/src/rtl.cpp
The file was modifiedopenmp/libomptarget/plugins/exports
The file was modifiedopenmp/libomptarget/src/device.cpp
Commit d51054217403b47f452619e11318bd214749a845 by phosek
[Fuchsia] Rely on linker switch rather than dead code ref for profile runtime

Follow the model used on Linux, where the clang driver passes the
linker a -u switch to force the profile runtime to be linked in,
rather than having every TU emit a dead function with a reference.

Patch By: mcgrathr

Differential Revision: https://reviews.llvm.org/D79835
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.h
The file was modifiedclang/test/Driver/fuchsia.c
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
Commit 192cb718361dbd7be082bc0893f43bbc9782288f by spatel
[InstCombine] avoid crashing on select-shuffle detection

As mentioned in the post-commit comments of D81013 -
the mask check API has to assume the shuffle is
not length-changing, but we have not ruled that out
in this code. Use the ShuffleVectorInst call instead.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-select.ll
Commit d259668731f4a7d6f477cefff102fe1e0b86f461 by Matthew.Arsenault
AMDGPU: Set mayRaiseFPException

This may be missing a few overrides to set it off still in some
special cases. Since the flags set during selection should now be
reliably preserved, this should not change codegen for non-strictfp
functions.
The file was modifiedllvm/lib/Target/AMDGPU/VOP3Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP2Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP1Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOPInstructions.td
Commit b71f574e7fab8c01867d2c84296c9e3657c22409 by Matthew.Arsenault
AMDGPU: Add test for fdiv nofpexcept preservation

This logically belongs with 89d48ccabe6a950369b2bd922b1d8e987b856ac7,
but this order was needed to avoid regressions before adding
mayRaiseFPExceptions to relevant instructions.
The file was addedllvm/test/CodeGen/AMDGPU/fdiv-nofpexcept.ll
Commit 5c990d6994559225466cb256146f6440431b229e by diego.caballero
[mlir] Add support for bf16 to StandardToLLVM conversion

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D81127
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-to-llvmir.mlir
Commit ae26c064ce98a0886bbb6fa3d4bbe123dcec8ffd by Matthew.Arsenault
AMDGPU: Select strict_fadd
The file was addedllvm/test/CodeGen/AMDGPU/strict_fadd.f16.ll
The file was modifiedllvm/lib/Target/AMDGPU/VOP2Instructions.td
The file was addedllvm/test/CodeGen/AMDGPU/strict_fadd.f32.ll
The file was modifiedllvm/lib/Target/AMDGPU/VOP3Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP3PInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/strict_fadd.f64.ll
Commit 483d4daa5e9b22b553a45eb91fe735fe81f6f067 by Matthew.Arsenault
AMDGPU: Select strict_fma

Like with strict_fadd, the legalization is scalarizing the v4f16 when
it should split.
The file was modifiedllvm/lib/Target/AMDGPU/VOP3Instructions.td
The file was addedllvm/test/CodeGen/AMDGPU/strict_fma.f64.ll
The file was addedllvm/test/CodeGen/AMDGPU/strict_fma.f32.ll
The file was modifiedllvm/lib/Target/AMDGPU/VOP3PInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/strict_fma.f16.ll
Commit 651c36b5086db9038591bd1ac387dcb492d011f8 by Matthew.Arsenault
AMDGPU: Select strict_fmul
The file was modifiedllvm/lib/Target/AMDGPU/VOP2Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP3PInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/strict_fmul.f64.ll
The file was addedllvm/test/CodeGen/AMDGPU/strict_fmul.f32.ll
The file was addedllvm/test/CodeGen/AMDGPU/strict_fmul.f16.ll
Commit 1657f0ebc2b4d3ec5b9e717119238e9198ad203c by Matthew.Arsenault
AMDGPU: Fix overriding global FP atomic feature predicates

Global TableGen let override blocks are pretty dangerous and override
any local special cases. In this case, the broader HasFlatGlobalInsts
was overriding the more specific predicate for
FeatureAtomicFaddInsts. Make sure HasFlatGlobalInsts is implied by
FeatureAtomicFaddInsts, and make sure the right predicate is used.

One issue with independently setting the subtarget features on
incompatible targets is all of the encoding families do not define all
opcodes. This will hit an assert on gfx10 for example, since we set
the encoding independently based on the generation and not based on a
feature.
The file was modifiedllvm/lib/Target/AMDGPU/FLATInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPU.td
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.fadd.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/global-atomics-fp.ll
Commit 3ad8fbd20592303445af55222e1d846b96d27126 by craig.topper
[Reassociate] Teach ConvertShiftToMul to preserve nsw flag if the shift amount is not bitwidth - 1.

Multiply and shl have different signed overflow behavior in
some cases. But it looks like we should be ok as long as the
shift amount is less than bitwidth - 1.

Alive2: http://volta.cs.utah.edu:8080/z/MM4WZP

Differential Revision: https://reviews.llvm.org/D81189
The file was modifiedllvm/lib/Transforms/Scalar/Reassociate.cpp
The file was modifiedllvm/test/Transforms/Reassociate/wrap-flags.ll
Commit 4e3d4622b1e7bd419815510e5f7cd0f96595b2a3 by a.bataev
Fix undefined behaviour when trying to deref nullptr.
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
Commit f9ea86eaa1a3ba18973666c4de56dfde8d488574 by Yuanfang Chen
[Docs] Add the entry for `Advanced builds` in UserGuide.rst

Also add a link to it from ThinLTO.rst.
The file was modifiedclang/docs/ThinLTO.rst
The file was modifiedllvm/docs/UserGuides.rst
Commit 24660ea11cb1d4090c68d06ef2a9ba4b9895794f by Vedant Kumar
[docs] HowToUpdateDebugInfo: Minor cleanups

- Change the reference to salvageDebugInfoOrUndef to salvageDebugInfo
  (in accordance with https://reviews.llvm.org/D78369).

- Reorganize a few sections in preparation for an upcoming change that
  attempts to specify rules for updating debug locations.

- Fix some intra-document links.

- Some spelling / wording fixes.
The file was modifiedllvm/docs/HowToUpdateDebugInfo.rst
Commit 284934fbc1f564c5fb756376f43f9b57d5dfed46 by julian.lettner
Make linter happy
The file was modifiedcompiler-rt/lib/sanitizer_common/tests/sanitizer_mac_test.cpp
Commit e1ab90001a0bac1d1bebe4116ce0e89567138283 by phosek
Revert "[Fuchsia] Rely on linker switch rather than dead code ref for profile runtime"

This reverts commit d51054217403b47f452619e11318bd214749a845 since
it broke several bots.
The file was modifiedclang/test/Driver/fuchsia.c
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.h
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
Commit b16ed493ddc22a100341b1e7d9b11282a8994e96 by phosek
[Fuchsia] Rely on linker switch rather than dead code ref for profile runtime

Follow the model used on Linux, where the clang driver passes the
linker a -u switch to force the profile runtime to be linked in,
rather than having every TU emit a dead function with a reference.

Differential Revision: https://reviews.llvm.org/D79835
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
The file was modifiedclang/test/Driver/fuchsia.c
The file was addedclang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/aarch64-fuchsia/libclang_rt.profile.a
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.h
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was addedclang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/x86_64-fuchsia/libclang_rt.profile.a
Commit 3d40c7518985d65fb91b6d73130fe7597bc7555a by listmail
[Statepoint] Switch RS4GC to using gc-live bundle form

Now that we have an operand based form for the GC arguments to a statepoint intrinsic, update RS4GC to use it and update tests to reflect. This is pretty straight forward. I nearly landed without review, but figured a second set of eyes didn't hurt.

Differential Revision: https://reviews.llvm.org/D81121
The file was modifiedllvm/lib/IR/IRBuilder.cpp
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/gc-relocate-creation.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/statepoint-format.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/basic.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/base-pointers-4.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/rematerialize-derived-pointers.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/scalar-base-vector-2.ll
The file was modifiedllvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/scalar-base-vector.ll
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/statepoint-attrs.ll
Commit a95c08db122ef33576cd8f35094afcd1ea668d68 by Jan Korous
[Analyzer][NoUncountedMembersChecker] Fix crash for C structs

Fixes https://bugs.llvm.org/show_bug.cgi?id=46177
Fixes second bug reported in https://bugs.llvm.org/show_bug.cgi?id=46142
The file was modifiedclang/lib/StaticAnalyzer/Checkers/WebKit/NoUncountedMembersChecker.cpp
Commit 3463d9835b02a2c1b22fabadb4ba1a175fea6dad by ntv
[mlir][Linalg] Add a hoistViewAllocOps helper function

This revision adds a helper function to hoist alloc/dealloc pairs and
alloca op out of immediately enclosing scf::ForOp if both conditions are true:
   1. all operands are defined outside the loop.
   2. all uses are ViewLikeOp or DeallocOp.

This is now considered Linalg-specific and will be generalized on a per-need basis.

Differential Revision: https://reviews.llvm.org/D81152
The file was modifiedmlir/test/lib/Transforms/CMakeLists.txt
The file was addedmlir/test/lib/Transforms/TestLinalgHoisting.cpp
The file was addedmlir/test/Dialect/Linalg/hoisting.mlir
The file was addedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
The file was addedmlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
Commit 072192d54aa0a5c4bb694be8280dd4fef495b582 by sunfish
[WebAssembly] Fix a testcase to be independent of the sysroot default

As a followup to D62922, add a sysroot command-line option to this test
to ensure that the output is independent of any default sysroot options,
and adjust the reactor test to be more consistent with the command test.
The file was modifiedclang/test/Driver/wasm-toolchain.c
Commit fa42620afbbd5736777d5bfe4a1beab1ce4c6606 by mtrofin
[docs] Referenced llvm workflow in HowToAddABuilder

Reviewers: gkistanova, dblaikie

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81046
The file was modifiedllvm/docs/HowToAddABuilder.rst
Commit c0cd1f1c5cc97e0c90727b3e4d5f52dd6a7aae55 by riddleriver
[mlir] Refactor BoolAttr to be a special case of IntegerAttr

This simplifies a lot of handling of BoolAttr/IntegerAttr. For example, a lot of places currently have to handle both IntegerAttr and BoolAttr. In other places, a decision is made to pick one which can lead to surprising results for users. For example, DenseElementsAttr currently uses BoolAttr for i1 even if the user initialized it with an Array of i1 IntegerAttrs.

Differential Revision: https://reviews.llvm.org/D81047
The file was modifiedmlir/lib/IR/AttributeDetail.h
The file was modifiedmlir/test/Conversion/SCFToStandard/convert-to-cfg.mlir
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
The file was modifiedmlir/test/Dialect/Vector/vector-contract-transforms.mlir
The file was modifiedmlir/lib/IR/Attributes.cpp
The file was modifiedmlir/test/Transforms/inlining.mlir
The file was modifiedmlir/test/Transforms/sccp.mlir
The file was modifiedmlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
The file was modifiedmlir/test/IR/invalid.mlir
The file was modifiedmlir/test/Transforms/constant-fold.mlir
The file was modifiedmlir/lib/Dialect/SCF/SCF.cpp
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/test/Conversion/StandardToSPIRV/std-ops-to-spirv.mlir
The file was modifiedmlir/lib/IR/AsmPrinter.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/test/Dialect/Standard/canonicalize-cf.mlir
The file was modifiedmlir/test/Transforms/sccp-callgraph.mlir
The file was modifiedmlir/lib/IR/Builders.cpp
The file was modifiedmlir/test/EDSC/builder-api-test.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/Serializer.cpp
The file was modifiedmlir/test/Transforms/cse.mlir
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/test/Target/import.ll
The file was modifiedmlir/include/mlir/IR/Attributes.h
The file was modifiedmlir/test/IR/parser.mlir
Commit 198762680e1e66518ee531c9cce5bf1933accea3 by Vedant Kumar
[LiveDebugValues] Cache LexicalScopes::getMachineBasicBlocks, NFCI

Summary:
Cache the results from getMachineBasicBlocks in LexicalScopes to speed
up UserValueScopes::dominates queries.  This replaces the caching done
in UserValueScopes. Compared to the old caching method, this reduces
memory traffic when a VarLoc is copied (e.g. when a VarLocMap grows),
and enables caching across basic blocks.

When compiling sqlite 3.5.7 (CTMark version), this patch reduces the
number of calls to getMachineBasicBlocks from 10,207 to 1,093. I also
measured a small compile-time reduction (~ 0.1% of total wall time, on
average, on my machine).

As a drive-by, I made the DebugLoc in UserValueScopes a const reference
to cut down on MetadataTracking traffic.

Reviewers: jmorse, Orlando, aprantl, nikic

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80957
The file was modifiedllvm/lib/CodeGen/LexicalScopes.cpp
The file was modifiedllvm/include/llvm/CodeGen/LexicalScopes.h
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
Commit 4c735439fd9a0cfea9ae366df8b36281436d4708 by listmail
[Statepoint] Migrate a few tests to gc-live bundle format and fix assert

The assert was missed in 0e7c7705, migrating the test revealed the problem.
The file was modifiedllvm/test/CodeGen/X86/statepoint-allocas.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-call-lowering.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/test/CodeGen/X86/statepoint-invoke.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-live-in.ll
Commit c13dd74e311d2ac70dd3ea663d800307d1aa5b6b by richard
Set the captures on a CXXRecordDecl representing a lambda closure type
before marking it complete.

No functionality change intended.
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/lib/AST/ExprCXX.cpp
The file was modifiedclang/lib/Sema/SemaLambda.cpp
The file was modifiedclang/include/clang/AST/ExprCXX.h
The file was modifiedclang/lib/AST/DeclCXX.cpp
Commit c57f8a3a20540fcf9fbf98c0a73f381ec32fce2a by richard
PR46209: properly determine whether a copy assignment operator is
trivial.

We previously took a shortcut by assuming that if a subobject had a
trivial copy assignment operator (with a few side-conditions), we would
always invoke it, and could avoid going through overload resolution.
That turns out to not be correct in the presenve of ref-qualifiers (and
also won't be the case for copy-assignments with requires-clauses
either). Use the same logic for lazy declaration of copy-assignments
that we use for all other special member functions.
The file was modifiedclang/test/AST/ast-dump-expr-json.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/SemaCXX/type-traits.cpp
The file was modifiedclang/test/SemaObjCXX/arc-0x.mm
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/test/AST/ast-dump-records-json.cpp
The file was modifiedclang/test/AST/ast-dump-template-decls-json.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/include/clang/AST/CXXRecordDeclDefinitionBits.def
The file was modifiedclang/test/AST/ast-dump-decl.cpp
The file was modifiedclang/lib/AST/JSONNodeDumper.cpp
The file was modifiedclang/test/AST/ast-dump-record-definition-data-json.cpp
The file was modifiedclang/test/AST/ast-dump-records.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/test/AST/ast-dump-decl-context-json.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/test/AST/ast-dump-special-member-functions.cpp
Commit e5158b52730d323bb8cd2cba6dc6c89b90cba452 by maskray
[Driver] Migrate some -f/-fno options to use OptInFFlag and OptOutFFlag
The file was modifiedclang/test/CodeGen/no-junk-ftrunc.c
The file was modifiedclang/include/clang/Driver/Options.td
Commit d76e62fdb7a93d9a33f642b6b528f2562cc3c3f4 by phosek
[AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals

It should not be necessary to use weak linkage for these. Doing so
implies interposablity and thus PIC generates indirections and
dynamic relocations, which are unnecessary and suboptimal. Aside
from this, ASan instrumentation never introduces GOT indirection
relocations where there were none before--only new absolute relocs
in RELRO sections for metadata, which are less problematic for
special linkage situations that take pains to avoid GOT generation.

Patch By: mcgrathr

Differential Revision: https://reviews.llvm.org/D80605
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/global_metadata.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
Commit 3c32af58f6c5b78d578e576eeaa81f14c2a71953 by Vitaly Buka
[StackSafety,NFC] Ignore callee declarations

It's going to fail FunctionInfo lookup anyway.
The file was modifiedllvm/lib/Analysis/StackSafetyAnalysis.cpp
Commit 929edd8bd25b0390de97994eb90f42b26636d205 by Xing
[DWARFYAML][debug_aranges] Replace InitialLength with Format and Length.

This patch addresses the comment in [D80972](https://reviews.llvm.org/D80972#inline-744217).

Before this patch, the initial length field of .debug_aranges section should be declared as:

```
## 32-bit DWARF
debug_aranges:
  - Length:
      TotalLength: 0x20
    Version: 2
    ...

## 64-bit DWARF
debug_aranges:
  - Length:
      TotalLength:   0xffffffff
      TotalLength64: 0x20
    Version: 2
    ...
```

After this patch:

```
## 32-bit DWARF
debug_aranges:
  - [[Format:  DWARF32]] ## Optional
    Length:  0x20
    Version: 2
    ...

## 64-bit DWARF
debug_aranges:
  - Format:  DWARF64
    Length:  0x20
    Version: 2
```

Current implementation of generating DWARF64 .debug_aranges section is buggy. A follow-up patch will improve it and add test cases for DWARF64.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D81063
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/DWARFYAML.h
The file was modifiedllvm/test/tools/llvm-gsymutil/X86/mach-dwarf.yaml
The file was modifiedllvm/test/tools/llvm-gsymutil/ARM_AArch64/fat-macho-dwarf.yaml
The file was modifiedllvm/test/tools/obj2yaml/MachO/DWARF-debug_aranges-error.yaml
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF5-debug_info.yaml
The file was modifiedllvm/lib/ObjectYAML/DWARFYAML.cpp
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml
The file was modifiedllvm/test/tools/yaml2obj/ELF/DWARF/debug-aranges.yaml
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_line.yaml
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_aranges.yaml
The file was modifiedllvm/tools/obj2yaml/dwarf2yaml.cpp