Started 3 mo 29 days ago
Took 15 hr on green-dragon-08

Failed Build #5339 (May 25, 2019 1:54:10 AM)

Revisions
  • http://llvm.org/svn/llvm-project/llvm/trunk : 361691
  • http://llvm.org/svn/llvm-project/cfe/trunk : 361686
  • http://llvm.org/svn/llvm-project/compiler-rt/trunk : 361579
  • http://llvm.org/svn/llvm-project/debuginfo-tests/trunk : 346271
  • http://llvm.org/svn/llvm-project/libcxx/trunk : 361594
  • http://llvm.org/svn/llvm-project/clang-tools-extra/trunk : 361687
Changes
  1. [X86FixupLEAs] Turn optIncDec into a generic two address LEA optimizer. Support LEA64_32r properly.

    INC/DEC is really a special case of a more generic issue. We should also turn leas into add reg/reg or add reg/imm regardless of the slow lea flags.

    This also supports LEA64_32 which has 64 bit input registers and 32 bit output registers. So we need to convert the 64 bit inputs to their 32 bit equivalents to check if they are equal to base reg.

    One thing to note, the original code preserved the kill flags by adding operands to the new instruction instead of using addReg. But I think tied operands aren't supposed to have the kill flag set. I dropped the kill flags, but I could probably try to preserve it in the add reg/reg case if we think its important. Not sure which operand its supposed to go on for the LEA64_32r instruction due to the super reg implicit uses. Though I'm also not sure those are needed since they were probably just created by an INSERT_SUBREG from a 32-bit input.

    Differential Revision: https://reviews.llvm.org/D61472 (detail/ViewSVN)
    by ctopper
  2. [X86] Add zero idioms to the haswell, broadwell, and skylake schedule models. Add 256-bit fp xor to sandybridge zero idioms

    This copies the Sandy Bridge zero idiom support to later CPUs. Adding the AVX2 and AVX512F/VL instructions as appropriate.

    Differential Revision: https://reviews.llvm.org/D62360 (detail/ViewSVN)
    by ctopper
  3. [X86][llvm-mca] Add zero idiom tests for Intel CPUs. NFC

    This pre-commits tests for D62360 (detail/ViewSVN)
    by ctopper
  4. Revert r361644, "[AMDGPU] Divergence driven ISel. Assign register class for cross block values according to the divergence."

    Broke sanitizer bots:
    http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/21694/steps/bootstrap%20clang/logs/stdio
    http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/32478/steps/check-llvm%20asan/logs/stdio (detail/ViewSVN)
    by pcc
  5. [clangd] tweaks: Add clangBasic dependency to LINK_LIBS

    This is necessary to make builds with `-DBUILD_SHARED_LIBS=ON` work. (detail/ViewSVN)
    by aheejin
  6. Permit static local structured bindings to be named from arbitrary scopes inside their declaring scope. (detail/ViewSVN)
    by rsmith
  7. Revert "[Analysis] Link library dependencies to Analysis plugins"

    This reverts commit r361340. The following builder has been broken for
    the past few days because of this commit:

    http://green.lab.llvm.org/green/job/clang-stage2-cmake-RgSan/

    Also revert r361399, which was committed to fix r361340. (detail/ViewSVN)
    by ahatanak
  8. Rename clangToolingRefactor to clangToolingRefactoring for consistency with its directory

    See "[cfe-dev] The name of clang/lib/Tooling/Refactoring".

    Differential Revision: https://reviews.llvm.org/D62420 (detail/ViewSVN)
    by nico
  9. llvm-dwarfdump: Don't error on mixed units using/not using str_offsets

    This lead to errors when dumping binaries with v4 and v5 units linked
    together (but could've also errored on v5 units that did/didn't use
    str_offsets).

    Also improves error handling and messages around invalid str_offsets
    contributions. (detail/ViewSVN)
    by dblaikie
  10. [analyzer] Add a prunable note for skipping vbase inits in subclasses.

    When initialization of virtual base classes is skipped, we now tell the user
    about it, because this aspect of C++ isn't very well-known.

    The implementation is based on the new "note tags" feature (r358781).
    In order to make use of it, allow note tags to produce prunable notes,
    and move the note tag factory to CoreEngine.

    Differential Revision: https://reviews.llvm.org/D61817 (detail/ViewSVN)
    by dergachev
  11. [CFG] Add branch to skip vbase inits when they're handled by superclass.

    This patch adds the run-time CFG branch that would skip initialization of
    virtual base classes depending on whether the constructor is called from a
    superclass constructor or not. Previously the Static Analyzer was already
    skipping virtual base-class initializers in such constructors, but it wasn't
    skipping their arguments and their potential side effects, which was causing
    pr41300 (and was generally incorrect). The previous skipping behavior is
    now replaced with a hard assertion that we're not even getting there due
    to how our CFG works.

    The new CFG element is under a CFG build option so that not to break other
    consumers of the CFG by this change. Static Analyzer support for this change
    is implemented.

    Differential Revision: https://reviews.llvm.org/D61816 (detail/ViewSVN)
    by dergachev
  12. Fix crash deserializing a CUDAKernelCallExpr with a +Asserts binary.

    The assertion in setConfig read from the (uninitialized) CONFIG
    expression. (detail/ViewSVN)
    by rsmith
  13. [GlobalISel][AArch64] Make FP constraint checks consider possible use/def banks

    In a few places in getInstrMapping, we check if use/def instructions for the
    instruction we're mapping have floating point constraints.

    We can improve this check and reduce the number of copies in GISel-compiled code
    if we make a couple observations:

    - For a def instruction, it only matters if the def instruction must always
      output a value stored on a FPR

    - For a use instruction, it only matters if the use instruction must always
      only take in values stored in FPRs

    This adds two new functions:

    - onlyUsesFP
    - onlyDefinesFP

    Then we can use those when we're checking the uses/defs instead.

    Without this patch, the load, unmerge, store, and select in the added test
    would have unnecessary copies.

    Differential Revision: https://reviews.llvm.org/D62426 (detail/ViewSVN)
    by paquette
  14. [GlobalISel][AArch64] NFC: Factor out HasFPConstraints into a proper function

    Factor it out into a function, and replace places where we had the same check
    with the new function.

    Differential Revision: https://reviews.llvm.org/D62421 (detail/ViewSVN)
    by paquette
  15. Mark tests as x86. (detail/ViewSVN)
    by asbirlea
  16. [dwarfdump] Add flag to limit the number of parents DIEs

    This adds `-parent-recurse-depth` which limits the number of parent DIEs
    being dumped.

    Differential revision: https://reviews.llvm.org/D62359 (detail/ViewSVN)
    by Jonas Devlieghere
  17. Default arguments are potentially constant evaluated.

    We need to eagerly instantiate constexpr functions used in them even if
    the default argument is never actually used, because we might evaluate
    portions of it when performing semantic checks. (detail/ViewSVN)
    by rsmith
  18. Implement call lowering without parameters on AIX

    Summary:dd
    This patch implements call lowering for calls without parameters
    on AIX as initial support.

    Reviewers: sfertile, hubert.reinterpretcast, aheejin, efriedma

    Differential Revision: https://reviews.llvm.org/D61948 (detail/ViewSVN)
    by jasonliu
  19. Refactor use-marking to better match standard terminology. No
    functionality change intended. (detail/ViewSVN)
    by rsmith
  20. [GlobalISel][AArch64] Improve register bank mappings for G_SELECT

    The fcsel and csel instructions differ in only the register banks they work on.

    So, they're entirely interchangeable otherwise.

    With this in mind, this does two things:

    - Teach AArch64RegisterBankInfo to consider the inputs to G_SELECT as well as
      the outputs.
    - Teach it to choose the best register bank mapping based off the constraints
      of the inputs and outputs.

    The "best" in this case means the one that requires the smallest number of
    copies to properly emit a fcsel/csel.

    For example, if the inputs are all already going to be on FPRs, we should
    emit a fcsel, even if the output is a GPR. This costs one copy to produce the
    result, but saves us from copying the inputs into GPRs.

    Also update the regbank-select.mir to check that we end up with the right
    select instruction.

    Differential Revision: https://reviews.llvm.org/D62267 (detail/ViewSVN)
    by paquette
  21. [Analyzer] Checker for non-determinism caused by iteration of unordered container of pointers

    Summary: Added a checker for non-determinism caused by iterating unordered containers like std::unordered_set containing pointer elements.

    Reviewers: NoQ, george.karpenkov, whisperity, Szelethus, baloghadamsoftware

    Reviewed By: Szelethus

    Subscribers: mgorny, xazax.hun, baloghadamsoftware, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp, jdoerfert, Charusso, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D59279 (detail/ViewSVN)
    by mgrang
  22. [cmake] Remove old unused version of FindZ3.cmake from clang [NFC]

    Summary: This file was moved to llvm in D54978, r356929, but the old
    file was never removed.

    Reviewed By: beanz

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D62343 (detail/ViewSVN)
    by dhinton
  23. Adding an explicit triple to this test to appease build bots. (detail/ViewSVN)
    by aaronballman
  24. [AArch64] check for INLINEASM_BR along w/ INLINEASM

    Summary:
    It looks like since INLINEASM_BR was created off of INLINEASM, a few
    checks for INLINEASM needed to be updated to check for either case.

    pr/41999

    Reviewers: t.p.northover, peter.smith

    Reviewed By: peter.smith

    Subscribers: craig.topper, javed.absar, kristof.beyls, hiraditya, llvm-commits, peter.smith, srhines

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D62402 (detail/ViewSVN)
    by nickdesaulniers
  25. Add JSON dumping tests for ObjC statements; add support for dumping @catch catch-all statements. (detail/ViewSVN)
    by aaronballman
  26. [ARM] additionally check for ARM::INLINEASM_BR w/ ARM::INLINEASM

    Summary:
    We were observing failures for arm32 allyesconfigs of the Linux kernel
    with the asm goto Clang patch, where ldr's were being generated to
    offsets too far away to encode in imm12.

    It looks like since INLINEASM_BR was created off of INLINEASM, a few
    checks for INLINEASM needed to be updated to check for either case.

    pr/41999

    Link: https://github.com/ClangBuiltLinux/linux/issues/490

    Reviewers: peter.smith, kristof.beyls, ostannard, rengolin, t.p.northover

    Reviewed By: peter.smith

    Subscribers: jyu2, javed.absar, hiraditya, llvm-commits, nathanchance, craig.topper, kees, srhines

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D62400 (detail/ViewSVN)
    by nickdesaulniers
  27. [OpenMP] Add test for requires and unified shared memory clause with declare target link

    Summary:
    This patch adds a test for requires with unified share memory clause when a declare target link is present.

    This test needs to go in prior to changes to declare target link for comparison purposes.

    Reviewers: ABataev, caomhin

    Reviewed By: ABataev

    Subscribers: guansong, jdoerfert, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D62407 (detail/ViewSVN)
    by gbercea
  28. AMDGPU: Activate all lanes when spilling CSR VGPR for SGPR spills

    If some lanes weren't active on entry to the function, this could
    clobber their VGPR values. (detail/ViewSVN)
    by arsenm
  29. [NewPassManager] Add tuning option: LoopUnrolling [clang-change]

    Summary:
    Use CodeGenOpts's setting for loop unrolling.
    [to be coupled with D61618]

    Reviewers: chandlerc

    Subscribers: jlebar, dmgreen, cfe-commits, llvm-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D61620 (detail/ViewSVN)
    by asbirlea
  30. Add support for dumping Objective C AST declaration nodes to JSON. (detail/ViewSVN)
    by aaronballman
  31. [WebAssembly] Use "linker" as linker shortname.

    This is in line with other platforms.

    Also, move the single statement methods into the header (also
    in line with other platform).

    Differential Revision: https://reviews.llvm.org/D62406 (detail/ViewSVN)
    by sbc
  32. [ASTImporter] Call to HandleNameConflict in VisitRecordDecl mistakeningly using Name instead of SearchName

    Summary:
    https://reviews.llvm.org/D51633 added error handling to the ASTNodeImporter::VisitRecordDecl for the conflicting names case. This could lead to erroneous return of an error in that case since we should have been using SearchName. Name may be empty in the case where we find the name via D->getTypedefNameForAnonDecl()->getDeclName().

    This fix is very similar to https://reviews.llvm.org/D59665

    Differential Revision: https://reviews.llvm.org/D62352 (detail/ViewSVN)
    by shafik
  33. AMDGPU: Boost inline threshold with addrspacecasted alloca arguments

    This was skipping GetUnderlyingObject for nonprivate addresses, but an
    alloca could also be found through an addrspacecast if it's flat. (detail/ViewSVN)
    by arsenm
  34. [LoopVectorize] update test to be independent of instcombine; NFC

    This is a regression test for vectorization, so remove instcombine
    from the RUN line and adjust the comparison predicates to show what
    the vectorizer is creating rather than how instcombine cleans it up. (detail/ViewSVN)
    by spatel
  35. [clang-tidy] In TransformerClangTidyCheck, require Explanation field.

    Summary:
    In general, the `Explanation` field is optional in `RewriteRule` cases. But,
    because the primary purpose of clang-tidy checks is to provide users with
    diagnostics, we assume that a missing explanation is a bug.  This change adds an
    assertion that checks all cases for an explanation, and updates the code to rely
    on that assertion correspondingly.

    Reviewers: ilya-biryukov

    Subscribers: xazax.hun, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D62340 (detail/ViewSVN)
    by ymandel
  36. [CMake] Fix issues building runtimes

    This resolves two issues:
    (1) LIBCXX_HEADER_DIR is a very misleadingly named variable because it shouldn't be set to the header directory, instead it needs to be the root binary dir.
    (2) If you build runtimes without libcxx, we can't depend on the libcxx header target, so we should instaed refer to it by the variable name which will be unset if libcxx isn't present. (detail/ViewSVN)
    by cbieneman
  37. [CodeComplete] Add whitespace around braces in lambda completions

    This produces nicer output.
    Trivial follow-up to r361461, so sending without review. (detail/ViewSVN)
    by ibiryukov

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17611
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17612
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17613
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17614
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17615
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17616
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17617
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17618
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17619
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17620
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17621
originally caused by:

Started by upstream project Clang Stage 2: cmake, R -g Tsan, using Stage 1 RA build number 17622
originally caused by:

This run spent:

  • 15 hr waiting;
  • 15 hr build duration;
  • 1 day 7 hr total from scheduled to completion.

Identified problems

Regression test failed

This build failed because a regression test in the test suite FAILed. See the test report for details.
Indication 1

Ninja target failed

Below is a link to the first failed ninja target.
Indication 2

Missing test results

The test result file Jenkins is looking for does not exist after the build.
Indication 3

Compile Error

This build failed because of a compile error. Below is a list of all errors in the build log:
Indication 4