Changes

Summary

  1. [buildbot-clangd-ubuntu-clang] deployed new docker image (details)
  2. [MLIR] Enable tensorcore integration tests (details)
Commit e80b3b9a559501293a2da7aeddd565c00f0c34a6 by kuhnel
[buildbot-clangd-ubuntu-clang] deployed new docker image

This is just the deployment for the container updated in
cf3881f300f973e6dcc12d2c25dff626290642aa
The file was modifiedbuildbot/google/docker/buildbot-clangd-ubuntu-clang/VERSION (diff)
The file was modifiedbuildbot/google/terraform/main.tf (diff)
Commit c24b5268477630cb2efd8bf2f7fb3945343e7d03 by thomasraoux
[MLIR] Enable tensorcore integration tests

Differential Revision: https://reviews.llvm.org/D103266
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)

Summary

  1. Fixed the build failure of yaml2obj in XCOFFEmitter.cpp: (details)
  2. [AMDGPU][Libomptarget] Rework logic for locating kernarg pools (details)
  3. [OpenCL] Fix missing addrspace on implicit move assignment operator (details)
  4. [mlir][linalg] Cleanup LinalgOp usage in comprehensive bufferization. (details)
  5. [AMDGPU] Fix MC tests for v_fmaak_f16 and v_fmamk_f16 (details)
  6. [LV] Mark increment of main vector loop induction variable as NUW. (details)
  7. [Clang] Support a user-defined __dso_handle (details)
  8. [SimpleLoopBoundSplit] Split Bound of Loop which has conditional branch with IV (details)
  9. ASTConcept.h - remove unused <string> include. NFCI. (details)
  10. [PhaseOrdering] Update tests after 23c2f2e6b24d. (details)
  11. [NFC] Fix semantic discrepancy for MVT::LAST_VALUETYPE (details)
  12. [clang] NFC: test for undefined behaviour in RawComment::getFormattedText() (details)
  13. [lld/mac] Implement support for searching dylibs with @rpath/ in install name (details)
  14. [llvm] Add interface to order inlining (details)
  15. [OpenCL] Add const attribute to ctz() builtins (details)
  16. [AMDGPU][Libomptarget] Remove atlc global (details)
  17. [mlir] Add offset/stride helper functions to OffsetSizeAndStrideOpInterface (details)
  18. [Matrix] Add -matrix-allow-contract=false to tests. (details)
  19. [LV] Update more target-specific tests after 23c2f2e6b24d. (details)
  20. [mlir][linalg] Add padding helper functions to PadTensorOp (details)
  21. [AArch64][SVE] Improve codegen for dupq SVE ACLE intrinsics (details)
  22. [clangd] Drop TestTUs dependency on gtest (details)
  23. [gn build] fix syntax error from 50bb1b930dbc (details)
  24. ExternalASTSource.h - remove unused StringRef and <string> includes. NFCI. (details)
  25. [clang] Fix a crash during code completion (details)
  26. [MLIR][SPIRV] Use getAsmResultName(...) hook for AddressOfOp. (details)
  27. [InstCombine] Missed optimization for pow(x, y) * pow(x, z) with fast-math (details)
  28. [AMDGPU] Increase alignment of LDS globals if necessary before LDS lowering. (details)
  29. [clang][NFC] Break out BaseUsingDecl from UsingDecl (details)
  30. [clang][NFC] Break out enum completion from other type context completion (details)
  31. [clangd] Bump recommended gRPC version (1.33.2 -> 1.36.3) (details)
  32. [Constants] Extend support for scalable-vector splats (details)
  33. [test] Use host platform specific error message substitution (details)
  34. [AMDGPU] Use s_add_i32 for address additions (details)
  35. [clang] Fix using-enum breakage (details)
  36. [clang] Remove inadvertent commit (details)
  37. [InstCombine] Support negation of scalable-vector splats (details)
  38. [flang][driver] Add support for the "-init-only" option (details)
  39. [OpenMP] Check loc for NULL before dereferencing it (details)
  40. [mlir][openacc] Conversion of data operands in acc.parallel to LLVM IR dialect (details)
  41. [Clang][CodeGen] Set the size of llvm.lifetime to unknown for scalable types. (details)
  42. [mlir][openacc] Add canonicalization for standalone data operations for if condition (details)
  43. [mlir][openacc] Add conversion for if operand to scf.if for standalone data operation (details)
  44. [Demangle][Rust] Parse dyn-bounds (details)
  45. [Demangle][Rust] Parse dyn-trait (details)
  46. [Demangle][Rust] Parse dyn-trait-assoc-binding (details)
  47. [CostModel] Return Invalid cost in getArithmeticCost instead of crashing for scalable vectors. (details)
  48. [CostModel][AArch64] NFC: Simplify some cost model tests for SVE. (details)
  49. [NFC] Add missing include to LaneBitmask.h to fix modules build (details)
  50. [lldb] Fix TypeSystemClang compilation after D101777 (details)
  51. [libc++] Simplify a few macros in __config (details)
  52. [docs] Set Phabricator as the tool for pre-commit reviews (details)
  53. [dfsan] Fix internal build errors because of more strict warning checks (details)
  54. [VPlan] Print successors of VPRegionBlocks. (details)
  55. [AArch64] handle -Wa,-march= (details)
  56. [Demangle][Rust] Parse instantiating crate (details)
  57. [RISCV] Don't enable loop vectorizer interleaving if the V extension isn't enabled. (details)
  58. [InstCombine] add tests for FMF propagation via -(C/X); NFC (details)
  59. [InstCombine] refactor match clauses; NFC (details)
  60. [InstCombine] intersect nsz and ninf fast-math-flags (FMF) for fneg(fdiv) fold (details)
  61. [XCOFF][AIX] Enable tooling support for 64 bit symbol table parsing (details)
  62. [RS4GC] Treat inttoptr as base pointer (details)
  63. [RISCV] Lower i8/i16 bswap/bitreverse to grevi/greviw with Zbp. (details)
  64. [MLIR] Conditional Branch Argument Propagation (details)
  65. [lld/mac] Add a test for -reexport_library + -dead_strip_dylibs (details)
  66. [libc++] Rename 'and' to '&&' (details)
  67. [MLIR][GPU] Simplify memcpy of cast (details)
  68. [SCEV] Compute exit counts for unsigned IVs using mustprogress semantics (details)
  69. GlobalISel: Remove unnecessary .getReg(0)s (details)
  70. GlobalISel: Use MMO helper for getting the size in bits (details)
  71. AMDGPU: Move codegen test out of MIR test directory (details)
  72. [OpenMP] libomp: implement OpenMP 5.1 inoutset task dependence type (details)
  73. [OpenMP][runtime] add .clang-tidy file (details)
  74. [LoopUnroll] Clamp unroll count to MaxTripCount (details)
  75. [clang] Fix reading long doubles with va_arg on x86_64 mingw (details)
  76. [X32] Add Triple::isX32(), use it. (details)
  77. [ELF] getRelocatedSection: remove the check for ET_REL object file (details)
  78. [lld/mac] Add reexports after reexporter to inputFiles (details)
  79. [mlir-lsp-server] Add support for hover on region operations (details)
  80. [mlir-lsp-server] Add support for hover on symbol references (details)
  81. [mlir-lsp-server] Fix bug in symbol use/def tracking (details)
  82. Revert "[AArch64] handle -Wa,-march=" (details)
  83. [Test] Add a JumpThreading test exposing a bug in BasicAA. (details)
  84. [BasicAA] Handle PHIs without incoming values gracefully (details)
  85. [SCEV] Properly guard reasoning about infinite loops being UB on mustprogress (details)
  86. [IR] Add utility to convert constant expression operands (of an instruction) to instructions. (details)
  87. [AMDGPU] Introduce command line switch to control super aligning of LDS. (details)
  88. [AMDGPU] Handle constant LDS uses from different kernels (details)
  89. [RISCV] Store Log2 of EEW in the vector load/store intrinsic to pseudo lookup tables. NFCI (details)
  90. Revert "[TargetLowering] Only inspect attributes in the arguments for ArgListEntry" (details)
  91. [RISCV] Optimize bitwise and with constant for the Zbs extension (details)
  92. Revert "[libcxx][module-map] creates submodules for private headers" (details)
  93. Revert "[libcxx][gardening] Move all algorithms into their own headers." (details)
  94. [gn build] Port 692d7166f771 (details)
  95. [dfsan] Add full fast8 support (details)
  96. [NFC][LSAN] Limit the number of concurrent threads is the test (details)
  97. [RISCV] Use bitfields to shrink the size of the vector load/store intrinsics to pseudo instruction lookup tables. (details)
  98. [NFC][scudo] Print errno of fork failure (details)
  99. [AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__ predefined macros (details)
  100. [AMDGPU] Add v5f32/VReg_160 support for MIMG instructions (details)
  101. Revert "[AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__ predefined macros" (details)
  102. [AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__ (details)
  103. [AMDGPU] Allow oversize vaddr in GFX10 MIMG assembly (details)
  104. [yaml2obj] Fix buildbot-issue-4886 (details)
  105. [lld-macho] Implement cstring deduplication (details)
  106. [lld-macho] Implement -force_load_swift_libs (details)
  107. BPF: fix relocation types in lib/Object/RelocationResolver.cpp (details)
  108. [RISCV] Use AVL Operand instead of GPR for tied mask pseudo for vwadd.wv and similar. (details)
  109. [RISCV] Masked compares should use a tail agnostic policy. (details)
  110. [RISCV] Use 0 for Log2SEW for vle1/vse1 intrinsics to enable vsetvli optimization. (details)
  111. [Driver] Support libc++ in MSVC (details)
Commit bcb20aa7701d3e2d6deef24ce26c25ed7d2dbc6b by esme.yi
Fixed the build failure of yaml2obj in XCOFFEmitter.cpp:
  error: ambiguous overload for 'operator=='
  (operand types are 'llvm::yaml::Hex16' and 'llvm::XCOFF::MagicNumber')
     Is64Bit = Obj.Header.Magic == XCOFF::XCOFF64;
The file was modifiedllvm/lib/ObjectYAML/XCOFFEmitter.cpp
Commit f5f329a37175c3a30e9d8b20b95fced96b9dde8c by Pushpinder.Singh
[AMDGPU][Libomptarget] Rework logic for locating kernarg pools

Previous logic was to always use the first kernarg pool found to allocate
kernel args. This patch changes this to use only the kernarg pool which
has non-zero size. This logic is also reworked to not use any globals.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D103600
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/internal.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/src/rtl.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/system.cpp
Commit 438cf5577e720f84d493a272c5a1cbaf6ce19e51 by olemarius.strohm
[OpenCL] Fix missing addrspace on implicit move assignment operator

This fixes the missing address space on `this` in the implicit move
assignment operator.
The function called here is an abstraction around the lines that have
been removed which also sets the address space correctly.
This is copied from CopyConstructor, CopyAssignment and MoveConstructor,
all of which use this function, and now MoveAssignment does too.

Fixes: PR50259

Reviewed By: svenvh

Differential Revision: https://reviews.llvm.org/D103252
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was addedclang/test/AST/ast-dump-implicit-members.clcpp
Commit caf26612ddb527ad9e89588e7297b4de51013b83 by gysit
[mlir][linalg] Cleanup LinalgOp usage in comprehensive bufferization.

Replace the uses of deprecated Structured Op Interface methods in ComprehensiveBufferize.cpp. This patch is based on https://reviews.llvm.org/D103394.

Differential Revision: https://reviews.llvm.org/D103520
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit 9e9edede1833f38e95cfa4845275cb40ee2b4020 by jay.foad
[AMDGPU] Fix MC tests for v_fmaak_f16 and v_fmamk_f16

This looks like a mistake when the tests were committed in r363946.
There were two sets of tests for the f32 variant of these instructions,
instead of one set for f16 and one set for f32.

Differential Revision: https://reviews.llvm.org/D103699
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_all.txt
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_vop2.s
Commit 23c2f2e6b24d80d3472dca897feac10e9c34c51f by flo
[LV] Mark increment of main vector loop induction variable as NUW.

This patch marks the induction increment of the main induction variable
of the vector loop as NUW when not folding the tail.

If the tail is not folded, we know that End - Start >= Step (either
statically or through the minimum iteration checks). We also know that both
Start % Step == 0 and End % Step == 0. We exit the vector loop if %IV +
%Step == %End. Hence we must exit the loop before %IV + %Step unsigned
overflows and we can mark the induction increment as NUW.

This should make SCEV return more precise bounds for the created vector
loops, used by later optimizations, like late unrolling.

At the moment quite a few tests still need to be updated, but before
doing so I'd like to get initial feedback to make sure I am not missing
anything.

Note that this could probably be further improved by using information
from the original IV.

Attempt of modeling of the assumption in Alive2:
https://alive2.llvm.org/ce/z/H_DL_g

Part of a set of fixes required for PR50412.

Reviewed By: mkazantsev

Differential Revision: https://reviews.llvm.org/D103255
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr35432.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr45259.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr35773.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ptr-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/debugloc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vplan-vectorize-inner-loop-reduction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/outer_loop_test2.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-small-size.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr23997.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/fcmp-vectorize.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/float-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr44488-predication.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/induction-step.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dead_instructions.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/outer_loop_test1.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/optsize.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/extractvalue-no-scalarization-required.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleaving.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/sphinx.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr34438.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/small-size.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-inloop.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-folding-scalar-epilogue-fallback.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/assume.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr36524.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dont-fold-tail-for-const-TC.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/phi-cost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vector-intrinsic-call-cost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleave_short_tc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/use-scalar-epilogue-if-tp-fails.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/outer-loop-vec-phi-predecessor-order.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vector-geps.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/runtime-check.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr42674.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/if-pred-stores.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/outer_loop_test1_no_explicit_vect_width.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/imprecise-through-phis.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/runtime-check-needed-but-empty.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pointer-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/loop-form.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/unroll_novec.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/aarch64-predication.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/uniform-blend.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/loop-scalars.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/induction-trunc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-folding-not-allowed.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
Commit b31f41e78b2722785f3df1da0d77dfcd68125d15 by andrew.savonichev
[Clang] Support a user-defined __dso_handle

This fixes PR49198: Wrong usage of __dso_handle in user code leads to
a compiler crash.

When Init is an address of the global itself, we need to track it
across RAUW. Otherwise the initializer can be destroyed if the global
is replaced.

Differential Revision: https://reviews.llvm.org/D101156
The file was addedclang/test/CodeGenCXX/dso-handle-custom.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
Commit a2a0ac42abcb57bd982a94534c219ac983572ac3 by jingu.kang
[SimpleLoopBoundSplit] Split Bound of Loop which has conditional branch with IV

This pass transforms loops that contain a conditional branch with induction
variable. For example, it transforms left code to right code:

                             newbound = min(n, c)
while (iv < n) {            while(iv < newbound) {
   A                           A
   if (iv < c)                 B
     B                         C
   C                         }
}                           if (iv != n) {
                               while (iv < n) {
                                 A
                                 C
                               }
                             }

Differential Revision: https://reviews.llvm.org/D102234
The file was addedllvm/include/llvm/Transforms/Scalar/LoopBoundSplit.h
The file was modifiedllvm/lib/Transforms/Scalar/CMakeLists.txt
The file was addedllvm/test/Transforms/LoopBoundSplit/loop-bound-split.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Scalar/BUILD.gn
Commit 30a89a754af00004a7bc8afd485021f9e68d5d70 by llvm-dev
ASTConcept.h - remove unused <string> include. NFCI.
The file was modifiedclang/include/clang/AST/ASTConcept.h
Commit 131343d35bf2ce55001fdd9c4cdf2965b56f26d8 by flo
[PhaseOrdering] Update tests after 23c2f2e6b24d.
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/peel-before-lv-to-enable-vectorization.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/pixel-splat.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/vdiv-nounroll.ll
Commit 1da2c7d25c0926b1ebac5855ab099b004b6a827a by gchatelet
[NFC] Fix semantic discrepancy for MVT::LAST_VALUETYPE

Differential Revision: https://reviews.llvm.org/D103251
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
Commit aa0d7179bbb3fd24bc9eb1fd6203565dbd50e8d8 by dmitry.polukhin
[clang] NFC: test for undefined behaviour in RawComment::getFormattedText()

This diff adds testcase for the issue fixed in https://reviews.llvm.org/D77468
but regression test was not added in the diff. On Clang 9 it caused
crash in cland during code completion.

Test Plan: check-clang-unit

Differential Revision: https://reviews.llvm.org/D103722
The file was modifiedclang/unittests/AST/CommentTextTest.cpp
Commit c5ffe9798850a699c2229899712ca9d153f2a4b8 by thakis
[lld/mac] Implement support for searching dylibs with @rpath/ in install name

Also adjust a few comments, and move the DylibFile comment talking about
umbrella next to the parameter again.

Differential Revision: https://reviews.llvm.org/D103783
The file was modifiedlld/test/MachO/rpath.s
The file was modifiedlld/MachO/InputFiles.h
The file was modifiedlld/MachO/InputFiles.cpp
The file was addedlld/test/MachO/link-search-at-rpath.s
The file was modifiedlld/MachO/DriverUtils.cpp
Commit 4a0de622c34e0cb86b22a8e5f38dfd388e07e2fc by taolq
[llvm] Add interface to order inlining

This patch abstract Calls in Inliner:run() to InlineOrder.
With this patch, it's possible to customize the inlining order,
e.g. use queue or priority queue.

Reviewed By: kazu

Differential Revision: https://reviews.llvm.org/D103315
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
Commit 9b14670f3ca287ce949c4157e0f673c84da255a3 by stuart.brady
[OpenCL] Add const attribute to ctz() builtins

Reviewed By: svenvh

Differential Revision: https://reviews.llvm.org/D97725
The file was modifiedclang/lib/Headers/opencl-c.h
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
Commit 4f8bc7caf4e5fcc1620b3fd4980ec8d671e9345b by Pushpinder.Singh
[AMDGPU][Libomptarget] Remove atlc global

This global struct used to hold various flags for monitoring the
initialization of hsa.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D103795
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/internal.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/system.cpp
Commit 6e7bbdd6e7f7649bccc4f981520ed916e21d7058 by springerm
[mlir] Add offset/stride helper functions to OffsetSizeAndStrideOpInterface

* Add hasUnitStride and hasZeroOffset to OffsetSizeAndStrideOpInterface. These functions are useful for various patterns. E.g., some vectorization patterns apply only for tensor ops with zero offsets and/or unit stride.
* Add getConstantIntValue and isEqualConstantInt helper functions, which are useful for implementing the two above functions, as well as various patterns.

Differential Revision: https://reviews.llvm.org/D103763
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.h
The file was modifiedmlir/include/mlir/Interfaces/ViewLikeInterface.h
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/include/mlir/Interfaces/ViewLikeInterface.td
Commit 87c99d2b970be7c16ab0382c6c59e4d3abbf4a48 by flo
[Matrix] Add -matrix-allow-contract=false to tests.

Explicitly specify contract behavior, so the tests are independent of
the current default of the flag.
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/preserve-existing-fast-math-flags.ll
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/propagate-multiple-iterations.ll
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/const-gep.ll
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/propagate-forward.ll
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/propagate-backward.ll
Commit 8344e215ec6caac4b3372d6e96333b35ab1d8741 by flo
[LV] Update more target-specific tests after 23c2f2e6b24d.
The file was modifiedllvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/vectorize-bswap.ll
Commit fe0befb123e4a727c3c883845c9d3bfe75d831c7 by springerm
[mlir][linalg] Add padding helper functions to PadTensorOp

Add helper functions to quickly check for zero low/high padding.

Differential Revision: https://reviews.llvm.org/D103781
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
Commit 60c9b5f35caeb555f66d261bf5a657ab02a35fef by bradley.smith
[AArch64][SVE] Improve codegen for dupq SVE ACLE intrinsics

Use llvm.experimental.vector.insert instead of storing into an alloca
when generating code for these intrinsics. This defers the codegen of
the generated vector to instruction selection, allowing existing
shufflevector style optimizations to apply.

Additionally, introduce a new target transform that can recognise fixed
predicate patterns in the svbool variants of these intrinsics.

Differential Revision: https://reviews.llvm.org/D103082
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dupq-bfloat.c
The file was modifiedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dupq.c
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
The file was addedllvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-cmpne.ll
The file was addedclang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dupq_const.c
Commit 4728aca9a8adadc34590e3c930dcf8a32593d846 by kadircet
[clangd] Drop TestTUs dependency on gtest

TestTU now prints errors to llvm::errs and aborts on failures via
llvm_unreachable, rather than executing ASSERT_FALSE.

We'd like to make use of these testing libraries in different test suits that
might be compiling with a different gtest version than LLVM has.

Differential Revision: https://reviews.llvm.org/D103685
The file was modifiedclang-tools-extra/clangd/index/Symbol.cpp
The file was modifiedclang-tools-extra/clangd/index/Symbol.h
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
Commit cf29cdccbbaa611ef2393be9f07d9fbc1e61037a by thakis
[gn build] fix syntax error from 50bb1b930dbc
The file was modifiedllvm/utils/gn/secondary/llvm/lib/ObjectYAML/BUILD.gn
Commit 8b58092de49b8be964e760c161585665e8d8c48f by llvm-dev
ExternalASTSource.h - remove unused StringRef and <string> includes. NFCI.
The file was modifiedclang/include/clang/AST/ExternalASTSource.h
Commit 721476e6b2119a93033903109b54f429b6e8c91b by adamcz
[clang] Fix a crash during code completion

During code completion, lookupInDeclContext() calls
CodeCompletionDeclConsumer::FoundDecl(),which can mutate StoredDeclsMap,
over which lookupInDeclContext() iterates. This can lead to invalidation
of iterators and an assert()-crash.

Example code where this happens:
#include <list>
int main() {
   std::list<int>;
   std::^
}
with code completion on ^ with -std=c++20.

I do not have a repro case that does not need standard library.

This fix stores pointers to NamedDecls in a temporary vector, then
visits them outside of the main loop, when StoredDeclsMap iterators are
gone.

Differential Revision: https://reviews.llvm.org/D103472
The file was modifiedclang/lib/Sema/SemaLookup.cpp
Commit 2def12ebc6cc904cddb4bc608df63014ec2bfe86 by kareem.ergawy
[MLIR][SPIRV] Use getAsmResultName(...) hook for AddressOfOp.

Implements better naming for results of spv.mlir.addressof ops by making it
inherit from OpAsmOpInterface and implementing the associated
getAsmResultName(...) hook.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D103594
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVStructureOps.td
The file was modifiedmlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
The file was modifiedmlir/test/Dialect/SPIRV/IR/asm-op-interface.mlir
Commit 7736c1936a93d7effecf32ef5193dfc00b732cd2 by spatel
[InstCombine] Missed optimization for pow(x, y) * pow(x, z) with fast-math

If FP reassociation (fast-math) is allowed, then LLVM is free to do the
following transformation pow(x, y) * pow(x, z) -> pow(x, y + z).
This patch adds this transformation and tests for it.
See more https://bugs.llvm.org/show_bug.cgi?id=47205

It handles two cases

1. When operands of fmul are different instructions

%4 = call reassoc float @llvm.pow.f32(float %0, float %1)
%5 = call reassoc float @llvm.pow.f32(float %0, float %2)
%6 = fmul reassoc float %5, %4
-->
%3 = fadd reassoc float %1, %2
%4 = call reassoc float @llvm.pow.f32(float %0, float %3)

2. When operands of fmul are the same instruction

%4 = call reassoc float @llvm.pow.f32(float %0, float %1)
%5 = fmul reassoc float %4, %4
-->
%3 = fadd reassoc float %1, %1
%4 = call reassoc float @llvm.pow.f32(float %0, float %3)

Differential Revision: https://reviews.llvm.org/D102574
The file was modifiedllvm/test/Transforms/InstCombine/fmul-pow.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
Commit 52ffbfdffc240085fc6ac39cff2f98e66458171f by mahesha.comp
[AMDGPU] Increase alignment of LDS globals if necessary before LDS lowering.

Before packing LDS globals into a sorted structure, make sure that
their alignment is properly updated based on their size. This will make
sure that the members of sorted structure are properly aligned, and
hence it will further reduce the probability of unaligned LDS access.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D103261
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/lds-global-value.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_write2.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_read2_offset_order.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/promote-alloca-globals.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_read2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lds-alignment.ll
The file was addedllvm/test/CodeGen/AMDGPU/update-lds-alignment.ll
Commit ddda05add527f7f92a71f387b927f237334f46d9 by nathan
[clang][NFC] Break out BaseUsingDecl from UsingDecl

This is a pre-patch for adding using-enum support.  It breaks out
the shadow decl handling of UsingDecl to a new intermediate base
class, BaseUsingDecl, altering the decl hierarchy to

def BaseUsing : DeclNode<Named, "", 1>;
  def Using : DeclNode<BaseUsing>;
def UsingPack : DeclNode<Named>;
def UsingShadow : DeclNode<Named>;
  def ConstructorUsingShadow : DeclNode<UsingShadow>;

Differential Revision: https://reviews.llvm.org/D101777
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/lib/Sema/SemaAccess.cpp
The file was modifiedclang-tools-extra/clangd/FindTarget.cpp
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/CodeGen/CGDebugInfo.h
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/include/clang/Basic/DeclNodes.td
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
Commit 84ab315574099dcac8f9fb89fe8558f8ccfbce5f by nathan
[clang][NFC] Break out enum completion from other type context completion

This prepatch for using-enum breaks out the enum completion that that
will need from the existing scope completion logic.

Differential Revision: https://reviews.llvm.org/D102239
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaCXXScopeSpec.cpp
Commit d12000ca55d1cc8bc07f75457e3b4efbcd8ff657 by kbobyrev
[clangd] Bump recommended gRPC version (1.33.2 -> 1.36.3)

Context: https://github.com/clangd/clangd/pull/783

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D103393
The file was modifiedclang-tools-extra/clangd/index/remote/README.md
Commit fd3b556958a9deee7ced33ec18b38c030145160b by fraser
[Constants] Extend support for scalable-vector splats

This patch extends the various "isXXX" functions of the `Constant` class
to include scalable-vector splats.

In several "isXXX" functions, code that was separately inspecting
`ConstantVector` and `ConstantDataVector` was unified to use
`getSplatValue`, which already includes support for said splats.

In the varous "isNotXXX" functions, code was added to check whether the
scalar splat value -- if any -- satisfies the predicate.

An extra fix for `isNotMinSignedValue` was included, as it previously
crashed when passed a scalable-vector type because it unconditionally
cast to `FixedVectorType`

These changes address numerous missed optimizations, a compiler crash
mentioned above and -- perhaps most egregiously -- an infinite loop in
InstCombine due to the compiler breaking canonical form when it failed
to pick up on a splat in a select instruction.

Test cases have been added to cover as many of these functions as
possible, though existing coverage is slim; it doesn't appear that there
are any in-tree uses of `Constant::isNegativeZeroValue`, for example.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D103421
The file was modifiedllvm/test/Transforms/InstCombine/div.ll
The file was modifiedllvm/test/Transforms/InstCombine/icmp-vec.ll
The file was modifiedllvm/test/Transforms/InstCombine/sub.ll
The file was modifiedllvm/lib/IR/Constants.cpp
The file was modifiedllvm/test/Transforms/InstCombine/bitcast.ll
The file was modifiedllvm/test/Transforms/InstCombine/fmul.ll
The file was modifiedllvm/test/Transforms/InstCombine/fdiv.ll
Commit 7e176ff2db93304620a9080df2e003ae50f9b826 by Abhina.Sreeskantharajan
[test] Use host platform specific error message substitution

This testcase is failing on z/OS because the regex doesn't match the spelling. This patch modifies the testcase to use the error substitution so it will pass on all platforms.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D103804
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/output.s
Commit 96e1fcb1e005646c3aedc5a723c108e9387ff9e0 by sebastian.neubauer
[AMDGPU] Use s_add_i32 for address additions

This allows to convert the add instruction to s_addk_i32 and
v_add_nc_u32 instead of needing v_add_co_u32 when converting to a VALU
instruction.

Differential Revision: https://reviews.llvm.org/D103322
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/indirect-call.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cc-update.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-realign-kernel.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/flat-scratch.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-sgprs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/spill-offset-calculation.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/sgpr-spill.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/nested-calls.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/sibling-call.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/need-fp-from-csr-vgpr-spill.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/addrspacecast.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/call-constant.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-realign.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wave32.ll
Commit 9e43e7ec111d9029da1b2098733f67a239e4edef by nathan
[clang] Fix using-enum breakage

This fixes a build breakage.  I managed to attach this particular
change to the wrong diff in the stack when rebasing.  And flubbed
testing :(

Differential Revision: https://reviews.llvm.org/D101777
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was addedclang/lib/Sema/SemaOverload.cpp.blame
Commit ade4662c44f7dc9b0e32f38746e74241d7330253 by nathan
[clang] Remove inadvertent commit

Oops, missed this pattern in my .gitignore.  Sorry.

Differential Revision: https://reviews.llvm.org/D101777
The file was removedclang/lib/Sema/SemaOverload.cpp.blame
Commit ae3f6de3a856006601cbca81ebf9780a2534bdcc by fraser
[InstCombine] Support negation of scalable-vector splats

This patch is an extension of D103421. It allows the InstCombiner to
generate the negated form of integer scalable-vector splats. It can
technically handle fixed-length vectors too but those are completely
covered by the preceding logic.

This enables extra combining opportunities for scalable vector types.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D103801
The file was modifiedllvm/test/Transforms/InstCombine/sub.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit e1da3297d253b33be1ff941cf9ed9091dd332ea5 by andrzej.warzynski
[flang][driver] Add support for the "-init-only" option

Adding the `-init-only` option and corresponding frontend action to
generate a diagnostic.

`-init-only` vs `-test-io`:
`-init-only` ignores the input (it never calls the prescanner)
`-test-io` is similar to `-init-only`, but does read and print the input
without calling the prescanner.

This patch also adds a Driver test to check this action.

Reviewed By: awarzynski, AMDChirag

Differential Revision: https://reviews.llvm.org/D102849
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was addedflang/test/Driver/init-only.f90
The file was modifiedflang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
The file was modifiedflang/include/flang/Frontend/FrontendActions.h
The file was modifiedflang/test/Driver/driver-help.f90
The file was modifiedflang/include/flang/Frontend/FrontendOptions.h
The file was modifiedflang/lib/Frontend/FrontendActions.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 54f059c9007b48e4ff700ac587cbb137fff91fb7 by bryan.chan
[OpenMP] Check loc for NULL before dereferencing it

The ident_t * argument in __kmp_get_monotonicity was being used without
a customary NULL check, causing the function to crash in a Debug build.
Release builds were not affected thanks to dead store elimination.
The file was modifiedopenmp/runtime/src/kmp_dispatch.cpp
Commit cfcdebaf323575952ef8326c32e47d351b79ee37 by clementval
[mlir][openacc] Conversion of data operands in acc.parallel to LLVM IR dialect

Convert data operands from the acc.parallel operation using the same conversion pattern than D102170.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D103337
The file was modifiedmlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
The file was modifiedmlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
The file was modifiedmlir/test/Conversion/OpenACCToLLVM/convert-data-operands-to-llvmir.mlir
The file was modifiedmlir/lib/Conversion/OpenACCToLLVM/OpenACCToLLVM.cpp
Commit 2b13ff69794680ea0764e516f5b69b80219771b7 by kai.wang
[Clang][CodeGen] Set the size of llvm.lifetime to unknown for scalable types.

If the memory object is scalable type, we do not know the exact size of
it at compile time. Set the size of lifetime marker to unknown if the
object is scalable one.

Differential Revision: https://reviews.llvm.org/D102822
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/lib/CodeGen/CGExprAgg.cpp
The file was modifiedclang/lib/CodeGen/CGDecl.cpp
The file was addedclang/test/CodeGen/RISCV/riscv-v-lifetime.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
Commit aa4e6a609acdd00e06b54f525054bd5cf3624f0f by clementval
[mlir][openacc] Add canonicalization for standalone data operations for if condition

This patch add canonicalization for the standalone data operation with constant if condition.
It is extracted from this patch D103325.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D103712
The file was addedmlir/test/Dialect/OpenACC/canonicalize.mlir
The file was modifiedmlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
The file was modifiedmlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Commit fb5b590b5e18796bf850170946f15fc10ab9394a by clementval
[mlir][openacc] Add conversion for if operand to scf.if for standalone data operation

This patch convert the if condition on standalone data operation such as acc.update,
acc.enter_data and acc.exit_data to a scf.if with the operation in the if region.
It removes the operation when the if condition is constant and false. It removes the
the condition if it is contant and true.

Conversion to scf.if is done in order to use the translation to LLVM IR dialect out of the box.
Not sure this is the best approach or we should perform this during the translation from OpenACC
to LLVM IR dialect. Any thoughts welcome.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D103325
The file was addedmlir/lib/Conversion/OpenACCToSCF/OpenACCToSCF.cpp
The file was modifiedmlir/lib/Conversion/PassDetail.h
The file was addedmlir/test/Conversion/OpenACCToSCF/convert-openacc-to-scf.mlir
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
The file was addedmlir/lib/Conversion/OpenACCToSCF/CMakeLists.txt
The file was addedmlir/include/mlir/Conversion/OpenACCToSCF/ConvertOpenACCToSCF.h
The file was modifiedmlir/include/mlir/Conversion/Passes.h
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
Commit 89615a5e925e10f388130e80fba4bf28bc3c3c0a by tomasz.miasko
[Demangle][Rust] Parse dyn-bounds

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D103151
The file was modifiedllvm/lib/Demangle/RustDemangle.cpp
The file was modifiedllvm/test/Demangle/rust.test
The file was modifiedllvm/include/llvm/Demangle/RustDemangle.h
Commit 1499afa09ba27ee0e6569668b74fea40e0458930 by tomasz.miasko
[Demangle][Rust] Parse dyn-trait

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D103361
The file was modifiedllvm/include/llvm/Demangle/RustDemangle.h
The file was modifiedllvm/test/Demangle/rust.test
The file was modifiedllvm/lib/Demangle/RustDemangle.cpp
Commit 619a65e5e4ed0df7b753eac9d7d41be976fd909b by tomasz.miasko
[Demangle][Rust] Parse dyn-trait-assoc-binding

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D103364
The file was modifiedllvm/test/Demangle/rust.test
The file was modifiedllvm/include/llvm/Demangle/RustDemangle.h
The file was modifiedllvm/lib/Demangle/RustDemangle.cpp
Commit c908196e100a5ac1b25cba859094bfc28cffb5f3 by sander.desmalen
[CostModel] Return Invalid cost in getArithmeticCost instead of crashing for scalable vectors.

This fixes an issue in BasicTTIImpl.h where it tries to do a
cast<FixedVectorType> on a scalable vector type in order to get the
scalarization cost. Because scalarization of scalable vectors is not
supported, we return Invalid instead.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D103798
The file was addedllvm/test/Analysis/CostModel/AArch64/sve-remainder.ll
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit be663c4337c6e3d81a9a539abc11477fdb74cc6e by sander.desmalen
[CostModel][AArch64] NFC: Simplify some cost model tests for SVE.

* Merged some functions into a single function, to make the costs more obvious.
* Moved scalable-mem-op-cost-model.ll -> sve-ldst.ll to be more consistent with other filenames.
The file was modifiedllvm/test/Analysis/CostModel/AArch64/sve-scatter.ll
The file was removedllvm/test/Analysis/CostModel/AArch64/scalable-mem-op-cost-model.ll
The file was modifiedllvm/test/Analysis/CostModel/AArch64/sve-gather.ll
The file was addedllvm/test/Analysis/CostModel/AArch64/sve-ldst.ll
Commit f10b9ca9c6723dba571f4b319b1c55c0ae8ad0ab by Raphael Isemann
[NFC] Add missing include to LaneBitmask.h to fix modules build
The file was modifiedllvm/include/llvm/MC/LaneBitmask.h
Commit 2c2feebcd1274425c853e3cff7cec6ba033c3ccd by Raphael Isemann
[lldb] Fix TypeSystemClang compilation after D101777

We apparently now need to pass the DeclName of the target decl to the
constructor.
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Commit fb4e4646188cf43a1e96a0aba6b6d24d8604257c by Louis Dionne
[libc++] Simplify a few macros in __config

Several macros were guarded with a check along the lines of:

#ifndef MACRO
#  define MACRO ...
#endif

However, some of these macros are never intended to be defined by users,
so it's pointless to make this check (i.e. the first #ifndef is always
true). This commit removes those checks.

The motivation for doing this cleanup is to remove the impression that
arbitrary configurations macros can be defined by users when including
libc++ headers, which doesn't work reliably and leads to macro spaghetti.
If one needs to be able to override a knob in the __config, that's fine,
but the proper way to do that is to document the macro as being a public
facing knob in the documentation, and most likely to migrate that macro
to __config_site (depending on the nature of the macro).

Differential Revision: https://reviews.llvm.org/D103705
The file was modifiedlibcxx/include/__config
Commit 9d35c1701f264398814e7f54ae4a014ab0030bf1 by kparzysz
[docs] Set Phabricator as the tool for pre-commit reviews

Differential Revision: https://reviews.llvm.org/D103811
The file was modifiedllvm/docs/CodeReview.rst
Commit a82747fafe215862c24e690c1c7b384f4c27ad20 by jianzhouzh
[dfsan] Fix internal build errors because of more strict warning checks
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
The file was modifiedcompiler-rt/test/dfsan/interceptors.c
Commit 1465e7770bcacfb67ca4edc3714cf3a7e8a2a110 by flo
[VPlan] Print successors of VPRegionBlocks.

The non-DOT printing does not include the successors of VPregionBlocks.
This patch use the same style for printing successors as for
VPBasicBlock.

I think the printing of successors could be a bit improved further, as
at the moment it is hard to ensure a check line matches all successors.
But that can be done as follow-up.

Reviewed By: a.elovikov

Differential Revision: https://reviews.llvm.org/D103515
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/vplan-printing.ll
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.h
The file was modifiedllvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
Commit fd11a26d368c5a909fb88548fef2cee7a6c2c931 by caij2003
[AArch64] handle -Wa,-march=

This fixed PR#48894 for AArch64. The issue has been fixed for Arm in
https://reviews.llvm.org/D95872

The following rules apply to -Wa,-march with this change:
  - Only compiler options apply to non assembly files
  - Compiler and assembler options apply to assembly files
  - For assembly files, we prefer the assembler option(s) if we have both kinds of option
  - Of the options that apply (or are preferred), the last value wins (it's not additive)

Reviewed By: DavidSpickett, nickdesaulniers

Differential Revision: https://reviews.llvm.org/D103184
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.h
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.cpp
The file was addedclang/test/Driver/aarch64-target-as-march.s
Commit 43929ccc1296b13250965d75bd410550256d45c5 by tomasz.miasko
[Demangle][Rust] Parse instantiating crate

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D103460
The file was modifiedllvm/lib/Demangle/RustDemangle.cpp
The file was modifiedllvm/test/Demangle/rust.test
Commit 8c6bd6c22f384cc09e4a97de630ae63d7721dfd0 by craig.topper
[RISCV] Don't enable loop vectorizer interleaving if the V extension isn't enabled.

This can cause the vectorizer to generate interleaved scalar
code which might be ok for some CPUs, but definitely not all.
Disable it to restore the previous scalar behavior.

Differential Revision: https://reviews.llvm.org/D103787
The file was modifiedllvm/lib/Target/RISCV/RISCVSubtarget.h
Commit dc173254e754f1c363218548040642c6c53da8ed by spatel
[InstCombine] add tests for FMF propagation via -(C/X); NFC

There are bugs here as discussed in:
https://llvm.org/PR49654
The file was modifiedllvm/test/Transforms/InstCombine/fneg.ll
Commit 519e98cd9af0d4b47a2daf0899b69d1254750c13 by spatel
[InstCombine] refactor match clauses; NFC

We need to adjust the FMF propagation on at least
one of these transforms as discussed in:
https://llvm.org/PR49654
...so this should make it easier to intersect flags.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Commit 4675beaa2181b6ccb1a37fd49b51a45490023974 by spatel
[InstCombine] intersect nsz and ninf fast-math-flags (FMF) for fneg(fdiv) fold

https://alive2.llvm.org/ce/z/3KPvih

https://llvm.org/PR49654
The file was modifiedllvm/test/Transforms/InstCombine/fneg.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Commit 8e84311a84b35ced5c18c3af8a802f7d2aa5c8a0 by jasonliu
[XCOFF][AIX] Enable tooling support for 64 bit symbol table parsing

Add in the ability of parsing symbol table for 64 bit object.

Reviewed By: jhenderson, DiggerLin

Differential Revision: https://reviews.llvm.org/D85774
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was addedllvm/test/tools/llvm-readobj/XCOFF/symbols64.test
The file was addedllvm/test/tools/llvm-objdump/XCOFF/disassemble-symbol-description64.test
The file was addedllvm/test/tools/llvm-readobj/XCOFF/file-aux-wrong64.test
The file was addedllvm/test/tools/llvm-objdump/XCOFF/Inputs/xcoff-section-headers64.o
The file was addedllvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol64.o
The file was modifiedllvm/tools/llvm-readobj/XCOFFDumper.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/XCOFF.h
The file was modifiedllvm/tools/obj2yaml/xcoff2yaml.cpp
The file was addedllvm/test/tools/llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o
The file was modifiedllvm/tools/llvm-objdump/XCOFFDump.cpp
The file was modifiedllvm/unittests/Object/XCOFFObjectFileTest.cpp
The file was modifiedllvm/include/llvm/Object/XCOFFObjectFile.h
Commit c880d5e583a389e3a665b2509915533f97dd4792 by listmail
[RS4GC] Treat inttoptr as base pointer

This is a modified version of a patch by tolziplohu with a style change, and most importantly, a revised commit message.

inttoptr for a non-integral address space is currently ill defined in the LangRef.  Figuring out exactly what the dynamic semantics of such a cast would be is hard, and not yet settled.  Despite that, we still need to go ahead and implement something in RS4GC for a couple of reasons.

First, as a simple consistency argument.  We're apparently added support for constexpr inttoptrs a while back, and even have tests which exercised them.  Having a lack of constant folding trigger a crash during lowering is non-ideal.

Second, and more fundementally, the optimizer is allowed to insert undefined constructs in unreachable code.  At the same time, we can't assume that dynamically dead code is always pruned before lowering.  As a result, we must assume that inttoptrs can occur (even if completely ill defined) along dead paths.  We need the lowering to not crash.  The stackmaps produced can be garbage (as the assumption is the code is dynamically dead), but the lowering itself can't crash.

Differential Revision: https://reviews.llvm.org/D103492
The file was modifiedllvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
The file was addedllvm/test/Transforms/RewriteStatepointsForGC/base-inttoptr.ll
Commit f30f8b4f12b762a054800aaa7b60461fd177fa96 by craig.topper
[RISCV] Lower i8/i16 bswap/bitreverse to grevi/greviw with Zbp.

Include known bits support so we know we don't need to zext the
output if the input was already zero extended.

Reviewed By: luismarques

Differential Revision: https://reviews.llvm.org/D103757
The file was modifiedllvm/test/CodeGen/RISCV/rv32zbp.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rv64zbp.ll
Commit 854d0edce6c6e29ee2803c1f6590dee62994419a by gh
[MLIR] Conditional Branch Argument Propagation

In an operation in the true/false dest of a branch,
one can assume that the operation itself was true/false if
only that edge can reach the operation.

Differential Revision: https://reviews.llvm.org/D101709
The file was modifiedmlir/test/Dialect/Standard/canonicalize.mlir
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
Commit 422544414b0dd79fef2f10a051b22c47ae5a0af1 by thakis
[lld/mac] Add a test for -reexport_library + -dead_strip_dylibs

Our behavior here already matched ld64, now we have a test for it.

(ld64 even strips the library here if you also pass -needed_library bar.dylib.
That seems wrong to me, and lld honors needed_library in that case.)

Differential Revision: https://reviews.llvm.org/D103812
The file was modifiedlld/test/MachO/dead-strip-dylibs.s
Commit 85966df3aa64513851b88f82e9b586774c6db367 by Louis Dionne
[libc++] Rename 'and' to '&&'
The file was modifiedlibcxx/include/__iterator/iterator_traits.h
Commit 00b6463b269f6815a8a110b9208f483e239ce1e2 by gh
[MLIR][GPU] Simplify memcpy of cast

Introduce a simplification that allows memcpy of a cast to simply use the underlying op

Differential Revision: https://reviews.llvm.org/D103830
The file was modifiedmlir/lib/Dialect/GPU/IR/GPUDialect.cpp
The file was addedmlir/test/Dialect/GPU/canonicalize.mlir
The file was modifiedmlir/include/mlir/Dialect/GPU/GPUOps.td
Commit 38540d71c74c2f63a77993e7bfb6e52e4b0da0fc by listmail
[SCEV] Compute exit counts for unsigned IVs using mustprogress semantics

The motivation here is simple loops with unsigned induction variables w/non-one steps. A toy example would be:
for (unsigned i = 0; i < N; i += 2) { body; }

Given C/C++ semantics, we do not get the nuw flag on the induction variable. Given that lack, we currently can't compute a bound for this loop. We can do better for many cases, depending on the contents of "body".

The basic intuition behind this patch is as follows:
* A step which evenly divides the iteration space must wrap through the same numbers repeatedly. And thus, we can ignore potential cornercases where we exit after the n-th wrap through uint32_max.
* Per C++ rules, infinite loops without side effects are UB. We already have code in SCEV which relies on this.  In LLVM, this is tied to the mustprogress attribute.

Together, these let us conclude that the trip count of this loop must come before unsigned overflow unless the body would form a well defined infinite loop.

A couple notes for those reading along:
* I reused the loop properties code which is overly conservative for this case. I may follow up in another patch to generalize it for the actual UB rules.
* We could cache the n(s/u)w facts. I left that out because doing a pre-patch which cached existing inference showed a lot of diffs I had trouble fully explaining. I plan to get back to this, but I don't want it on the critical path.

Differential Revision: https://reviews.llvm.org/D103118
The file was addedllvm/test/Analysis/ScalarEvolution/lt-overflow.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
Commit f6555b917b81f0d403c30605243eb766c42ab0a4 by Matthew.Arsenault
GlobalISel: Remove unnecessary .getReg(0)s
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit dc98adfb448bdb845605185bb173e99614a17790 by Matthew.Arsenault
GlobalISel: Use MMO helper for getting the size in bits
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
Commit ccf28ea800ee07835a53c83b775ef3ec51909b1c by Matthew.Arsenault
AMDGPU: Move codegen test out of MIR test directory

This is testing an actual pass, not the MIR parser/printer.
The file was addedllvm/test/CodeGen/AMDGPU/load-store-opt-scc.mir
The file was removedllvm/test/CodeGen/MIR/AMDGPU/load-store-opt-scc.mir
Commit a1f550e052543f75acac9089b760cbc61729131f by Andrey.Churbanov
[OpenMP] libomp: implement OpenMP 5.1 inoutset task dependence type

Refactored code of dependence processing and added new inoutset dependence type.
Compiler can set dependence flag to 0x8 when call __kmpc_omp_task_with_deps.
Size of type of the dependence flag changed from 1 to 4 bytes in clang.
All dependence flags library gets so far and corresponding dependence types:
1 - IN, 2 - OUT, 3 - INOUT, 4 - MUTEXINOUTSET, 8 - INOUTSET.

Differential Revision: https://reviews.llvm.org/D97085
The file was modifiedopenmp/runtime/test/tasking/hidden_helper_task/depend.cpp
The file was modifiedclang/test/OpenMP/depobj_codegen.cpp
The file was modifiedclang/test/OpenMP/task_if_codegen.cpp
The file was modifiedclang/test/OpenMP/task_codegen.cpp
The file was modifiedopenmp/runtime/src/kmp_taskdeps.h
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/test/tasking/hidden_helper_task/common.h
The file was modifiedopenmp/runtime/src/kmp_taskdeps.cpp
The file was addedopenmp/runtime/test/tasking/omp51_task_dep_inoutset.c
The file was modifiedclang/test/OpenMP/target_exit_data_depend_codegen.cpp
The file was modifiedclang/test/OpenMP/target_update_depend_codegen.cpp
The file was modifiedopenmp/runtime/test/tasking/hidden_helper_task/gtid.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedopenmp/runtime/test/tasking/bug_proxy_task_dep_waiting.c
The file was modifiedclang/test/OpenMP/task_codegen.c
The file was modifiedopenmp/runtime/test/tasking/bug_nested_proxy_task.c
The file was modifiedclang/test/OpenMP/target_enter_data_depend_codegen.cpp
Commit d70e1f12765fd6bb644ffb561dff9a31c522308e by jonathan.l.peyton
[OpenMP][runtime] add .clang-tidy file

Use same checks as compiler-rt which removes checks for readability-*
and llvm-header style.

Differential Revision: https://reviews.llvm.org/D103711
The file was addedopenmp/runtime/.clang-tidy
Commit 8fdd7c2ff16da370e28ef1b22e400d57a541484f by nikita.ppv
[LoopUnroll] Clamp unroll count to MaxTripCount

Unrolling with more iterations than MaxTripCount is pointless, as
those iterations can never be executed. As such, we clamp ULO.Count
to MaxTripCount if it is known. This means we no longer need to
consider iterations after MaxTripCount for exit folding, and the
CompletelyUnroll flag becomes independent of ULO.TripCount.

Differential Revision: https://reviews.llvm.org/D103748
The file was modifiedllvm/lib/Transforms/Utils/LoopUnroll.cpp
The file was modifiedllvm/test/Transforms/LoopUnroll/runtime-loop5.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/multiple-exits.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/nonlatchcondbr.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/runtime-small-upperbound.ll
Commit 6de45b9e6a2c4b69ca82916a4cc1b4b8636d79b3 by martin
[clang] Fix reading long doubles with va_arg on x86_64 mingw

On x86_64 mingw, long doubles are always passed indirectly as
arguments (see an existing case in WinX86_64ABIInfo::classify);
generalize the existing code for reading varargs - any non-aggregate
type that is larger than 64 bits (which would be both long double
in mingw, and __int128) are passed indirectly too.

This makes reading varargs consistent with how they're passed,
fixing interop with both gcc and clang callers, for long double
and __int128.

Differential Revision: https://reviews.llvm.org/D103452
The file was modifiedclang/test/CodeGenCXX/ext-int.cpp
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
The file was modifiedclang/test/CodeGen/win64-i128.c
The file was modifiedclang/test/CodeGen/mingw-long-double.c
Commit 75521bd9d8d1e39b1a765a14d95c49291d2adde5 by harald
[X32] Add Triple::isX32(), use it.

So far, support for x86_64-linux-gnux32 has been handled by explicit
comparisons of Triple.getEnvironment() to GNUX32. This worked as long as
x86_64-linux-gnux32 was the only X32 environment to worry about, but we
now have x86_64-linux-muslx32 as well. To support this, this change adds
an isX32() function and uses it. It replaces all checks for GNUX32 or
MuslX32 by isX32(), except for the following:

- Triple::isGNUEnvironment() and Triple::isMusl() are supposed to treat
  GNUX32 and MuslX32 differently.
- computeTargetTriple() needs to be able to transform triples to add or
  remove X32 from the environment and needs to map GNU to GNUX32, and
  Musl to MuslX32.
- getMultiarchTriple() completely lacks any Musl support and retains the
  explicit check for GNUX32 as it can only return x86_64-linux-gnux32.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D103777
The file was modifiedclang/test/Driver/linux-cross.cpp
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedllvm/test/CodeGen/X86/x32-lea-1.ll
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetMachine.cpp
The file was modifiedclang/lib/Basic/Targets/X86.h
The file was modifiedllvm/include/llvm/ADT/Triple.h
The file was modifiedllvm/lib/Target/X86/X86Subtarget.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86AsmPrinter.cpp
The file was modifiedllvm/lib/Target/X86/X86RegisterInfo.cpp
Commit 8ec73e96b72d04787ed606cfbb62a7a2a05b3711 by i
[ELF] getRelocatedSection: remove the check for ET_REL object file

getRelocatedSection interface should not check that the object file is
relocatable, as executable files may have relocations preserved with
`--emit-relocs` linker flag. The relocations are useful in context of post-link
binary analysis for function reference identification. For example, BOLT relies
on relocations to perform function reordering.

Reviewed By: MaskRay, jhenderson

Differential Revision: https://reviews.llvm.org/D102296
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/unittests/Object/ELFObjectFileTest.cpp
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was modifiedllvm/include/llvm/Object/ObjectFile.h
Commit 17c43c404535fe427d2cddb665154ae601d505bd by thakis
[lld/mac] Add reexports after reexporter to inputFiles

When a library "host"'s reexports change their installName with
`$ld$os10.11$install_name$host`, we used to write a load command for "host" but
write the version numbers of the reexport instead of "host". This fixes that.

I first thought that the rule is to take the version numbers from the library
that originally had that install name (implemented in D103819), but that's not
what ld64 seems to be doing: It takes the version number from the first dylib
with that install name it loads, and it loads the reexporting library before
the reexports. We already did most of that, we just added reexports before the
reexporter. After this change, we add the reexporter before the reexports.

Addresses https://bugs.llvm.org/show_bug.cgi?id=49800#c11 part 1.

(ld64 seems to add reexports after processing _all_ files on the command line,
while we add them right after the reexporter. For the common case of reexport +
$ld$ symbol changing back to the exporter name, this doesn't make a difference,
but you can construct a case where it does. I expect this to not make a
difference in practice though.)

Differential Revision: https://reviews.llvm.org/D103821
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/test/MachO/tapi-link.s
The file was modifiedlld/test/MachO/implicit-dylibs.s
The file was modifiedlld/test/MachO/special-symbol-ld-install-name.s
The file was modifiedlld/MachO/Driver.cpp
Commit f492c35965036d67833dae3c21498dcd1c1ed1fe by riddleriver
[mlir-lsp-server] Add support for hover on region operations

This revision adds support for hover on region operations, by temporarily removing the regions during printing. This revision also tweaks the hover format for operations to include symbol information, now that FuncOp can be shown in the hover.

Differential Revision: https://reviews.llvm.org/D103727
The file was modifiedmlir/lib/IR/SymbolTable.cpp
The file was modifiedmlir/lib/Tools/mlir-lsp-server/MLIRServer.cpp
The file was modifiedmlir/include/mlir/IR/SymbolTable.h
The file was modifiedmlir/test/mlir-lsp-server/hover.test
Commit 4c3adea7a4ab7c63010a953547152d4ad861f9de by riddleriver
[mlir-lsp-server] Add support for hover on symbol references

For now the hover simply shows the same information as hovering on the operation
name. If necessary this can be tweaked to something symbol specific later.

Differential Revision: https://reviews.llvm.org/D103728
The file was modifiedmlir/test/mlir-lsp-server/hover.test
The file was modifiedmlir/lib/Tools/mlir-lsp-server/MLIRServer.cpp
Commit 2db4701cafd42d20f32c6c9a5dbd15484523fcda by riddleriver
[mlir-lsp-server] Fix bug in symbol use/def tracking

We were accidentally only using the first found reference, instead of all of them. This revision fixes this by properly tracking all references to a symbol.

Differential Revision: https://reviews.llvm.org/D103730
The file was modifiedmlir/test/mlir-lsp-server/references.test
The file was modifiedmlir/lib/Parser/AsmParserState.cpp
Commit 9145a3d4ab7eb05d9fb113b5392e8961df629b88 by caij2003
Revert "[AArch64] handle -Wa,-march="

This reverts commit fd11a26d368c5a909fb88548fef2cee7a6c2c931.
The file was removedclang/test/Driver/aarch64-target-as-march.s
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.h
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.cpp
Commit e72f16b7e66256dba5496a32546417d438bb035c by dsuchkov
[Test] Add a JumpThreading test exposing a bug in BasicAA.
The file was addedllvm/test/Transforms/JumpThreading/aa-crash-phi-no-args.ll
Commit d32cc150feb72f315a5bbd34f92e7beca21a50da by dsuchkov
[BasicAA] Handle PHIs without incoming values gracefully

Fix a bug introduced by f6f6f6375d1a4bced8a6e79a78726ab32b8dd879.
Now for empty PHIs, instead of crashing on assert(hasVal()) in
Optional's internals, we'll return NoAlias, as we did before that patch.

Differential Revision: https://reviews.llvm.org/D103831
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was modifiedllvm/test/Transforms/JumpThreading/aa-crash-phi-no-args.ll
Commit 3c6e419198f3916b76f88d2bef8aa04dd2114574 by listmail
[SCEV] Properly guard reasoning about infinite loops being UB on mustprogress

Noticed via code inspection. We changed the semantics of the IR when we added mustprogress, and we appear to have not updated this location.

Differential Revision: https://reviews.llvm.org/D103834
The file was modifiedllvm/test/Transforms/LoopVectorize/pr38697.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count-unknown-stride.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 3af5f3e69247fb3ead05eefa99832c1c029e1997 by mahesha.comp
[IR] Add utility to convert constant expression operands (of an instruction) to instructions.

In the situation where we need to replace a constant operand C from a constant expression CE
by an instruction NI, it not possible without converting CE itself into an instruction. This
utility helps to convert the given set of constant expression operands from an instruction I
into a corresponding set of instructions.

The current use-case for this utility is from the patches - https://reviews.llvm.org/D103225
and https://reviews.llvm.org/D103655.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D103661
The file was modifiedllvm/lib/IR/ReplaceConstant.cpp
The file was modifiedllvm/include/llvm/IR/ReplaceConstant.h
Commit 713ca2f3604fdaf0edd5a4e2869c5685e7ec4216 by mahesha.comp
[AMDGPU] Introduce command line switch to control super aligning of LDS.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D103817
The file was addedllvm/test/CodeGen/AMDGPU/lower-kernel-lds-super-align.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
Commit 05289dfb62461b73654c5fd64b1ef044a88ee027 by Stanislav.Mekhanoshin
[AMDGPU] Handle constant LDS uses from different kernels

This allows to lower an LDS variable into a kernel structure
even if there is a constant expression used from different
kernels.

Differential Revision: https://reviews.llvm.org/D103655
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-kernel-lds-constexpr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_read2.ll
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPULDSUtils.cpp
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPULDSUtils.h
The file was modifiedllvm/test/CodeGen/AMDGPU/lower-module-lds-constantexpr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ds_write2.ll
Commit 9b92ae01ee57e332e52d14c073fa3235498a9f2c by craig.topper
[RISCV] Store Log2 of EEW in the vector load/store intrinsic to pseudo lookup tables. NFCI

This uses 3 bits of data instead of 7. I'm wondering if we can use
bitfields for the lookup table key where this would matter.

I also name the shift_amount template to log2 since it is used
with more than just an srl now.
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Commit 47211fa88905f601a1e256f489591d5b91ec6a05 by aeubanks
Revert "[TargetLowering] Only inspect attributes in the arguments for ArgListEntry"

Needs to be discussed more.

This reverts commit 255a5c1baa6020c009934b4fa342f9f6dbbcc46
This reverts commit df2056ff3730316f376f29d9986c9913b95ceb1
This reverts commit faff79b7ca144e505da6bc74aa2b2f7cffbbf23
This reverts commit d2a9020785c6e02afebc876aa2778fa64c5cafd
The file was removedllvm/test/CodeGen/X86/mismatched-byval.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/div-tracing.ll
The file was modifiedllvm/test/Transforms/InstCombine/pow_fp_int16.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/memset.ll
The file was modifiedllvm/test/Transforms/InstCombine/simplify-libcalls.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_mem_intrinsic.ll
The file was modifiedllvm/lib/Transforms/Utils/BuildLibCalls.cpp
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/const-cmp-tracing.ll
The file was modifiedllvm/test/Transforms/InstCombine/pow_fp_int.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_store.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/shadow-args-zext.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was modifiedllvm/test/Transforms/InstCombine/exp2-1.ll
The file was modifiedllvm/docs/ReleaseNotes.rst
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_store_threshold.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_track_load.ll
Commit c705b7b04dba467a67871a1bbb77907d0ed7fc19 by powerman1st
[RISCV] Optimize bitwise and with constant for the Zbs extension

This patch optimizes (and r i) to
(BCLRI (BCLRI r, i0), i1) in which i = ~((1<<i0) | (1<<i1)).
or
(BCLRI (ANDI r, i0), i1) in which i = i0 & ~(1<<i1).

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103743
The file was modifiedllvm/test/CodeGen/RISCV/rv64zbs.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoB.td
The file was modifiedllvm/test/CodeGen/RISCV/rv32zbs.ll
Commit d9633f229c36f292dab0e5f510ac635cfaf3a798 by phosek
Revert "[libcxx][module-map] creates submodules for private headers"

This reverts commit f1417eb9b1f51b689c78dd8cb0114c1749dd2845 as it
uncovered a Clang bug PR50592.
The file was modifiedlibcxx/include/__iterator/next.h
The file was modifiedlibcxx/include/__iterator/indirect_concepts.h
The file was modifiedlibcxx/include/__memory/allocation_guard.h
The file was modifiedlibcxx/include/__memory/allocator_traits.h
The file was modifiedlibcxx/include/__memory/pointer_traits.h
The file was modifiedlibcxx/include/module.modulemap
The file was modifiedlibcxx/include/__iterator/advance.h
The file was modifiedlibcxx/include/__memory/pointer_safety.h
The file was modifiedlibcxx/include/__memory/allocator.h
The file was modifiedlibcxx/include/__iterator/prev.h
Commit 692d7166f7715514d0ff8090e5bd66668432b270 by phosek
Revert "[libcxx][gardening] Move all algorithms into their own headers."

This reverts commit 7ed7d4ccb8991e2b5b95334b508f8cec2faee737 as it
uncovered a Clang bug PR50592.
The file was removedlibcxx/include/__algorithm/find_if.h
The file was removedlibcxx/include/__algorithm/replace.h
The file was modifiedlibcxx/include/module.modulemap
The file was removedlibcxx/include/__algorithm/is_permutation.h
The file was removedlibcxx/include/__algorithm/search.h
The file was removedlibcxx/include/__algorithm/for_each.h
The file was removedlibcxx/include/__algorithm/push_heap.h
The file was removedlibcxx/include/__algorithm/sort.h
The file was removedlibcxx/include/__algorithm/partial_sort.h
The file was removedlibcxx/include/__algorithm/generate.h
The file was removedlibcxx/include/__algorithm/all_of.h
The file was modifiedlibcxx/test/std/containers/sequences/array/compare.fail.cpp
The file was removedlibcxx/include/__algorithm/set_symmetric_difference.h
The file was removedlibcxx/include/__algorithm/half_positive.h
The file was removedlibcxx/include/__algorithm/lower_bound.h
The file was removedlibcxx/include/__algorithm/max.h
The file was removedlibcxx/include/__algorithm/is_heap_until.h
The file was removedlibcxx/include/__algorithm/binary_search.h
The file was removedlibcxx/include/__algorithm/max_element.h
The file was removedlibcxx/include/__algorithm/inplace_merge.h
The file was removedlibcxx/include/__algorithm/next_permutation.h
The file was removedlibcxx/include/__algorithm/find_first_of.h
The file was modifiedlibcxx/test/std/algorithms/alg.sorting/alg.min.max/requires_forward_iterator.fail.cpp
The file was removedlibcxx/include/__algorithm/transform.h
The file was removedlibcxx/include/__algorithm/copy.h
The file was removedlibcxx/include/__algorithm/stable_partition.h
The file was removedlibcxx/include/__algorithm/count_if.h
The file was removedlibcxx/include/__algorithm/none_of.h
The file was removedlibcxx/include/__algorithm/find.h
The file was removedlibcxx/include/__algorithm/unwrap_iter.h
The file was removedlibcxx/include/__algorithm/upper_bound.h
The file was removedlibcxx/include/__algorithm/search_n.h
The file was removedlibcxx/include/__algorithm/lexicographical_compare.h
The file was removedlibcxx/include/__algorithm/find_end.h
The file was removedlibcxx/include/__algorithm/set_difference.h
The file was removedlibcxx/include/__algorithm/sift_down.h
The file was removedlibcxx/include/__algorithm/adjacent_find.h
The file was removedlibcxx/include/__algorithm/min_element.h
The file was modifiedlibcxx/include/functional
The file was removedlibcxx/include/__algorithm/sample.h
The file was removedlibcxx/include/__algorithm/clamp.h
The file was removedlibcxx/include/__algorithm/includes.h
The file was removedlibcxx/include/__algorithm/nth_element.h
The file was removedlibcxx/include/__algorithm/make_heap.h
The file was removedlibcxx/include/__algorithm/partition_point.h
The file was removedlibcxx/include/__functional/search.h
The file was removedlibcxx/include/__algorithm/mismatch.h
The file was removedlibcxx/include/__algorithm/set_union.h
The file was removedlibcxx/include/__algorithm/shuffle.h
The file was removedlibcxx/include/__algorithm/shift.h
The file was removedlibcxx/include/__algorithm/partition.h
The file was modifiedlibcxx/include/experimental/functional
The file was removedlibcxx/include/__algorithm/is_heap.h
The file was removedlibcxx/include/__algorithm/remove.h
The file was removedlibcxx/include/__algorithm/prev_permutation.h
The file was removedlibcxx/include/__algorithm/comp.h
The file was modifiedlibcxx/include/regex
The file was removedlibcxx/include/__algorithm/any_of.h
The file was removedlibcxx/include/__algorithm/find_if_not.h
The file was modifiedlibcxx/include/__memory/temporary_buffer.h
The file was removedlibcxx/include/__algorithm/uniform_int_distribution.h
The file was removedlibcxx/include/__algorithm/set_intersection.h
The file was removedlibcxx/include/__algorithm/sort_heap.h
The file was removedlibcxx/include/__algorithm/equal_range.h
The file was removedlibcxx/include/__algorithm/fill.h
The file was removedlibcxx/include/__algorithm/reverse.h
The file was modifiedlibcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/sample.fail.cpp
The file was removedlibcxx/include/__algorithm/is_sorted.h
The file was removedlibcxx/include/__algorithm/unique.h
The file was removedlibcxx/include/__algorithm/min.h
The file was removedlibcxx/include/__algorithm/move.h
The file was removedlibcxx/include/__algorithm/rotate.h
The file was removedlibcxx/include/__algorithm/merge.h
The file was removedlibcxx/include/__algorithm/comp_ref_type.h
The file was removedlibcxx/include/__algorithm/count.h
The file was modifiedlibcxx/include/algorithm
The file was modifiedlibcxx/include/CMakeLists.txt
The file was removedlibcxx/include/__algorithm/stable_sort.h
The file was removedlibcxx/include/__algorithm/for_each_n.h
The file was removedlibcxx/include/__algorithm/equal.h
The file was removedlibcxx/include/__algorithm/is_partitioned.h
The file was removedlibcxx/include/__algorithm/pop_heap.h
The file was removedlibcxx/include/__algorithm/minmax.h
The file was removedlibcxx/include/__algorithm/minmax_element.h
Commit 3b69318eef34aecd4d3da751560a2785be1c3b93 by llvmgnsyncbot
[gn build] Port 692d7166f771
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 5b4dda550ece353bd9dca703067a740e3dbf6ceb by gbalats
[dfsan] Add full fast8 support

Complete support for fast8:
- amend shadow size and mapping in runtime
- remove fast16 mode and -dfsan-fast-16-labels flag
- remove legacy mode and make fast8 mode the default
- remove dfsan-fast-8-labels flag
- remove functions in dfsan interface only applicable to legacy
- remove legacy-related instrumentation code and tests
- update documentation.

Reviewed By: stephan.yichao.zhao, browneee

Differential Revision: https://reviews.llvm.org/D103745
The file was modifiedcompiler-rt/test/dfsan/pair.cpp
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/union.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_cached_shadows.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_phi.ll
The file was modifiedcompiler-rt/lib/dfsan/dfsan.cpp
The file was modifiedcompiler-rt/test/dfsan/origin_invalid.c
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was modifiedcompiler-rt/test/dfsan/origin_ldst.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/external_mask.ll
The file was modifiedcompiler-rt/test/dfsan/custom.cpp
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/array.ll
The file was modifiedcompiler-rt/test/dfsan/atomic.cpp
The file was modifiedcompiler-rt/test/dfsan/origin_memcpy.c
The file was modifiedcompiler-rt/test/dfsan/origin_disabled.c
The file was modifiedcompiler-rt/test/dfsan/origin_memmove.c
The file was modifiedcompiler-rt/lib/dfsan/dfsan.h
The file was modifiedcompiler-rt/test/dfsan/origin_branch.c
The file was modifiedcompiler-rt/test/dfsan/origin_limit.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_mem_intrinsic.ll
The file was modifiedcompiler-rt/test/dfsan/sigaction.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/abilist_aggregate.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_track_load.ll
The file was modifiedcompiler-rt/test/dfsan/fncall.c
The file was modifiedcompiler-rt/test/dfsan/interceptors.c
The file was modifiedcompiler-rt/test/dfsan/origin_untainted.c
The file was removedcompiler-rt/test/dfsan/dump_labels.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/store.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/musttailcall.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_store.ll
The file was modifiedclang/docs/DataFlowSanitizerDesign.rst
The file was modifiedclang/docs/DataFlowSanitizer.rst
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_other_ops.ll
The file was modifiedcompiler-rt/test/dfsan/origin_track_ld.c
The file was modifiedcompiler-rt/test/dfsan/origin_with_sigactions.c
The file was modifiedcompiler-rt/include/sanitizer/dfsan_interface.h
The file was removedllvm/test/Instrumentation/DataFlowSanitizer/fast16labels.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/struct.ll
The file was removedllvm/test/Instrumentation/DataFlowSanitizer/union-large.ll
The file was modifiedcompiler-rt/test/dfsan/flush.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/shadow-args-zext.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_store_threshold.ll
The file was modifiedcompiler-rt/lib/dfsan/dfsan_flags.inc
The file was modifiedcompiler-rt/test/dfsan/flags.c
The file was modifiedcompiler-rt/test/dfsan/origin_unaligned_memtrans.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_abilist.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/phi.ll
The file was modifiedcompiler-rt/test/dfsan/origin_set_label.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/load.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/arith.ll
The file was modifiedcompiler-rt/test/dfsan/event_callbacks.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/atomics.ll
The file was modifiedcompiler-rt/test/dfsan/origin_add_label.c
The file was modifiedcompiler-rt/test/fuzzer/only-some-bytes-fork.test
The file was modifiedcompiler-rt/test/dfsan/release_shadow_space.c
The file was modifiedcompiler-rt/test/dfsan/origin_memset.c
The file was modifiedcompiler-rt/lib/fuzzer/dataflow/DataFlow.cpp
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/basic.ll
The file was modifiedcompiler-rt/test/dfsan/propagate.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/dont_combine_offset_labels_on_gep.ll
The file was modifiedcompiler-rt/test/dfsan/fork.cpp
The file was removedcompiler-rt/test/dfsan/fast16labels.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/abilist.ll
The file was modifiedcompiler-rt/test/dfsan/origin_with_signals.cpp
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_load.ll
The file was modifiedcompiler-rt/lib/dfsan/dfsan_platform.h
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_select.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/call.ll
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/vector.ll
The file was modifiedcompiler-rt/test/dfsan/sigaction_stress_test.c
The file was modifiedcompiler-rt/test/dfsan/basic.c
The file was modifiedcompiler-rt/test/dfsan/origin_overlapped.c
The file was modifiedcompiler-rt/test/dfsan/origin_stack_trace.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_call.ll
The file was modifiedcompiler-rt/test/dfsan/origin_ld_lost.c
The file was modifiedcompiler-rt/test/dfsan/struct.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/select.ll
The file was modifiedcompiler-rt/test/fuzzer/only-some-bytes.test
The file was addedcompiler-rt/test/dfsan/fast8labels.c
The file was removedcompiler-rt/test/dfsan/label_count.c
The file was modifiedcompiler-rt/test/dfsan/pthread.c
The file was modifiedcompiler-rt/test/fuzzer/dataflow.test
Commit 11539edf52d53ccbd42040a30e29d117600cfd6b by Vitaly Buka
[NFC][LSAN] Limit the number of concurrent threads is the test

Test still fails with D88184 reverted.

The test was flaky on https://bugs.chromium.org/p/chromium/issues/detail?id=1206745 and
https://lab.llvm.org/buildbot/#/builders/sanitizer-x86_64-linux

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D102218
The file was modifiedcompiler-rt/test/lsan/TestCases/many_threads_detach.cpp
Commit 0aa941654fc06d76d4fea57ea1b205f93dce391b by craig.topper
[RISCV] Use bitfields to shrink the size of the vector load/store intrinsics to pseudo instruction lookup tables.
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
Commit b41b76b303cdfde389f70e0a311698d7391423f1 by Vitaly Buka
[NFC][scudo] Print errno of fork failure

This fork fails sometime on sanitizer-x86_64-linux-qemu bot.
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
Commit e6629be31e67190f0a524f009752d73410894560 by cbowler
[AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__ predefined macros

Differential Revision: https://reviews.llvm.org/D103707
The file was modifiedclang/test/Preprocessor/init-ppc.c
The file was modifiedclang/lib/Basic/Targets/OSTargets.h
Commit f8816c7400250961af4810956248c3636a5fcb04 by carl.ritson
[AMDGPU] Add v5f32/VReg_160 support for MIMG instructions

Avoid having to round up to v8f32/VReg_256 when only 5 VGPRs are
required for a MIMG address operand.

Maintain _V8 instruction variants of pseudo instructions allowing
assembly prior to GFX10 to work as-is.  Currently the validator
can tell for GFX10 what the correct size is, so will disallow
oversize address registers.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D103672
The file was modifiedllvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_mimg.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/mimg_gfx10.txt
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.o.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.nsa.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/nsa-reassign.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.encode.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.dim.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll
The file was modifiedllvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.ll
The file was modifiedllvm/lib/Target/AMDGPU/MIMGInstructions.td
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.o.dim.ll
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_mimg.txt
Commit f97e01e61af1115bb9cb68dbdc70cc7f9f884759 by cebowleratibm
Revert "[AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__ predefined macros"

This reverts commit e6629be31e67190f0a524f009752d73410894560.
The file was modifiedclang/test/Preprocessor/init-ppc.c
The file was modifiedclang/lib/Basic/Targets/OSTargets.h
Commit f38eff777e46f42884d82815d0b39766520ac2bf by cebowleratibm
[AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__

Revert/reapply to fix Git authorship metadata

Differential Revision: https://reviews.llvm.org/D103707
The file was modifiedclang/lib/Basic/Targets/OSTargets.h
The file was modifiedclang/test/Preprocessor/init-ppc.c
Commit c8bbfb8cf5eac991351c03c41a15abaac4b78ecf by carl.ritson
[AMDGPU] Allow oversize vaddr in GFX10 MIMG assembly

As a follow up to D103672, we should allow vaddr to be larger than
required when assembling GFX10 MIMG instructions.

Reviewed By: dp

Differential Revision: https://reviews.llvm.org/D103733
The file was modifiedllvm/test/MC/AMDGPU/gfx10_err_pos.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_mimg.s
Commit 310d2b4957c8c11387354c58d15e3249971accc7 by esme.yi
[yaml2obj] Fix buildbot-issue-4886

XCOFFEmitter.cpp:67:16: runtime error: null pointer passed as argument 2,
which is declared to never be null
The file was modifiedllvm/lib/ObjectYAML/XCOFFEmitter.cpp
Commit 04259cde15a9fad31421e9161f160ee23f84ebdd by jezng
[lld-macho] Implement cstring deduplication

Our implementation draws heavily from LLD-ELF's, which in turn delegates
its string deduplication to llvm-mc's StringTableBuilder. The messiness of
this diff is largely due to the fact that we've previously assumed that
all InputSections get concatenated together to form the output. This is
no longer true with CStringInputSections, which split their contents into
StringPieces. StringPieces are much more lightweight than InputSections,
which is important as we create a lot of them. They may also overlap in
the output, which makes it possible for strings to be tail-merged. In
fact, the initial version of this diff implemented tail merging, but
I've dropped it for reasons I'll explain later.

**Alignment Issues**

Mergeable cstring literals are found under the `__TEXT,__cstring`
section. In contrast to ELF, which puts strings that need different
alignments into different sections, clang's Mach-O backend puts them all
in one section. Strings that need to be aligned have the `.p2align`
directive emitted before them, which simply translates into zero padding
in the object file.

I *think* ld64 extracts the desired per-string alignment from this data
by preserving each string's offset from the last section-aligned
address. I'm not entirely certain since it doesn't seem consistent about
doing this; but perhaps this can be chalked up to cases where ld64 has
to deduplicate strings with different offset/alignment combos -- it
seems to pick one of their alignments to preserve. This doesn't seem
correct in general; we can in fact can induce ld64 to produce a crashing
binary just by linking in an additional object file that only contains
cstrings and no code. See PR50563 for details.

Moreover, this scheme seems rather inefficient: since unaligned and
aligned strings are all put in the same section, which has a single
alignment value, it doesn't seem possible to tell whether a given string
doesn't have any alignment requirements. Preserving offset+alignments
for strings that don't need it is wasteful.

In practice, the crashes seen so far seem to stem from x86_64 SIMD
operations on cstrings. X86_64 requires SIMD accesses to be
16-byte-aligned. So for now, I'm thinking of just aligning all strings
to 16 bytes on x86_64. This is indeed wasteful, but implementation-wise
it's simpler than preserving per-string alignment+offsets. It also
avoids the aforementioned crash after deduplication of
differently-aligned strings. Finally, the overhead is not huge: using
16-byte alignment (vs no alignment) is only a 0.5% size overhead when
linking chromium_framework.

With these alignment requirements, it doesn't make sense to attempt tail
merging -- most strings will not be eligible since their overlaps aren't
likely to start at a 16-byte boundary. Tail-merging (with alignment) for
chromium_framework only improves size by 0.3%.

It's worth noting that LLD-ELF only does tail merging at `-O2`. By
default (at `-O1`), it just deduplicates w/o tail merging. @thakis has
also mentioned that they saw it regress compressed size in some cases
and therefore turned it off. `ld64` does not seem to do tail merging at
all.

**Performance Numbers**

CString deduplication reduces chromium_framework from 250MB to 242MB, or
about a 3.2% reduction.

Numbers for linking chromium_framework on my 3.2 GHz 16-Core Intel Xeon W:

      N           Min           Max        Median           Avg        Stddev
  x  20          3.91          4.03         3.935          3.95   0.034641016
  +  20          3.99          4.14         4.015        4.0365     0.0492336
  Difference at 95.0% confidence
          0.0865 +/- 0.027245
          2.18987% +/- 0.689746%
          (Student's t, pooled s = 0.0425673)

As expected, cstring merging incurs some non-trivial overhead.

When passing `--no-literal-merge`, it seems that performance is the
same, i.e. the refactoring in this diff didn't cost us.

      N           Min           Max        Median           Avg        Stddev
  x  20          3.91          4.03         3.935          3.95   0.034641016
  +  20          3.89          4.02         3.935        3.9435   0.043197831
  No difference proven at 95.0% confidence

Reviewed By: #lld-macho, gkm

Differential Revision: https://reviews.llvm.org/D102964
The file was modifiedlld/MachO/ConcatOutputSection.cpp
The file was addedlld/test/MachO/invalid/cstring-dedup.s
The file was modifiedlld/test/MachO/subsections-section-relocs.s
The file was modifiedlld/MachO/ConcatOutputSection.h
The file was addedlld/test/MachO/cstring-dedup.s
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/MachO/Symbols.cpp
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/Options.td
The file was modifiedlld/test/MachO/x86-64-relocs.s
The file was modifiedlld/MachO/SyntheticSections.h
The file was modifiedlld/MachO/Config.h
The file was modifiedlld/MachO/UnwindInfoSection.cpp
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/MachO/InputFiles.h
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/test/MachO/invalid/reserved-section-name.s
Commit 447dfbe005a7884766c7d073566eae710aa9ed5b by jezng
[lld-macho] Implement -force_load_swift_libs

It causes libraries whose names start with "swift" to be force-loaded.
Note that unlike the more general `-force_load`, this flag only applies
to libraries specified via LC_LINKER_OPTIONS, and not those passed on
the command-line. This is what ld64 does.

Reviewed By: #lld-macho, thakis

Differential Revision: https://reviews.llvm.org/D103709
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/Options.td
The file was addedlld/test/MachO/force-load-swift-libs.ll
The file was modifiedlld/MachO/Config.h
Commit 8ce45f97283460a330201a199e686e8e088805e0 by yhs
BPF: fix relocation types in lib/Object/RelocationResolver.cpp

Commit 6a2ea84600ba ("BPF: Add more relocation kinds")
added new relocations R_BPF_64_ABS64 and R_BPF_64_ABS32
for normal 64-bit and 32-bit data relocations.
This is to replace some of functionalities with
R_BPF_64_64 and R_BPF_64_32 so that new R_BPF_64_64
and R_BPF_64_32 semantics are for ld_imm64 and
call instructions only.

The BPF support in lib/Object/RelocationResolver.cpp
is used to perform normal data relocations for
the case like DWARFObjInMemory with an object file
(search function getRelocationResolver() in file
DebugInfo/DWARF/DWARFContext.cpp) or llvm-readobj
to dump ".stack_sizes" section data.
In all these casees, normal 64-bit and 32-bit relocations
are performed and such resolution resolution
is exactly what implemented in RelocationResolver.cpp.

But Commit 6a2ea84600ba missed to change
R_BPF_64_64/R_BPF_64_32 to R_BPF_64_ABS64/R_BPF_64_ABS32.
This patch fixed the issue and added a test for it
with llvm-readobj dumping ".stack_sizes" section.

Differential Revision: https://reviews.llvm.org/D103864
The file was addedllvm/test/Object/BPF/lit.local.cfg
The file was addedllvm/test/Object/BPF/yaml2obj-elf-bpf-rel.yaml
The file was modifiedllvm/lib/Object/RelocationResolver.cpp
Commit 7a105b5768575c62802fd662366b5a759eb88447 by craig.topper
[RISCV] Use AVL Operand instead of GPR for tied mask pseudo for vwadd.wv and similar.

I mistakenly copied this from an older version of our internal
repo.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Commit ae3ab4f0ec6190ebc19775002b59a36c06848bf3 by craig.topper
[RISCV] Masked compares should use a tail agnostic policy.

Writes of a mask result are always tail agnostic.

Unfortunately, this seems to have made codegen worse. I can only
think this must be because the vsetvli was acting as some sort
of barrier that prevented some code movement in the scheduler.

Reviewed By: arcbbb

Differential Revision: https://reviews.llvm.org/D103331
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmflt-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfeq-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgt-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsleu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsne-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsltu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmseq-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfle-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgeu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgeu-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfne-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsge-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgtu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfgt-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmflt-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfle-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsge-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfge-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgt-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfne-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsleu-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmslt-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmslt-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsle-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsle-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfeq-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfgt-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmfge-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmseq-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsltu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsne-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgtu-rv32.ll
Commit 7c4e9a68264ffeef6178865be76c45c4fb6390af by craig.topper
[RISCV] Use 0 for Log2SEW for vle1/vse1 intrinsics to enable vsetvli optimization.

Missed in D103299.
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vse1-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vse1-rv32.ll
Commit 9625d61eb66c12388875e081b63ebed7e42c6bbb by phosek
[Driver] Support libc++ in MSVC

This implements support for using libc++ headers and library in the MSVC
toolchain.  We only support libc++ that is a part of the toolchain, and
not headers installed elsewhere on the system.

Differential Revision: https://reviews.llvm.org/D101479
The file was addedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/include/c++/v1/.keep
The file was addedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/lib/.keep
The file was addedclang/test/Driver/msvc-libcxx.cpp
The file was addedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/bin/.keep
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/include/x86_64-pc-windows-msvc/c++/v1/.keep
The file was modifiedclang/lib/Driver/ToolChains/MSVC.cpp
The file was addedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/lib/x86_64-pc-windows-msvc/.keep

Summary

  1. [buildbot-clangd-ubuntu-clang] deployed new docker image (details)
  2. [MLIR] Enable tensorcore integration tests (details)
Commit e80b3b9a559501293a2da7aeddd565c00f0c34a6 by kuhnel
[buildbot-clangd-ubuntu-clang] deployed new docker image

This is just the deployment for the container updated in
cf3881f300f973e6dcc12d2c25dff626290642aa
The file was modifiedbuildbot/google/terraform/main.tf
The file was modifiedbuildbot/google/docker/buildbot-clangd-ubuntu-clang/VERSION
Commit c24b5268477630cb2efd8bf2f7fb3945343e7d03 by thomasraoux
[MLIR] Enable tensorcore integration tests

Differential Revision: https://reviews.llvm.org/D103266
The file was modifiedbuildbot/osuosl/master/config/builders.py