AbortedChanges

Summary

  1. clang-x86-ninja-win10 enabling LLD (details)
Commit b1195d9085987c09d9c1ada0b47122d6bfc00771 by kuhnel
clang-x86-ninja-win10 enabling LLD
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)

Summary

  1. [flang][driver] Fix options flag in the frontend driver (details)
  2. [OpenMP][MLIR] Add assembly format for master op (details)
  3. [flang][driver] Add missing dependency in CMake files (details)
  4. [flang][NFC] Fix CMake variable name in README.md (details)
  5. [clangd] Disable suffix matching fallback for C during include insertion (details)
  6. [clangd] Fix comment. NFC (details)
  7. [llvm-objcopy][MachO] Fix --add-section (details)
  8. [mlir] Stop allowing LLVMType Int arguments for GPULaunchFuncOp. (details)
  9. [SVE] Add new isKnownXX comparison functions to TypeSize (details)
  10. [clang][Sema] Use enumerator instead of hard-coded constant (details)
  11. [unittests] Use std::make_tuple to make some toolchains happy again (details)
  12. [llvm] Use instead of  in IRSimilarityIdentifierTest.cpp. (details)
  13. [MLIR][docs] Fix typos (details)
  14. [clangd] Reorder a little bit of init code. NFC (details)
  15. [asan][test] Disable malloc-no-intercept.c on Solaris (details)
  16. [SCEV] Use loop guard info when computing the max BE taken count in howFarToZero. (details)
  17. [llvm-readobj] - Fix a warning. (details)
  18. [llvm-readelf/obj] - Stop printing wrong addresses for arm32 unwind info for non-relocatable objects. (details)
  19. Use different name for auto variable (details)
  20. [lld][ELF][test] Add a couple of test cases for LTO behaviour (details)
  21. [NFC][Docs] fix clang-docs compilation (details)
  22. [llvm-objcopy][NFC] refactor error handling. part 1. (details)
  23. [APFloat] add tests for convert of NAN; NFC (details)
  24. [flang][driver] Remove unnecessary includes in the unittest (NFC) (details)
  25. [flang] [OpenMP 4.5] Adding lit test cases for OpenMP Constructs. (details)
  26. Fix a builtbot failure after 3ed04f93e30121867a813a220452b97aebeb1730. (details)
  27. [Support] On Windows, ensure abort() can be catched several times in a row with CrashRecoveryContext (details)
  28. [lit] Support running tests on Windows without GnuWin32 (details)
  29. [Support] On Unix, let the CrashRecoveryContext return the signal code (details)
  30. [ARM] Check for LSTP side-effects. (details)
  31. [ARM] LowoverheadLoops: add an option to disable tail-predication (details)
  32. [AArch64] Regenerate dag-combine-mul-shl.ll checks (details)
  33. Recommit "[CUDA][HIP] Defer overloading resolution diagnostics for host device functions" (details)
  34. Improve 723fea23079f9c85800e5cdc90a75414af182bfd - Silence 'warning: unused variable' when compiling with Clang 10.0 (details)
  35. Fix f5314d15af4f4514103ea12c74cb208538b8bef5 - [Support] On Unix, let the CrashRecoveryContext return the signal code (details)
  36. [MLIR] Normalize memrefs in LoadOp and StoreOp of Standard Ops (details)
  37. [NFC][RISCV][builtins] Remove some hard-coded values from i-cache clear routine (details)
  38. lld: Try to fix check-lld on incremental builds after 8f2c31f22b974da (details)
  39. [InstCombine] regenerate test checks; NFC (details)
  40. [PhaseOrdering] move an 'opt' test from x86 codegen; NFC (details)
  41. [PhaseOrdering] move test with target requirement to x86 dir (details)
  42. [MLIR][SPIRV] Fixed dialect loading in deserialization (details)
  43. OpaquePtr: Add helpers for sret to mirror byval (details)
  44. IR: Have byref imply dereferenceable (details)
  45. [AMDGPU] Fix v3f16 handling for getresinfo (details)
  46. [AMDGPU] Use cast instead of dyn_cast (details)
  47. [RegisterCoalescer] Fix IMPLICIT_DEF init removal for a register on joining (details)
  48. [NFC][ARM] Remove dead loop. (details)
  49. [OpenMP] Introduce GOMP teams support in runtime (details)
  50. [OpenMP] Introduce GOMP mutexinoutset in the runtime (details)
  51. [OpenMP] Introduce GOMP taskwait depend in the runtime (details)
  52. [OpenMP] Fix if0 task with dependencies in the runtime (details)
  53. [X86][SSE] combineVectorTruncation - enable (pre-SSSE3) vXi16->vXi8 truncation. (details)
  54. [clang] use string tables for static diagnostic descriptions (details)
  55. Sema: add support for `__attribute__((__swift_newtype__))` (details)
  56. [lldb/examples] Add missing declaration in heap.py (details)
Commit 99edb9b79c46706a41921c4edb1b849c1a618d26 by andrzej.warzynski
[flang][driver] Fix options flag in the frontend driver

In the frontend driver we should be using FC1Option (frontend driver
options) instead of FlangOption (flang driver options).

Differential Revision: https://reviews.llvm.org/D88108
The file was modifiedflang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
Commit 7a6627b83539cc3b7970764e96dcfc2c9607b47f by kiran.chandramohan
[OpenMP][MLIR] Add assembly format for master op

Reviewed By: SouraVX, kiranktp

Differential Revision: https://reviews.llvm.org/D87549
The file was modifiedmlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
The file was modifiedmlir/test/Dialect/OpenMP/ops.mlir
Commit 2f90e01a963acc1a4db2fbdd1c7fcf1433955744 by andrzej.warzynski
[flang][driver] Add missing dependency in CMake files

The Flang driver depends on libclangBasic. This means, among other
things, that some of the tablegen files (e.g. diagnostic definitions)
need to be generated before various libclangBasic header files can be
included (e.g. DiagnosticIDs.h). If we are lucky, libclangBasic is
indeed built before various flang driver libraries that depend on it
are. This patch makes sure that this is deterministic - i.e.
libclangBasic is built before the Flang driver libraries are.

Differential Revision: https://reviews.llvm.org/D88110
The file was modifiedflang/lib/Frontend/CMakeLists.txt
The file was modifiedflang/lib/FrontendTool/CMakeLists.txt
Commit 27da2875070ac00f6cd9f8040c6f994aca915406 by andrzej.warzynski
[flang][NFC] Fix CMake variable name in README.md

The CMake variable for the new flang driver is FLANG_BUILD_NEW_DRIVER
rather than BUILD_FLANG_NEW_DRIVER.
The file was modifiedflang/README.md
Commit 64168c6d996b6fdd017488785e0e9ce5ce05be54 by kadircet
[clangd] Disable suffix matching fallback for C during include insertion

Clangd currently doesn't respect language and breaks the builds with
include insertion for C. This patch aims to stop the bleeding by not mapping
back to CPP standard library headers.

Improves https://github.com/clangd/clangd/issues/376.

Differential Revision: https://reviews.llvm.org/D88144
The file was modifiedclang-tools-extra/clangd/unittests/CanonicalIncludesTests.cpp
The file was modifiedclang-tools-extra/clangd/index/CanonicalIncludes.cpp
Commit 98756d865b696bece858ff0832ed3687b6b8ba4b by sam.mccall
[clangd] Fix comment. NFC
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit e60a760b7da970b6eeabc26faa9e065ec7cec1a8 by alexshap
[llvm-objcopy][MachO] Fix --add-section

This diff fixes --add-section functionality and simplifies the tests organization.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D87497
The file was addedllvm/test/tools/llvm-objcopy/MachO/add-section-error.test
The file was removedllvm/test/tools/llvm-objcopy/MachO/add-section.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
The file was addedllvm/test/tools/llvm-objcopy/MachO/add-section-32.test
The file was addedllvm/test/tools/llvm-objcopy/MachO/add-section-64.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
Commit 56ffb8d1697932c1097fba3315dba6d9e55b7bb8 by pifon
[mlir] Stop allowing LLVMType Int arguments for GPULaunchFuncOp.

Conversion to LLVM becomes confusing and incorrect if someone tries to lower
STD -> LLVM and only then GPULaunchFuncOp to LLVM separately. Although it is
technically allowed now, it works incorrectly because of the argument
promotion. The correct way to use this conversion pattern is to add to the
STD->LLVM patterns before running the pass.

Differential Revision: https://reviews.llvm.org/D88147
The file was modifiedmlir/include/mlir/Dialect/GPU/GPUOps.td
The file was modifiedmlir/test/Conversion/GPUCommon/lower-launch-func-to-gpu-runtime-calls.mlir
Commit 4035cb7ac5755357222b6a83d76bdc4c2d718c54 by david.sherwood
[SVE] Add new isKnownXX comparison functions to TypeSize

This patch introduces four new comparison functions:

  isKnownLT, isKnownLE, isKnownGT, isKnownGE

that return true if we know at compile time that a particular
condition is met, i.e. that one size is definitely greater than
another. The existing operators <,>,<=,>= remain in the code for
now, but over time we would like to remove them and change the
code to use the isKnownXY routines instead. These functions do
not assert like the existing operators because the caller is
expected to properly deal with cases where we return false by
analysing the scalable properties. I've made more of an effort
to deal with cases where there are mixed comparisons, i.e. between
fixed width and scalable types.

I've also added some knownBitsXY routines to the EVT and MVT
classes that call the equivalent TypeSize::isKnownXY routines.
I've changed the existing bitsXY functions to call their knownBitsXY
equivalents and added asserts that the scalable properties match.
Again, over time we expect to migrate callers to use knownBitsXY
and make the code more aware of the scalable nature of the sizes.

Differential revision: https://reviews.llvm.org/D88098
The file was modifiedllvm/include/llvm/Support/TypeSize.h
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.h
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
Commit 8cc842a95072aaa87b5067a12aa9ef5b3ac8e592 by mikhail.maltsev
[clang][Sema] Use enumerator instead of hard-coded constant

Sema::DiagnoseSwiftName uses the constant 12 instead of the
corresponding enumerator ExpectedFunctionWithProtoType. This is
fragile and will fail if a new value gets added in the middle of the
enum.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D88164
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
Commit a1217620a87f66616c15e869d56783ba18e51b12 by mikael.holmen
[unittests] Use std::make_tuple to make some toolchains happy again

My toolchain stopped working (LLVM 8.0, libstdc++ 5.4.0) after 577adda:

06:25:37 ../unittests/Support/Path.cpp:91:7: error: chosen constructor is explicit in copy-initialization
06:25:37       {"", false, false},  {"/", true, true},      {"/foo", true, true},
06:25:37       ^~~~~~~~~~~~~~~~~~
06:25:37 /proj/flexasic/app/llvm/8.0/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../../../../include/c++/5.4.0/tuple:479:19: note: explicit constructor declared here
06:25:37         constexpr tuple(_UElements&&... __elements)
06:25:37                   ^

This commit adds explicit calls to std::make_tuple to work around
the problem.
The file was modifiedllvm/unittests/Support/Path.cpp
Commit a90d72127a814ea242227456be711aca07cc83a6 by pifon
[llvm] Use instead of  in IRSimilarityIdentifierTest.cpp.
The file was modifiedllvm/unittests/Analysis/IRSimilarityIdentifierTest.cpp
Commit 5ad06e43992a766fe048a1b964fd6fd1f10ade71 by georgemitenk0v
[MLIR][docs] Fix typos

Fixed typos in SPIR-V to LLVM manual.

Reviewed By: georgemitenkov

Differential Revision: https://reviews.llvm.org/D88202
The file was modifiedmlir/docs/SPIRVToLLVMDialectConversion.md
Commit 00e05b12c76c396688cd8d4caac09a2e96851fd9 by sam.mccall
[clangd] Reorder a little bit of init code. NFC

This makes it possible to do something else (run checks) instead of
starting the server, with all config applied.
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
Commit 15c9af5618c8c4a810994df53543af9060086a8e by ro
[asan][test] Disable malloc-no-intercept.c on Solaris

`TestCases/malloc-no-intercept.c` `FAIL`s on Solaris/x86, e.g. with
`-Dtestfunc=mallinfo`:

  /usr/bin/ld: /tmp/malloc-no-intercept-586529.o: in function `main':
  /vol/llvm/src/llvm-project/dist/compiler-rt/test/asan/TestCases/malloc-no-intercept.c:30: undefined reference to `nonexistent_function'
  clang-12: error: linker command failed with exit code 1 (use -v to see invocation)

This is not surprising, actually:

- `mallinfo` and `mallopt` only exist in `libmalloc`
- `pvalloc` doesn't exist all all
- `cfree` does exist in `libc`, but isn't declared in any public header and
  the OpenSolaris sources reveal that it has a different signature than on
  Linux
- only `memalign` is a public interface

To avoid this, this patch disables the interceptors for all but `meminfo`.
Additionally, the test is marked `UNSUPPORTED` on Solaris since the
`memalign` and `cfree` variants **do** link on Solaris.

Tested on `amd64-pc-solaris2.11`.

Differential Revision: https://reviews.llvm.org/D87898
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
The file was modifiedcompiler-rt/test/asan/TestCases/malloc-no-intercept.c
Commit d4ddf63fc40cfbbc348adcc45cdc6f6d78268c5c by flo
[SCEV] Use loop guard info when computing the max BE taken count in howFarToZero.

For some expressions, we can use information from loop guards when
we are looking for a maximum. This patch applies information from
loop guards to the expression used to compute the maximum backedge
taken count in howFarToZero. It currently replaces an unknown
expression X with UMin(X, Y), if the loop is guarded by
X ult Y.

This patch is minimal in what conditions it applies, and there
are a few TODOs to generalize.

This partly addresses PR40961. We will also need an update to
LV to address it completely.

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D67178
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/pr36032.ll
The file was modifiedllvm/unittests/Analysis/ScalarEvolutionTest.cpp
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 5bddaf6dbf77085863346d3171023e30972b7323 by grimar
[llvm-readobj] - Fix a warning.

In a post review comments for D88097 it was mentioned that code
triggers bunch of warnings of the form:

llvm/tools/llvm-readobj/ELFDumper.cpp:5299:28: warning: loop variable 'Note' is always a copy because
the range of type 'iterator_range<llvm::object::ELFFile<llvm::object::ELFType<llvm::support::big, true> >::Elf_Note_Iterator>'
(aka 'iterator_range<Elf_Note_Iterator_Impl<ELFType<(llvm::support::endianness)0U, true> > >') does not return a reference [-Wrange-loop-analysis]
      for (const Elf_Note &Note : this->Obj.notes(P, Err))

It happens because Elf_Note is always copied here:

Elf_Note_Impl<ELFT> operator*() const {
  assert(Nhdr && "dereferenced ELF note end iterator");
  return Elf_Note_Impl<ELFT>(*Nhdr);
}

This patch fixes the issue by removing a reference.
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit bb0597067d1e7410e67d8c7d8a4c0ec9e6b26cd0 by grimar
[llvm-readelf/obj] - Stop printing wrong addresses for arm32 unwind info for non-relocatable objects.

This is the first patch for https://bugs.llvm.org/show_bug.cgi?id=47581.

Currently -u does not compute function addresses correctly and
dumps broken addresses for non-relocatable objects.

ARM spec says:
"An index table entry consists of 2 words.
The first word contains a prel31 offset (see Relocations) to the start of a function, with bit 31 clear."
...
"The relocated 31 bits form a place-relative signed offset to the referenced entity.
For brevity, this document will refer to the results of these relocations as "prel31 offsets"."

(https://developer.arm.com/documentation/ihi0038/c/?lang=en#index-table-entries)
(https://developer.arm.com/documentation/ihi0038/c/?lang=en#relocations)

Currently we use an address of the SHT_ARM_EXIDX section instead of an address of an entry
in computations. As a result we compute an offset that is not really "place-relative",
but section relative, what is wrong.

The patch fixes this issue.

Differential revision: https://reviews.llvm.org/D88076
The file was modifiedllvm/tools/llvm-readobj/ARMEHABIPrinter.h
The file was addedllvm/test/tools/llvm-readobj/ELF/ARM/unwind-non-relocatable.test
Commit 590cc068c160f3b623d47fb34fd1d26848cb0e0a by sepavloff
Use different name for auto variable

Without this change GCC 5.4.0 failed to compile JSON.cpp with the error:

    .../llvm-project/llvm/lib/Support/JSON.cpp: In lambda function:
    .../llvm-project/llvm/lib/Support/JSON.cpp:291:29: error: use of 'V' before deduction of 'auto'
           for (const auto &V : *V.getAsArray())
The file was modifiedllvm/lib/Support/JSON.cpp
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/reproduce-lto.s
The file was modifiedlld/test/ELF/lto/weak.ll
Commit 4e534900476d2a5c620e74ddb9c9e7d321e6d443 by development
[NFC][Docs] fix clang-docs compilation
The file was modifiedclang/docs/analyzer/checkers.rst
The file was modifiedclang/include/clang/Basic/AttrDocs.td
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/MachOReader.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.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-simd02.f90
The file was addedflang/test/Semantics/omp-parallell01.f90
The file was addedflang/test/Semantics/omp-do09.f90
The file was addedflang/test/Semantics/omp-do04.f90
The file was addedflang/test/Semantics/omp-single02.f90
The file was addedflang/test/Semantics/omp-workshare01.f90
The file was addedflang/test/Semantics/omp-do10.f90
The file was addedflang/test/Semantics/omp-do05.f90
The file was addedflang/test/Semantics/omp-taskloop03.f90
The file was addedflang/test/Semantics/omp-taskloop01.f90
The file was addedflang/test/Semantics/omp-simd01.f90
The file was addedflang/test/Semantics/omp-simd03.f90
The file was addedflang/test/Semantics/omp-do07.f90
The file was addedflang/test/Semantics/omp-parallell02.f90
The file was addedflang/test/Semantics/omp-do01.f90
The file was addedflang/test/Semantics/omp-do06.f90
The file was addedflang/test/Semantics/omp-workshare02.f90
The file was addedflang/test/Semantics/omp-sections01.f90
The file was addedflang/test/Semantics/omp-do03.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-do08.f90
The file was addedflang/test/Semantics/omp-task01.f90
The file was addedflang/test/Semantics/omp-do02.f90
The file was addedflang/test/Semantics/omp-single01.f90
The file was addedflang/test/Semantics/omp-taskloop-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/unittests/Support/CrashRecoveryTest.cpp
The file was modifiedllvm/lib/Support/CrashRecoveryContext.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/unittests/Support/CrashRecoveryTest.cpp
The file was modifiedllvm/lib/Support/Windows/Signals.inc
The file was modifiedllvm/lib/Support/CrashRecoveryContext.cpp
The file was modifiedllvm/include/llvm/Support/Signals.h
The file was modifiedllvm/lib/Support/Unix/Signals.inc
The file was modifiedclang/tools/driver/driver.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/test/CodeGen/Thumb2/mve-gather-scatter-tailpred.ll
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-after-dlstp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/iv-two-vcmp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/lstp-insertion-position.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 modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
The file was modifiedllvm/lib/Target/ARM/MVETailPredication.cpp
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-disabled-in-loloops.ll
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/Driver/Options.td
The file was modifiedclang/include/clang/Basic/DiagnosticDriver.h
The file was modifiedclang/include/clang/Basic/DiagnosticAST.h
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
The file was modifiedclang/test/TableGen/DiagnosticBase.inc
The file was modifiedclang/include/clang/Basic/DiagnosticRefactoring.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaAttr.cpp
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/lib/Sema/SemaSYCL.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSerialization.h
The file was modifiedclang/include/clang/Basic/DiagnosticSema.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/utils/TableGen/ClangDiagnosticsEmitter.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticFrontend.h
The file was modifiedclang/include/clang/Basic/DiagnosticCrossTU.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang-tools-extra/clangd/Diagnostics.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/tools/diagtool/DiagnosticNames.cpp
The file was addedclang/test/TableGen/deferred-diag.td
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/lib/Sema/SemaTemplateInstantiate.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/AnalysisBasedWarnings.cpp
The file was modifiedclang/include/clang/Basic/Diagnostic.td
The file was modifiedclang/include/clang/Basic/DiagnosticParse.h
The file was modifiedclang/include/clang/Basic/DiagnosticComment.h
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/lib/Sema/SemaTemplateVariadic.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticLex.h
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticAnalysis.h
The file was modifiedclang/include/clang/Basic/DiagnosticIDs.h
The file was modifiedclang/lib/Basic/DiagnosticIDs.cpp
The file was modifiedclang/lib/Sema/SemaCUDA.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
The file was addedclang/test/SemaCUDA/deferred-oeverload.cu
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/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/test/Transforms/normalize-memrefs-ops.mlir
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/Transforms/Scalar/MemCpyOptimizer.cpp
The file was modifiedllvm/include/llvm/IR/Function.h
The file was modifiedllvm/lib/IR/Function.cpp
The file was modifiedllvm/include/llvm/IR/Argument.h
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
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/value-simplify.ll
The file was modifiedllvm/lib/IR/Value.cpp
The file was modifiedllvm/test/Transforms/Attributor/readattrs.ll
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
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/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.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_gsupport.cpp
The file was addedopenmp/runtime/test/teams/teams.c
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/src/kmp_ftn_os.h
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 addedopenmp/runtime/test/tasking/omp50_task_depend_mtx3.c
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was modifiedopenmp/runtime/src/i18n/en_US.txt
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 addedopenmp/runtime/test/tasking/omp50_taskwait_depend.c
The file was modifiedopenmp/runtime/src/kmp_ftn_os.h
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
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 addedopenmp/runtime/test/tasking/taskdep_if0.c
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was addedopenmp/runtime/test/tasking/taskdep_if0_2.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/test/CodeGen/X86/vector-reduce-and-bool.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-or-bool.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-xor-bool.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-trunc.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc-math.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/include/clang/Basic/AttrDocs.td
The file was modifiedclang/include/clang/Parse/Parser.h
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was addedclang/test/AST/attr-swift_newtype.m
The file was addedclang/test/SemaObjC/attr-swift_newtype.m
The file was modifiedclang/lib/Parse/ParseDecl.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
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

Summary

  1. clang-x86-ninja-win10 enabling LLD (details)
Commit b1195d9085987c09d9c1ada0b47122d6bfc00771 by kuhnel
clang-x86-ninja-win10 enabling LLD
The file was modifiedbuildbot/osuosl/master/config/builders.py