Changes

Summary

  1. Add a llvm-x86_64-debian-dylib mail notifier (details)
  2. Add a builder for testing MLIR with sanitizers (details)
  3. Revert changes to buildbot/google/docker/build_run.sh unintentionally pushed with another change (details)
  4. Fix MLIR Ubuntu worker names in the builder config (details)
Commit 512e47aa79d5211fef741116b8cbd25ceb73e5b9 by tbaeder
Add a llvm-x86_64-debian-dylib mail notifier

Differential Revision: https://reviews.llvm.org/D109947
The file was modifiedbuildbot/osuosl/master/config/status.py (diff)
Commit 9aafce19b48fb51f9f574696ee53396136f18f0b by joker.eph
Add a builder for testing MLIR with sanitizers
The file was modifiedbuildbot/google/docker/build_run.sh (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 1f56cf94f6bea30929a1bb3b9f93fc9bd9d58a20 by joker.eph
Revert changes to buildbot/google/docker/build_run.sh unintentionally pushed with another change
The file was modifiedbuildbot/google/docker/build_run.sh (diff)
Commit 26c5622081d96830358ad8e514a20ebd142d1a2d by joker.eph
Fix MLIR Ubuntu worker names in the builder config
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)

Summary

  1. [clangd] Refactor IncludeStructure: use File (unsigned) for most computations (details)
  2. Attempt to fix Windows builds after D110386 (details)
  3. Fix URLs to the prod/staging buildbot master in the doc (details)
  4. [LiveIntervals] Improve repair after convertToThreeAddress (details)
  5. [LiveIntervals] Repair subreg ranges in processTiedPairs (details)
  6. [mlir] Add min/max operations to Standard. (details)
  7. Investigate D110386 Windows failures (details)
  8. [flang] GET_COMMAND_ARGUMENT(LENGTH) runtime implementation (details)
  9. [flang] GET_COMMAND_ARGUMENT(VALUE) runtime implementation (details)
  10. [flang] GET_COMMAND_ARGUMENT(ERRMSG) runtime implementation (details)
  11. [fir] Update fir.insert_on_range op (details)
  12. [DebugInfo] Emit DW_TAG_namelist and DW_TAG_namelist_item (details)
  13. Recommit "[SCEV] Look through single value PHIs." (take 2) (details)
  14. [fir] Add fir.save_result op (details)
  15. Investigate D110386 failures even further (details)
  16. [LiveIntervals] Fix another asan debug build failure (details)
  17. [clang-format][docs] mark new clang-format configuration options based on which version they would GA (details)
  18. Fix documentation typos; NFC (details)
  19. [AArch64] Split bitmask immediate of bitwise AND operation (details)
  20. [gn build] Port 864b206796ae (details)
  21. Simplify handling of builtin with inline redefinition (details)
  22. Revert "[clangd] Refactor IncludeStructure: use File (unsigned) for most computations" (details)
  23. [Docs][NFC] Add doxygen comment for AtomicExpandPass in passes.h (details)
  24. [VectorCombine] Discard ScalarizationResult state in early exit. (details)
  25. Add support for `NOLINTBEGIN` ... `NOLINTEND` comments (details)
  26. [Test] Add more tests with cycled phis (details)
  27. Revert "[flang] GET_COMMAND_ARGUMENT(VALUE) runtime implementation" (details)
  28. [lldb] Remove non-stop mode code (details)
  29. [lldb/test] Add ability to specify environment when spawning processes (details)
  30. [CMake] Add detection for the mold linker in AddLLVM.cmake. (details)
  31. Revert "[AArch64] Split bitmask immediate of bitwise AND operation" (details)
  32. Revert "[Test] Add more tests with cycled phis" (details)
  33. Reland "[flang] GET_COMMAND_ARGUMENT runtime implementation" (details)
  34. Recommit "[Test] Add more tests with cycled phis" (details)
  35. [lldb/test] Remove a check from TestLoadAfterAttach (details)
  36. Update the message for template-template param keyword for C++17 (details)
  37. [SLP]No need to schedule/check parent for extract{element/value} instruction. (details)
  38. [IR] Change the default value of InstertElement to poison (1/4) (details)
  39. [Analysis] Add FIXME:s related to size_t type checks (details)
  40. [Analysis] Be defensive when matching size_t in lib call signatures (details)
  41. [InstCombine] add/move tests for icmp with gep operand(s); NFC (details)
  42. Change __builtin_sycl_unique_stable_name to just use an Itanium mangling (details)
  43. [ARM] Skip debug info in recomputeVPTBlockMask (details)
  44. [InstCombine] add tests for icmp-gep; NFC (details)
  45. [InstCombine] reduce code for swapped predicate; NFC (details)
  46. Refine the constraint for isInlineBuiltinDeclaration (details)
  47. [LoopFlatten] Updating Phi nodes after IV widening (details)
  48. [SLP]Improve vectorization of phi nodes by trying wider vectors. (details)
  49. Recommit "[AArch64] Split bitmask immediate of bitwise AND operation" (details)
  50. Fix missing return from 9324cc2ca951fe5fe11c85470cb08e699c59499c (details)
  51. [ARM] Delay reverting WLS in arm-block-placement (details)
  52. [lldb] [DynamicRegisterInfo] Refactor SetRegisterInfo() (details)
  53. tsan: fix cur_thread alignment (details)
  54. [lldb] [unittests] Fix building the FreeBSD arm64 Register Context test (details)
  55. [fir][NFC] Rename operand of EmboxOp (details)
  56. tsan: fix tls_race3 test on darwin (details)
  57. tsan: print a meaningful frame for stack races (details)
  58. Revert "[CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux" (details)
  59. [SystemZ] Remove redundant declaration SystemZMnemonicSpellCheck (NFC) (details)
  60. [PowerPC] FP compare and test XL compat builtins. (details)
  61. [llvm-profgen] On-demand symbolization (details)
  62. [llvm-profgen][CSSPGO] On-demand function size computation for preinliner (details)
  63. [X86][Costmodel] Load/store i16 Stride=6 VF=2 interleaving costs (details)
  64. [X86][Costmodel] Load/store i16 Stride=6 VF=4 interleaving costs (details)
  65. [X86][Costmodel] Load/store i16 Stride=6 VF=8 interleaving costs (details)
  66. [X86][Costmodel] Load/store i16 Stride=6 VF=16 interleaving costs (details)
  67. [libc++] [compare] Rip out more vestiges of *_equality. NFCI. (details)
  68. [update_llc_test_checks] Baseline test for D100027 (details)
  69. [update_llc_test_checks.py] Fix MIPS ASM regex for functions with EH (details)
  70. Fix incorrect GEP bitwidth in areNonOverlapSameBaseLoadAndStore() (details)
  71. [UpdateTestChecks][NFC] Drop a python2 workaround (details)
  72. Drop REQUIRES: arm-registered-target from an IR-only test (details)
  73. [NFC] Add a comment to member-function-pointer-calls.cpp (details)
  74. [NFC][clang] Add a CHECK lines to tests checking offsetof-like expressions (details)
  75. [InstCombine][ConstantFold] Baseline tests for ptrtoint(gep null, x) (details)
  76. [ConstantFolding] Fold ptrtoint(gep i8 null, x) -> x (details)
  77. [InstCombine] Fold ptrtoint(gep i8 null, x) -> x (details)
  78. [llvm-objdump] Fix -R display and support ET_EXEC (details)
  79. Diagnose -Wunused-value based on CFG reachability (details)
  80. [CostModel][X86] Add SSE2/AVX1/AVX512BW test coverage for i16 interleaved load/store (details)
  81. [TargetLibraryInfo] Pick new/delete calls by target (details)
  82. Add salvageDebugInfo support for truncating/extending ptr/int conversions. (details)
  83. Improve the effectiveness of ADCE's debug info salvaging (details)
  84. Improve the effectiveness of BDCE's debug info salvaging (details)
  85. [libc][NFC] Make strchr and strrchr more consistent (details)
  86. [MCJIT] Mark test-global-ctors as UNSUPPORTED on Darwin, rather than XFAIL. (details)
  87. [llvm-jitlink] Add a -slab-page-size option to override process page size. (details)
  88. DebugInfo: Use sugared function type when emitting function declarations for call sites (details)
  89. [MSP430][Clang] Remove support for -mmcu=msp430 (details)
  90. [Polly] Check the properties of accesses to operands of a matrix-matrix (details)
  91. [libc] Add FE_DFL_ENV and handle it in fesetenv. (details)
  92. [NFC][sanitizer] Clang-format some code (details)
  93. [CUDA] Move CUDA SDK include path further down the include search path. (details)
  94. Revert "Simplify handling of builtin with inline redefinition" (details)
  95. [docs ]Fix indentation (details)
  96. [InstCombine] add/move tests for shl with binop; NFC (details)
  97. Revert "Add support for `NOLINTBEGIN` ... `NOLINTEND` comments" (details)
  98. [llvm][profile] Add padding after binary IDs (details)
  99. Simplify handling of builtin with inline redefinition (details)
  100. [llvm-profgen] Strip context to support non-CS profile generation for hybrid sample (details)
  101. Add profile count. Regenerate check lines. NFC (details)
  102. Revert "Improve the effectiveness of BDCE's debug info salvaging" (details)
  103. Fix memcpy-nobuiltin.c test case (details)
  104. [libc++] Clarify the name of Lit features related to standard library selection (details)
  105. [llvm-jitlink] Add -slab-page-size to tests that need it. (details)
  106. [mlir] Fix bug in FoldSubview with rank reducing subview (details)
  107. [LTO] Avoid repeated Triple construction. NFC (details)
  108. [InstCombine] add multi-use tests for shl folds; NFC (details)
  109. [InstCombine] reduce redundant code for shl-binop folds (details)
  110. [libc] Add implementations of the C standard condition variable functions. (details)
  111. [clang] Rework dontcall attributes (details)
  112. [test] Pin some RUN lines in optimization-remark.c to new PM (details)
  113. [libc++] Simplify std::ranges::subrange (details)
  114. [mlir] Unroll-and-jam loops with iter_args. (details)
  115. Revert "[test] Pin some RUN lines in optimization-remark.c to new PM" (details)
  116. Revert "[clang] Rework dontcall attributes" (details)
  117. Rename target block size to min task size for clarity. (details)
  118. Remove unnecessary async group creates and awaits. (details)
  119. Flang OpenMP Report Plugin (details)
  120. [CodeGen] Fix wrapping personality symbol on ARM (details)
  121. [mlir][tosa] Add i32 to supported quantized type (details)
  122. Reland [clang] Rework dontcall attributes (details)
  123. [mlir][Python] Fix lifetime of ExecutionEngine runtime functions. (details)
  124. [NFC][sanitizer] Return StackDepotStats by value (details)
  125. fixes bug #51926 where dangling comma caused overrun (details)
  126. [clang] Let PPCallbacks::PragmaWarning() pass specifier as enum instead of string (details)
  127. [libc] Add support for 128 bit ints in limits.h (details)
  128. [GlobalISel] Combine mulo x, 2 -> addo x, x (details)
  129. [test] Specify triple in backend-attribute-error-warning.cpp (details)
  130. Clean up large copies of binaries copied into temp directories in tests (details)
  131. [AArch64][GlobalISel] Run overlapping_and after legalization (details)
  132. [JITLink][MachO][arm64] Add support for splitting compact-unwind sections. (details)
  133. [AIX] Change the linkage of profiling counter/data to be private (details)
  134. [SelectionDAG] Fix incorrect condition for shift amount truncation (details)
  135. Revert "Recommit "[AArch64] Split bitmask immediate of bitwise AND operation"" (details)
  136. [gn build] Port c07f7099690e (details)
  137. [AMDGPU] Do not internalize ASan device library functions. (details)
  138. [AIX] Enable PGO without LTO (details)
  139. [JITLink][MachO][x86-64] Add support for splitting compact-unwind sections. (details)
Commit 1bcd6b51a98263d440ff7549070060f7e7b0326a by kbobyrev
[clangd] Refactor IncludeStructure: use File (unsigned) for most computations

Preparation for D108194.

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D110386
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang-tools-extra/clangd/unittests/HeadersTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
The file was modifiedclang-tools-extra/clangd/Headers.cpp
The file was modifiedclang-tools-extra/clangd/Headers.h
Commit e50771181b7e0d96b30ee33049dc05172125b927 by kbobyrev
Attempt to fix Windows builds after D110386

http://45.33.8.238/win/46013/summary.html
The file was modifiedclang-tools-extra/clangd/unittests/HeadersTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
Commit 90babc86c3feda7f9395b36ccfe72ca61bbc39e2 by joker.eph
Fix URLs to the prod/staging buildbot master in the doc

Differential Revision: https://reviews.llvm.org/D110565
The file was modifiedllvm/docs/HowToAddABuilder.rst
Commit b2b1a8b833905e159fe445ba1d0baae427a118cc by jay.foad
[LiveIntervals] Improve repair after convertToThreeAddress

After TwoAddressInstructionPass calls
TargetInstrInfo::convertToThreeAddress, improve the LiveIntervals repair
to cope with convertToThreeAddress creating more than one new
instruction.

This mostly seems to benefit X86. For example in
test/CodeGen/X86/zext-trunc.ll it converts:

  %4:gr32 = ADD32rr %3:gr32(tied-def 0), %2:gr32, implicit-def dead $eflags

to:

  undef %6.sub_32bit:gr64 = COPY %3:gr32
  undef %7.sub_32bit:gr64_nosp = COPY %2:gr32
  %4:gr32 = LEA64_32r killed %6:gr64, 1, killed %7:gr64_nosp, 0, $noreg

Differential Revision: https://reviews.llvm.org/D110335
The file was modifiedllvm/test/CodeGen/X86/zext-trunc.ll
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
Commit 20c02807333a47000879e0f673cdf2d6b07148dd by jay.foad
[LiveIntervals] Repair subreg ranges in processTiedPairs

In TwoAddressInstructionPass::processTiedPairs, update subranges of the
live interval for RegB as well as the main range.

This is a small step towards switching TwoAddressInstructionPass over
from LiveVariables to LiveIntervals. Currently this path is only tested
if you explicitly enable -early-live-intervals.

Differential Revision: https://reviews.llvm.org/D110526
The file was modifiedllvm/test/CodeGen/SystemZ/subregliveness-01.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-multivec-spill.ll
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
The file was modifiedllvm/test/CodeGen/Hexagon/swp-vect-dotprod.ll
Commit 9fb57c8c1dd87df36daf7b6f7dee3b7423475afc by pifon
[mlir] Add min/max operations to Standard.

[RFC: Add min/max ops](https://llvm.discourse.group/t/rfc-add-min-max-operations/4353)

I was following the naming style for Arith dialect in
https://reviews.llvm.org/D110200,
i.e. similar to DivSIOp and DivUIOp I defined MaxSIOp, MaxUIOp.

When Arith PR is landed, I will migrate these ops as well.

Differential Revision: https://reviews.llvm.org/D110540
The file was modifiedmlir/test/Dialect/Standard/expand-ops.mlir
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/docs/Rationale/Rationale.md
The file was modifiedmlir/test/Dialect/Standard/ops.mlir
The file was modifiedmlir/lib/Dialect/StandardOps/Transforms/ExpandOps.cpp
Commit 7394d3ba276adeb1527428b2355a920129a2b9b1 by kbobyrev
Investigate D110386 Windows failures

Add more information for test failures inspection.
The file was modifiedclang-tools-extra/clangd/Headers.h
The file was modifiedclang-tools-extra/clangd/unittests/HeadersTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
Commit af63d1791b102ed8bdd8b836ce8ab773c019d1a1 by diana.picus
[flang] GET_COMMAND_ARGUMENT(LENGTH) runtime implementation

Implement the ArgumentLength entry point of GET_COMMAND_ARGUMENT. Also
introduce a fixture for the tests.

Note that this also changes the interface for ArgumentLength from
returning a 4-byte integer to returning an 8-byte integer.

Differential Revision: https://reviews.llvm.org/D109227
The file was modifiedflang/include/flang/Runtime/command.h
The file was modifiedflang/unittests/Runtime/CommandTest.cpp
The file was modifiedflang/runtime/command.cpp
The file was modifiedflang/test/Runtime/no-cpp-dep.c
Commit df6302311f88d0fbc666b6277d029aa371039945 by diana.picus
[flang] GET_COMMAND_ARGUMENT(VALUE) runtime implementation

Partial implementation for the second entry point for
GET_COMMAND_ARGUMENT. It handles the VALUE and STATUS arguments, and
doesn't touch ERRMSG.

Differential Revision: https://reviews.llvm.org/D109813
The file was modifiedflang/runtime/command.cpp
The file was modifiedflang/test/Runtime/no-cpp-dep.c
The file was modifiedflang/unittests/Runtime/CommandTest.cpp
Commit 0446f1299f6be9fd35bc5f458c78b34dca3105f6 by diana.picus
[flang] GET_COMMAND_ARGUMENT(ERRMSG) runtime implementation

Implement the final part of GET_COMMAND_ARGUMENT, i.e. the handling of
ERRMSG. This uses some of the infrastructure in stat.h and gets rid of
the magic numbers that we were using for return codes.

Differential Revision: https://reviews.llvm.org/D109814
The file was modifiedflang/unittests/Runtime/CommandTest.cpp
The file was modifiedflang/runtime/stat.h
The file was modifiedflang/runtime/stat.cpp
The file was modifiedflang/include/flang/Runtime/magic-numbers.h
The file was modifiedflang/runtime/command.cpp
Commit bd2623b9c22d02a87ebed7b770e0312799ea0a04 by clementval
[fir] Update fir.insert_on_range op

Update the fir.insert_on_range operation. Add a better description,
builder and verifier.

This patch is part of the upstreaming effort from fir-dev branch.

Reviewed By: jeanPerier

Differential Revision: https://reviews.llvm.org/D110389

Co-authored-by: Jean Perier <jperier@nvidia.com>
Co-authored-by: Eric Schweitz <eschweitz@nvidia.com>
Co-authored-by: Valentin Clement <clementval@gmail.com>
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/test/Fir/invalid.fir
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
The file was modifiedflang/test/Fir/fir-ops.fir
Commit 62eeacce17598b9b55f3aea54a25eb38c303d3b6 by Bhuvanendra.KumarN
[DebugInfo] Emit DW_TAG_namelist and DW_TAG_namelist_item

This patch emits DW_TAG_namelist and DW_TAG_namelist_item for fortran
namelist variables. DICompositeType is extended to support this fortran
feature.

Reviewed By: aprantl

Differential Revision: https://reviews.llvm.org/D108553
The file was addedllvm/test/DebugInfo/X86/namelist2.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was addedllvm/test/DebugInfo/X86/namelist1.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
Commit 764d9aa97905f202385b4f25f8d234630b4feef3 by flo
Recommit "[SCEV] Look through single value PHIs." (take 2)

This reverts commit 8fdac7cb7abbeeaed016ef9eb7a087458e41e33f.

The issue causing the revert has been fixed a while ago in 60b852092c98.

Original message:

    Now that SCEVExpander can preserve LCSSA form,
    we do not have to worry about LCSSA form when
    trying to look through PHIs. SCEVExpander will take
    care of inserting LCSSA PHI nodes as required.

    This increases precision of the analysis in some cases.

    Reviewed By: mkazantsev, bmahjour

    Differential Revision: https://reviews.llvm.org/D71539
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll
The file was modifiedllvm/test/Transforms/LoopStrengthReduce/funclet.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll
The file was modifiedllvm/test/Analysis/DependenceAnalysis/lcssa.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr45259.ll
Commit 5b5ef2e26558ee9d5da4ba4af69737732da49858 by clementval
[fir] Add fir.save_result op

Add the fir.save_result operation. It is use to save an
array, box, or record function result SSA-value to a memory location

Reviewed By: jeanPerier

Differential Revision: https://reviews.llvm.org/D110407

Co-authored-by: Jean Perier <jperier@nvidia.com>
Co-authored-by: Valentin Clement <clementval@gmail.com>
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/test/Fir/fir-ops.fir
The file was modifiedflang/test/Fir/invalid.fir
The file was modifiedflang/include/flang/Optimizer/Dialect/FIRTypes.td
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
Commit d1c6e54930f200c40820868c086e114cee1ec693 by kbobyrev
Investigate D110386 failures even further
The file was modifiedclang-tools-extra/clangd/Headers.h
Commit 845b93e692b6a83685b8c0943562ab7ccc5f3b94 by jay.foad
[LiveIntervals] Fix another asan debug build failure

Call RemoveMachineInstrFromMaps before erasing instrs.
repairIntervalsInRange will do this for you after erasing the
instruction, but it's not safe to rely on it because assertions in
SlotIndexes::removeMachineInstrFromMaps refer to fields in the erased
instruction.

This fixes asan buildbot failures caused by D110335.
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
Commit 23a5090c6ac7a207f49a11bf868a7c3fae2aeea2 by mydeveloperday
[clang-format][docs] mark new clang-format configuration options based on which version they would GA

Sometimes I see people unsure about which options they can use in specific versions of clang-format because
https://clang.llvm.org/docs/ClangFormatStyleOptions.html points to the latest and greatest versions.

The reality is this says its version 13.0, but actually anything we add now, will not be in 13.0 GA but
instead 14.0 GA (as 13.0 has already been branched).

How about we introduce some nomenclature to the Format.h so that we can mark which options in the
documentation were introduced for which version?

Reviewed By: HazardyKnusperkeks

Differential Revision: https://reviews.llvm.org/D110432
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
The file was modifiedclang/include/clang/Tooling/Inclusions/IncludeStyle.h
The file was modifiedclang/docs/tools/dump_format_style.py
The file was modifiedclang/include/clang/Format/Format.h
Commit 4f01a02d738b033c10bfed5b47014fc197509a4f by aaron
Fix documentation typos; NFC

Fixes bugprone-virtual-near-miss & performance-type-promotion-in-math-fn.
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/bugprone-virtual-near-miss.rst
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/performance-type-promotion-in-math-fn.rst
Commit 864b206796ae8aa7f35f830655337751dbd9176c by jingu.kang
[AArch64] Split bitmask immediate of bitwise AND operation

MOVi32imm + ANDWrr ==> ANDWri + ANDWri
MOVi64imm + ANDXrr ==> ANDXri + ANDXri

The mov pseudo instruction could be expanded to multiple mov instructions later.
In this case, try to split the constant operand of mov instruction into two
bitmask immediates. It makes only two AND instructions intead of multiple
mov + and instructions.

Added a peephole optimization pass on MIR level to implement it.

Differential Revision: https://reviews.llvm.org/D109963
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was addedllvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h
The file was addedllvm/test/CodeGen/AArch64/aarch64-split-and-bitmask-immediate.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/test/CodeGen/AArch64/O3-pipeline.ll
Commit 5aa4c74c9a2ee3c4e6e87adfa2ef218c5aeed1d6 by llvmgnsyncbot
[gn build] Port 864b206796ae
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit 3d6f49a56995b845c40be5827ded5d1e3f692cec by sguelton
Simplify handling of builtin with inline redefinition

It is a common practice in glibc header to provide an inline redefinition of an
existing function. It is especially the case for fortified function.

Clang currently has an imperfect approach to the problem, using a combination of
trivially recursive function detection and noinline attribute.

Simplify the logic by suffixing these functions by `.inline` during codegen, so
that they are not recognized as builtin by llvm.

After that patch, clang passes all tests from https://github.com/serge-sans-paille/fortify-test-suite

Differential Revision: https://reviews.llvm.org/D109967
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was addedclang/test/CodeGen/memcpy-inline-builtin.c
The file was modifiedclang/test/CodeGen/pr9614.c
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was removedclang/test/CodeGen/memcpy-no-nobuiltin-if-not-emitted.c
The file was modifiedclang/test/CodeGen/memcpy-nobuiltin.c
Commit e7a5347b55e6050106bb61fa9a54920720806e07 by kbobyrev
Revert "[clangd] Refactor IncludeStructure: use File (unsigned) for most computations"

This reverts

- d1c6e54930f200c40820868c086e114cee1ec693
- 7394d3ba276adeb1527428b2355a920129a2b9b1
- e50771181b7e0d96b30ee33049dc05172125b927
- 1bcd6b51a98263d440ff7549070060f7e7b0326a
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang-tools-extra/clangd/Headers.cpp
The file was modifiedclang-tools-extra/clangd/Headers.h
The file was modifiedclang-tools-extra/clangd/unittests/HeadersTests.cpp
Commit 1aa7b8388581d9b4a52a8d4c5d4f13d4bf6c0013 by shivam98.tkg
[Docs][NFC] Add doxygen comment for AtomicExpandPass in passes.h
The file was modifiedllvm/include/llvm/CodeGen/Passes.h
Commit e2f6290e06be63149af770197b772248369ac038 by flo
[VectorCombine] Discard ScalarizationResult state in early exit.

ScalarizationResult's destructor makes sure ToFreeze is not ignored if
set. Currently, scalarizeLoadExtract has an early exit if the index is
not safe directly. But when it is SafeWithFreeze, we need to discard the
state first, otherwise we hit the assert in the destructor.

Fixes PR51992.
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
The file was modifiedllvm/test/Transforms/VectorCombine/AArch64/load-extractelement-scalarization.ll
Commit c0687e1984a82925918c874b7bb68ad34c32aed0 by aaron
Add support for `NOLINTBEGIN` ... `NOLINTEND` comments

Add support for NOLINTBEGIN ... NOLINTEND comments to suppress
clang-tidy warnings over multiple lines. All lines between the "begin"
and "end" markers are suppressed.

Example:

// NOLINTBEGIN(some-check)
<Code with warnings to be suppressed, line 1>
<Code with warnings to be suppressed, line 2>
<Code with warnings to be suppressed, line 3>
// NOLINTEND(some-check)
Follows similar syntax as the NOLINT and NOLINTNEXTLINE comments
that are already implemented, i.e. allows multiple checks to be provided
in parentheses; suppresses all checks if the parentheses are omitted,
etc.

If the comments are misused, e.g. using a NOLINTBEGIN but not
terminating it with a NOLINTEND, a clang-tidy-nolint diagnostic
message pointing to the misuse is generated.

As part of implementing this feature, the following bugs were fixed in
existing code:

IsNOLINTFound(): IsNOLINTFound("NOLINT", Str) returns true when Str is
"NOLINTNEXTLINE". This is because the textual search finds NOLINT as
the stem of NOLINTNEXTLINE.

LineIsMarkedWithNOLINT(): NOLINTNEXTLINEs on the very first line of a
file are ignored. This is due to rsplit('\n\').second returning a blank
string when there are no more newline chars to split on.
The file was modifiedclang-tools-extra/docs/clang-tidy/index.rst
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-end-at-sof.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-specific-end-global.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-typo-in-check-name.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/infrastructure/nolint.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/infrastructure/nolintnextline.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/Inputs/nolintbeginend/error_in_include.inc
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-end-without-begin.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-mismatched-delims.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-global-end-specific.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/Inputs/nolintbeginend/nolint_in_include.inc
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-at-eof.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-without-end.cpp
The file was addedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-mismatched-check-names.cpp
Commit 7128a545b3baa62c1164843103fb08daeba5cd9d by mkazantsev
[Test] Add more tests with cycled phis
The file was modifiedllvm/test/Analysis/ScalarEvolution/cycled_phis.ll
Commit 6359a4cdbfb83c67a2a776baba4e3f4fb8334853 by diana.picus
Revert "[flang] GET_COMMAND_ARGUMENT(VALUE) runtime implementation"

This reverts commit 0446f1299f6be9fd35bc5f458c78b34dca3105f6 and
df6302311f88d0fbc666b6277d029aa371039945.

There's a warning on flang-aarch64-latest-gcc related to strncpy using
the result of strlen as a bound. I'll recommit with a fix.
The file was modifiedflang/runtime/stat.cpp
The file was modifiedflang/unittests/Runtime/CommandTest.cpp
The file was modifiedflang/test/Runtime/no-cpp-dep.c
The file was modifiedflang/runtime/command.cpp
The file was modifiedflang/runtime/stat.h
The file was modifiedflang/include/flang/Runtime/magic-numbers.h
Commit 156cb4cc64bec2b72aad9848f8181b338ff19ebc by pavel
[lldb] Remove non-stop mode code

We added some support for this mode back in 2015, but the feature was
never productionized. It is completely untested, and there are known
major structural lldb issues that need to be resolved before this
feature can really be supported.

It also complicates making further changes to stop reply packet
handling, which is what I am about to do.

Differential Revision: https://reviews.llvm.org/D110553
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
The file was modifiedlldb/source/Target/Target.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.h
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
The file was modifiedlldb/source/Target/TargetProperties.td
The file was modifiedlldb/include/lldb/Target/Target.h
The file was modifiedlldb/source/Commands/CommandObjectThread.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
Commit 9413ead7bcbaf5d8876ee484256df65c2846c5c9 by pavel
[lldb/test] Add ability to specify environment when spawning processes

We only had that ability for regular debugger launches. This meant that
it was not possible to use the normal dlopen patterns in attach tests.
This fixes that.
The file was modifiedlldb/test/API/functionalities/load_after_attach/main.cpp
The file was modifiedlldb/test/API/functionalities/load_after_attach/TestLoadAfterAttach.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
Commit 5b125a49ba9f52cb6b24767f3c98ce623a2d5207 by shivam98.tkg
[CMake] Add detection for the mold linker in AddLLVM.cmake.

mold says it is compatible with GNU ld and gold linkers:

```
$ mold -v
mold 0.9.5 (compatible with GNU ld and GNU gold)
```

And thus it currently gets detected as Gold.

With the following diff, CMake now correctly reports the linker name, and mold keeps being identified as Gold internally for now.

Reviewed By: ldionne, MaskRay

Differential Revision: https://reviews.llvm.org/D110035
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
Commit f85d8a5bed95cc17a452b6b63b9866fbf181d94d by jingu.kang
Revert "[AArch64] Split bitmask immediate of bitwise AND operation"

This reverts commit 864b206796ae8aa7f35f830655337751dbd9176c.

Reverting due to error on buildbots.
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was removedllvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/test/CodeGen/AArch64/O3-pipeline.ll
The file was removedllvm/test/CodeGen/AArch64/aarch64-split-and-bitmask-immediate.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
Commit a91145f75af4f00c37d767a9ee408c62655ceb44 by mkazantsev
Revert "[Test] Add more tests with cycled phis"

This reverts commit 7128a545b3baa62c1164843103fb08daeba5cd9d.

Need to regenerate tests after rebase.
The file was modifiedllvm/test/Analysis/ScalarEvolution/cycled_phis.ll
Commit 37089bae29a92b97e16be4795553b68a6b04ff91 by diana.picus
Reland "[flang] GET_COMMAND_ARGUMENT runtime implementation"

Recommit https://reviews.llvm.org/D109813 and
https://reviews.llvm.org/D109814.

This implements the second and final entry point for GET_COMMAND_ARGUMENT,
handling the VALUE, STATUS and ERRMSG parameters.

It has a small fix in that we're now using memcpy instead of strncpy
(which was a bad idea to begin with, since we're not actually interested
in a string copy).
The file was modifiedflang/runtime/stat.cpp
The file was modifiedflang/runtime/command.cpp
The file was modifiedflang/runtime/stat.h
The file was modifiedflang/unittests/Runtime/CommandTest.cpp
The file was modifiedflang/test/Runtime/no-cpp-dep.c
The file was modifiedflang/include/flang/Runtime/magic-numbers.h
Commit 00be84f910dc2816a07925e7e0f4c647c1e2f83d by mkazantsev
Recommit "[Test] Add more tests with cycled phis"
The file was modifiedllvm/test/Analysis/ScalarEvolution/cycled_phis.ll
Commit 7866dbb261240f71c79e70d2ed52351846f795cd by pavel
[lldb/test] Remove a check from TestLoadAfterAttach

The two module retrieval methods (qXfer:libraries-svr4 and manual list
traversal) differ in how the handle the
manually-added-but-not-yet-loaded modules. The svr4 path will remove it,
while the manual one will keep in the list.

It's likely the two paths need ought to be synchronized, but right now,
this distinction is not relevant for the test.
The file was modifiedlldb/test/API/functionalities/load_after_attach/TestLoadAfterAttach.py
Commit 45e75d93821f7e4f04d9f42cb19f729b346e7c0c by erich.keane
Update the message for template-template param keyword for C++17

C++17 permits using 'typename' or 'class' for a template template
parameter, but the error message in the parser only refers to 'class'.
This patch, in C++17 or newer modes, adds "or 'template'" to the
diagnostic.
The file was modifiedclang/test/Parser/cxx2a-concept-declaration.cpp
The file was modifiedclang/test/Parser/cxx-template-decl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/Parse/ParseTemplate.cpp
Commit 8bacfb9bedf10a2e446db072be2c1cd2cd1d7aab by a.bataev
[SLP]No need to schedule/check parent for extract{element/value} instruction.

The instruction extractelement/extractvalue are not required to
be scheduled since they only depend on the source vector/aggregate (with
constant indices), smae applies to the parent basic block checks.
Improves compile time and saves scheduling budget.

Differential Revision: https://reviews.llvm.org/D108703
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/remark_extract_broadcast.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 86bf234d0b7038479292a0d771dc05966140b908 by gusrb406
[IR] Change the default value of InstertElement to poison (1/4)

This patch is for fixing potential insertElement-related bugs like D93818.
```
V = UndefValue::get(VecTy);
for(...)
  V = Builder.CreateInsertElementy(V, Elt, Idx);
=>
V = PoisonValue::get(VecTy);
for(...)
  V = Builder.CreateInsertElementy(V, Elt, Idx);
```
Like above, this patch changes the placeholder V to poison.
The patch will be separated into several commits.

Reviewed By: aqjune

Differential Revision: https://reviews.llvm.org/D110311
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
The file was modifiedllvm/unittests/IR/PatternMatch.cpp
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
Commit 1f5ea14bca71aecad1f5a6017ff20fe50c9da752 by bjorn.a.pettersson
[Analysis] Add FIXME:s related to size_t type checks

Differential Revision: https://reviews.llvm.org/D110583
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
Commit 460efc1fb8354295ce1320b5dae62f06cdeda278 by bjorn.a.pettersson
[Analysis] Be defensive when matching size_t in lib call signatures

When TargetLibraryInfoImpl::isValidProtoForLibFunc is checking
function signatures to detect lib calls it may check that a parameter
or return value matches with the "size_t" type. For this to work it
has to derive the IR type matching with "size_t". Depending on if
a DataLayout is provided or not, this has been done in two different
way. Either a more strict check being based on IntPtrType (which is
given by the DataLayout) or a more relaxed check assuming that any
integer type matches with "size_t".

Given that the stricter approach exist it seems like we do not want
to trigger rewrites etc if we aren't sure that a function calls
actually match with the library function. Therefore it was questioned
why we actually have the more relaxed approach when not being able
to derive an IR type for "size_t". This patch will take a more
defensive approach, requiring that a DataLayout is passed to
isValidProtoForLibFunc.

Differential Revision: https://reviews.llvm.org/D110584
The file was modifiedllvm/include/llvm/Analysis/TargetLibraryInfo.h
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
Commit 72d991c42e185d3bf248d22fe25073fbf345529f by spatel
[InstCombine] add/move tests for icmp with gep operand(s); NFC
The file was addedllvm/test/Transforms/InstCombine/icmp-gep.ll
The file was modifiedllvm/test/Transforms/InstCombine/indexed-gep-compares.ll
The file was modifiedllvm/test/Transforms/InstCombine/icmp.ll
Commit 9324cc2ca951fe5fe11c85470cb08e699c59499c by erich.keane
Change __builtin_sycl_unique_stable_name to just use an Itanium mangling

After significant problems in our downstream with the previous
implementation, the SYCL standard has opted to make using macros/etc to
change kernel-naming-lambdas in any way UB (even passively). As a
result, we are able to just emit the itanium mangling.

However, this DOES require a little work in the CXXABI, as the microsoft
and itanium mangler use different numbering schemes for lambdas.  This
patch adds a pair of mangling contexts that use the normal 'itanium'
mangling strategy to fill in the "DeviceManglingNumber" used previously
by CUDA.

Differential Revision: https://reviews.llvm.org/D110281
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/CodeGenSYCL/unique_stable_name.cpp
The file was modifiedclang/lib/AST/MicrosoftCXXABI.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/test/SemaSYCL/unique_stable_name.cpp
The file was modifiedclang/docs/LanguageExtensions.rst
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/lib/Sema/SemaSYCL.cpp
The file was modifiedclang/test/CodeGenSYCL/unique_stable_name_windows_diff.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/AST/ItaniumCXXABI.cpp
Commit 2c53215e99cbd7b24768d9f0915aff9fedfcaa4a by david.green
[ARM] Skip debug info in recomputeVPTBlockMask

The ARMLowOverheadLoops pass recalculates VPT block masks when it
converts VCMP's inside VPT blocks into VPT's. The function to do so
doesn't seem to handle debug info though, leading to invalid block
creation or asserts at compile time. Make sure the function skips any
debug info between the MVE instructions it inspects.

Differential Revision: https://reviews.llvm.org/D110564
The file was modifiedllvm/lib/Target/ARM/Thumb2InstrInfo.cpp
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vpt-block-debug.mir
Commit 1a1aed8da8c19fd58a7208be9ab5bf185474392b by spatel
[InstCombine] add tests for icmp-gep; NFC

We need more coverage for commuted and (un)signed preds to
verify that things behave as expected here. Currently, we
do not transform signed preds or non-inbounds geps.
The file was modifiedllvm/test/Transforms/InstCombine/icmp-gep.ll
Commit 1f8bead67820ed3e1ad590ae4f49433c3771f86c by spatel
[InstCombine] reduce code for swapped predicate; NFC
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit bd379915de38a9af3d65e19075a6a64ebbb8d6db by sguelton
Refine the constraint for isInlineBuiltinDeclaration

Require it to be always_inline, to more closely match how _FORITFY_SOURCE
behaves.

This avoids generation of `.inline` suffixed functions - these should always be
inlined.
The file was modifiedclang/test/CodeGen/memcpy-nobuiltin.inc
The file was modifiedclang/lib/AST/Decl.cpp
Commit 0ea77502e22115dca6bcf82f895072ec67f3d565 by sjoerd.meijer
[LoopFlatten] Updating Phi nodes after IV widening

In rG6a076fa9539e, a problem with updating the old/narrow phi nodes after IV
widening was introduced. If after widening of the IV the transformation is
*not* applied, the narrow phi node was incorrectly modified, which should only
happen if flattening happens. This can be seen in the added test widen-iv2.ll,
which incorrectly had 1 incoming value, but should have its original 2 incoming
values, which is now restored.

Differential Revision: https://reviews.llvm.org/D110234
The file was modifiedllvm/test/Transforms/LoopFlatten/widen-iv2.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopFlatten.cpp
Commit f701505c45c708338202532f0f14af55b5509794 by a.bataev
[SLP]Improve vectorization of phi nodes by trying wider vectors.

Try to improve vectorization of the PHI nodes by trying to vectorize
similar instructions at the size of the widest possible vectors, then
aggregating with compatible type PHIs and trying to vectoriza again and
only if this failed, try smaller sizes of the vector factors for
compatible PHI nodes. This restores performance of several benchmarks
after tuning of the fp/int conversion instructions costs.

Differential Revision: https://reviews.llvm.org/D108740
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
The file was modifiedllvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 73a196a11c0e6fe7bbf33055cc2c96ce3c61ff0d by jingu.kang
Recommit "[AArch64] Split bitmask immediate of bitwise AND operation"

This reverts the revert commit f85d8a5bed95cc17a452b6b63b9866fbf181d94d
with bug fixes.

Original message:

    MOVi32imm + ANDWrr ==> ANDWri + ANDWri
    MOVi64imm + ANDXrr ==> ANDXri + ANDXri

    The mov pseudo instruction could be expanded to multiple mov instructions later.
    In this case, try to split the constant operand of mov instruction into two
    bitmask immediates. It makes only two AND instructions intead of multiple
    mov + and instructions.

    Added a peephole optimization pass on MIR level to implement it.

    Differential Revision: https://reviews.llvm.org/D109963
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h
The file was addedllvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was addedllvm/test/CodeGen/AArch64/aarch64-split-and-bitmask-immediate.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/test/CodeGen/AArch64/O3-pipeline.ll
Commit 1cd3ae019892c81a8a81daf4e2baffa3be6270db by erich.keane
Fix missing return from 9324cc2ca951fe5fe11c85470cb08e699c59499c

No idea how my local machine missed this, but I saw no warning for it,
it seems to have been lost in some level of translating this back for
upstreaming.
The file was modifiedclang/lib/AST/Expr.cpp
Commit fdd8c10959544c14ddcf874fd9c2841a8bea1d21 by david.green
[ARM] Delay reverting WLS in arm-block-placement

As we have to split blocks, we may be left in an invalid loop state
after a WLS is reverted to a DLS. Instead remember the WLS that could
not be fixed and revert them after finishing processing all other loops.

Differential Revision: https://reviews.llvm.org/D110567
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wls-revert-placement.mir
The file was modifiedllvm/lib/Target/ARM/ARMBlockPlacement.cpp
Commit 86cd2369b6cd7eb17374fb31bccac7895fe34658 by mgorny
[lldb] [DynamicRegisterInfo] Refactor SetRegisterInfo()

Move the "slice" and "composite" handling into separate methods to avoid
if/else hell.  Use more LLVM types whenever possible.  Replace printf()s
with llvm::Error combined with LLDB logging.

Differential Revision: https://reviews.llvm.org/D110619
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h
Commit f3932ae1a078075e9e35f51ead3aaca05a9a23c7 by dvyukov
tsan: fix cur_thread alignment

Commit 354ded67b3 ("tsan: align ThreadState to cache line")
did an incomplete thing. It marked ThreadState as cache line
aligned, but the thread local ThreadState instance is declared
as an aligned char array with hard-coded 64-byte alignment.
On PowerPC cache line size is 128 bytes, so the hard-coded
64-byte alignment is not enough.
Use cache line alignment consistently.

Differential Revision: https://reviews.llvm.org/D110629
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl.cpp
Commit 993ada05f5a05615ec16da4a69bd368529a7e5d1 by emaste
[lldb] [unittests] Fix building the FreeBSD arm64 Register Context test

Differential Revision: https://reviews.llvm.org/D110545
The file was modifiedlldb/unittests/Process/Utility/RegisterContextFreeBSDTest.cpp
Commit b38c04ab7f8f847eac2b4b6f965137a85c967d21 by clementval
[fir][NFC] Rename operand of EmboxOp

Rename `lenParams` to `typeparams` to be in sync with fir-dev.

This patch is part of the upstreaming effort from fir-dev branch.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D110628

Co-authored-by: Jean Perier <jperier@nvidia.com>
Co-authored-by: Eric Schweitz <eschweitz@nvidia.com>
The file was modifiedflang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
The file was modifiedflang/include/flang/Optimizer/Dialect/FIROps.td
The file was modifiedflang/lib/Optimizer/Dialect/FIROps.cpp
Commit ade5023c54cffcbefe0557b5473d55b06e40809b by dvyukov
tsan: fix tls_race3 test on darwin

Darwin also needs to use __tsan_tls_initialization
to pass the test.

Differential Revision: https://reviews.llvm.org/D110631
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
Commit ccc83ac7c501c8e117753af0729414350aa9c117 by dvyukov
tsan: print a meaningful frame for stack races

Depends on D110631.

Differential Revision: https://reviews.llvm.org/D110632
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl_thread.cpp
Commit c93da7d9cf161ffda2366a96eb060c3b824cb549 by lebedev.ri
Revert "[CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux"

See original review https://reviews.llvm.org/D107799

This reverts commit f9dbca68d48e705f6d45df8f58d6b2ee88bce76c.
The file was modifiedllvm/CMakeLists.txt
Commit 9e4f1f926552ac061c79e420933ff9104ceefb87 by kazu
[SystemZ] Remove redundant declaration SystemZMnemonicSpellCheck (NFC)

Note that SystemZMnemonicSpellCheck is defined in
SystemZGenAsmMatcher.inc, which SystemZAsmParser.cpp includes.

Identified with readability-redundant-declaration.
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
Commit 70391b3468b8a4a07b49df88d7fa88c9644cda77 by quinn.pham
[PowerPC] FP compare and test XL compat builtins.

This patch is in a series of patches to provide builtins for
compatability with the XL compiler. This patch adds builtins for compare
exponent and test data class operations on floating point values.

Reviewed By: #powerpc, lei

Differential Revision: https://reviews.llvm.org/D109437
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/CodeGen/builtins-ppc-xlcompat-pwr9-error.c
The file was modifiedclang/lib/Basic/Targets/PPC.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was addedclang/test/CodeGen/builtins-ppc-xlcompat-test.c
The file was addedllvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-test.ll
Commit 091c16f76ba1e6341afd717445323f8396b7772f by wlei
[llvm-profgen] On-demand symbolization

Previously we do symbolization for all the functions and actually we only need the symbols that's hit by the samples.

This can significantly speed up the time for large size binary.

Optimization for per-inliner will come along with next patch.

Reviewed By: hoy, wenlei

Differential Revision: https://reviews.llvm.org/D110465
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.cpp
The file was modifiedllvm/tools/llvm-profgen/PerfReader.h
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.h
Commit ce40843a3fe120621bb6e4aa07dc9cbf76b6aa0e by wlei
[llvm-profgen][CSSPGO] On-demand function size computation for preinliner

Similar to https://reviews.llvm.org/D110465, we can compute function size on-demand for the functions that's hit by samples.

Here we leverage the raw range samples' address to compute a set of sample hit function. Then `BinarySizeContextTracker` just works on those function range for the size.

Reviewed By: hoy

Differential Revision: https://reviews.llvm.org/D110466
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.h
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.cpp
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.h
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
Commit aa93c55889ec6284e0337d6baf01c71dadd76043 by lebedev.ri
[X86][Costmodel] Load/store i16 Stride=6 VF=2 interleaving costs

The only sched models that for cpu's that support avx2
but not avx512 are: haswell, broadwell, skylake, zen1-3

For load we have:
https://godbolt.org/z/bhscej4WM - for intels `Block RThroughput: =13.0`; for ryzens, `Block RThroughput: <=7.0`
So pick cost of `13`.

For store we have:
https://godbolt.org/z/Yf4Pfnxbq - for intels `Block RThroughput: =10.0`; for ryzens, `Block RThroughput: <=3.5`
So pick cost of `10`.

I'm directly using the shuffling asm the llc produced,
without any manual fixups that may be needed
to ensure sequential execution.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D110590
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-6.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-6.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit b3011bcc78926686dd95bd5dbb4c2c66d8be24a2 by lebedev.ri
[X86][Costmodel] Load/store i16 Stride=6 VF=4 interleaving costs

The only sched models that for cpu's that support avx2
but not avx512 are: haswell, broadwell, skylake, zen1-3

For load we have:
https://godbolt.org/z/1Wcaf9c7T - for intels `Block RThroughput: =9.0`; for ryzens, `Block RThroughput: <=4.5`
So pick cost of `9`.

For store we have:
https://godbolt.org/z/1Wcaf9c7T - for intels `Block RThroughput: =15.0`; for ryzens, `Block RThroughput: <=6.0`
So pick cost of `15`.

I'm directly using the shuffling asm the llc produced,
without any manual fixups that may be needed
to ensure sequential execution.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D110591
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-6.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-6.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit 24e42f7d28e98152484cf9bbf8ee4080f5082da0 by lebedev.ri
[X86][Costmodel] Load/store i16 Stride=6 VF=8 interleaving costs

The only sched models that for cpu's that support avx2
but not avx512 are: haswell, broadwell, skylake, zen1-3

For load we have:
https://godbolt.org/z/3Tc5s897j - for intels `Block RThroughput: =39.0`; for ryzens, `Block RThroughput: <=13.5`
So pick cost of `39`.

For store we have:
https://godbolt.org/z/fo1h9E67e - for intels `Block RThroughput: =21.0`; for ryzens, `Block RThroughput: <=12.0`
So pick cost of `21`.

I'm directly using the shuffling asm the llc produced,
without any manual fixups that may be needed
to ensure sequential execution.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D110592
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-6.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-6.ll
Commit b6b7860954c677003a5a0b0d4071e88aa44e9081 by lebedev.ri
[X86][Costmodel] Load/store i16 Stride=6 VF=16 interleaving costs

The only sched models that for cpu's that support avx2
but not avx512 are: haswell, broadwell, skylake, zen1-3

For this tuple, measuring becomes problematic since there's a lot of spilling going on,
but apparently all these memory ops do not affect worst-case estimate at all here.

For load we have:
https://godbolt.org/z/5qGb9odP6 - for intels `Block RThroughput: <=106.0`; for ryzens, `Block RThroughput: <=34.8`
So pick cost of `106`.

For store we have:
https://godbolt.org/z/KrWcv4Ph7 - for intels `Block RThroughput: =58.0`; for ryzens, `Block RThroughput: <=20.5`
So pick cost of `58`.

I'm directly using the shuffling asm the llc produced,
without any manual fixups that may be needed
to ensure sequential execution.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D110593
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-6.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-6.ll
Commit a7d084a18de736e0ed750c67c5851fa6b2a085f5 by arthur.j.odwyer
[libc++] [compare] Rip out more vestiges of *_equality. NFCI.

There's really no reason to even have two different enums here,
but *definitely* we shouldn't have *three*, and they don't need
so many synonymous enumerator values.

Differential Revision: https://reviews.llvm.org/D110516
The file was modifiedlibcxx/include/__compare/ordering.h
Commit ee3109b044a2bb727b91df53f99483cfe7593a72 by Alexander.Richardson
[update_llc_test_checks] Baseline test for D100027

Show that we fail to generate CHECK lines for MIPS64 functions with EH.

Differential Revision: https://reviews.llvm.org/D110408
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/mips64_eh.test
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll
The file was addedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll.expected
Commit 547e5e4ae613cf5ae3727abef84d5ac0334d9987 by Alexander.Richardson
[update_llc_test_checks.py] Fix MIPS ASM regex for functions with EH

On MIPS, functions with exception handling code emits an additional
temporary label at the start of the function (due to UseAssignmentForEHBegin):

    _Z8do_catchv:                           # @_Z8do_catchv
    .Ltmp3:
    .set .Lfunc_begin0, .Ltmp3
    .cfi_startproc
    .cfi_personality 128, DW.ref.__gxx_personality_v0
    .cfi_lsda 0, .Lexception0
    .frame $c11,48,$c17
    .mask 0x00000000,0
    .fmask 0x00000000,0
    .set noreorder
    .set nomacro
    .set noat
    # %bb.0:                                # %entry

The `[^:]*` regex was terminating the search after .Ltmp<N>: and therefore
not detecting functions with exception handling.

Reviewed By: atanasyan, MaskRay

Differential Revision: https://reviews.llvm.org/D100027
The file was modifiedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll.expected
The file was modifiedllvm/utils/UpdateTestChecks/asm.py
The file was modifiedllvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/mips64_eh.ll
Commit 3c51b9e270bac26fdec1b06ae8dd72960a2353a3 by Alexander.Richardson
Fix incorrect GEP bitwidth in areNonOverlapSameBaseLoadAndStore()

When using a datalayout that has pointer index width != pointer size this
code triggers an assertion in Value::stripAndAccumulateConstantOffsets().
I encountered this this while compiling FreeBSD for CHERI-RISC-V.
Also update LoadsTest.cpp to use a DataLayout with index width != pointer
width to ensure this case is tested.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D110406
The file was modifiedllvm/unittests/Analysis/LoadsTest.cpp
The file was modifiedllvm/lib/Analysis/Loads.cpp
Commit a28177035b16e8884107be686a805f82e8f35840 by Alexander.Richardson
[UpdateTestChecks][NFC] Drop a python2 workaround
The file was modifiedllvm/utils/UpdateTestChecks/common.py
Commit d5631d49d070116ba2e23baad1ecf5f4cc08e6d1 by Alexander.Richardson
Drop REQUIRES: arm-registered-target from an IR-only test

This works just fine even if the Arm backend is not built.
The file was modifiedclang/test/CodeGen/struct-init.c
Commit 90179f2323ac4ca0ed28ee94b9a61b565c1b61b6 by Alexander.Richardson
[NFC] Add a comment to member-function-pointer-calls.cpp

Looking at this test I did not see why MinGW was using a different command
line until I looked at the git history. Add a comment explaining what this
RUN line is actually testing. Also add two more RUN lines to show that
indirectly passed member pointers don't inhibit the optimization.
The file was modifiedclang/test/CodeGenCXX/member-function-pointer-calls.cpp
Commit a18181931f991b04caea297e723db415756f09a0 by Alexander.Richardson
[NFC][clang] Add a CHECK lines to tests checking offsetof-like expressions

I am looking at constant-folding changes that could affect these tests, so
check that it emits the expected global value instead of just checking
that it doesn't crash.
The file was modifiedclang/test/CodeGen/2005-01-02-ConstantInits.c
The file was modifiedclang/test/CodeGenCXX/2005-01-03-StaticInitializers.cpp
The file was modifiedclang/test/CodeGenCXX/2008-05-07-CrazyOffsetOf.cpp
Commit fc0051011eece1448e8d7f5a478acde5b57e1887 by Alexander.Richardson
[InstCombine][ConstantFold] Baseline tests for ptrtoint(gep null, x)

Differential Revision: https://reviews.llvm.org/D110244
The file was addedllvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll
Commit 9049a1c61e9a0cfa5ba41940f2d14597b9e0c431 by Alexander.Richardson
[ConstantFolding] Fold ptrtoint(gep i8 null, x) -> x

I was looking at some missed optimizations in CHERI-enabled targets and
noticed that we weren't removing vtable indirection for calls via known
pointers-to-members. The underlying reason for this is that we represent
pointers-to-function-members as {i8 addrspace(200)*, i64} and generate the
constant offsets using (gep i8 null, <index>). We use a constant GEP here
since inttoptr should be avoided for CHERI capabilities. The pointer-to-member
call uses ptrtoint to extract the index, and due to this missing fold we can't
infer the actual value loaded from the vtable.
This is the initial constant folding change for this pattern, I will add
an InstCombine fold as a follow-up.

We could fold all inbounds GEP to null (and therefore the ptrtoint to
zero) since zero is the only valid offset for an inbounds GEP. If the
offset is not zero, that GEP is poison and therefore returning 0 is valid
(https://alive2.llvm.org/ce/z/Gzb5iH). However, Clang currently generates
inbounds GEPs on NULL for hand-written offsetof() expressions, so this
could lead to miscompilations.

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D110245
The file was modifiedllvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
Commit ebb3dc08339cd9d5c4204f0a60742514909d5acd by Alexander.Richardson
[InstCombine] Fold ptrtoint(gep i8 null, x) -> x

This commit is the InstCombine follow-up to the previous constant-folding
change that enables noticeable optimizations for CHERI-enabled targets.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D110247
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/ptrtoint-nullgep.ll
Commit 74a47e54be7992b6ccad36b53b6808a7032607c7 by i
[llvm-objdump] Fix -R display and support ET_EXEC

* Add a newline before `DYNAMIC RELOCATION RECORDS` (see D101796)
* Add the missing `OFFSET TYPE VALUE` line
* Align columns

Note: llvm-readobj/ELFDumper.cpp `loadDynamicTable` has sophisticated PT_DYNAMIC
code which is unavailable in llvm-objdump.

Reviewed By: jhenderson, Higuoxing

Differential Revision: https://reviews.llvm.org/D110595
The file was addedllvm/test/tools/llvm-objdump/ELF/dynamic-relocs.test
The file was removedllvm/test/tools/llvm-objdump/X86/elf-dynamic-relocs.test
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was removedllvm/test/tools/llvm-objdump/X86/elf-dynamic-relocs-rel.test
The file was modifiedlld/test/ELF/got32-i386-pie-rw.s
Commit 27a972a699cd875c7fa9114dc0888015cd724f31 by Yuanfang Chen
Diagnose -Wunused-value based on CFG reachability

(This relands 59337263ab45d7657e and makes sure comma operator
diagnostics are suppressed in a SFINAE context.)

While at it, add the diagnosis message "left operand of comma operator has no effect" (used by GCC) for comma operator.

This also makes Clang diagnose in the constant evaluation context which aligns with GCC/MSVC behavior. (https://godbolt.org/z/7zxb8Tx96)

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D103938
The file was modifiedclang/test/SemaCXX/sizeless-1.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/Parser/cxx1z-init-statement.cpp
The file was modifiedclang/test/CXX/drs/dr14xx.cpp
The file was modifiedclang/test/SemaCXX/constant-expression.cpp
The file was modifiedclang/test/SemaCXX/expression-traits.cpp
The file was modifiedclang/test/Parser/objcxx11-attributes.mm
The file was modifiedclang/test/Analysis/dead-stores.c
The file was modifiedclang/test/SemaCXX/warn-comma-operator.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/test/Frontend/fixed_point_crash.c
The file was modifiedclang/test/PCH/cxx-explicit-specifier.cpp
The file was modifiedclang/test/Sema/switch-1.c
The file was modifiedclang/test/Sema/warn-unused-value.c
The file was modifiedclang/test/Sema/i-c-e.c
The file was modifiedclang/test/SemaCXX/matrix-type-operators.cpp
The file was modifiedclang/test/SemaCXX/attr-annotate.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/test/SemaTemplate/lambda-capture-pack.cpp
The file was modifiedclang/test/SemaCXX/vector.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/test/CodeCompletion/pragma-macro-token-caching.c
The file was modifiedclang/test/Sema/sizeless-1.c
The file was modifiedclang/test/Parser/cxx0x-ambig.cpp
The file was modifiedclang/test/SemaTemplate/derived.cpp
The file was modifiedclang/test/Parser/objc-messaging-1.m
The file was modifiedclang/test/CXX/drs/dr7xx.cpp
The file was modifiedclang/test/SemaCXX/builtin-constant-p.cpp
The file was modifiedclang/test/SemaCXX/warn-unused-value.cpp
The file was modifiedclang/test/Sema/warn-type-safety.c
The file was modifiedclang/test/CXX/drs/dr20xx.cpp
The file was modifiedclang/test/Parser/objc-try-catch-1.m
The file was modifiedclang/test/Parser/cxx-ambig-decl-expr.cpp
The file was modifiedclang/test/SemaCXX/constant-expression-cxx2a.cpp
The file was modifiedclang/test/Sema/vla-2.c
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/Sema/exprs.c
The file was modifiedclang/test/CXX/basic/basic.link/p8.cpp
The file was modifiedclang/test/SemaCXX/overloaded-operator.cpp
The file was modifiedclang/test/CXX/temp/temp.constr/temp.constr.constr/partial-specializations.cpp
The file was modifiedclang/test/Sema/const-eval.c
Commit bddc04bc4cd5fed35b5fc10955612b6718696a95 by llvm-dev
[CostModel][X86] Add SSE2/AVX1/AVX512BW test coverage for i16 interleaved load/store
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-3.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-6.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-6.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-2.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-3.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-4.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-2.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-5.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-store-i16-stride-5.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-4.ll
Commit 56e681afcce53d2a6eb1df2724c715bd95a43a25 by paul.robinson
[TargetLibraryInfo] Pick new/delete calls by target

There are two sets of new/delete functions, one with Windows/MSVC
mangling and one with Itanium mangling. Mark one set or the other
as unavailable depending on the target.

Split the test malloc-free-delete.ll into three parts: malloc-free.dll
for the C API tests, new-delete-itanium.ll and new-delete-msvc.ll for
the target-specific new/delete tests.

Differential Revision: https://reviews.llvm.org/D110419
The file was addedllvm/test/Transforms/InstCombine/malloc-free.ll
The file was addedllvm/test/Transforms/InstCombine/new-delete-msvc.ll
The file was removedllvm/test/Transforms/InstCombine/malloc-free-delete.ll
The file was addedllvm/test/Transforms/InstCombine/new-delete-itanium.ll
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
Commit 1b998a5f0cd9a4f278dd2d114845379a0fafa0a5 by Adrian Prantl
Add salvageDebugInfo support for truncating/extending ptr/int conversions.

This patch enables debug info salvaging for truncating/extending ptr
int conversions. The testcase uncovered a bug in adce, which is
addressed separately.

rdar://80227769

Differential Revision: https://reviews.llvm.org/D110461
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was addedllvm/test/Transforms/Util/salvage-debuginfo.ll
Commit 9637b045e6eee71cd34f0f2f80a2ae1ad2a71129 by Adrian Prantl
Improve the effectiveness of ADCE's debug info salvaging

This patch improves the effectiveness of ADCE's debug info salvaging
by processing the instructions in reverse order and delaying
dropAllReferences until after debug info salvaging. This allows
salvaging of entire chains of deleted instructions!

Previously we would remove all references from an instruction, which
would make it impossible to use that instruction to salvage a later
instruction in the instruction stream, because its operands were
already removed.

Differential Revision: https://reviews.llvm.org/D110462
The file was modifiedllvm/lib/Transforms/Scalar/ADCE.cpp
The file was modifiedllvm/test/Transforms/Util/salvage-debuginfo.ll
Commit f6954bf80472cbfc06e39dac75a4a72120c9bd15 by Adrian Prantl
Improve the effectiveness of BDCE's debug info salvaging

This patch improves the effectiveness of BDCE's debug info salvaging
by processing the instructions in reverse order and delaying
dropAllReferences until after debug info salvaging. This allows
salvaging of entire chains of deleted instructions!

Previously we would remove all references from an instruction, which
would make it impossible to use that instruction to salvage a later
instruction in the instruction stream, because its operands were
already removed.

Differential Revision: https://reviews.llvm.org/D110568
The file was modifiedllvm/test/Transforms/Util/salvage-debuginfo.ll
The file was modifiedllvm/lib/Transforms/Scalar/BDCE.cpp
Commit 43c543aab7e3e6d5727097600ef13a352d1fb4e9 by michaelrj
[libc][NFC] Make strchr and strrchr more consistent

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D110581
The file was modifiedlibc/src/string/strchr.cpp
The file was modifiedlibc/src/string/strrchr.cpp
Commit 9e7fdcbafed90e8946ecd4d8b118786b12905595 by Lang Hames
[MCJIT] Mark test-global-ctors as UNSUPPORTED on Darwin, rather than XFAIL.

MachO doesn't have a '.text.startup' -- this is just plain unsupported.
The file was modifiedllvm/test/ExecutionEngine/MCJIT/test-global-ctors.ll
Commit ab5e6e7434ebc67e89332d4401926978c8fb143b by Lang Hames
[llvm-jitlink] Add a -slab-page-size option to override process page size.

The slab allocator is frequently used in -noexec tests where we want a
consistent memory layout. In this context we also want to set the effective
page size, rather than using the page size of the host process, since not all
systems use the same page size. The -slab-page-size option allows us to set
the page size for such tests.

The -slab-page-size option will also be honored in exec mode when using the
slab allocator, but will trigger an error if the requested size is not a
multiple of the actual process page size.

This option was motivated by test failures on a ppc64 bot that was returning
zero from sys::Process::getPageSize(), so it also contains a check for errors
and zero results from that function if the -slab-page-size option is absent.

Existing slab allocator tests will be updated to use this option in a follow-up
commit so that we can point the failing bot at this commit and observe errors
associated with sys::Process::getPageSize().
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
Commit 85f612efeb352e759f120ee183bf31b1fd7e801a by dblaikie
DebugInfo: Use sugared function type when emitting function declarations for call sites

Otherwise we're losing type information for these functions.
The file was modifiedclang/test/CodeGen/debug-info-extern-call.c
The file was modifiedclang/lib/CodeGen/CGDebugInfo.h
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
Commit be610932fa068ed2228b0f694ae80c9294f0293f by anton
[MSP430][Clang] Remove support for -mmcu=msp430

The -mmcu= option accepts a generic MCU named "msp430", which sets the
CPU to msp430 and disables hardware multiply support.

The current purpose of accepting this value is to allow -mmcu= to be
used as an alias for -mcpu=, however there are some downsides to doing
this. -mmcu= provides additional features that will interfere
with the expected behavior if the user tries to to use it as an alias
for -mcpu=.

-mmcu=msp430 will conflict with -mhwmult=, since the "msp430" MCU is
defined to have no hardware multiply support, so the user will not be
able to set an explicit hardware multiply version.

-mmcu=msp430 will put "-Tmsp430.ld" on the linker command line, however
TI's support files do not provide a linker script with this name and so
the user would have to explicitly create it.

Differential Revision: https://reviews.llvm.org/D108299
The file was modifiedclang/test/Driver/msp430-mmcu.c
The file was modifiedclang/include/clang/Basic/MSP430Target.def
Commit 113fa82c3ca4d4fc8310a1de3c4ec31343f81542 by gareevroman
[Polly] Check the properties of accesses to operands of a matrix-matrix
multiplication

The following code modifies elements of the array D.

    for (i = 0; i < _PB_NI; i++)
      for (j = 0; j < _PB_NJ; j++)
      {
        for (k = 0; k < _PB_NK; k++)
        {
          double Mul = A[i][k] * B[k][j];
          D[i][j][k] += Mul;
          C[i][j] += Mul;
        }
      }

Nevertheless, the code is recognised as a matrix-matrix multiplication, since
the second and third dimensions of D are accessed with non-zero strides.

This fixes the typo, which was made during the translation to C++ bindings
(https://reviews.llvm.org/D35845).

Reviewed By: Michael Kruse <llvm@meinersbur.de>

Differential Revision: https://reviews.llvm.org/D110491
The file was addedpolly/test/ScheduleOptimizer/pattern-matching-based-opts_15.ll
The file was modifiedpolly/lib/Transform/MatmulOptimizer.cpp
Commit 5c3c716bb1f5b209b42973790fc85ad241e7f86a by sivachandra
[libc] Add FE_DFL_ENV and handle it in fesetenv.

Reviewed By: michaelrj

Differential Revision: https://reviews.llvm.org/D110611
The file was modifiedlibc/config/linux/api.td
The file was modifiedlibc/spec/stdc.td
The file was modifiedlibc/test/src/fenv/CMakeLists.txt
The file was modifiedlibc/src/__support/FPUtil/aarch64/FEnvImpl.h
The file was modifiedlibc/test/src/fenv/getenv_and_setenv_test.cpp
The file was modifiedlibc/src/__support/FPUtil/x86_64/FEnvImpl.h
Commit bfa50250b6429e9e55f849c07c11ece33e9340cd by Vitaly Buka
[NFC][sanitizer] Clang-format some code
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stackdepot.cpp
Commit fd582eeffe582665eacac522617a15e17e9872cd by tra
[CUDA] Move CUDA SDK include path further down the include search path.

This allows clang to work on Linux distributions like Debian where
<CUDA-PATH>/include may be a symlink to /usr/include. We only need
`cuda_wrappers` to be present before the standard C++ library headers.
The CUDA SDK headers themselves do not need to be found that early.

This addresses https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=995122
mentioned in post-commit comments on D108247

Differential Revision: https://reviews.llvm.org/D110596
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/test/Driver/cuda-detect.cu
Commit 0d76d4833dd2815e0b1c786250f474d222f6a0a1 by kda
Revert "Simplify handling of builtin with inline redefinition"

This reverts commit 3d6f49a56995b845c40be5827ded5d1e3f692cec.

Broke bot: https://lab.llvm.org/buildbot/#/builders/5/builds/12360
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/test/CodeGen/pr9614.c
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was addedclang/test/CodeGen/memcpy-no-nobuiltin-if-not-emitted.c
The file was removedclang/test/CodeGen/memcpy-inline-builtin.c
The file was modifiedclang/test/CodeGen/memcpy-nobuiltin.c
Commit c6edf26f9a283564a5697068c845a8ff03386086 by Akira
[docs ]Fix indentation
The file was modifiedclang/docs/Block-ABI-Apple.rst
Commit 09c575e728e2f24f76ea7f562e61fccaa225d72d by spatel
[InstCombine] add/move tests for shl with binop; NFC
The file was removedllvm/test/Transforms/InstCombine/pr19420.ll
The file was modifiedllvm/test/Transforms/InstCombine/shift.ll
The file was addedllvm/test/Transforms/InstCombine/shl-bo.ll
Commit 9b944c184396ce55a3ad608779cc326ba12c9ee3 by aaron
Revert "Add support for `NOLINTBEGIN` ... `NOLINTEND` comments"

This reverts commit c0687e1984a82925918c874b7bb68ad34c32aed0.

There are testing failures being caught by bots.
See http://45.33.8.238/linux/56886/step_8.txt as an example.
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-mismatched-check-names.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/Inputs/nolintbeginend/nolint_in_include.inc
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/infrastructure/nolint.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/infrastructure/nolintnextline.cpp
The file was modifiedclang-tools-extra/docs/clang-tidy/index.rst
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-end-at-sof.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-global-end-specific.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-at-eof.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-mismatched-delims.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend.cpp
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-end-without-begin.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-typo-in-check-name.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/Inputs/nolintbeginend/error_in_include.inc
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-specific-end-global.cpp
The file was removedclang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-without-end.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
Commit b9f547e8e51182d32f1912f97a3e53f4899ea6be by leonardchan
[llvm][profile] Add padding after binary IDs

Some tests with binary IDs would fail with error: no profile can be merged.
This is because raw profiles could have unaligned headers when emitting binary
IDs. This means padding should be emitted after binary IDs are emitted to
ensure everything else is aligned. This patch adds padding after each binary ID
to ensure the next binary ID size is 8-byte aligned. This also adds extra
checks to ensure we aren't reading corrupted data when printing binary IDs.

Differential Revision: https://reviews.llvm.org/D110365
The file was addedllvm/test/tools/llvm-profdata/insufficient-binary-ids-size.test
The file was modifiedcompiler-rt/lib/profile/InstrProfilingPlatformLinux.c
The file was addedllvm/test/tools/llvm-profdata/large-binary-id-size.test
The file was modifiedllvm/lib/ProfileData/InstrProfReader.cpp
The file was addedcompiler-rt/test/profile/Linux/binary-id-padding.c
The file was addedllvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
The file was addedllvm/test/tools/llvm-profdata/binary-ids-padding.test
Commit c3717b6858d32d64514a187ede1a77be8ba4e542 by sguelton
Simplify handling of builtin with inline redefinition

(This is a recommit of 3d6f49a56995b845 that should no longer break validation since
bd379915de38a9af3d65e1).

It is a common practice in glibc header to provide an inline redefinition of an
existing function. It is especially the case for fortified function.

Clang currently has an imperfect approach to the problem, using a combination of
trivially recursive function detection and noinline attribute.

Simplify the logic by suffixing these functions by `.inline` during codegen, so
that they are not recognized as builtin by llvm.

After that patch, clang passes all tests from https://github.com/serge-sans-paille/fortify-test-suite

Differential Revision: https://reviews.llvm.org/D109967
The file was removedclang/test/CodeGen/memcpy-no-nobuiltin-if-not-emitted.c
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was addedclang/test/CodeGen/memcpy-inline-builtin.c
The file was modifiedclang/test/CodeGen/memcpy-nobuiltin.c
The file was modifiedclang/test/CodeGen/pr9614.c
Commit a03cf331e1e9dfb43d7cba750296cd3b78e83cf3 by wlei
[llvm-profgen] Strip context to support non-CS profile generation for hybrid sample

Differential Revision: https://reviews.llvm.org/D109769
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
The file was modifiedllvm/test/tools/llvm-profgen/inline-cs-noprobe.test
The file was modifiedllvm/tools/llvm-profgen/llvm-profgen.cpp
The file was modifiedllvm/test/tools/llvm-profgen/noinline-cs-noprobe.test
The file was modifiedllvm/tools/llvm-profgen/PerfReader.h
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.h
Commit 03ce0841daf8386ed6950c73b9a66ddc3fe93e34 by anna
Add profile count. Regenerate check lines. NFC

Function profile counts added to test cases. Regenerated test lines for
loop predication test.
The file was modifiedllvm/test/Transforms/LoopPredication/profitability.ll
Commit abbbc480a152c1afbac215064f22ae07c87ed964 by nikita.ppv
Revert "Improve the effectiveness of BDCE's debug info salvaging"

This reverts commit f6954bf80472cbfc06e39dac75a4a72120c9bd15.

This breaks the test-suite O3 build:

/home/nikic/llvm-test-suite/build-O3/tools/timeit --summary Bitcode/Benchmarks/Halide/local_laplacian/CMakeFiles/halide_local_laplacian.dir/local_laplacian.bc.o.time /home/nikic/llvm-project/build/bin/clang++  -DNDEBUG  -O3   -w -Werror=date-time -save-stats=obj -save-stats=obj -std=c++11 -MD -MT Bitcode/Benchmarks/Halide/local_laplacian/CMakeFiles/halide_local_laplacian.dir/local_laplacian.bc.o -MF Bitcode/Benchmarks/Halide/local_laplacian/CMakeFiles/halide_local_laplacian.dir/local_laplacian.bc.o.d -o Bitcode/Benchmarks/Halide/local_laplacian/CMakeFiles/halide_local_laplacian.dir/local_laplacian.bc.o -c ../Bitcode/Benchmarks/Halide/local_laplacian/local_laplacian.bc
While deleting: i64 %
Use still stuck around after Def is destroyed:  %12620 = mul i64 %12619, <badref>
clang++: /home/nikic/llvm-project/llvm/lib/IR/Value.cpp:103: llvm::Value::~Value(): Assertion `materialized_use_empty() && "Uses remain when a value is destroyed!"' failed.
The file was modifiedllvm/lib/Transforms/Scalar/BDCE.cpp
The file was modifiedllvm/test/Transforms/Util/salvage-debuginfo.ll
Commit 1ecb1bc3e214c8da53a7fda14f428786441109d7 by sguelton
Fix memcpy-nobuiltin.c test case

Make it more generic by accepting weak_odr and dso_local specifiers.

Differential Revision: https://reviews.llvm.org/D109967
The file was modifiedclang/test/CodeGen/memcpy-nobuiltin.c
Commit d486c5b11757be769051c1b2b6d6a18e2857dbbd by Louis Dionne
[libc++] Clarify the name of Lit features related to standard library selection

Before this patch, we had features named 'libc++', 'libstdc++' and
'msvc' to describe the three implementations that use our test suite.
This patch renames them to 'stdlib=libc++', 'stdlib=libstdc++', etc
to avoid confusion between MSVC's STL and the MSVC compiler (or Clang
in MSVC mode).

Furthermore, this prepares the terrain for adding support for additional
"implementations" to the test suite. Basically, I'd like to be able to
treat Apple's libc++ differently from LLVM's libc++ for the purpose of
testing, because those effectively behave in different ways in some aspects.
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bmh/default.pass.cpp
The file was modifiedlibcxx/utils/libcxx/test/params.py
The file was modifiedlibcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.random.access/contiguous_iterator.verify.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp
The file was modifiedlibcxx/test/std/utilities/charconv/charconv.from.chars/integral.roundtrip.pass.cpp
The file was modifiedlibcxx/test/std/utilities/charconv/charconv.to.chars/integral.bool.fail.cpp
The file was modifiedlibcxx/test/std/ranges/range.adaptors/range.transform/adaptor.nodiscard.verify.cpp
The file was modifiedlibcxx/test/std/utilities/charconv/charconv.to.chars/integral.pass.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bm/pred.pass.cpp
The file was modifiedlibcxx/test/std/input.output/iostreams.base/ios.base/ios.base.storage/iword.pass.cpp
The file was modifiedlibcxx/test/std/ranges/range.access/range.access.end/incomplete.verify.cpp
The file was modifiedlibcxx/test/std/ranges/range.access/range.access.cbegin/incomplete.verify.cpp
The file was modifiedlibcxx/test/libcxx/memory/allocator_volatile.verify.cpp
The file was modifiedlibcxx/test/std/utilities/charconv/charconv.from.chars/integral.bool.fail.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pass.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pass.cpp
The file was modifiedlibcxx/test/std/input.output/iostreams.base/ios.base/ios.base.storage/pword.pass.cpp
The file was modifiedlibcxx/test/std/ranges/range.access/range.access.begin/incomplete.verify.cpp
The file was modifiedlibcxx/test/std/ranges/range.access/range.prim/empty.incomplete.verify.cpp
The file was modifiedlibcxx/test/std/ranges/range.access/range.access.cend/incomplete.verify.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bm/hash.pred.pass.cpp
The file was modifiedlibcxx/test/std/utilities/charconv/charconv.from.chars/integral.pass.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bm/default.pass.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bmh/hash.pred.pass.cpp
The file was modifiedlibcxx/test/std/ranges/range.adaptors/range.all/all.nodiscard.verify.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.search/func.search.bmh/pred.pass.cpp
The file was modifiedlibcxx/test/std/ranges/range.access/range.prim/data.incomplete.verify.cpp
The file was modifiedlibcxx/test/std/utilities/intseq/intseq.make/make_integer_seq.fail.cpp
The file was modifiedlibcxx/test/std/strings/c.strings/cuchar.pass.cpp
The file was modifiedlibcxx/test/std/utilities/intseq/intseq.make/make_integer_seq_fallback.compile.fail.cpp
Commit abab0dbde233d33af5f815e04a8313e7593797a3 by Lang Hames
[llvm-jitlink] Add -slab-page-size to tests that need it.

Also fixes 80-column rule violations.
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/MachO_x86-64_relocations.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/RISCV/ELF_abs_reloc.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/RISCV/ELF_pc_indirect.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_large_pic_relocations.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/RISCV/ELF_riscv64_got_plt_reloc.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_small_pic_relocations.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/MachO_GOTAndStubsOptimization.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86_64_absolute_relocations.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/RISCV/ELF_riscv32_got_plt_reloc.s
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_got_plt_optimizations.s
Commit b12e4c17e07b42559fea219034dd162de25df498 by thomasraoux
[mlir] Fix bug in FoldSubview with rank reducing subview

Fix how we calculate the new permutation map of the transfer ops.

Differential Revision: https://reviews.llvm.org/D110638
The file was modifiedmlir/test/Dialect/MemRef/fold-subview-ops.mlir
The file was modifiedmlir/lib/Dialect/MemRef/Transforms/FoldSubViewOps.cpp
Commit 595c418ad6a1230103000dcebdb158129d033077 by i
[LTO] Avoid repeated Triple construction. NFC
The file was modifiedllvm/lib/LTO/LTO.cpp
Commit 6c1a58fe51bc41e28371132380ccd4a8cd2e3e11 by spatel
[InstCombine] add multi-use tests for shl folds; NFC
The file was modifiedllvm/test/Transforms/InstCombine/shl-bo.ll
Commit 98fde3489a6d9ed3fa409623036e5ba5b99f1404 by spatel
[InstCombine] reduce redundant code for shl-binop folds

This is NFCI (no-functional-change-intended), but there
are benign diffs possible with commutable ops as seen in
the test diffs.

The transforms were repeated for the commutative opcodes,
but that should not be necessary if we canonicalize the
patterns that we're matching. If both operands of the
binop match, that should get folded eventually.

The transform that starts with a mask op seems to
over-constrain the use checks, so that could be a
potential enhancement.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/shl-bo.ll
Commit 8379fc4a53cfd9e1a0280d60908ad4a171ad977d by sivachandra
[libc] Add implementations of the C standard condition variable functions.

Reviewed By: michaelrj

Differential Revision: https://reviews.llvm.org/D108948
The file was modifiedlibc/src/threads/linux/cnd_destroy.cpp
The file was modifiedlibc/test/src/threads/CMakeLists.txt
The file was modifiedlibc/src/threads/linux/CMakeLists.txt
The file was modifiedlibc/src/threads/linux/cnd_broadcast.cpp
The file was addedlibc/src/threads/linux/CndVar.h
The file was modifiedlibc/src/threads/linux/cnd_wait.cpp
The file was addedlibc/test/src/threads/cnd_test.cpp
The file was modifiedlibc/src/threads/linux/cnd_init.cpp
The file was modifiedlibc/src/threads/linux/cnd_signal.cpp
Commit 2943071e2ee0c7f31f34062a44d12aeb0e3a66fd by aeubanks
[clang] Rework dontcall attributes

To avoid using the AST when emitting diagnostics, split the "dontcall"
attribute into "dontcall-warn" and "dontcall-error", and also add the
frontend attribute value as the LLVM attribute value. This gives us all
the information to report diagnostics we need from within the IR (aside
from access to the original source).

One downside is we directly use LLVM's demangler rather than using the
existing Clang diagnostic pretty printing of symbols.

Reviewed By: nickdesaulniers

Differential Revision: https://reviews.llvm.org/D110364
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedllvm/test/ThinLTO/X86/dontcall.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/test/CodeGen/X86/attr-dontcall.ll
The file was modifiedclang/test/CodeGen/attr-error.c
The file was modifiedclang/test/CodeGen/attr-warning.c
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedclang/test/Frontend/backend-attribute-error-warning-optimize.c
The file was modifiedclang/test/Frontend/backend-attribute-error-warning.c
The file was modifiedllvm/include/llvm/IR/DiagnosticInfo.h
The file was addedclang/test/Frontend/backend-attribute-error-warning.cpp
The file was modifiedllvm/lib/IR/DiagnosticInfo.cpp
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
Commit 952f030fe6ade193ead8f23a7654cf8d2c7aa3df by aeubanks
[test] Pin some RUN lines in optimization-remark.c to new PM

Some people downstream are reporting that this test fails. I've been
unable to reproduce, but there is indeed something spooky going on.
Pinning to the new PM suppresses the failure. I'm continuing to
investigate this.
The file was modifiedclang/test/Frontend/optimization-remark.c
Commit 86df5a2fa832cdb42928c7a6670eb927f04b98d4 by Louis Dionne
[libc++] Simplify std::ranges::subrange

Instead of using a base class to store the members and the optional
size, use [[no_unique_address]] to achieve the same thing without
needing a base class.

Also, as a fly-by:
- Change subrange from struct to class (per the standard)
- Improve the diagnostic for when one doesn't provide a size to the ctor of a sized subrange
- Replace this->member by just member since it's not in a dependent base anymore

This change would be an ABI break due to [[no_unique_address]], but we
haven't shipped ranges anywhere yet, so this shouldn't affect anyone.

Differential Revision: https://reviews.llvm.org/D110370
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctor.default.pass.cpp
The file was modifiedlibcxx/include/__ranges/subrange.h
Commit 7ab14b8886d9ddaca1f8fc8a34ef8f03af208f26 by amy.zhuang
[mlir] Unroll-and-jam loops with iter_args.

Unroll-and-jam currently doesn't work when the loop being unroll-and-jammed
or any of its inner loops has iter_args. This patch modifies the
unroll-and-jam utility to support loops with iter_args.

Reviewed By: bondhugula

Differential Revision: https://reviews.llvm.org/D110085
The file was modifiedmlir/include/mlir/Transforms/LoopUtils.h
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/lib/Dialect/Affine/IR/AffineOps.cpp
The file was modifiedmlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp
The file was modifiedmlir/test/Dialect/Affine/unroll-jam.mlir
The file was modifiedmlir/include/mlir/Analysis/AffineAnalysis.h
The file was modifiedmlir/lib/Analysis/AffineAnalysis.cpp
The file was modifiedmlir/include/mlir/Dialect/Affine/IR/AffineOps.td
Commit b69a2c8eeca1fee26283ca4c2f99c787aabba067 by aeubanks
Revert "[test] Pin some RUN lines in optimization-remark.c to new PM"

This reverts commit 952f030fe6ade193ead8f23a7654cf8d2c7aa3df.

Causes bot failures.
The file was modifiedclang/test/Frontend/optimization-remark.c
Commit 7833d20f1fd575fac89ce76822ffd561a40552e5 by aeubanks
Revert "[clang] Rework dontcall attributes"

This reverts commit 2943071e2ee0c7f31f34062a44d12aeb0e3a66fd.

Breaks bots
The file was modifiedllvm/lib/IR/DiagnosticInfo.cpp
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
The file was removedclang/test/Frontend/backend-attribute-error-warning.cpp
The file was modifiedclang/test/Frontend/backend-attribute-error-warning.c
The file was modifiedllvm/test/CodeGen/X86/attr-dontcall.ll
The file was modifiedclang/test/CodeGen/attr-warning.c
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/test/CodeGen/attr-error.c
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was modifiedllvm/include/llvm/IR/DiagnosticInfo.h
The file was modifiedllvm/test/ThinLTO/X86/dontcall.ll
The file was modifiedclang/test/Frontend/backend-attribute-error-warning-optimize.c
Commit 55dfab39a2490e895f80412c4ce9ce4b276b74e9 by ezhulenev
Rename target block size to min task size for clarity.

Reviewed By: ezhulenev

Differential Revision: https://reviews.llvm.org/D110604
The file was modifiedmlir/include/mlir/Dialect/Async/Passes.td
The file was modifiedmlir/test/Integration/Dialect/Async/CPU/test-async-parallel-for-1d.mlir
The file was modifiedmlir/lib/Dialect/Async/Transforms/AsyncParallelFor.cpp
The file was modifiedmlir/test/Integration/Dialect/Async/CPU/test-async-parallel-for-2d.mlir
Commit bdde959533f05d7d191cabce4d62216754802014 by ezhulenev
Remove unnecessary async group creates and awaits.

Reviewed By: ezhulenev

Differential Revision: https://reviews.llvm.org/D110605
The file was modifiedmlir/lib/Dialect/Async/Transforms/AsyncParallelFor.cpp
The file was modifiedmlir/test/Dialect/Async/async-parallel-for-async-dispatch.mlir
Commit 38c42d42eb3f88800c5d8e0657851551f89b2e90 by ivan.zhechev
Flang OpenMP Report Plugin

This plugin parses Fortran files and creates a
YAML report with all the OpenMP constructs and
clauses seen in the file.

The following tests have been modified to be
compatible for testing the plugin, hence why
they are not reused from another directory:

- omp-atomic.f90
- omp-declarative-directive.f90
- omp-device-constructs.f90

The plugin outputs a single file in the same
directory as the source file in the following format:
`<source-file-name>.yaml`

Building the plugin:
`ninja flangOmpReport`

Running the plugin:
`./bin/flang-new -fc1 -load lib/flangOmpReport.so -plugin flang-omp-report -fopenmp <source_file.f90>`

Co-authored-by: Kiran Chandramohan <kiran.chandramohan@arm.com>
Co-authored-by: Stuart Ellis <stuart.ellis@arm.com>

Reviewed By: awarzynski, kiranchandramohan

Differential Revision: https://reviews.llvm.org/D109890
The file was addedflang/test/Examples/omp-device-constructs.f90
The file was addedflang/examples/flang-omp-report-plugin/flang-omp-report-visitor.cpp
The file was addedflang/examples/flang-omp-report-plugin/flang-omp-report.cpp
The file was addedflang/examples/flang-omp-report-plugin/CMakeLists.txt
The file was addedflang/test/Examples/omp-declarative-directive.f90
The file was addedflang/examples/flang-omp-report-plugin/flang-omp-report-visitor.h
The file was addedflang/test/Examples/omp-atomic.f90
The file was modifiedflang/examples/CMakeLists.txt
Commit f9b3c18e74729b89d8ffa7351a4ed146526ce85a by smeenai
[CodeGen] Fix wrapping personality symbol on ARM

The ARM backend was explicitly setting global binding on the personality
symbol. This was added without any comment in a7ec2dcefd954, which
introduced EHABI support (back in 2011). None of the other backends do
anything equivalent, as far as I can tell.

This causes problems when attempting to wrap the personality symbol.
Wrapped symbols are marked as weak inside LTO to inhibit IPO (see
https://reviews.llvm.org/D33621). When we wrap the personality symbol,
it initially gets weak binding, and then the ARM backend attempts to
change the binding to global, which causes an error in MC because of
attempting to change the binding of a symbol from non-global to global
(the error was added in https://reviews.llvm.org/D90108).

Simply drop the ARM backend's explicit global binding setting to fix
this. This matches all the other backends, and a large internal
application successfully linked and ran with this change, so it
shouldn't cause any problems. Test via LLD, since wrapping is required
to exhibit the issue.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D110609
The file was addedlld/test/ELF/lto/arm-wrap-personality.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/ARMException.cpp
Commit 4f38f0640dd727740cd027f9b178fb9f5ca0406f by rob.suderman
[mlir][tosa] Add i32 to supported quantized type

Quantized int type should include I32 types as its the output of a quantizd
convolution or matmul operation.

Reviewed By: NatashaKnk

Differential Revision: https://reviews.llvm.org/D110651
The file was modifiedmlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
Commit aa53785f23b2b89a9a423af131697b1f7c92869f by aeubanks
Reland [clang] Rework dontcall attributes

To avoid using the AST when emitting diagnostics, split the "dontcall"
attribute into "dontcall-warn" and "dontcall-error", and also add the
frontend attribute value as the LLVM attribute value. This gives us all
the information to report diagnostics we need from within the IR (aside
from access to the original source).

One downside is we directly use LLVM's demangler rather than using the
existing Clang diagnostic pretty printing of symbols.

Previous revisions didn't properly declare the new dependencies.

Reviewed By: nickdesaulniers

Differential Revision: https://reviews.llvm.org/D110364
The file was modifiedclang/test/CodeGen/attr-error.c
The file was modifiedclang/test/Frontend/backend-attribute-error-warning-optimize.c
The file was modifiedclang/lib/CodeGen/CMakeLists.txt
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedclang/test/Frontend/backend-attribute-error-warning.c
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was modifiedllvm/include/llvm/IR/DiagnosticInfo.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedllvm/test/ThinLTO/X86/dontcall.ll
The file was modifiedllvm/lib/IR/DiagnosticInfo.cpp
The file was modifiedclang/test/CodeGen/attr-warning.c
The file was addedclang/test/Frontend/backend-attribute-error-warning.cpp
The file was modifiedllvm/test/CodeGen/X86/attr-dontcall.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
Commit 204d301bb1921431a853c0bfba32007c018df1d5 by silvasean
[mlir][Python] Fix lifetime of ExecutionEngine runtime functions.

We weren't retaining the ctypes closures that the ExecutionEngine was
calling back into, leading to mysterious errors.

Open to feedback about how to test this. And an extra pair of eyes to
make sure I caught all the places that need to be aware of this.

Differential Revision: https://reviews.llvm.org/D110661
The file was modifiedmlir/python/mlir/execution_engine.py
The file was modifiedmlir/lib/Bindings/Python/ExecutionEngineModule.cpp
Commit 7c1128f3bb6451e2bdced8f3f83f571c52e2a849 by Vitaly Buka
[NFC][sanitizer] Return StackDepotStats by value

Differential Revision: https://reviews.llvm.org/D110644
The file was modifiedcompiler-rt/lib/sanitizer_common/tests/sanitizer_chained_origin_depot_test.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
The file was modifiedcompiler-rt/lib/msan/msan_chained_origin_depot.h
The file was modifiedcompiler-rt/lib/msan/msan_report.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_chained_origin_depot.h
The file was modifiedcompiler-rt/lib/msan/msan_chained_origin_depot.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stackdepot.cpp
The file was modifiedcompiler-rt/lib/asan/asan_stats.cpp
The file was modifiedcompiler-rt/lib/hwasan/hwasan.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_chained_origin_depot.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stackdepotbase.h
The file was modifiedcompiler-rt/lib/memprof/memprof_stats.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_stackdepot.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cpp
Commit a36227cb2b6a14fc30bfd303328d1d1abb632010 by fgrim
fixes bug #51926 where dangling comma caused overrun

bug 51926 identified an issue where a dangling comma caused the cell count to be to off by one

Differential Revision: https://reviews.llvm.org/D110481
The file was modifiedclang/lib/Format/WhitespaceManager.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
Commit 5cf0606140974b7560490778725c134eb35f0cc7 by thakis
[clang] Let PPCallbacks::PragmaWarning() pass specifier as enum instead of string

Differential Revision: https://reviews.llvm.org/D110635
The file was modifiedclang/include/clang/Lex/PPCallbacks.h
The file was modifiedclang-tools-extra/pp-trace/PPCallbacksTracker.h
The file was modifiedclang/lib/Frontend/PrintPreprocessedOutput.cpp
The file was modifiedclang-tools-extra/pp-trace/PPCallbacksTracker.cpp
The file was modifiedclang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
The file was modifiedclang-tools-extra/test/pp-trace/pp-trace-pragma-ms.cpp
The file was modifiedclang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
The file was modifiedclang/lib/Lex/Pragma.cpp
Commit b62d72f3c542729349633c5f77697fe24921251d by michaelrj
[libc] Add support for 128 bit ints in limits.h

Also, this adds unit tests to check that limits.h complies with the C
standard.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D110643
The file was modifiedlibc/utils/CPP/TypeTraits.h
The file was addedlibc/test/utils/CPP/limits_test.cpp
The file was modifiedlibc/utils/CPP/Limits.h
The file was modifiedlibc/utils/UnitTest/LibcTest.cpp
The file was modifiedlibc/test/utils/CPP/CMakeLists.txt
Commit 15a24e1fdbc446bc3d0fa0bf6c2a1aa44281cc75 by Jessica Paquette
[GlobalISel] Combine mulo x, 2 -> addo x, x

Similar to what SDAG does when it sees a smulo/umulo against 2
(see: `DAGCombiner::visitMULO`)

This pattern is fairly common in Swift code AFAICT.

Here's an example extracted from a Swift testcase:

https://godbolt.org/z/6cT8Mesx7

Differential Revision: https://reviews.llvm.org/D110662
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-mulo-with-2.mir
Commit 2d56fbf6cd16bb7d2ae6c726b37d2096b9bdcd5a by aeubanks
[test] Specify triple in backend-attribute-error-warning.cpp

Tests fail on Windows otherwise.
The file was modifiedclang/test/Frontend/backend-attribute-error-warning.cpp
Commit d87bdc272ba47b7d9109ff5c7191454ab2ae6fcb by tejohnson
Clean up large copies of binaries copied into temp directories in tests

In looking at the disk space used by a ninja check-all, I found that a
few of the largest files were copies of clang and lld made into temp
directories by a couple of tests. These tests were added in D53021 and
D74811. Clean up these copies after usage.

Differential Revision: https://reviews.llvm.org/D110276
The file was modifiedlld/test/COFF/pdb-relative-source-lines.test
The file was modifiedclang/test/Driver/clang_f_opts.c
Commit 241c7b1473edf25a978db745e8fbcc1f0d013b34 by Jessica Paquette
[AArch64][GlobalISel] Run overlapping_and after legalization

When we have code with truncates, those truncates may be changed into G_ANDs
with constants. These may, in turn, feed into other G_AND instructions.

Running this combine post-legalize allows us to optimize examples like this one:

https://godbolt.org/z/zrGY4dfEW

SDAG currently optimizes the example above so that there is only one `and`.
GISel doesn't optimize it, because the G_AND we'd optimize here is translated
as a G_TRUNC. Later, that G_TRUNC is turned into a G_AND during legalization.

Differential Revision: https://reviews.llvm.org/D110667
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/opt-overlapping-and-postlegalize.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64Combine.td
Commit fc734da79549fd74cff71b8c4c8e689de4a0340f by Lang Hames
[JITLink][MachO][arm64] Add support for splitting compact-unwind sections.

CompactUnwindSplitter splits compact-unwind sections on record boundaries and
adds keep-alive edges from target functions back to their respective records.

In MachO_arm64.cpp, a CompactUnwindSplitter pass is added to the pre-prune pass
list when setting up the standard pipeline.

This patch does not provide runtime support for compact-unwind, but is a first
step towards enabling it.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
The file was addedllvm/test/ExecutionEngine/JITLink/AArch64/MachO_arm64_compact_unwind.s
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.h
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
Commit 25c30324e953c1c0011d1ab7529991db5c6ba741 by Jinsong Ji
[AIX] Change the linkage of profiling counter/data to be private

We generate symbols like `profc`/`profd` for each function, and put them into csects.
When there are weak functions,  we generate weak symbols for the functions as well,
with ELF (and some others),  linker (binder) will discard and only keep one copy of the weak symbols.

However, on AIX, the current binder can NOT discard the weak symbols if we put all of them into the same csect,
as binder can NOT discard a subset of a csect.

This creates a unique challenge for using those symbols to calculate some relative offsets.

This patch changed the linkage of `profc`/`profd` symbols to be private, so that all the profc/profd for each weak symbol will be *local* to objects, and all kept in the csect, so we won't have problem. Although only one of the counters will be used, all the pointer in the profd is correct.

The downside is that we won't be able to discard the duplicated counters and profile data,
but those can not be discarded even if we keep the weak linkage,
due to the binder limitation of not discarding a subsect of the csect either .

Reviewed By: Whitney, MaskRay

Differential Revision: https://reviews.llvm.org/D110422
The file was modifiedclang/test/Profile/cxx-templates.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was modifiedllvm/test/Instrumentation/InstrProfiling/profiling.ll
Commit 7255ce30e48feb07e4e82613f518683fbc247c1c by craig.topper
[SelectionDAG] Fix incorrect condition for shift amount truncation

Comment says:
  // If the operand is larger than the shift count type but the shift
  // count type has enough bits to represent any shift value ...

It clearly talks about the shifted operand, not the shift-amount operand,
but the comparison is performed against Log2_32_Ceil(Op2.getValueSizeInBits())
where Op2 is the shift amount operand. This comparison also doesn't make
sense in the context of the previous one (ShiftsSize > Op2Size) because
Op2Size == Op2.getValueSizeInBits(). Fix to use Op1.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D110509
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Commit c07f7099690e8607d119227db1f80ee21eff3a3b by saugustine
Revert "Recommit "[AArch64] Split bitmask immediate of bitwise AND operation""

This reverts commit 73a196a11c0e6fe7bbf33055cc2c96ce3c61ff0d.

Causes crashes as reported in https://reviews.llvm.org/D109963
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was removedllvm/test/CodeGen/AArch64/aarch64-split-and-bitmask-immediate.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/test/CodeGen/AArch64/O3-pipeline.ll
The file was removedllvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64.h
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h
Commit fd9a5b911d5e85c5184e9ed6907f53f23b41cd99 by llvmgnsyncbot
[gn build] Port c07f7099690e
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit c0735cb9f11d84b371a1e8dddc9f8fbe333ea37f by mahesha.comp
[AMDGPU] Do not internalize ASan device library functions.

ASan device library functions (those starts with the prefix __asan_)
are at the moment undergoing through undesired optimizations due to
internalization. Hence, in order to avoid such undesired optimizations
on ASan device library functions, do not internalize them in the first
place.

Reviewed By: yaxunl

Differential Revision: https://reviews.llvm.org/D110468
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was addedllvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_do_not_internalize.ll
Commit 1e48951c736cb346df34605fc42a39ef6c349b29 by Jinsong Ji
[AIX] Enable PGO without LTO

On AIX, we relied on LTO to merge the csects for profiling data/counter
sections.

AIX binder now get the namedcsect support to support the merging,
so now we can enable PGO without LTO with the new binder.

Reviewed By: Whitney

Differential Revision: https://reviews.llvm.org/D110671
The file was modifiedclang/lib/Driver/ToolChains/AIX.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/unsupported-option.c
Commit 1f2f1a4414f868ddb8f1f4b77aca83c66fa0b48c by Lang Hames
[JITLink][MachO][x86-64] Add support for splitting compact-unwind sections.

Follow-up to fc734da7954 to enable compact-unwind splitting on x86-64.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
The file was addedllvm/test/ExecutionEngine/JITLink/X86/MachO_x86_64_compact_unwind.s

Summary

  1. Add a llvm-x86_64-debian-dylib mail notifier (details)
  2. Add a builder for testing MLIR with sanitizers (details)
  3. Revert changes to buildbot/google/docker/build_run.sh unintentionally pushed with another change (details)
  4. Fix MLIR Ubuntu worker names in the builder config (details)
Commit 512e47aa79d5211fef741116b8cbd25ceb73e5b9 by tbaeder
Add a llvm-x86_64-debian-dylib mail notifier

Differential Revision: https://reviews.llvm.org/D109947
The file was modifiedbuildbot/osuosl/master/config/status.py
Commit 9aafce19b48fb51f9f574696ee53396136f18f0b by joker.eph
Add a builder for testing MLIR with sanitizers
The file was modifiedbuildbot/google/docker/build_run.sh
The file was modifiedbuildbot/osuosl/master/config/builders.py
Commit 1f56cf94f6bea30929a1bb3b9f93fc9bd9d58a20 by joker.eph
Revert changes to buildbot/google/docker/build_run.sh unintentionally pushed with another change
The file was modifiedbuildbot/google/docker/build_run.sh
Commit 26c5622081d96830358ad8e514a20ebd142d1a2d by joker.eph
Fix MLIR Ubuntu worker names in the builder config
The file was modifiedbuildbot/osuosl/master/config/builders.py