Changes

Summary

  1. Add LLDB in release binaries by default (details)
  2. [Sema][RISCV][SVE] Allow ?: to select Typedef BuiltinType in C (details)
  3. [Format] Fix incorrect pointer detection (details)
  4. [Debug-Info] handle DW_CC_pass_by_value/DW_CC_pass_by_reference under strict DWARF. (details)
  5. [flang] Change capitalization for Adjustl/r (details)
  6. AArch64: support atomic zext/sextloads (details)
  7. [mlir][linalg] Cleanup left over uses of deprecated LinalgOp methods. (details)
  8. [SelectionDAG] Extend FoldConstantVectorArithmetic to SPLAT_VECTOR (details)
  9. [libcxx] Don't use an undefined '+' in unsigned/octal/hexal print formats (details)
  10. [lldb][NFC] Remove a redundant call to weak_ptr::expired (details)
  11. [test] Fix accidental match in parent_recurse_depth.s (details)
  12. Re-land ae4303b42c, "Track PHI values through register coalescing" (details)
  13. Revert "[gn build] port d1d36f7ad (llvm-tapi-diff)" (details)
  14. [InstCombine] add tests for sext-of-trunc-of-lshr; NFC (details)
  15. [InstCombine] convert lshr to ashr to eliminate cast op (details)
  16. [mlir] Catch nonconvertible types in async conversion (details)
  17. [AArch64][SVE] Add support for using reverse forms of SVE2 shifts (details)
  18. [clang][AST] Set correct DeclContext in ASTImporter lookup table for ParmVarDecl. (details)
  19. [flang] Generate type info symbols outside of derived type scopes (details)
  20. [AMDGPU][MC][NFC] Fixed typos in parser (details)
  21. [clang][deps] Add argument for customizing PCM paths (details)
  22. [AMDGPU][GlobalISel] Legalize G_ABS (details)
  23. [flang][driver] Add support for `-module-suffix` (details)
  24. [clang][deps] Support object files (details)
  25. [InstCombine] add/adjust test comments; NFC (details)
  26. [HIP] Fix spack HIP device lib detection (details)
  27. [AArch64] Further enable UnrollAndJam (details)
  28. [OpenCL][NFC] Test commit: tidy up whitespace in comment (details)
  29. [libc++] Use the using_if_exists attribute when provided (details)
  30. Revert "[InstrProfiling] If no value profiling, make data variable private and (for Windows) use one comdat" (details)
  31. [clang-format] NFC, 2% improvement in overall clang-formatted status (now 50%) (details)
  32. Temporarily remove one of the tests added in effb87dfa810a (details)
  33. [InstCombine] add tests for pow() reassociation; NFC (details)
  34. [flang][driver] Add checks for missing option arguments (details)
  35. [mlir][openacc] Conversion of data operands in acc.data to LLVM IR dialect (details)
  36. [OPENMP]Fix PR49790: Constexpr values not handled in `omp declare mapper` clause. (details)
  37. [gn build] (manually) port de07b1e84d8de9 (details)
  38. [mlir] Mark VectorToSCF patterns as recursive (details)
  39. Revert test fixups after e9a9c850989e (which reverted a14fc74). (details)
  40. Temporarily remove another test added in one of the tests added in effb87d (details)
  41. [mlir][linalg] Refactor PadTensorOpVectorizationPattern (NFC) (details)
  42. [AArch64] Remove SETCC of CSEL when the latter's condition can be inverted (details)
  43. [OPENMP]Fix PR50129: omp cancel parallel not working as expected. (details)
  44. [ConstantFolding] add copysign tests for more FP types; NFC (details)
  45. [clangd] Run code completion on each token coverd by --check-lines (details)
  46. [clang] use a different name for generated test cdb (details)
  47. [RISCV] Teach vsetvli insertion pass that operations on masks don't care about SEW/LMUL. (details)
  48. [OpenMP] fix spelling error in message-converter.pl (details)
  49. [Attributor] Allow lookupAAFor to return null on invalid state (details)
  50. [libcxx][gardening] Move all algorithms into their own headers. (details)
  51. [Attributor] Check HeapToStack's state for isKnownHeapToStack (details)
  52. [libcxx][ranges] Add `ranges::empty_view`. (details)
  53. [gn build] Port 7ed7d4ccb899 (details)
  54. [gn build] Port d31a2e7554ea (details)
  55. Add commutable attribute to opcodes for ARC (details)
  56. [libcxx][ranges] Add concepts in range.utility.helpers. (details)
  57. [AArch64][GlobalISel] Handle multiple phis in fixupPHIOpBanks (details)
  58. CUDA/HIP: Change device-use-host-var.cu's NOT "external" check to include variable name (details)
  59. [OpenCL] Add DWARF address spaces mapping for SPIR (details)
  60. [scudo] Always exclude Tag 0 (details)
  61. [profile] Add -fprofile-instr-generate tests for weak definition and various linkages (details)
  62. [Matrix] Fix transpose-multiply folding if transpose has multiple uses (details)
  63. [flang] CheckConformance: tristate-ify result (details)
  64. [SampleFDO] New hierarchical discriminator for FS SampleFDO (llvm-profdata part) (details)
  65. [IndVars] Don't forget value when inferring nowrap flags (details)
  66. [mailmap] Add the canonical spelling of my name (details)
  67. [scudo] Remove disableMemoryTagChecksTestOnly (details)
  68. [scudo] Add memtag_test (details)
  69. [scudo] Untag pointer in iterateOverChunks (details)
  70. Fix a diagnoses-valid bug with using declarations (details)
  71. [InstrProfiling] If no value profiling, make data variable private and (for Windows) use one comdat (details)
  72. Regenerate a few tests related to SCEV. (details)
  73. Add memref.dim canonicalization patterns to TilingCanonicalizationPatterns (details)
  74. [gn build] (semi-manually) port 07c92b2e9581 (details)
  75. [scudo] Fix String DCHECK (details)
  76. [OpenMP] Add experimental nesting mode feature (details)
  77. [Windows SEH]: Fix -O2 crash for Windows -EHa (details)
  78. [flang][OpenMP] Add semantic check to allow only loop iteration variables in a `linear` clause within `distribute` construct. (details)
  79. [flang] Check for undefined derived types (details)
  80. [X86] AMD Zen 3: double the LoopMicroOpBufferSize (details)
  81. [ADT] Refactor enumerate unit tests (details)
  82. Revert "Add memref.dim canonicalization patterns to TilingCanonicalizationPatterns" (details)
  83. Update and improve compiler-rt tests for -mllvm -asan_use_after_return=(never|[runtime]|always). (details)
  84. [mlir][tosa] Update tosa.rescale for i48 input type (details)
  85. fix SANITIZE_WINDOWS pragma for https://reviews.llvm.org/rG60e5243e593ec7e0feca42783edb735e9ac2c4a7 (details)
  86. [gn build] manually port 60e5243e593e (weak asan symbol) (details)
  87. [mlir][sparse] add option for 32-bit indices in scatter/gather (details)
  88. remove windows tests for -asan_use-after-return=always (as this is currently disabled for Windows) (details)
  89. [NFC][scudo] Fix sign-compare warning in test (details)
  90. [Scudo] Improve ScopedString constructor (details)
  91. [scudo] Remove ScopedString::Length (details)
  92. [NFC][scudo] Convert to TYPED more ScudoCombinedTest (details)
  93. [NFC][scudo] Fix sign-compare warning in test (details)
  94. [lsan] Bump the thread limit from 1<<13 to 1<<22 (details)
  95. Revert "Update and improve compiler-rt tests for -mllvm -asan_use_after_return=(never|[runtime]|always)." (details)
  96. [Polly] Move MatMul optimization into its own file. NFC. (details)
  97. [RISCV] Replace (XLenVT (VLOp GPR:$vl)) with VLOpFrag (details)
Commit 3d8180cb2ffc2272b56e3445c74f2f3170562403 by omair.javaid
Add LLDB in release binaries by default

LLDB is currently not selected in LLVM release testing and thus it
doesnt make its way into prebuilt binaries which build with default
configuration. This patch enables LLDB by default in test-release
script.

Assuming LLDB build by default was disabled back in 2016 LLDB support
for various architectures has a long way since then. It has buildbots
for most architectures and supports a case to be included by default.

Also lldb build can easily be disabled in case some release managers
choose to do so.

Reviewed By: tstellar

Differential Revision: https://reviews.llvm.org/D101864
The file was modifiedllvm/utils/release/test-release.sh
Commit fcf8827a98beb1f8baea883451508d9cd91f57bc by shihpo.hung
[Sema][RISCV][SVE] Allow ?: to select Typedef BuiltinType in C

This patch solves an error such as:
  incompatible operand types ('vbool4_t' (aka '__rvv_bool4_t') and '__rvv_bool4_t')
when one of the value is a TypedefType of the other value in ?:.

Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D103603
The file was modifiedclang/test/Sema/sizeless-1.c
The file was modifiedclang/test/Sema/riscv-types.c
The file was modifiedclang/lib/Sema/SemaExpr.cpp
Commit 21c18d5a04316891110cecc2bf37ce51533decba by marek.kurdej+llvm.org
[Format] Fix incorrect pointer detection

https://llvm.org/PR50429

Before:
    void f() { f(float(1), a *a); }

After:
    void f() { f(float(1), a * a); }

Signed-off-by: Yilong Guo <yilong.guo@intel.com>

Reviewed By: HazardyKnusperkeks, curdeius

Differential Revision: https://reviews.llvm.org/D103589
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
Commit fbfd717197671769e92b1c00b08391a7cac62fed by esme.yi
[Debug-Info] handle DW_CC_pass_by_value/DW_CC_pass_by_reference under strict DWARF.

Summary: When -strict-dwarf=true is specified, the calling convention info
    DW_CC_pass_by_value or DW_CC_pass_by_reference can only be generated at DWARF5.

Reviewed By: shchenz, dblaikie

Differential Revision: https://reviews.llvm.org/D103300
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
The file was modifiedllvm/test/DebugInfo/Generic/pass-by-value.ll
Commit 263a89c9b788b4c6bc174dc169dca2a3b729ea02 by diana.picus
[flang] Change capitalization for Adjustl/r

Rename the definitions of the character runtime functions Adjustl and
Adjustr (used to be AdjustL and AdjustR respectively).

Also add unit tests (and move some of the helpers to the top of the
file, since they're now used in more than one place).

Differential Revision: https://reviews.llvm.org/D103392
The file was modifiedflang/runtime/character.cpp
The file was modifiedflang/unittests/RuntimeGTest/CharacterTest.cpp
Commit b16ddd03753df778181d500d0ea3e2400c35e6fe by Tim Northover
AArch64: support atomic zext/sextloads
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
Commit 67b1c37d9fd1283d7015edb9c0fecb24362751f4 by gysit
[mlir][linalg] Cleanup left over uses of deprecated LinalgOp methods.

Replace all remaining uses of deprecated Structured Op Interface methods. This patch is based on https://reviews.llvm.org/D103394.

Differential Revision: https://reviews.llvm.org/D103673
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
Commit aec9cbbeb863dbd3ea362f99eb8b84dfbdb568a2 by fraser
[SelectionDAG] Extend FoldConstantVectorArithmetic to SPLAT_VECTOR

This patch extends the SelectionDAG's ability to constant-fold vector
arithmetic to include support for SPLAT_VECTOR. This is not only for
scalable-vector types but also for fixed-length vector types, which
helps Hexagon in a couple of cases.

The original RISC-V test case was in fact an infinite DAGCombine loop.
The pattern `and (truncate v1), (truncate v2)` can be combined to
`truncate (and v1, v2)` but the truncate can similarly be combined back
to `truncate (and v1, v2)` (but, crucially, only when one of `v1` or
`v2` is a constant vector).

It wasn't exposed in on fixed-length types because a TRUNCATE of a
constant BUILD_VECTOR was folded into the BUILD_VECTOR itself, whereas
this did not happen for the equivalent (scalable-vector) SPLAT_VECTOR.

Reviewed By: RKSimon, craig.topper

Differential Revision: https://reviews.llvm.org/D103246
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vremu-sdnode-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-integer-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vremu-sdnode-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdivu-sdnode-rv64.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vdivu-sdnode-rv32.ll
The file was modifiedllvm/test/CodeGen/Hexagon/isel-memory-vNi1.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/constant-folding.ll
The file was modifiedllvm/test/CodeGen/AArch64/sve-expand-div.ll
Commit b0cc7b53a53f180c0b70b8b2f02999be78a32395 by martin
[libcxx] Don't use an undefined '+' in unsigned/octal/hexal print formats

If building code like this:

    unsigned long val = 1000;
    snprintf(buf, sizeof(buf), "%+lu", val);

with clang, clang warns

    warning: flag '+' results in undefined behavior with 'u' conversion specifier [-Wformat]

Therefore, don't construct such undefined format strings. (There's
no compiler warnings here, as the compiler can't inspect dynamically
assembled format strings.)

This fixes number formatting in mingw-w64 if built with
`__USE_MINGW_ANSI_STDIO` defined (there, the '+' flag causes a
leading plus to be printed when formatting unsigned numbers too,
while the '+' flag doesn't cause any extra leading plus in other
stdio implementations).

Differential Revision: https://reviews.llvm.org/D103444
The file was modifiedlibcxx/src/locale.cpp
Commit 0a655c62eca878cd5f366c08a4a5fee1b8723ce8 by Raphael Isemann
[lldb][NFC] Remove a redundant call to weak_ptr::expired

The `lock` call directly will check for us if the `weak_ptr` is expired and
returns an invalid `shared_ptr` (which we correctly handle), so this check is
redundant.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D103442
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Commit d7e0948242b8b05c1ebc0f46bf7aa37273a1d521 by thomasp
[test] Fix accidental match in parent_recurse_depth.s

The CHECK-NOT directives in
tools/llvm-dwarfdump/X86/parent_recurse_depth.s can accidentally match
something in the path of the object file created by yaml2obj, for
example:

llvm-project/llvm/test/tools/llvm-dwarfdump/X86/parent_recurse_depth.s:13:12:
error: ONE-NOT: excluded string found in input
           ^
<stdin>:1:22: note: found here
builds/llvm-projects/mainline/release/test/tools/llvm-dwarfdump/X86/Output/parent_recurse_depth.s.tmp.o: file format elf64-x86-64
                     ^~~~

This commit alleviate this issue by consuming the file name from the
output, forcing all the CHECK-NOT to match what comes after.

Reviewed By: Higuoxing

Differential Revision: https://reviews.llvm.org/D103676
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/parent_recurse_depth.s
Commit 4501928eb2fdec9af1908e008fa748924db0f688 by jeremy.morse
Re-land ae4303b42c, "Track PHI values through register coalescing"

Was reverted in 0507fc2ffc9, in phi-coalesce-subreg.mir I'd explicitly named
some passes to run instead of specifying a range. As a result some
two-address-instrs weren't correctly rewritten and the verifier got upset.
Original commit message:

[DebugInstrRef][2/3] Track PHI values through register coalescing

In the instruction referencing variable location model, we store variable
locations that point at PHIs in MachineFunction during register allocation.
Unfortunately, register coalescing can substantially change the locations
of registers, and so that PHI-variable-location side table needs
maintenence during the pass.

This patch builds an index from the side table, and whenever a vreg gets
coalesced into another vreg, update the index to record the new vreg that
the PHI happens in. It also accepts a limited range of subregister
coalescing, for example merging a subregister into a larger class.

Differential Revision: https://reviews.llvm.org/D86813
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
The file was addedllvm/test/DebugInfo/MIR/InstrRef/phi-coalesce-subreg.mir
The file was addedllvm/test/DebugInfo/MIR/InstrRef/phi-coalescing.mir
Commit d84ed15c649616a50abdd7fbd9b28ddebb9f432c by thakis
Revert "[gn build] port d1d36f7ad (llvm-tapi-diff)"

This reverts commit 13155138c1ce1e91032d467e20e557f9cdbf08f5.
d1d36f7ad was reverted in 5337c7550d.
The file was removedllvm/utils/gn/secondary/llvm/tools/llvm-tapi-diff/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
Commit 8937450e8581a8a135c61ff083828e6603755ef5 by spatel
[InstCombine] add tests for sext-of-trunc-of-lshr; NFC
The file was modifiedllvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
Commit 23a116c8c446f82ec5e2d2337c3253d0dc9c75b5 by spatel
[InstCombine] convert lshr to ashr to eliminate cast op

This is similar to b865eead7657 ( D103617 ) and fixes:
https://llvm.org/PR50575

41b71f718b94c6f12b did this and more (noted with TODO
comments in the tests), but it didn't handle the case
where the destination is narrower than the source, so
it got reverted.

This is a simple match-and-replace. If there's evidence
that the TODO cases are useful, we can revisit/extend.
The file was modifiedllvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Commit fd3f2518a4fe3f9ee52d03eb519bd654c3ce4055 by csigg
[mlir] Catch nonconvertible types in async conversion

Reviewed By: ezhulenev, ftynse

Differential Revision: https://reviews.llvm.org/D103592
The file was modifiedmlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
Commit e42ee2d50963eb12e4d2dc0a20f36b1cb2af8543 by bradley.smith
[AArch64][SVE] Add support for using reverse forms of SVE2 shifts

When using and ACLE intrinsic for an SVE2 shift, if the predicate passed
has all relevant lanes active, then use a reversed version of the
instruction if beneficial.
The file was modifiedllvm/test/CodeGen/AArch64/sve2-intrinsics-uniform-dsp.ll
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
Commit ceb62388f2d8bd8deed447ebfed77ac7d9be293d by 1.int32
[clang][AST] Set correct DeclContext in ASTImporter lookup table for ParmVarDecl.

ParmVarDecl is created with translation unit as the parent DeclContext
and later moved to the correct DeclContext. ASTImporterLookupTable
should be updated at this move.

Reviewed By: martong

Differential Revision: https://reviews.llvm.org/D103231
The file was modifiedclang/lib/AST/ASTImporterLookupTable.cpp
The file was modifiedclang/include/clang/AST/ASTImporterLookupTable.h
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/unittests/AST/ASTImporterTest.cpp
Commit 1971960a6fed78d250c66906c804c6c41c86e3ec by jperier
[flang] Generate type info symbols outside of derived type scopes

A recent change was made in https://reviews.llvm.org/D101482 to cope
with kind parameters. It had the side effect of generating some type
info symbols inside derived type scopes. Derived type scope symbols
are meant for components, and other/later compilation phases might
choke when finding compiler generated symbols there that are not
components.

This patch preserves the fix from D101482 while still generating the
symbols outside of derived type scopes.

Differential Revision: https://reviews.llvm.org/D103621
The file was modifiedflang/test/Semantics/typeinfo01.f90
The file was modifiedflang/lib/Semantics/runtime-type-info.cpp
Commit cd093cbb115a4fda1544a789e3b1355e5b155aea by dmitry.preobrazhensky
[AMDGPU][MC][NFC] Fixed typos in parser

Differential Revision: https://reviews.llvm.org/D103680
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Commit 93a058190cc67c18bf4e0af9d871d56106b80a49 by Jan Svoboda
[clang][deps] Add argument for customizing PCM paths

Dependency scanning currently performs an implicit build. When testing that Clang can build modules with the command-lines generated by `clang-scan-deps`, the actual compilation would overwrite artifacts created during the scan, which makes debugging harder than it should be and can lead to errors in multi-step builds.

To prevent this, this patch adds new flag to `clang-scan-deps` that allows developers to customize the directory to use when generating module map paths, instead of always using the module cache. Moreover, the explicit context hash in now part of the PCM path, which will be useful in D102488, where the context hash can change due to command-line pruning.

Reviewed By: Bigcheese

Differential Revision: https://reviews.llvm.org/D103516
The file was modifiedclang/test/ClangScanDeps/modules-full.cpp
The file was modifiedclang/tools/clang-scan-deps/ClangScanDeps.cpp
The file was modifiedclang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
Commit 35ef4c940bea1e2b803f17f13a625b2126c62b82 by Mirko.Brkusanin
[AMDGPU][GlobalISel] Legalize G_ABS

Legalize and select G_ABS so that we can use llvm.abs intrinsic

Differential Revision: https://reviews.llvm.org/D102391
The file was modifiedllvm/lib/Target/AMDGPU/SOPInstructions.td
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit 20bd2142d46536f4ffd61f28a029d6bda68f1a7f by andrzej.warzynski
[flang][driver] Add support for `-module-suffix`

This option is supported in `f18`, but not yet available in `flang-new`.
It is required in order to call `flang-new` from the `flang` bash
script.

Differential Revision: https://reviews.llvm.org/D103613
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedflang/test/Driver/driver-help.f90
The file was addedflang/test/Driver/module-suffix.f90
The file was modifiedflang/include/flang/Frontend/CompilerInvocation.h
The file was modifiedclang/include/clang/Driver/Options.td
Commit de07b1e84d8de948304766df602fee2b845e9532 by Jan Svoboda
[clang][deps] Support object files

When a project uses PCH with explicit modules, the build will look like this:

1. scan PCH dependencies
2. explicitly build PCH
3. scan TU dependencies
4. explicitly build TU

Step 2 produces an object file for the PCH, which the dependency scanner needs to read in step 3. This patch adds support for this.

The `clang-scan-deps` invocation in the attached test would fail without this change.

Depends on D103516.

Reviewed By: Bigcheese

Differential Revision: https://reviews.llvm.org/D103519
The file was addedclang/test/ClangScanDeps/Inputs/modules-pch/tu.c
The file was modifiedclang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
The file was addedclang/test/ClangScanDeps/Inputs/modules-pch/cdb_tu.json
The file was addedclang/test/ClangScanDeps/Inputs/modules-pch/mod_tu.h
The file was addedclang/test/ClangScanDeps/Inputs/modules-pch/module.modulemap
The file was modifiedclang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
The file was addedclang/test/ClangScanDeps/Inputs/modules-pch/pch.h
The file was modifiedclang/lib/Tooling/DependencyScanning/CMakeLists.txt
The file was addedclang/test/ClangScanDeps/modules-pch.c
Commit 1fc6027406c51fcbe0cb83c92c92e16ddd9aca43 by spatel
[InstCombine] add/adjust test comments; NFC

Follow-up to post-commit comment:
https://reviews.llvm.org/rG23a116c8c446
The file was modifiedllvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
Commit b5dea8701ba98425991d4f1ec3d87bdb98789e04 by Yaxun.Liu
[HIP] Fix spack HIP device lib detection

spack HIP device library is installed at amdgcn directory under llvm/clang
directory.

This patch fixes detection of HIP device library for spack.

Reviewed by: Artem Belevich, Harmen Stoppels

Differential Revision: https://reviews.llvm.org/D103281
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_isa_version_1011.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_isa_version_1012.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_daz_opt_off.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_isa_version_1012.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_wavefrontsize64_on.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_isa_version_900.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_isa_version_908.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_isa_version_1010.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_finite_only_on.bc
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_wavefrontsize64_on.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_daz_opt_on.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_isa_version_908.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/ockl.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_isa_version_1011.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/ockl.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/opencl.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_unsafe_math_on.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_unsafe_math_off.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_finite_only_off.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_wavefrontsize64_off.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/asanrtl.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_wavefrontsize64_off.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/ocml.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_daz_opt_on.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_daz_opt_off.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_isa_version_803.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/ocml.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_isa_version_803.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_isa_version_1010.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/opencl.bc
The file was modifiedclang/test/Driver/rocm-detect.hip
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_finite_only_on.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_isa_version_900.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_unsafe_math_off.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/asanrtl.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/oclc_unsafe_math_on.bc
The file was removedclang/test/Driver/Inputs/rocm-spack/rocm-device-libs-4.0.0-6wnyzz4hgl3hr7uswasnagt7j2adctbs/amdgcn/bitcode/hip.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/hip.bc
The file was addedclang/test/Driver/Inputs/rocm-spack/llvm-amdgpu-4.0.0-ieagcs7inf7runpyfvepqkurasoglq4z/amdgcn/bitcode/oclc_finite_only_off.bc
Commit 3043cbc4363ad16f897052a05ac364e5f8ef3770 by nicholas.guy
[AArch64] Further enable UnrollAndJam

Due to the dependency on runtime unrolling, UnJ is only
enabled by default on in-order scheduling models,
and if a cpu is specified through -mcpu.

Differential Revision: https://reviews.llvm.org/D103604
The file was addedllvm/test/CodeGen/AArch64/aarch64-unroll-and-jam.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Commit 86c24493ea666a0ef91b7af884d616b0a181e849 by stuart.brady
[OpenCL][NFC] Test commit: tidy up whitespace in comment
The file was modifiedclang/lib/Headers/opencl-c.h
Commit a9c9183ca42629fa83cdda297d1d30c7bc1d7c91 by Louis Dionne
[libc++] Use the using_if_exists attribute when provided

As discussed on cfe-dev [1], use the using_if_exists Clang attribute when
the compiler supports it. This makes it easier to port libc++ on top of
new platforms that don't fully support the C Standard library.

Previously, libc++ would fail to build when trying to import a missing
declaration in a <cXXXX> header. With the attribute, the declaration will
simply not be imported into namespace std, and hence it won't be available
for libc++ to use. In many cases, the declarations were *not* actually
required for libc++ to work (they were only surfaced for users to use
them as std::XXXX), so not importing them into namespace std is acceptable.

The same thing could be achieved by conscious usage of `#ifdef` along
with platform detection, however that quickly creates a maintenance
problem as libc++ is ported to new platforms. Furthermore, this problem
is exacerbated when mixed with vendor internal-only platforms, which can
lead to difficulties maintaining a downstream fork of the library.

For the time being, we only use the using_if_exists attribute when it
is supported. At some point in the future, we will start removing #ifdef
paths that are unnecessary when the attribute is supported, and folks
who need those #ifdef paths will be required to use a compiler that
supports the attribute.

[1]: http://lists.llvm.org/pipermail/cfe-dev/2020-June/066038.html

Differential Revision: https://reviews.llvm.org/D90257
The file was modifiedlibcxx/include/cstring
The file was modifiedlibcxx/include/cstddef
The file was modifiedlibcxx/include/cinttypes
The file was modifiedlibcxx/include/cfenv
The file was modifiedlibcxx/include/ctime
The file was modifiedlibcxx/include/csignal
The file was modifiedlibcxx/include/cwctype
The file was modifiedlibcxx/include/cctype
The file was modifiedlibcxx/include/cmath
The file was modifiedlibcxx/include/csetjmp
The file was modifiedlibcxx/include/cwchar
The file was modifiedlibcxx/include/cstdio
The file was modifiedlibcxx/include/clocale
The file was modifiedlibcxx/include/cstdint
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/cstdarg
The file was modifiedlibcxx/include/cstdlib
Commit e9a9c850989e2392b7f16dea2449312c15bd0240 by thakis
Revert "[InstrProfiling] If no value profiling, make data variable private and (for Windows) use one comdat"

This reverts commit a14fc749aab2c8e1a45d19d512255ebfc69357c3.
Breaks check-profile on macOS. See https://reviews.llvm.org/D103372 for details.
The file was modifiedllvm/test/Instrumentation/InstrProfiling/comdat.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedllvm/test/Transforms/PGOProfile/comdat_internal.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/icall.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/platform.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/profiling.ll
Commit b5f0a14fc7b40cec36fa001ea708f290f2f3ce37 by mydeveloperday
[clang-format] NFC, 2% improvement in overall clang-formatted status (now 50%)
The file was modifiedclang/docs/ClangFormattedStatus.rst
Commit db3e4faa4d2cadf204e67f42bccd98957496a87a by thakis
Temporarily remove one of the tests added in effb87dfa810a

It fails on some Linux systems. Remove the test until we've figured
out what's going on. See https://crbug.com/1216005 for details.
The file was removedcompiler-rt/test/profile/Linux/coverage-linkage.cpp
Commit f03f4944cf829c86bc2c080b9a564bbc59aad277 by spatel
[InstCombine] add tests for pow() reassociation; NFC

Baseline tests for D102574
The file was modifiedllvm/test/Transforms/InstCombine/fmul-pow.ll
Commit 2b4c9bc4d489a4be1c5aa1924fba542dc80ab0c9 by andrzej.warzynski
[flang][driver] Add checks for missing option arguments

With this patch, the following invocation of the frontend driver will
return an error:
```
flang-new -fc1 input-file.f90 -o
```
Similar logic applies to other options that require arguments.

Similar checks are already available in the compiler driver, flang-new
(that's implemented in clangDriver).

Differential Revision: https://reviews.llvm.org/D103554
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was addedflang/test/Driver/missing-arg.f90
Commit fcb1547229454fcc814a58784495a7ef9ad991d2 by clementval
[mlir][openacc] Conversion of data operands in acc.data to LLVM IR dialect

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

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D103332
The file was removedmlir/test/Conversion/OpenACCToLLVM/convert-standalone-data-to-llvmir.mlir
The file was modifiedmlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
The file was modifiedmlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
The file was addedmlir/test/Conversion/OpenACCToLLVM/convert-data-operands-to-llvmir.mlir
The file was modifiedmlir/lib/Conversion/OpenACCToLLVM/OpenACCToLLVM.cpp
Commit 827b5c21545aaa820403e9b5cced8c0181349ee2 by a.bataev
[OPENMP]Fix PR49790: Constexpr values not handled in `omp declare mapper` clause.

Patch allows using of constexpr vars evaluatable to constant calue to be
used in declare mapper construct.

Differential Revision: https://reviews.llvm.org/D103642
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/declare_mapper_ast_print.cpp
Commit 1928bcd8bdcd17c8345e51487e3b8ae0e70596a1 by thakis
[gn build] (manually) port de07b1e84d8de9
The file was modifiedllvm/utils/gn/secondary/clang/lib/Tooling/DependencyScanning/BUILD.gn
Commit 700b64dc54d43e9ea544dd14e0bb344101567423 by springerm
[mlir] Mark VectorToSCF patterns as recursive

Differential Revision: https://reviews.llvm.org/D103599
The file was modifiedmlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
Commit f917c5b8d40b7894d52d56052bb18f8e989bad9e by thakis
Revert test fixups after e9a9c850989e (which reverted a14fc74).

This reverts commit da3ed58b97c1cc1356b7732d5dcbb6e4de3057da.
This reverts commit ba1fb0ff8c9f9ef7f9b7d1fe43cb95c8d1363f78.
The file was modifiedclang/test/Profile/c-linkage.c
The file was modifiedclang/test/Profile/c-linkage-available_externally.c
The file was modifiedclang/test/Profile/cxx-linkage.cpp
Commit 50c0aaed47b518beea550a6858c2967eaeaef7eb by thakis
Temporarily remove another test added in one of the tests added in effb87d

This test reads the test file removed in db3e4faa4d2ca.
The file was removedcompiler-rt/test/profile/Linux/coverage-linkage-lld.cpp
Commit e789efc92a5aa6495a22bd3a93a03f640dc2f32a by springerm
[mlir][linalg] Refactor PadTensorOpVectorizationPattern (NFC)

* Rename PadTensorOpVectorizationPattern to GenericPadTensorOpVectorizationPattern.
* Make GenericPadTensorOpVectorizationPattern a private pattern, to be instantiated via populatePadTensorOpVectorizationPatterns.
* Factor out parts of PadTensorOpVectorizationPattern into helper functions.

This commit prepares PadTensorOpVectorizationPattern for a series of subsequent commits that add more specialized PadTensorOp vectorization patterns.

Differential Revision: https://reviews.llvm.org/D103681
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
The file was modifiedmlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
Commit a85f5874e2a4d4bad8c53d277e9df183122793ae by bradley.smith
[AArch64] Remove SETCC of CSEL when the latter's condition can be inverted

  setcc (csel 0, 1, cond, X), 1, ne ==> csel 0, 1, !cond, X

Where X is a condition code setting instruction.

Co-authored-by: Paul Walker <paul.walker@arm.com>

Differential Revision: https://reviews.llvm.org/D103256
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/sve-setcc.ll
Commit c84a5448b5ac3212303c553866e8d42a5a75ce30 by a.bataev
[OPENMP]Fix PR50129: omp cancel parallel not working as expected.

Need to emit a call for __kmpc_cancel_barrier in the exit block for
__kmpc_cancel function call if cancellation of the parallel block is
requested.

Differential Revision: https://reviews.llvm.org/D103646
The file was modifiedclang/test/OpenMP/target_parallel_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
The file was modifiedclang/test/OpenMP/cancel_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
The file was modifiedllvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
The file was modifiedllvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
The file was modifiedclang/test/OpenMP/parallel_master_taskloop_codegen.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
The file was modifiedclang/test/OpenMP/target_parallel_for_codegen.cpp
The file was modifiedclang/test/OpenMP/cancellation_point_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
Commit 8a4d05ddb3ff25c53299ff440032547d68b36397 by spatel
[ConstantFolding] add copysign tests for more FP types; NFC

D102673 proposes to ease the current type check, but
there doesn't appear to be any test coverage for that.
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/copysign.ll
Commit eba3ee04d450230f7ac1f88b1abd7b09c600c82d by adamcz
[clangd] Run code completion on each token coverd by --check-lines

In --check mode we do not run code completion because it is too slow,
especially on larger files. With the introducation of --check-lines we
can narrow down the scope and thus we can afford to do code completion.

We vlog() the top completion result, but that's not really the point.
The most value will come from being able to reproduce crashes that occur
during code completion and require preamble build or index (and thus are
more difficult to reproduce with -code-complete-at).

Differential Revision: https://reviews.llvm.org/D103538
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
The file was modifiedclang-tools-extra/clangd/tool/Check.cpp
Commit b109172d993edacd9853a8bbb8128a94da014399 by goncharov.mikhail
[clang] use a different name for generated test cdb

if build system copied source files as readonly, then override of db_tu.json
will fail
The file was modifiedclang/test/ClangScanDeps/modules-pch.c
Commit c653711fd3a9ac8399a435f02054ef42cddc4db7 by craig.topper
[RISCV] Teach vsetvli insertion pass that operations on masks don't care about SEW/LMUL.

All that really matters is that the VLMAX of the preceding
instructions is the same as the VLMAX required by the mask
operation.

Also update the vmsge(u) handling to use the SEW/LMUL we use for
other mask register operations. We were matching it to the compare
before. Some cases will be improve if we fix masked compares to
use tail agnostic policy. I think they ignore the tail policy
anyway.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D103299
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgeu-rv64.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-fp-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsge-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/saddo-sdnode.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-fp-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsgeu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmsge-rv32.ll
Commit 56dd158c329c424491485dd3c48616b64cdc13b1 by jonathan.l.peyton
[OpenMP] fix spelling error in message-converter.pl
The file was modifiedopenmp/runtime/tools/message-converter.pl
Commit 8bb713207d2cc6efeaa78850bbd89a3a5c65fe03 by jhuber6
[Attributor] Allow lookupAAFor to return null on invalid state

This patch adds an option to `lookupAAFor` that allows it to return a
nullptr if the state of the looked up attribute is invalid. This is so
future passes can use this to query other attributes with the guarantee
that they are valid.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D103556
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 7ed7d4ccb8991e2b5b95334b508f8cec2faee737 by zoecarver
[libcxx][gardening] Move all algorithms into their own headers.

This is a fairly mechanical change, it just moves each algorithm into its own header. This is a NFC.

Note: during this change, I burned down all the includes, so this follows "include only and exactly what you use."

Differential Revision: https://reviews.llvm.org/D103583
The file was addedlibcxx/include/__algorithm/min_element.h
The file was addedlibcxx/include/__algorithm/partition.h
The file was addedlibcxx/include/__algorithm/reverse.h
The file was addedlibcxx/include/__algorithm/make_heap.h
The file was addedlibcxx/include/__algorithm/search_n.h
The file was addedlibcxx/include/__algorithm/count.h
The file was addedlibcxx/include/__algorithm/find_end.h
The file was addedlibcxx/include/__algorithm/prev_permutation.h
The file was addedlibcxx/include/__functional/search.h
The file was addedlibcxx/include/__algorithm/max.h
The file was addedlibcxx/include/__algorithm/shuffle.h
The file was addedlibcxx/include/__algorithm/sample.h
The file was addedlibcxx/include/__algorithm/stable_sort.h
The file was modifiedlibcxx/include/functional
The file was addedlibcxx/include/__algorithm/fill.h
The file was addedlibcxx/include/__algorithm/merge.h
The file was addedlibcxx/include/__algorithm/upper_bound.h
The file was addedlibcxx/include/__algorithm/clamp.h
The file was modifiedlibcxx/test/std/algorithms/alg.modifying.operations/alg.random.sample/sample.fail.cpp
The file was addedlibcxx/include/__algorithm/copy.h
The file was addedlibcxx/include/__algorithm/equal_range.h
The file was addedlibcxx/include/__algorithm/for_each.h
The file was addedlibcxx/include/__algorithm/min.h
The file was addedlibcxx/include/__algorithm/adjacent_find.h
The file was addedlibcxx/include/__algorithm/replace.h
The file was modifiedlibcxx/include/module.modulemap
The file was addedlibcxx/include/__algorithm/minmax_element.h
The file was addedlibcxx/include/__algorithm/transform.h
The file was addedlibcxx/include/__algorithm/find_if_not.h
The file was addedlibcxx/include/__algorithm/unwrap_iter.h
The file was addedlibcxx/include/__algorithm/any_of.h
The file was addedlibcxx/include/__algorithm/move.h
The file was addedlibcxx/include/__algorithm/set_union.h
The file was addedlibcxx/include/__algorithm/partition_point.h
The file was addedlibcxx/include/__algorithm/lexicographical_compare.h
The file was addedlibcxx/include/__algorithm/mismatch.h
The file was modifiedlibcxx/include/algorithm
The file was addedlibcxx/include/__algorithm/all_of.h
The file was addedlibcxx/include/__algorithm/find_first_of.h
The file was addedlibcxx/include/__algorithm/inplace_merge.h
The file was addedlibcxx/include/__algorithm/minmax.h
The file was addedlibcxx/include/__algorithm/push_heap.h
The file was addedlibcxx/include/__algorithm/for_each_n.h
The file was addedlibcxx/include/__algorithm/is_permutation.h
The file was addedlibcxx/include/__algorithm/count_if.h
The file was addedlibcxx/include/__algorithm/lower_bound.h
The file was addedlibcxx/include/__algorithm/sift_down.h
The file was addedlibcxx/include/__algorithm/pop_heap.h
The file was addedlibcxx/include/__algorithm/comp_ref_type.h
The file was addedlibcxx/include/__algorithm/includes.h
The file was modifiedlibcxx/include/regex
The file was addedlibcxx/include/__algorithm/is_heap_until.h
The file was addedlibcxx/include/__algorithm/stable_partition.h
The file was modifiedlibcxx/test/std/containers/sequences/array/compare.fail.cpp
The file was modifiedlibcxx/include/__memory/temporary_buffer.h
The file was addedlibcxx/include/__algorithm/set_symmetric_difference.h
The file was addedlibcxx/include/__algorithm/find.h
The file was addedlibcxx/include/__algorithm/half_positive.h
The file was addedlibcxx/include/__algorithm/shift.h
The file was addedlibcxx/include/__algorithm/uniform_int_distribution.h
The file was addedlibcxx/include/__algorithm/set_difference.h
The file was addedlibcxx/include/__algorithm/generate.h
The file was addedlibcxx/include/__algorithm/binary_search.h
The file was addedlibcxx/include/__algorithm/remove.h
The file was addedlibcxx/include/__algorithm/rotate.h
The file was modifiedlibcxx/include/experimental/functional
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/include/__algorithm/sort_heap.h
The file was addedlibcxx/include/__algorithm/none_of.h
The file was addedlibcxx/include/__algorithm/is_partitioned.h
The file was addedlibcxx/include/__algorithm/nth_element.h
The file was addedlibcxx/include/__algorithm/search.h
The file was addedlibcxx/include/__algorithm/is_sorted.h
The file was addedlibcxx/include/__algorithm/next_permutation.h
The file was addedlibcxx/include/__algorithm/set_intersection.h
The file was addedlibcxx/include/__algorithm/sort.h
The file was addedlibcxx/include/__algorithm/equal.h
The file was addedlibcxx/include/__algorithm/unique.h
The file was addedlibcxx/include/__algorithm/find_if.h
The file was addedlibcxx/include/__algorithm/comp.h
The file was addedlibcxx/include/__algorithm/max_element.h
The file was modifiedlibcxx/test/std/algorithms/alg.sorting/alg.min.max/requires_forward_iterator.fail.cpp
The file was addedlibcxx/include/__algorithm/is_heap.h
The file was addedlibcxx/include/__algorithm/partial_sort.h
Commit 4a08163c73d403aa7fd5baeff693b1986b6c8df2 by jhuber6
[Attributor] Check HeapToStack's state for isKnownHeapToStack

This patch changes the `isKnownHeapToStack` and `isAssumedHeapToStack`
member functions to return if a function call is going to be altered by
HeapToStack.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D103574
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
Commit d31a2e7554ea1ddc37a4aa53318549036ae1d780 by zoecarver
[libcxx][ranges] Add `ranges::empty_view`.

Differential Revision: https://reviews.llvm.org/D103208
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/test/std/ranges/range.adaptors/range.empty/empty_view.pass.cpp
The file was modifiedlibcxx/docs/OneRangesProposalStatus.csv
The file was addedlibcxx/include/__ranges/empty_view.h
The file was modifiedlibcxx/include/ranges
Commit bde24a114d810a51dfba0c59c711236fc0730973 by llvmgnsyncbot
[gn build] Port 7ed7d4ccb899
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit a1cdd4efad41d5ba64c14da33d4617be3aa23716 by llvmgnsyncbot
[gn build] Port d31a2e7554ea
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 12592a439ae53fe35f6b70ee7e2eea60000d3063 by danila
Add commutable attribute to opcodes for ARC

This patch sets the isCommutable attribute for several opcodes that have
the "reg = OPCODE reg, reg" format.

Differential Revision: https://reviews.llvm.org/D103653
The file was modifiedllvm/lib/Target/ARC/ARCInstrInfo.td
Commit 89599e8b201a85c4555e72580b7137e4cce71c94 by zoecarver
[libcxx][ranges] Add concepts in range.utility.helpers.

There are no changes to public APIs.

Differential Revision: https://reviews.llvm.org/D103493
The file was addedlibcxx/test/libcxx/ranges/range.utility.helpers/different_from.compile.pass.cpp
The file was addedlibcxx/test/libcxx/ranges/range.utility.helpers/simple_view.compile.pass.cpp
The file was modifiedlibcxx/include/__iterator/concepts.h
The file was modifiedlibcxx/include/__iterator/iterator_traits.h
The file was addedlibcxx/test/libcxx/ranges/range.utility.helpers/has_arrow.compile.pass.cpp
The file was modifiedlibcxx/include/concepts
The file was modifiedlibcxx/include/__ranges/view.h
Commit 507d193ea7ef20ec77615b55836b4653f736cef3 by Jessica Paquette
[AArch64][GlobalISel] Handle multiple phis in fixupPHIOpBanks

If we ended up with two phi instructions in a block, and we needed to fix up
the banks for the first one, we'd end up inserting our COPY before the second
phi.

E.g.

```
%x = G_PHI ...
%fixup = COPY ...
%y = G_PHI ...
```

This is invalid MIR, and breaks assumptions made by the register allocator later
down the line. With the verifier enabled, it also emits a verification error.

This teaches fixupPHIOpBanks to walk past any phi instructions in the block
when emitting the fixup copies.

Here's an example of the crashing code (same as added testcase):
https://godbolt.org/z/h5j1x3o6e

Differential Revision: https://reviews.llvm.org/D103582
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
Commit 4d9f8527dbfbc998baf35eec868c9dec1f8d1224 by kzhuravl_dev
CUDA/HIP: Change device-use-host-var.cu's NOT "external" check to include variable name

Otherwise it is causing one of our build jobs to fail,
it is using "external" as directory, and NOT is
failing because "external" is found in ModuleID.

Differential Revision: https://reviews.llvm.org/D103658
The file was modifiedclang/test/CodeGenCUDA/device-use-host-var.cu
Commit 333987b0458926332e9a1f96869ef47da25fa9b1 by stuart.brady
[OpenCL] Add DWARF address spaces mapping for SPIR

Extend debug info handling by adding DWARF address space mapping for
SPIR, with corresponding test case.

Reviewed By: Anastasia

Differential Revision: https://reviews.llvm.org/D103097
The file was addedclang/test/CodeGenOpenCL/spir-debug-info-pointer-address-space.cl
The file was modifiedclang/lib/Basic/Targets/SPIR.h
Commit ba04c7c128b1214edf8888b129f9e841852a629b by Vitaly Buka
[scudo] Always exclude Tag 0

prepareTaggedChunk uses Tag 0 for header.

Android already PR_MTE_TAG_MASK to 0xfffe,
but with the patch we will not need to deppend
on the system configuration.

Reviewed By: pcc

Differential Revision: https://reviews.llvm.org/D103134
The file was modifiedcompiler-rt/lib/scudo/standalone/memtag.h
Commit b19c0ac7dd61c6929a633f636bded7623d6e7065 by i
[profile] Add -fprofile-instr-generate tests for weak definition and various linkages
The file was addedcompiler-rt/test/profile/Linux/coverage-linkage-lld.cpp
The file was addedcompiler-rt/test/profile/Linux/coverage-linkage.cpp
Commit ffde966cd9bfd3f5aeb7bb26e8c0b8e71ec14899 by anemet
[Matrix] Fix transpose-multiply folding if transpose has multiple uses

Don't add it to FusedInsts in this case.

Differential Revision: https://reviews.llvm.org/D103627
The file was modifiedllvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/multiply-right-transpose.ll
Commit dfecbcae0d6434fa1daafe66ba5d90f816d4268b by pklausler
[flang] CheckConformance: tristate-ify result

To ensure that errors are emitted by CheckConformance and
its callers in all situations, it's necessary for the returned result
of that function to distinguish between three possible
outcomes: the arrays are known to conform at compilation time,
the arrays are known to not conform (and a message has been
produced), and an indeterminate result in which is not possible
to determine conformance.  So convert CheckConformance's
result into an optional<bool>, and convert its confusing
Boolean flag arguments into a bit-set of named flags too.

Differential Revision: https://reviews.llvm.org/D103654
The file was modifiedflang/lib/Semantics/pointer-assignment.cpp
The file was modifiedflang/include/flang/Evaluate/shape.h
The file was modifiedflang/lib/Evaluate/characteristics.cpp
The file was modifiedflang/lib/Semantics/expression.cpp
The file was modifiedflang/lib/Evaluate/shape.cpp
The file was modifiedflang/lib/Evaluate/check-expression.cpp
The file was modifiedflang/lib/Evaluate/fold-implementation.h
The file was modifiedflang/lib/Semantics/check-call.cpp
The file was modifiedflang/include/flang/Evaluate/characteristics.h
Commit 8d581857d77129b5a63515ca6794bba88418e0fd by xur
[SampleFDO] New hierarchical discriminator for FS SampleFDO (llvm-profdata part)

This patch was split from https://reviews.llvm.org/D102246
[SampleFDO] New hierarchical discriminator for Flow Sensitive SampleFDO
This is for llvm-profdata part of change. It sets the bit masks for the
profile reader in llvm-profdata. Also add an internal option
"-fs-discriminator-pass" for show and merge command to process the profile
offline.

This patch also moved setDiscriminatorMaskedBitFrom() to
SampleProfileReader::create() to simplify the interface.

Differential Revision: https://reviews.llvm.org/D103550
The file was modifiedllvm/lib/Target/X86/X86InsertPrefetch.cpp
The file was addedllvm/test/tools/llvm-profdata/Inputs/sample-fs.proftext
The file was modifiedllvm/include/llvm/ProfileData/SampleProfReader.h
The file was modifiedllvm/include/llvm/Support/Discriminator.h
The file was modifiedllvm/unittests/ProfileData/SampleProfTest.cpp
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was addedllvm/test/tools/llvm-profdata/sample-fs.test
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
Commit 14f350daf290e9d7f3eef700acf930d8b0887007 by nikita.ppv
[IndVars] Don't forget value when inferring nowrap flags

When SimplifyIndVars infers IR nowrap flags from SCEV, this may
happen in two ways: Either nowrap flags were already present in
SCEV and just get transferred to IR. Or zero/sign extension of
addrecs infers additional nowrap flags, and those get transferred
to IR. In the latter case, calling forgetValue() ensures that the
newly inferred nowrap flags get propagated to any other SCEV
expressions based on the addrec. However, the invalidation can
also have a major compile-time effect in some cases. For
https://bugs.llvm.org/show_bug.cgi?id=50384 with n=512 compile-
time drops from 7.1s to 0.8s without this invalidation. At the
same time, removing the invalidation doesn't affect any codegen
in test-suite.

Differential Revision: https://reviews.llvm.org/D103424
The file was modifiedllvm/lib/Transforms/Utils/SimplifyIndVar.cpp
Commit 72177e9fa53637efad063168d3b4888adac78d4d by martin
[mailmap] Add the canonical spelling of my name
The file was modified.mailmap
Commit 39f928ed01fde8604515421c5438c3ecb537fbf2 by Vitaly Buka
[scudo] Remove disableMemoryTagChecksTestOnly

And replace with ScopedDisableMemoryTagChecks.

Differential Revision: https://reviews.llvm.org/D103708
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/combined_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/memtag.h
Commit 07c92b2e958191a43464a5ca08933be56d72f2df by Vitaly Buka
[scudo] Add memtag_test

Differential Revision: https://reviews.llvm.org/D103074
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
The file was addedcompiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/memtag.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
Commit 1e6d135325357d8c32fd0b0d7f668cad91d478bc by Vitaly Buka
[scudo] Untag pointer in iterateOverChunks

Pointer comparison in Lambda will not work on tagged pointers.

Reviewed By: pcc

Differential Revision: https://reviews.llvm.org/D103496
The file was modifiedcompiler-rt/lib/scudo/standalone/combined.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
Commit ca68f3bc48e48f839142de1461e95d87ae48e9df by aaron
Fix a diagnoses-valid bug with using declarations

The following was found by a customer and is accepted by the other primary
C++ compilers, but fails to compile in Clang:

namespace sss {
double foo(int, double);
template <class T>
T foo(T); // note: target of using declaration
}  // namespace sss

namespace oad {
void foo();
}

namespace oad {
using ::sss::foo;
}

namespace sss {
using oad::foo; // note: using declaration
}

namespace sss {
double foo(int, double) { return 0; }
template <class T>
T foo(T t) { // error: declaration conflicts with target of using
  return t;
}
}  // namespace sss

I believe the issue is that MergeFunctionDecl() was calling
checkUsingShadowRedecl() but only considering a FunctionDecl as a
possible shadow and not FunctionTemplateDecl. The changes in this patch
largely mirror how variable declarations were being handled by also
catching FunctionTemplateDecl.
The file was modifiedclang/test/CXX/modules-ts/basic/basic.def.odr/p6/module-vs-module.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/test/CXX/modules-ts/basic/basic.def.odr/p6/global-vs-module.cpp
The file was modifiedclang/test/SemaCXX/using-decl-templates.cpp
The file was modifiedclang/test/CXX/modules-ts/basic/basic.def.odr/p6/module-vs-global.cpp
Commit 9e51d1f348b95affe6a8345ce3906997a49f0297 by i
[InstrProfiling] If no value profiling, make data variable private and (for Windows) use one comdat

`__profd_*` variables are referenced by code only when value profiling is
enabled. If disabled (e.g. default -fprofile-instr-generate), the symbols just
waste space on ELF/Mach-O. We change the comdat symbol from `__profd_*` to
`__profc_*` because an internal symbol does not provide deduplication features
on COFF. The choice doesn't matter on ELF.

(In -DLLVM_BUILD_INSTRUMENTED_COVERAGE=on build, there is now no `__profd_*` symbols.)

On Windows this enables further optimization. We are no longer affected by the
link.exe limitation: an external symbol in IMAGE_COMDAT_SELECT_ASSOCIATIVE can
cause duplicate definition error.
https://lists.llvm.org/pipermail/llvm-dev/2021-May/150758.html
We can thus use llvm.compiler.used instead of llvm.used like ELF (D97585).
This avoids many `/INCLUDE:` directives in `.drectve`.

Here is rnk's measurement for Chrome:
```
This reduced object file size of base_unittests.exe, compiled with coverage, optimizations, and gmlt debug info by 10%:

#BEFORE

$ find . -iname '*.obj' | xargs du -b | awk '{ sum += $1 } END { print sum}'
1047758867

$ du -cksh base_unittests.exe
82M     base_unittests.exe
82M     total

# AFTER

$ find . -iname '*.obj' | xargs du -b | awk '{ sum += $1 } END { print sum}'
937886499

$ du -cksh base_unittests.exe
78M     base_unittests.exe
78M     total
```

The change is NFC for Mach-O.

Reviewed By: davidxl, rnk

Differential Revision: https://reviews.llvm.org/D103372
The file was modifiedllvm/test/Instrumentation/InstrProfiling/profiling.ll
The file was modifiedllvm/test/Transforms/PGOProfile/comdat_internal.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/comdat.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/linkage.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/platform.ll
The file was modifiedllvm/test/Instrumentation/InstrProfiling/icall.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
Commit 925cd6b46780901ab2f9c0e737600ed0a500cd9b by efriedma
Regenerate a few tests related to SCEV.

In preparation for https://reviews.llvm.org/D103656
The file was modifiedllvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pointer-induction.ll
The file was modifiedllvm/test/Transforms/LoopIdiom/memset-debugify-remarks.ll
Commit a52959401d9544ac7037405aaf714bd08f071ea9 by ataei
Add memref.dim canonicalization patterns to TilingCanonicalizationPatterns

Otherwise tiled and padded linalg op will be alive (after distribution).

Differential Revision: https://reviews.llvm.org/D103715
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
Commit efea1b17824377c274abe5600d7d973087553e23 by thakis
[gn build] (semi-manually) port 07c92b2e9581
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/scudo/standalone/tests/BUILD.gn
Commit 5019b0a56588fc13e6a37c49e22a812afe6c4416 by kostyak
[scudo] Fix String DCHECK

This resolves an issue tripping a `DCHECK`, as I was checking for the
capacity and not the size. We don't need to 0-init the Vector as it's
done already, and make sure we only 0-out the string on clear if it's
not empty.

Differential Revision: https://reviews.llvm.org/D103716
The file was modifiedcompiler-rt/lib/scudo/standalone/string_utils.h
Commit 8ec9aa236e325fd4629cfeefac2919302e14d61a by terry.l.wilmarth
[OpenMP] Add experimental nesting mode feature

Nesting mode is a new experimental feature in the OpenMP
runtime. It allows a user to set up nesting for an application in a
way that corresponds to the hardware topology levels on the machine an
application is being run on.  For example, if a machine has 2 sockets,
each with 12 cores, then use of nesting mode could set up an outer
level of nesting that uses 2 threads per parallel region, and an inner
level of nesting that uses 12 threads per parallel region.

Nesting mode is controlled with the KMP_NESTING_MODE environment
variable as follows:

1) KMP_NESTING_MODE = 0: Nesting mode is off (default); max-active-levels-var
is set to 1 (the default -- nesting is off, nested parallel regions
are serialized).

2) KMP_NESTING_MODE = 1: Nesting mode is on, and a number of threads
will be assigned for each level discovered in the machine topology;
max-active-levels-var is set to the number of levels discovered.

3) KMP_NESTING_MODE = n, n>1: [Note: this option is experimental and may change
or be removed in the future.] Nesting mode is on, and a number of
threads will be assigned for each topology level discovered on the
machine, up to k<=n levels (since there may be fewer than n levels
discovered in the topology), and beyond the kth level, nested parallel
regions will be serialized; NOTE: max-active-levels-var is 1 (the default --
nesting is off, and nested parallel regions are serialized until the
user changes max-active-levels-var.

If the user sets OMP_NUM_THREADS or OMP_MAX_ACTIVE_LEVELS, they will
override KMP_NESTING_MODE settings for the associated environment
variables. The detected topology may be limited by an affinity mask
setting on the initial thread, or if the user sets KMP_HW_SUBSET. See
also: KMP_HOT_TEAMS_MAX_LEVEL for controlling use of hot teams for
nested parallel regions. Note that this feature only sets numbers of
threads used at nesting levels.  The user should make use of
OMP_PLACES and OMP_PROC_BIND or KMP_AFFINITY for affinitizing those
threads, if desired.

Differential Revision: https://reviews.llvm.org/D102188
The file was modifiedopenmp/runtime/src/kmp_global.cpp
The file was modifiedopenmp/runtime/src/kmp_ftn_entry.h
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/kmp_settings.cpp
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
Commit 33ba8bd2c942062731a17e1b864b5953e3d79f1a by tentzen
[Windows SEH]: Fix -O2 crash for Windows -EHa

This patch fixes a Windows -EHa crash induced by previous commit 797ad701522988e212495285dade8efac41a24d4.
The crash was caused by "LifetimeMarker" scope (with option -O2) that should not be considered as SEH Scope.

This change also turns off -fasync-exceptions by default under -EHa option for now.

Differential Revision: https://reviews.llvm.org/D103664#2799944
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/CodeGen/CGCleanup.cpp
Commit f2622a150adea31290daee0d04bf385d387fbc04 by arnamoy.bhattacharyya
[flang][OpenMP] Add semantic check to allow only loop iteration variables in a `linear` clause within `distribute` construct.

Implement the following semantic check:

"A list item may not appear in a linear clause, unless it is the loop iteration variable."

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D100224
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was addedflang/test/Semantics/omp-linear-iter.f90
Commit 2b795ec682ff4a9afbfe4e5c102a51689b270ecc by psteinfeld
[flang] Check for undefined derived types

It's possible to specify refer to an undefined derived type as the type of a
component of another derived type and then never define the type of the
component.  We were not detecting this situation.  To fix this, I
changed the value of isForwardReferenced_ in the symbol's
DerivedTypeDetails and checked for it when performing other derived type
checks.

I also had to record the fact that error messages were previously
emitted for the same problem in some cases so that I could avoid
duplicate messages.

I also added a test.

Differential Revision: https://reviews.llvm.org/D103714
The file was modifiedflang/lib/Semantics/resolve-names.cpp
The file was modifiedflang/lib/Semantics/check-declarations.cpp
The file was modifiedflang/test/Semantics/bad-forward-type.f90
The file was modifiedflang/include/flang/Semantics/symbol.h
The file was modifiedflang/lib/Semantics/type.cpp
Commit 852497711dae35f978a7a3f2e1889fc8fe15fc3b by lebedev.ri
[X86] AMD Zen 3: double the LoopMicroOpBufferSize

While the IndVars issue (PR50384) has been resolved,
and the compile performance improved, a new blocker emerged,
the codegen machine instruction scheduling is also quadratic.
So we still can't really specify the right value here.

Filed PR50584.
The file was modifiedllvm/lib/Target/X86/X86ScheduleZnver3.td
Commit e17610cf9627fa8d0a9ee234d0e5c43b5afd2d8e by scott.linder
[ADT] Refactor enumerate unit tests

Preparation for landing the tests for llvm::makeVisitor, including
breaking out the a "Counted" base class and explicitly testing
the prvalue case as distinct from the rvalue case.

Differential Revision: https://reviews.llvm.org/D103206
The file was modifiedllvm/unittests/ADT/STLExtrasTest.cpp
Commit bba8d8c1868da41c2fa8c39b8ef0a4aefd97b990 by ataei
Revert "Add memref.dim canonicalization patterns to TilingCanonicalizationPatterns"

This reverts commit a52959401d9544ac7037405aaf714bd08f071ea9.

Differential Revision: https://reviews.llvm.org/D103724
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
Commit 60e5243e593ec7e0feca42783edb735e9ac2c4a7 by kda
Update and improve compiler-rt tests for -mllvm -asan_use_after_return=(never|[runtime]|always).

In addition:
  - optionally add global flag to capture compile intent for UAR:
    __asan_detect_use_after_return_always.
    The global is a SANITIZER_WEAK_ATTRIBUTE.

for issue: https://github.com/google/sanitizers/issues/1394

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D103304
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/heavy_uar_test.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Linux/uar_signals.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/pass-struct-byval-uar.cpp
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/fake-stack.ll
The file was modifiedcompiler-rt/lib/asan/asan_rtl.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/uar_and_exceptions.cpp
The file was modifiedcompiler-rt/lib/asan/asan_interface.inc
The file was modifiedcompiler-rt/lib/asan/weak_symbols.txt
The file was modifiedcompiler-rt/test/asan/TestCases/Posix/stack-use-after-return.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/scariness_score_test.cpp
Commit d86ef4364fb50728a2b87ec67bd2714d759f72a4 by rob.suderman
[mlir][tosa] Update tosa.rescale for i48 input type

i48 integers require slightly tweaked behavior, specifically supporting zero
point offsetting with slightly higher bitdepth. Updated results lowering
appropriately.

Reviewed By: NatashaKnk

Differential Revision: https://reviews.llvm.org/D102659
The file was modifiedmlir/include/mlir/Dialect/Tosa/IR/TosaUtilOps.td
The file was modifiedmlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
The file was modifiedmlir/lib/Conversion/TosaToStandard/TosaToStandard.cpp
The file was modifiedmlir/test/Conversion/TosaToStandard/tosa-to-standard.mlir
Commit 26b3ea224e7744058c0053e8eee25a8a3acc9f5d by kda
fix SANITIZE_WINDOWS pragma for https://reviews.llvm.org/rG60e5243e593ec7e0feca42783edb735e9ac2c4a7
The file was modifiedcompiler-rt/lib/asan/asan_rtl.cpp
Commit 00542932fe13ea3b989f40b434399c72f5eca4ec by thakis
[gn build] manually port 60e5243e593e (weak asan symbol)
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/asan/BUILD.gn
Commit 86e9bc1a34a0eafcce52c0dfda0817b1465a0dc2 by ajcbik
[mlir][sparse] add option for 32-bit indices in scatter/gather

Controlled by a compiler option, if 32-bit indices can be handled
with zero/sign-extention alike (viz. no worries on non-negative
indices), scatter/gather operations can use the more efficient
32-bit SIMD version.

Reviewed By: bixia

Differential Revision: https://reviews.llvm.org/D103632
The file was modifiedmlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
The file was modifiedmlir/test/Dialect/SparseTensor/sparse_vector.mlir
The file was modifiedmlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
The file was modifiedmlir/lib/Dialect/SparseTensor/Transforms/SparseTensorPasses.cpp
The file was modifiedmlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
Commit 17600ec32a6f3e5720e5232ddb23d67daa650f4d by kda
remove windows tests for -asan_use-after-return=always (as this is currently disabled for Windows)
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp
Commit b850798f11d3428d6edc22ad63b9cabe2e6baec1 by Vitaly Buka
[NFC][scudo] Fix sign-compare warning in test
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
Commit df87aeb8268240a1f9042aff1450d84900c52ae5 by Vitaly Buka
[Scudo] Improve ScopedString constructor

Avoid referencing elements beyond internal vector size.

Reviewed By: cryptoad

Differential Revision: https://reviews.llvm.org/D103718
The file was modifiedcompiler-rt/lib/scudo/standalone/string_utils.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/strings_test.cpp
Commit 70b29213eb3446ffb85678da3cc447f478e27e15 by Vitaly Buka
[scudo] Remove ScopedString::Length

Differential Revision: https://reviews.llvm.org/D103725
The file was modifiedcompiler-rt/lib/scudo/standalone/string_utils.h
The file was modifiedcompiler-rt/lib/scudo/standalone/string_utils.cpp
Commit 57ba226296411f0a3918573479ca750e375c13c0 by Vitaly Buka
[NFC][scudo] Convert to TYPED more ScudoCombinedTest
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/combined_test.cpp
Commit 9ff982dbbdd4d0f851e0b32440e13ac92635ac6f by Vitaly Buka
[NFC][scudo] Fix sign-compare warning in test
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/strings_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
Commit 35fb4b9a7c133def9cc3ff0b26b1fe17e348b843 by i
[lsan] Bump the thread limit from 1<<13 to 1<<22

This matches asan. Some applications need more than 1<<13 threads.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D103731
The file was modifiedcompiler-rt/lib/lsan/lsan_thread.cpp
Commit d8a4a2cb93212c493b7b47663c1cda1103de0bfc by Vitaly Buka
Revert "Update and improve compiler-rt tests for -mllvm -asan_use_after_return=(never|[runtime]|always)."

Reverts commits of D103304, it breaks Darwin.

This reverts commit 60e5243e593ec7e0feca42783edb735e9ac2c4a7.
This reverts commit 26b3ea224e7744058c0053e8eee25a8a3acc9f5d.
This reverts commit 17600ec32a6f3e5720e5232ddb23d67daa650f4d.
The file was modifiedcompiler-rt/lib/asan/asan_interface.inc
The file was modifiedcompiler-rt/test/asan/TestCases/heavy_uar_test.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/scariness_score_test.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedcompiler-rt/lib/asan/asan_rtl.cpp
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/fake-stack.ll
The file was modifiedcompiler-rt/test/asan/TestCases/Linux/uar_signals.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Posix/stack-use-after-return.cpp
The file was modifiedcompiler-rt/lib/asan/weak_symbols.txt
The file was modifiedcompiler-rt/test/asan/TestCases/uar_and_exceptions.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/pass-struct-byval-uar.cpp
Commit d123e983b332d061bf456c8a0b5dbbe9666eaf4c by llvm-project
[Polly] Move MatMul optimization into its own file. NFC.

Functions shared between generalized matrix-multiplication optimization
and other post-reschedule optimizations (tiling, prevect) are moved into
the schedule tree transformation utility ScheduleTreeTransform.
The file was modifiedpolly/lib/CMakeLists.txt
The file was modifiedpolly/lib/Transform/ScheduleTreeTransform.cpp
The file was removedpolly/unittests/ScheduleOptimizer/ScheduleOptimizerTest.cpp
The file was modifiedpolly/unittests/ScheduleOptimizer/CMakeLists.txt
The file was addedpolly/unittests/ScheduleOptimizer/ScheduleTreeTransformTest.cpp
The file was modifiedpolly/include/polly/ScheduleOptimizer.h
The file was modifiedpolly/lib/Transform/ScheduleOptimizer.cpp
The file was modifiedpolly/include/polly/ScheduleTreeTransform.h
The file was addedpolly/include/polly/MatmulOptimizer.h
The file was addedpolly/lib/Transform/MatmulOptimizer.cpp
Commit 170b70b74b53049648b8c2901e12825d5b1ea930 by jim
[RISCV] Replace (XLenVT (VLOp GPR:$vl)) with VLOpFrag

This is for D100288 to reduce the changes.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103682
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td