FailedChanges

Summary

  1. [lld][ELF][test] Add a couple of test cases for LTO behaviour (details)
  2. [NFC][Docs] fix clang-docs compilation (details)
  3. [llvm-objcopy][NFC] refactor error handling. part 1. (details)
  4. [APFloat] add tests for convert of NAN; NFC (details)
  5. [flang][driver] Remove unnecessary includes in the unittest (NFC) (details)
  6. [flang] [OpenMP 4.5] Adding lit test cases for OpenMP Constructs. (details)
  7. Fix a builtbot failure after 3ed04f93e30121867a813a220452b97aebeb1730. (details)
  8. [Support] On Windows, ensure abort() can be catched several times in a row with CrashRecoveryContext (details)
  9. [lit] Support running tests on Windows without GnuWin32 (details)
  10. [Support] On Unix, let the CrashRecoveryContext return the signal code (details)
  11. [ARM] Check for LSTP side-effects. (details)
  12. [ARM] LowoverheadLoops: add an option to disable tail-predication (details)
  13. [AArch64] Regenerate dag-combine-mul-shl.ll checks (details)
  14. Recommit "[CUDA][HIP] Defer overloading resolution diagnostics for host device functions" (details)
  15. Improve 723fea23079f9c85800e5cdc90a75414af182bfd - Silence 'warning: unused variable' when compiling with Clang 10.0 (details)
  16. Fix f5314d15af4f4514103ea12c74cb208538b8bef5 - [Support] On Unix, let the CrashRecoveryContext return the signal code (details)
  17. [MLIR] Normalize memrefs in LoadOp and StoreOp of Standard Ops (details)
  18. [NFC][RISCV][builtins] Remove some hard-coded values from i-cache clear routine (details)
  19. lld: Try to fix check-lld on incremental builds after 8f2c31f22b974da (details)
  20. [InstCombine] regenerate test checks; NFC (details)
  21. [PhaseOrdering] move an 'opt' test from x86 codegen; NFC (details)
  22. [PhaseOrdering] move test with target requirement to x86 dir (details)
  23. [MLIR][SPIRV] Fixed dialect loading in deserialization (details)
  24. OpaquePtr: Add helpers for sret to mirror byval (details)
  25. IR: Have byref imply dereferenceable (details)
  26. [AMDGPU] Fix v3f16 handling for getresinfo (details)
  27. [AMDGPU] Use cast instead of dyn_cast (details)
  28. [RegisterCoalescer] Fix IMPLICIT_DEF init removal for a register on joining (details)
  29. [NFC][ARM] Remove dead loop. (details)
  30. [OpenMP] Introduce GOMP teams support in runtime (details)
  31. [OpenMP] Introduce GOMP mutexinoutset in the runtime (details)
  32. [OpenMP] Introduce GOMP taskwait depend in the runtime (details)
  33. [OpenMP] Fix if0 task with dependencies in the runtime (details)
  34. [X86][SSE] combineVectorTruncation - enable (pre-SSSE3) vXi16->vXi8 truncation. (details)
  35. [clang] use string tables for static diagnostic descriptions (details)
  36. Sema: add support for `__attribute__((__swift_newtype__))` (details)
  37. [lldb/examples] Add missing declaration in heap.py (details)
  38. [OpenMP] cmake option LIBOMPTARGET_NVPTX_MAX_SM for nvptx device RTL (details)
  39. [IRSim][NFC] Removing dead variables from IRSimilarityIdentifier.cpp (details)
  40. [AArch64][GlobalISel] Implement __builtin_return_address for PAC-RET (details)
  41. [OPENMP]PR47606: Do not update the lastprivate item if it was captured by reference as firstprivate data member. (details)
  42. [AMDGPU] global-isel support for RT (details)
  43. [AArch64] Regenerate dag-numsignbits.ll checks (details)
  44. [Scalar] ConstantHoistingPass - iterate with const references. NFCI. (details)
  45. [OPENMP]Fix PR47621: Variable used by task inside a template function is not made firstprivate by default (details)
  46. [SLP] Remove LHS and RHS from OperationData. (details)
  47. [APFloat] prevent NaN morphing into Inf on conversion (PR43907) (details)
  48. Revert "Recommit "[CUDA][HIP] Defer overloading resolution diagnostics for host device functions"" (details)
  49. Revert "Recommit [NFC] Refactor DiagnosticBuilder and PartialDiagnostic" (details)
  50. [llvm-exegesis] Add whitespace between words in error message (details)
  51. Revert "[OPENMP]Fix PR47621: Variable used by task inside a template function is not made firstprivate by default" (details)
  52. Basic: add an extra newline for sphinx (NFC) (details)
Commit a4e42601d44b39fb0b2782344f5ed4ea53de5f20 by james.henderson
[lld][ELF][test] Add a couple of test cases for LTO behaviour

This patch expands two LTO test cases to check other aspects.

1) weak.ll has been expanded to show that it doesn't matter whether the
   first appearance of a weak symbol appears in a bitcode file or native
   object - that one is picked.
2) reproduce-lto.ll has been expanded to show that the bitcode files are
   stored in the reproduce package and that intermediate files (such as
   the LTO-compiled object) are not.

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

Reviewed by: grimar, MaskRay
The file was modifiedlld/test/ELF/lto/weak.ll
The file was modifiedlld/test/ELF/reproduce-lto.s
Commit 4e534900476d2a5c620e74ddb9c9e7d321e6d443 by development
[NFC][Docs] fix clang-docs compilation
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/docs/analyzer/checkers.rst
Commit 3ed04f93e30121867a813a220452b97aebeb1730 by a.v.lapshin
[llvm-objcopy][NFC] refactor error handling. part 1.

Remove usages of special error reporting functions(error(),
reportError()). This patch is extracted from D87987.
Errors are reported as Expected<>/Error returning values.
This part is for MachO subfolder of llvm-objcopy.

Testing: check-all.

Reviewed By: jhenderson, alexshap

Differential Revision: https://reviews.llvm.org/D88113
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.h
Commit b2c46633d1296a9080098abc4e6c6214d19005c0 by spatel
[APFloat] add tests for convert of NAN; NFC

More coverage for the bug fix proposed in D87835.
The file was modifiedllvm/unittests/ADT/APFloatTest.cpp
Commit 10c94d8cf876952edb0dee20219259166c27c21d by andrzej.warzynski
[flang][driver] Remove unnecessary includes in the unittest (NFC)

Differential Revision: https://reviews.llvm.org/D88219
The file was modifiedflang/unittests/Frontend/CompilerInstanceTest.cpp
Commit 956a84da0616eb761297b46aa65750d738fb1544 by david.truby
    [flang] [OpenMP 4.5] Adding lit test cases for OpenMP Constructs.

1. Section 2.5   : Parallel Construct
2. Section 2.7.1 : Loop Construct
3. Section 2.7.2 : Sections Construct
4. Section 2.7.3 : Single Construct
5. Section 2.7.4 : Workshare Construct
6. Section 2.8.1 : Simd Construct
7. Section 2.8.3 : Loop Simd Construct
8. Section 2.9.1 : Task Construct
9. Section 2.9.2 : Taskloop Construct
10. Section 2.9.3 : Taskloop Simd Construct

Most of the test cases added as part of this change contains semantic errors except few cases which are semantically correct but thrown a semantic error.

Currently flang is not throwing the errors for these cases and throwing semantic errors for the following correct test cases

{omp-do03.f90 , omp-loop-simd01.f90 , omp-simd02.f90 , omp-taskloop01.f90}

Hence, all the test cases are marked as XFAIL.

Reviewed By: DavidTruby

Differential Revision: https://reviews.llvm.org/D87908
The file was addedflang/test/Semantics/omp-taskloop01.f90
The file was addedflang/test/Semantics/omp-single02.f90
The file was addedflang/test/Semantics/omp-task01.f90
The file was addedflang/test/Semantics/omp-do10.f90
The file was addedflang/test/Semantics/omp-single01.f90
The file was addedflang/test/Semantics/omp-parallell01.f90
The file was addedflang/test/Semantics/omp-parallell02.f90
The file was addedflang/test/Semantics/omp-sections01.f90
The file was addedflang/test/Semantics/omp-do06.f90
The file was addedflang/test/Semantics/omp-do03.f90
The file was addedflang/test/Semantics/omp-do04.f90
The file was addedflang/test/Semantics/omp-do09.f90
The file was addedflang/test/Semantics/omp-workshare02.f90
The file was addedflang/test/Semantics/omp-do07.f90
The file was addedflang/test/Semantics/omp-do02.f90
The file was addedflang/test/Semantics/omp-taskloop03.f90
The file was addedflang/test/Semantics/omp-taskloop-simd01.f90
The file was addedflang/test/Semantics/omp-do08.f90
The file was addedflang/test/Semantics/omp-do05.f90
The file was addedflang/test/Semantics/omp-loop-simd01.f90
The file was addedflang/test/Semantics/omp-taskloop02.f90
The file was addedflang/test/Semantics/omp-workshare01.f90
The file was addedflang/test/Semantics/omp-simd02.f90
The file was addedflang/test/Semantics/omp-simd03.f90
The file was addedflang/test/Semantics/omp-do01.f90
The file was addedflang/test/Semantics/omp-simd01.f90
Commit 4da6927de47074f56531c2e7e2eecc4d6a1f09ec by a.v.lapshin
Fix a builtbot failure after 3ed04f93e30121867a813a220452b97aebeb1730.
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
Commit 24f510570fedf2ac6ea421478c7500d777c8c3c6 by alexandre.ganea
[Support] On Windows, ensure abort() can be catched several times in a row with CrashRecoveryContext

Before this patch, the CrashRecoveryContext would only catch the first abort(). Any further calls to abort() inside subsquent CrashRecoveryContexts would not be catched. This is because the Windows CRT removes the abort() handler before calling it.

This is part of https://reviews.llvm.org/D70378
The file was modifiedllvm/include/llvm/Support/CrashRecoveryContext.h
The file was modifiedllvm/lib/Support/CrashRecoveryContext.cpp
The file was modifiedllvm/unittests/Support/CrashRecoveryTest.cpp
Commit b3418cb4eb1456c41606f4621dcfa362fe54183c by alexandre.ganea
[lit] Support running tests on Windows without GnuWin32

Historically, we have told contributors that GnuWin32 is a pre-requisite
because our tests depend on utilities such as sed, grep, diff, and more.
However, Git on Windows includes versions of these utilities in its
installation.  Furthermore, GnuWin32 has not been updated in many years.
For these reasons, it makes sense to have the ability to run llvm tests
in a way that is both:
  a) Easier on the user (less stuff to install)
  b) More up-to-date (The verions that ship with git are at least as
     new, if not newer, than the versions in GnuWin32.

We add support for this here by attempting to detect where Git is
installed using the Windows registry, confirming the existence of
several common Unix tools, and then adding this location to lit's PATH
environment.

Differential Revision: https://reviews.llvm.org/D84380
The file was modifiedllvm/utils/lit/lit/llvm/config.py
Commit f5314d15af4f4514103ea12c74cb208538b8bef5 by alexandre.ganea
[Support] On Unix, let the CrashRecoveryContext return the signal code

Before this patch, the CrashRecoveryContext was returning -2 upon a signal, like ExecuteAndWait does. This didn't match the behavior on Windows, where the the exception code was returned.

We now return the signal's code, which optionally allows for re-throwing the signal later. Doing so requires all custom handlers to be removed first, through llvm::sys::unregisterHandlers() which we made a public API.

This is part of https://reviews.llvm.org/D70378
The file was modifiedllvm/include/llvm/Support/Signals.h
The file was modifiedclang/tools/driver/driver.cpp
The file was modifiedllvm/lib/Support/Unix/Signals.inc
The file was modifiedllvm/lib/Support/Windows/Signals.inc
The file was modifiedllvm/unittests/Support/CrashRecoveryTest.cpp
The file was modifiedllvm/lib/Support/CrashRecoveryContext.cpp
Commit 9d9a11c7be037cbbfb5239b72dbeb48dd2601bbc by sam.parker
[ARM] Check for LSTP side-effects.

If the LSTP instruction is inserted with an element count low enough
to immediately predicate some lanes as false, this can have some
unintended effects on any proceeding MVE instructions in the
preheader.

Differential Revision: https://reviews.llvm.org/D88209
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/lstp-insertion-position.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/iv-two-vcmp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-tailpred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-after-dlstp.mir
Commit 2fc690ac904c657dad9159926074ec62edebcd8e by sjoerd.meijer
[ARM] LowoverheadLoops: add an option to disable tail-predication

This might be useful for testing. We already have an option -tail-predication
but that controls the MVETailPredication pass.  This
-arm-loloops-disable-tail-pred is just for disabling it in the LowoverheadLoops
pass.

Differential Revision: https://reviews.llvm.org/D88212
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-disabled-in-loloops.ll
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
The file was modifiedllvm/lib/Target/ARM/MVETailPredication.cpp
Commit a815578c31775f3bca57a6ede65787aa152bafbd by llvm-dev
[AArch64] Regenerate dag-combine-mul-shl.ll checks
The file was modifiedllvm/test/CodeGen/AArch64/dag-combine-mul-shl.ll
Commit e39da8ab6a286ac777d5fe7799f1eb782cf99938 by Yaxun.Liu
Recommit "[CUDA][HIP] Defer overloading resolution diagnostics for host device functions"

This recommits 7f1f89ec8d9944559042bb6d3b1132eabe3409de and
40df06cdafc010002fc9cfe1dda73d689b7d27a6 after fixing memory
sanitizer failure.
The file was modifiedclang/include/clang/Basic/Diagnostic.td
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticIDs.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticAnalysis.h
The file was modifiedclang/include/clang/Basic/DiagnosticSema.h
The file was modifiedclang/lib/Sema/SemaSYCL.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/lib/Sema/SemaTemplateInstantiate.cpp
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/test/TableGen/DiagnosticBase.inc
The file was modifiedclang/include/clang/Basic/DiagnosticParse.h
The file was modifiedclang-tools-extra/clangd/Diagnostics.cpp
The file was addedclang/test/TableGen/deferred-diag.td
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticComment.h
The file was modifiedclang/lib/Sema/SemaCUDA.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticDriver.h
The file was modifiedclang/include/clang/Basic/DiagnosticFrontend.h
The file was modifiedclang/include/clang/Basic/DiagnosticRefactoring.h
The file was modifiedclang/lib/Basic/DiagnosticIDs.cpp
The file was modifiedclang/lib/Sema/SemaTemplateVariadic.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang/utils/TableGen/ClangDiagnosticsEmitter.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/tools/diagtool/DiagnosticNames.cpp
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
The file was modifiedclang/lib/Sema/AnalysisBasedWarnings.cpp
The file was modifiedclang/lib/Sema/SemaAttr.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticCrossTU.h
The file was addedclang/test/SemaCUDA/deferred-oeverload.cu
The file was modifiedclang/include/clang/Basic/DiagnosticSerialization.h
The file was modifiedclang/include/clang/Basic/DiagnosticLex.h
The file was modifiedclang/include/clang/Basic/DiagnosticAST.h
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
Commit 4b64ce7428b66cacfe74dbd9dbc29aff6dfb84af by alexandre.ganea
Improve 723fea23079f9c85800e5cdc90a75414af182bfd - Silence 'warning: unused variable' when compiling with Clang 10.0
The file was modifiedllvm/lib/CodeGen/PeepholeOptimizer.cpp
Commit a6a6ccfc4c8b348d6d534657e16bb7504b9f2888 by alexandre.ganea
Fix f5314d15af4f4514103ea12c74cb208538b8bef5 - [Support] On Unix, let the CrashRecoveryContext return the signal code

This was causing bots to fail: http://green.lab.llvm.org/green/job/clang-stage1-RA/14828/consoleFull#6384962949ba4694-19c4-4d7e-bec5-911270d8a58c
The file was modifiedllvm/unittests/Support/CrashRecoveryTest.cpp
Commit ff00b58392527419ea32d0b97575ef973c1bd085 by uday
[MLIR] Normalize memrefs in LoadOp and StoreOp of Standard Ops

Added a trait, `MemRefsNormalizable` in LoadOp and StoreOp of Standard Ops
to normalize input memrefs in LoadOp and StoreOp.

Related revision: https://reviews.llvm.org/D86236

Differential Revision: https://reviews.llvm.org/D88156
The file was modifiedmlir/test/Transforms/normalize-memrefs-ops.mlir
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
Commit 303e8cdacb106c4e1ba07d47ab60d71c03a2552c by luismarques
[NFC][RISCV][builtins] Remove some hard-coded values from i-cache clear routine

Remove some hard-coded values from i-cache clear routine

Differential Revision: https://reviews.llvm.org/D87578
The file was modifiedcompiler-rt/lib/builtins/clear_cache.c
Commit 0389eff4047a74bb1ba6c0603c9002b5c73b203e by thakis
lld: Try to fix check-lld on incremental builds after 8f2c31f22b974da
The file was modifiedlld/test/MachO/link-search-order.s
Commit 8e712807e4848ea4687cb5d27dca99237f4ebaa7 by spatel
[InstCombine] regenerate test checks; NFC
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/ldexp.ll
Commit 9cf647bb3f88434e3ecba8e108d56fa4e3ed56f9 by spatel
[PhaseOrdering] move an 'opt' test from x86 codegen; NFC

This file comes from 2007, and I'm not entirely sure of the
motivation, but it was going through all of opt and llc.
The llc part is almost certainly unnecessary as shown in
the now auto-generated FileCheck lines.

This test may be affected by a logic change suggested in:
D87835
The file was removedllvm/test/CodeGen/X86/nancvt.ll
The file was addedllvm/test/Transforms/PhaseOrdering/nancvt.ll
Commit 2625433e77ef5e161536f6fd01ea68840cfcb0dc by spatel
[PhaseOrdering] move test with target requirement to x86 dir

I'm not sure if the target is actually necessary,
but since it was specified, I'm moving to the
appropriate dir to avoid bot fallout.
The file was addedllvm/test/Transforms/PhaseOrdering/X86/nancvt.ll
The file was removedllvm/test/Transforms/PhaseOrdering/nancvt.ll
Commit 8f72717ebe27209a11be80629c667332cd5e4e60 by georgemitenk0v
[MLIR][SPIRV] Fixed dialect loading in deserialization

Fixed an error when deserializing the SPIR-V binary
to MLIR SPIR-V. Before, the SPIR-V dialect was not loaded
explicitly into the context, which resulted in unregistered
operation error.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D88223
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/TranslateRegistration.cpp
Commit d65a7003c435de22b8e30dca292160fea822d887 by Matthew.Arsenault
OpaquePtr: Add helpers for sret to mirror byval

Sret should really have a type parameter like byval does.
The file was modifiedllvm/lib/IR/Function.cpp
The file was modifiedllvm/test/CodeGen/X86/vectorcall.ll
The file was modifiedllvm/lib/Analysis/Lint.cpp
The file was modifiedllvm/lib/IR/Value.cpp
The file was modifiedllvm/include/llvm/IR/Argument.h
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
The file was modifiedllvm/include/llvm/IR/Function.h
Commit dc08185ca797a3bcd7721a0d55db876a6cc4de10 by Matthew.Arsenault
IR: Have byref imply dereferenceable

The langref already states it does, but this wasn't implemented. Also
covers inalloca and preallocated. Also helps fix a dependence on
pointer element types.
The file was modifiedllvm/test/Transforms/Attributor/readattrs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
The file was modifiedllvm/test/Transforms/Attributor/value-simplify.ll
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
The file was modifiedllvm/lib/IR/Value.cpp
Commit 6f7cd16d297155332ff2b4c7efb01ca592eb7753 by sebastian.neubauer
[AMDGPU] Fix v3f16 handling for getresinfo

v3f32 should not be expanded to v4f32. getresinfo with a dmask of 7
created an image sample with a v3f32 return value, which was bitcasted
to a v4f32 in constructRetValue.

Differential Revision: https://reviews.llvm.org/D88206
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
Commit c05cf1ca3c55362c5a8ef8a148c3b763cc8784e9 by jay.foad
[AMDGPU] Use cast instead of dyn_cast
The file was modifiedllvm/lib/Target/AMDGPU/R600ISelLowering.cpp
Commit d9beff04a30877c117e15c7fbc4d4e5c87e413ab by vpykhtin
[RegisterCoalescer] Fix IMPLICIT_DEF init removal for a register on joining

This patch removes redundant IMPLICIT_DEF for subregs which was leading to
incorrect register initialization on joining in some cases.

Reviewed by: qcolombet

Differential revision: https://reviews.llvm.org/D82258
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
The file was addedllvm/test/CodeGen/AMDGPU/coalescing_makes_lanes_undef.mir
Commit 00ee52ae0467f0bfa588d9797053a42c615d2332 by sam.parker
[NFC][ARM] Remove dead loop.

Remove a loop that just calculated a couple of values that were now
longer needed.
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
Commit ea34d95e0ad664fa879bb1d8b71f32928b1d6c0f by jonathan.l.peyton
[OpenMP] Introduce GOMP teams support in runtime

Implement GOMP_teams_reg() function which enables GOMP support of the
standalone teams construct. The GOMP_parallel* functions were modified
to call __kmp_fork_call() unconditionally so that the teams-specific
code could be reused within __kmp_fork_call() instead of reproduced
inside the GOMP_* functions.

Differential Revision: https://reviews.llvm.org/D87167
The file was modifiedopenmp/runtime/src/kmp_ftn_os.h
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was addedopenmp/runtime/test/teams/teams.c
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
Commit 72ada5ae6c5bcc53045eba559666a65a68149e4c by jonathan.l.peyton
[OpenMP] Introduce GOMP mutexinoutset in the runtime

Encapsulate GOMP task dependencies in separate class and introduce the
new mutexinoutset dependency type. This separate class allows
future GOMP task APIs easier access to the task dependency functionality
and better ability to propagate new dependency types to all existing GOMP
task APIs which use task dependencies.

Differential Revision: https://reviews.llvm.org/D87267
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was modifiedopenmp/runtime/src/i18n/en_US.txt
The file was addedopenmp/runtime/test/tasking/omp50_task_depend_mtx3.c
Commit 9089b4a5c5b4271e6b8300cf5d7471d4ddd93bec by jonathan.l.peyton
[OpenMP] Introduce GOMP taskwait depend in the runtime

This change introduces the GOMP_taskwait_depend() function. It implements
the OpenMP 5.0 feature of #pragma omp taskwait with depend() clause by
wrapping around __kmpc_omp_wait_deps().

Differential Revision: https://reviews.llvm.org/D87269
The file was modifiedopenmp/runtime/src/kmp_ftn_os.h
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was addedopenmp/runtime/test/tasking/omp50_taskwait_depend.c
Commit ee1c04a926904b34525e4577742d8c10a23db814 by jonathan.l.peyton
[OpenMP] Fix if0 task with dependencies in the runtime

The current GOMP interface for serialized tasks does not take into
account task dependencies. Add the check and wait for dependencies.

Fixes: https://bugs.llvm.org/show_bug.cgi?id=46573

Differential Revision: https://reviews.llvm.org/D87271
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was addedopenmp/runtime/test/tasking/taskdep_if0_2.c
The file was addedopenmp/runtime/test/tasking/taskdep_if0.c
Commit 283036394ee606401ebb6601bb97b500e11a2830 by llvm-dev
[X86][SSE] combineVectorTruncation - enable (pre-SSSE3) vXi16->vXi8 truncation.

Shuffle combining can now handle this output, and by performing this early in combineVectorTruncation we avoid a scalarization that caused a regression on D87502.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-and-bool.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-xor-bool.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-math.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-or-bool.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc.ll
Commit 31a3c5fb45b78bdaa78d94ffcc9258e839002016 by froydnj
[clang] use string tables for static diagnostic descriptions

Using a pointer for the description string in StaticDiagInfoRec causes
several problems:

1. We don't need to use a whole pointer to represent the string;
2. The use of pointers incurs runtime relocations for those pointers;
   the relocations take up space on disk and represent runtime overhead;
3. The need to relocate data implies that, on some platforms, the entire
   array containing StaticDiagInfoRecs cannot be shared between processes.

This patch changes the storage scheme for the diagnostic descriptions to
avoid these problems.  We instead generate (effectively) one large
string and then StaticDiagInfoRec conceptually holds offsets into the
string.  We elected to also move the storage of those offsets into a
separate array to further reduce the space required.

On x86-64 Linux, this change removes about 120KB of relocations and
moves about 60KB from the non-shareable .data.rel.ro section to
shareable .rodata.  (The array is about 80KB before this, but we
eliminated 4 bytes/entry by using offsets rather than pointers.)  We
actually reap this benefit twice, because these tables show up in both
libclang.so and libclang-cpp.so and we get the reduction in both places.

Differential Revision: https://reviews.llvm.org/D81865
The file was modifiedclang/lib/Basic/DiagnosticIDs.cpp
Commit 296d8832a3b5fe97725be62c5bbc721cc0e2cd20 by Saleem Abdulrasool
Sema: add support for `__attribute__((__swift_newtype__))`

Add the `swift_newtype` attribute which allows a type definition to be
imported into Swift as a new type.  The imported type must be either an
enumerated type (enum) or an object type (struct).

This is based on the work of the original changes in
https://github.com/llvm/llvm-project-staging/commit/8afaf3aad2af43cfedca7a24cd817848c4e95c0c

Differential Revision: https://reviews.llvm.org/D87652
Reviewed By: Aaron Ballman
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was addedclang/test/AST/attr-swift_newtype.m
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/lib/Parse/ParseDecl.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was addedclang/test/SemaObjC/attr-swift_newtype.m
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/include/clang/Basic/Attr.td
Commit ada1e2ffa1172ede1790b4b42ef8ab01508d3a47 by davelee.com
[lldb/examples] Add missing declaration in heap.py

Add missing declaration for `malloc_get_all_zones` in heap.py.

Differential Revision: https://reviews.llvm.org/D88158
The file was modifiedlldb/examples/darwin/heap_find/heap.py
Commit ffd159d8e919435561a8c9eac0dcdd83aacdcf6a by tianshilei1992
[OpenMP] cmake option LIBOMPTARGET_NVPTX_MAX_SM for nvptx device RTL

It allows customizing MAX_SM for non-flagship GPU and reduces graphic memory usage.

In addition, so far the size is hard-coded up to __CUDA_ARCH__ 700 and is already a hassle for 800.
Introduce MAX_SM for 800 and protect future arch

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D88185
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/CMakeLists.txt
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h
Commit 08d145e6d7a9b3085d433d05abac5c8a4392e09a by andrew.litteken
[IRSim][NFC] Removing dead variables from IRSimilarityIdentifier.cpp

As informed by danielkiss.

Follow up to Differential Revision: https://reviews.llvm.org/D86972
The file was modifiedllvm/lib/Analysis/IRSimilarityIdentifier.cpp
Commit bd44558001e978d93fbff5a4537f38b46b0e355a by momchil.velikov
[AArch64][GlobalISel] Implement __builtin_return_address for PAC-RET

This patch implements stripping of the PAC in the return address for GlobalISel.

Implementation for when not using GLobalISel is in
https://reviews.llvm.org/D75044 The analogous GCC patch is
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=a70d5d81c41048556fd86eaa1036018a6bfba115

Differential Revision: https://reviews.llvm.org/D84502
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/builtin-return-address-pacret.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-returnaddr.ll
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-returnaddress-liveins.mir
Commit a9fca98ee4f653278d84713caecd152fef8494f5 by a.bataev
[OPENMP]PR47606: Do not update the lastprivate item if it was captured by reference as firstprivate data member.

No need to make final copy from the firsptrivate/lastprivate copy to the original item if the item is a data memeber.
Firstprivate copy creates a copy by reference and the original item gets
updated correctly when updating the lastprivate shared variable.

Differential Revision: https://reviews.llvm.org/D88179
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/for_lastprivate_codegen.cpp
Commit 27a62f6317f3faa845d1cb67ec3f0ed357ee07e8 by Stanislav.Mekhanoshin
[AMDGPU] global-isel support for RT

Differential Revision: https://reviews.llvm.org/D87847
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit bdd6af3a58d55ba4518ecd3a13769f8c111a65e7 by llvm-dev
[AArch64] Regenerate dag-numsignbits.ll checks

To improve the codegen diff in D87502
The file was modifiedllvm/test/CodeGen/AArch64/dag-numsignbits.ll
Commit 81a408808f668c74ada3a1ed3d55f1feef334872 by llvm-dev
[Scalar] ConstantHoistingPass - iterate with const references. NFCI.

Fix some clang-tidy warnings.
The file was modifiedllvm/lib/Transforms/Scalar/ConstantHoisting.cpp
Commit d1419c9fdab141617b6aa9f028191b9bfc8be260 by a.bataev
[OPENMP]Fix PR47621: Variable used by task inside a template function is not made firstprivate by default

Need to fix a check for the variable if it is declared in the inner
OpenMP region to be able to firstprivatize it.

Differential Revision: https://reviews.llvm.org/D88240
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/task_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
Commit 03f22b08e2a387a415dcbb3cf021e41e629c3d34 by craig.topper
[SLP] Remove LHS and RHS from OperationData.

These were only really used for 2 things. One was to check if the operand matches the phi if it exists. The other was for the createOp method to build the reduction.

For the first case we still have the operation we just need to know how to index its operands. So I've modified getLHS/getRHS to just use the opcode/kind to know how to find the right operands on an instruction that is now passed in.

For the other case we had to create an OperationData object to set the LHS/RHS values and copy the opcode/kind from another object. We would then just call createOp on that temporary object. Instead I've made LHS/RHS arguments to createOp and removed all these temporary objects.

Differential Revision: https://reviews.llvm.org/D88193
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit e34bd1e0b03d20a506ada156d87e1b3a96d82fa2 by spatel
[APFloat] prevent NaN morphing into Inf on conversion (PR43907)

We shift the significand right on a truncation, but that needs to be made NaN-safe:
always set at least 1 bit in the significand.
https://llvm.org/PR43907

See D88238 for the likely follow-up (but needs some plumbing fixes before it can proceed).

Differential Revision: https://reviews.llvm.org/D87835
The file was modifiedllvm/unittests/ADT/APFloatTest.cpp
The file was modifiedllvm/lib/Support/APFloat.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/cast.ll
Commit 3453b6928da332bb67f902add71f5cd80f61c136 by rnk
Revert "Recommit "[CUDA][HIP] Defer overloading resolution diagnostics for host device functions""

This reverts commit e39da8ab6a286ac777d5fe7799f1eb782cf99938.

This depends on a change that needs additional design review and needs
to be reverted.
The file was modifiedclang/include/clang/Basic/DiagnosticIDs.h
The file was modifiedclang/include/clang/Basic/Diagnostic.td
The file was modifiedclang/lib/Sema/SemaAttr.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParse.h
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticLex.h
The file was modifiedclang/lib/Basic/DiagnosticIDs.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang-tools-extra/clangd/Diagnostics.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticFrontend.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was removedclang/test/SemaCUDA/deferred-oeverload.cu
The file was modifiedclang/utils/TableGen/ClangDiagnosticsEmitter.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaCUDA.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticDriver.h
The file was modifiedclang/include/clang/Basic/DiagnosticAnalysis.h
The file was modifiedclang/include/clang/Basic/DiagnosticCrossTU.h
The file was modifiedclang/lib/Sema/SemaSYCL.cpp
The file was modifiedclang/lib/Sema/AnalysisBasedWarnings.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSema.h
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/lib/Sema/SemaTemplateVariadic.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiate.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was removedclang/test/TableGen/deferred-diag.td
The file was modifiedclang/tools/diagtool/DiagnosticNames.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticRefactoring.h
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/test/TableGen/DiagnosticBase.inc
The file was modifiedclang/include/clang/Basic/DiagnosticAST.h
The file was modifiedclang/include/clang/Basic/DiagnosticSerialization.h
The file was modifiedclang/include/clang/Basic/DiagnosticComment.h
Commit b62fd436a3e613cbfe0654305cbc0e4f142bfcf9 by rnk
Revert "Recommit [NFC] Refactor DiagnosticBuilder and PartialDiagnostic"

This reverts commit 8e780a1653e6f87755a447e921b8f929d8b70996.

DiagnosticBuilder is a value type, created on the stack everywhere. IMO
we should not be adding a vtable to it, and making very operator<< use a
virtual interface. There are other feasible designs for implementing
this. The original review, D84362, was approved by @tra, who is
responsible for Clang's CUDA support, but it wasn't reviewed by @rsmith
or anyone responsible for clang's diagnostic library.
The file was modifiedclang/include/clang/AST/CanonicalType.h
The file was modifiedclang/include/clang/AST/Type.h
The file was modifiedclang/include/clang/AST/TemplateName.h
The file was modifiedclang/include/clang/Basic/Diagnostic.h
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/include/clang/AST/NestedNameSpecifier.h
The file was modifiedclang/include/clang/AST/TemplateBase.h
The file was modifiedclang/include/clang/Sema/ParsedAttr.h
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/include/clang/Sema/Ownership.h
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/include/clang/Basic/PartialDiagnostic.h
The file was modifiedclang/lib/AST/TemplateBase.cpp
The file was modifiedclang/include/clang/AST/Attr.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/TemplateName.cpp
The file was modifiedclang/lib/Basic/Diagnostic.cpp
The file was modifiedclang/include/clang/AST/DeclarationName.h
The file was modifiedclang/lib/AST/ASTContext.cpp
Commit 29ec5901c9c515e34ed4299ac500f268dca1f62e by Jinsong Ji
[llvm-exegesis] Add whitespace between words in error message
The file was modifiedllvm/tools/llvm-exegesis/llvm-exegesis.cpp
Commit cde7d90cc7c20d73d14225517cf11ffc6073018a by a.bataev
Revert "[OPENMP]Fix PR47621: Variable used by task inside a template function is not made firstprivate by default"

This reverts commit d1419c9fdab141617b6aa9f028191b9bfc8be260 to fix the
buffer overflow detected by address sanitiizer.
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/task_codegen.cpp
Commit d34c8c70aae2a5421337c2ccac91130c70511f94 by Saleem Abdulrasool
Basic: add an extra newline for sphinx (NFC)

This should resolve the "Bullet list ends without a blank line" warning.
The file was modifiedclang/include/clang/Basic/AttrDocs.td