FailedChanges

Summary

  1. [lld-macho] Try to fix invalid-stub test on Windows (details)
  2. [AMDGPU] Pre-commit test for D85872 (details)
  3. [lld-macho] Fix invalid-stub test on Windows, take 2 (details)
  4. [HotColdSplit] Fix variable name spelling (details)
  5. [Clang options] Optimize optionMatches() runtime by removing mallocs (details)
  6. Revert "[SCEV] Look through single value PHIs." (details)
  7. [NFC] [PowerPC] Rename SPE strict conversion test (details)
  8. [flang][msvc] Use platform-independent primitives in temporary f18 driver. (details)
  9. [OpenMP] Ensure testing for versions 4.5 and default - Part 1 (details)
  10. [Parser] Suppress -Wempty-translation-unit if this is a header file (details)
  11. [flang] Compilation fix. (details)
  12. [SyntaxTree] Split tests for expressions (details)
  13. [SyntaxTree] Rename tests following `TestSuite_TestCase` + nits (details)
  14. [compiler-rt][asan][test] Skipt sanitizer_common tests on Sparc (details)
  15. [AMDGPU] Fix typo. NFC (details)
  16. [test] XFAIL two tests with inlining debug info issues on Sparc (details)
  17. [InstCombine] Precommit tests for PR47149. (details)
  18. [CodeGen] In narrowExtractedVectorLoad bail out for scalable vectors (details)
Commit 11e2c253ac7993abbe347c048247453e0b423a32 by jezng
[lld-macho] Try to fix invalid-stub test on Windows

Summary: Path separator issues...
The file was modifiedlld/test/MachO/invalid/invalid-stub.s
Commit 2781f3003bab5656d9b0915d3be05d44d738f870 by carl.ritson
[AMDGPU] Pre-commit test for D85872
The file was modifiedllvm/test/CodeGen/AMDGPU/transform-block-with-return-to-epilog.ll
Commit 7d32e6e3f0a94ae65ffc19d3948658365584d048 by jezng
[lld-macho] Fix invalid-stub test on Windows, take 2
The file was modifiedlld/test/MachO/invalid/invalid-stub.s
Commit f902a7eccf30a762d9a533c3884edfb692c26a09 by 1894981+hiraditya
[HotColdSplit] Fix variable name spelling
The file was modifiedllvm/lib/Transforms/IPO/HotColdSplitting.cpp
Commit d54c252bc8a15bc80bb9f0a83b3bebc6d211144a by nadav256
[Clang options] Optimize optionMatches() runtime by removing mallocs

The method optionMatches() constructs 9865 std::string instances when comparing different
options. Many of these instances exceed the size of the internal storage and force memory
allocations. This patch adds an early exit check that eliminates most of the string allocations
while keeping the code simple.

Example inputs:
Prefix: /, Name: Fr
Prefix: -, Name: Fr
Prefix: -, Name: fsanitize-address-field-padding=
Prefix: -, Name: fsanitize-address-globals-dead-stripping
Prefix: -, Name: fsanitize-address-poison-custom-array-cookie
Prefix: -, Name: fsanitize-address-use-after-scope
Prefix: -, Name: fsanitize-address-use-odr-indicator
Prefix: -, Name: fsanitize-blacklist=

Differential Revision: D85538
The file was modifiedllvm/lib/Option/OptTable.cpp
Commit 0581c0b0eeba03da590d1176a4580cf9b9e8d1e3 by tamur
Revert "[SCEV] Look through single value PHIs."

This reverts commit e441b7a7a0a72c28daf5a8e594559c667e5b4534.

This patch causes a compile error in tensorflow opensource project. The stack trace looks like:

Point of crash:
llvm/include/llvm/Analysis/LoopInfoImpl.h : line 35

(gdb) ptype *this
type = const class llvm::LoopBase<llvm::BasicBlock, llvm::Loop> [with BlockT = llvm::BasicBlock, LoopT = llvm::Loop]

(gdb) p *this
$1 = {ParentLoop = 0x0, SubLoops = std::vector of length 0, capacity 0, Blocks = std::vector of length 0, capacity 1,
  DenseBlockSet = {<llvm::SmallPtrSetImpl<llvm::BasicBlock const*>> = {<llvm::SmallPtrSetImplBase> = {<llvm::DebugEpochBase> = {Epoch = 3}, SmallArray = 0x1b2bf6c8, CurArray = 0x1b2bf6c8,
        CurArraySize = 8, NumNonEmpty = 0, NumTombstones = 0}, <No data fields>}, SmallStorage = {0xfffffffffffffffe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, IsInvalid = true}

(gdb) p *this->DenseBlockSet->CurArray
$2 = (const void *) 0xfffffffffffffffe

I will try to get a case from tensorflow or use creduce to get a small case.
The file was modifiedllvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll
The file was modifiedllvm/test/Transforms/LoopStrengthReduce/funclet.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 1ce26c9d658694f640e2b615498f9eeb57612d28 by qiucofan
[NFC] [PowerPC] Rename SPE strict conversion test
The file was removedllvm/test/CodeGen/PowerPC/fp-strict-conv.ll
The file was addedllvm/test/CodeGen/PowerPC/fp-strict-conv-spe.ll
Commit 18e9482e44ed2b59008a8a3b05c6c49ef0243b6d by llvm-project
[flang][msvc] Use platform-independent primitives in temporary f18 driver.

Use functions for process launching, temporary file creation and file deletion from LLVM support library instead of POSIX-specific ones.

This patch is part of the series to [[ http://lists.llvm.org/pipermail/flang-dev/2020-July/000448.html | make flang compilable with MS Visual Studio ]].

Reviewed By: DavidTruby

Differential Revision: https://reviews.llvm.org/D85660
The file was modifiedflang/tools/f18/f18.cpp
The file was modifiedflang/tools/f18-parse-demo/f18-parse-demo.cpp
Commit eaa341fbea961894759355256d25d785509002ef by Saiyedul.Islam
[OpenMP] Ensure testing for versions 4.5 and default - Part 1

Many OpenMP Clang tests do not RUN for version 4.5 and the default
version. This first patch in the series only handles test cases
which do not require any modifications in the CHECK lines after
adding RUN lines for default version.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D84844
The file was modifiedclang/test/OpenMP/parallel_sections_if_messages.cpp
The file was modifiedclang/test/OpenMP/cancel_ast_print.cpp
The file was modifiedclang/test/OpenMP/report_default_DSA.cpp
The file was modifiedclang/test/OpenMP/parallel_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_if_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_for_if_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_num_teams_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_exit_data_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_if_messages.cpp
The file was modifiedclang/test/OpenMP/capturing_in_templates.cpp
The file was modifiedclang/test/OpenMP/task_if_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_default_messages.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/test/OpenMP/task_if_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_if_messages.cpp
The file was modifiedclang/test/OpenMP/cancel_codegen.cpp
The file was modifiedclang/test/OpenMP/parallel_master_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_exit_data_ast_print.cpp
The file was modifiedclang/test/OpenMP/parallel_if_codegen.cpp
The file was modifiedclang/test/OpenMP/target_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/target_update_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_thread_limit_codegen.cpp
The file was modifiedclang/test/OpenMP/target_ast_print.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_reduction_codegen.cpp
The file was modifiedclang/test/OpenMP/target_enter_data_ast_print.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_requires_unified_shared_memory.cpp
The file was modifiedclang/test/OpenMP/target_parallel_if_messages.cpp
The file was modifiedclang/test/OpenMP/cancel_codegen_cleanup.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/test/OpenMP/target_enter_data_if_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_if_messages.cpp
The file was modifiedclang/test/OpenMP/cancel_if_messages.cpp
Commit c286d6fdeeb2b103777d3ae8c9de84937cb51efe by sam.mccall
[Parser] Suppress -Wempty-translation-unit if this is a header file

This is motivated by tooling (clangd, libclang etc) - headers without
declarations are legitimate even if they're not valid TUs.

The other use -x c-header cases (PCH/modules) are nonstandard anyway and this
warning doesn't seem necessary there either.

Differential Revision: https://reviews.llvm.org/D85789
The file was modifiedclang/lib/Parse/Parser.cpp
The file was modifiedclang/test/Parser/empty-translation-unit.c
Commit 8199cd8a550dab8f9b4035d34b7e576892daab09 by llvm-project
[flang] Compilation fix.

unlink() was changed to llvm::sys::fs::remove() in f18.cpp, but the same
change also has to be applied to f18-parse-demo.cpp.
The file was modifiedflang/tools/f18-parse-demo/f18-parse-demo.cpp
Commit d1211fd1ec037f88c2cc855bc850200948c76940 by ecaldas
[SyntaxTree] Split tests for expressions

We do that because:
* Big tests generated big tree dumps that could hardly serve as documentation.
* In most cases the tests didn't share setup, thus there was not much addition in lines of code.

We split tests for:
* `UserDefinedLiteral`
* `NestedBinaryOperator`
* `UserDefinedBinaryOperator`
* `UserDefinedPrefixOperator`
* `QualifiedId`

Differential Revision: https://reviews.llvm.org/D85819
The file was modifiedclang/unittests/Tooling/Syntax/TreeTest.cpp
Commit 833c2b6be26bcdf90aac2f6de6e345bcd858149e by ecaldas
[SyntaxTree] Rename tests following `TestSuite_TestCase` + nits
The file was modifiedclang/unittests/Tooling/Syntax/TreeTest.cpp
Commit 55e472e9dab68c0cb21a65237c5240dfe6105c01 by ro
[compiler-rt][asan][test] Skipt sanitizer_common tests on Sparc

When building on `sparc64-unknown-linux-gnu`, I found that a large number
of `SanitizerCommon-asan-sparc*-Linux` tests were `FAIL`ing, like

   SanitizerCommon-asan-sparc-Linux :: Linux/aligned_alloc-alignment.cpp
  [...]
   SanitizerCommon-asan-sparcv9-Linux :: Linux/aligned_alloc-alignment.cpp
  [...]

many of them due to

  fatal error: error in backend: Function "_Z14User_OnSIGSEGViP9siginfo_tPv": over-aligned dynamic alloca not supported.

which breaks ASan on Sparc.  Currently ASan is only built for the benefit
of `gcc` where it does work.  However, when enabling the compilation in
`compiler-rt` to make certain it continues to build, I missed
`compiler-rt/test/sanitizer_common` when disabling ASan testing on Sparc
(it's not yet enabled on Solaris).

This patch fixes the issue.

Tested on `sparcv9-sun-solaris2.11` with the `sanitizer_comon` testsuite enabled.

Differential Revision: https://reviews.llvm.org/D85732
The file was modifiedcompiler-rt/test/sanitizer_common/CMakeLists.txt
Commit ca227d73e10a99ab1563830eca17b6e8e0a71eae by sebastian.neubauer
[AMDGPU] Fix typo. NFC
The file was modifiedllvm/docs/AMDGPUUsage.rst
Commit 7af4bbb643393a735b1b49d1b9c4f316a4834333 by ro
[test] XFAIL two tests with inlining debug info issues on Sparc

Currently only two test failures remain on Sparc, both
`sparcv9-sun-solaris2.11` and `sparc64-unknown-linux-gnu`:

  LLVM :: DebugInfo/Generic/debug-label-inline.ll
  LLVM :: Linker/subprogram-linkonce-weak.ll

They seem related in that debug info isn't generated for instruction
bundles (like `retl+add` in the delay slot).

I've filed separate bugs for both files (Bug 47129 and 47131), though it's
probably the same issue.

This patch `XFAIL`s the tests.

Tested on `sparcv9-sun-solaris2.11` and `amd64-pc-solaris2.11`.

Differential Revision: https://reviews.llvm.org/D85827
The file was modifiedllvm/test/Linker/subprogram-linkonce-weak.ll
The file was modifiedllvm/test/DebugInfo/Generic/debug-label-inline.ll
Commit 3948341fa5fab2695b0df95edc248fe959e40664 by flo
[InstCombine] Precommit tests for PR47149.
The file was modifiedllvm/test/Transforms/InstCombine/strlen-1.ll
Commit 3ec3fcb97a6b5a42d89032d44d81bbe711d188a4 by david.sherwood
[CodeGen] In narrowExtractedVectorLoad bail out for scalable vectors

In narrowExtractedVectorLoad there is an optimisation that tries to
combine extract_subvector with a narrowing vector load. At the moment
this produces warnings due to the incorrect calls to
getVectorNumElements() for scalable vector types. I've got this
working for scalable vectors too when the extract subvector index
is a multiple of the minimum number of elements. I have added a
new variant of the function:

  MachineFunction::getMachineMemOperand

that copies an existing MachineMemOperand, but replaces the pointer
info with a null version since we cannot currently represent scaled
offsets.

I've added a new test for this particular case in:

  CodeGen/AArch64/sve-extract-subvector.ll

Differential Revision: https://reviews.llvm.org/D83950
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/AArch64/sve-extract-subvector.ll
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp