Started 26 days ago
Took 4 hr 12 min on green-dragon-02

Failed Build #14723 (Sep 18, 2019 9:22:50 AM)

Revisions
  • http://llvm.org/svn/llvm-project/llvm/trunk : 372234
  • http://llvm.org/svn/llvm-project/cfe/trunk : 372229
  • http://llvm.org/svn/llvm-project/compiler-rt/trunk : 372205
  • http://llvm.org/svn/llvm-project/zorg/trunk : 371835
  • http://llvm.org/svn/llvm-project/libcxx/trunk : 372034
  • http://llvm.org/svn/llvm-project/clang-tools-extra/trunk : 372206
Changes
  1. [Alignment][NFC] Align(1) to Align::None() conversions

    Summary:
    This is patch is part of a series to introduce an Alignment type.
    See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
    See this patch for the introduction of the type: https://reviews.llvm.org/D64790

    Reviewers: courbet

    Subscribers: hiraditya, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D67715 (detail)
    by gchatelet
  2. [SampleFDO] Minimize performance impact when profile-sample-accurate
    is enabled.

    We can save memory and reduce binary size significantly by enabling
    ProfileSampleAccurate. However when ProfileSampleAccurate is true,
    function without sample will be regarded as cold and this could
    potentially cause performance regression.

    To minimize the potential negative performance impact, we want to be
    a little conservative here saying if a function shows up in the profile,
    no matter as outline instance, inline instance or call targets, treat
    the function as not being cold. This will handle the cases such as most
    callsites of a function are inlined in sampled binary (thus outline copy
    don't get any sample) but not inlined in current build (because of source
    code drift, imprecise debug information, or the callsites are all cold
    individually but not cold accumulatively...), so that the outline function
    showing up as cold in sampled binary will actually not be cold after current
    build. After the change, such function will be treated as not cold even
    profile-sample-accurate is enabled.

    At the same time we lower the hot criteria of callsiteIsHot check when
    profile-sample-accurate is enabled. callsiteIsHot is used to determined
    whether a callsite is hot and qualified for early inlining. When
    profile-sample-accurate is enabled, functions without profile will be
    regarded as cold and much less inlining will happen in CGSCC inlining pass,
    so we can worry less about size increase and be aggressive to allow more
    early inlining to happen for warm callsites and it is helpful for performance
    overall.

    Differential Revision: https://reviews.llvm.org/D67561 (detail)
    by wmi
  3. [Alignment][NFC] Remove LogAlignment functions

    Summary:
    This is patch is part of a series to introduce an Alignment type.
    See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
    See this patch for the introduction of the type: https://reviews.llvm.org/D64790

    Reviewers: courbet

    Subscribers: arsenm, sdardis, nemanjai, jvesely, nhaehnle, hiraditya, kbarton, jrtc27, MaskRay, atanasyan, jsji, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D67620 (detail)
    by gchatelet
  4. [Alignment][NFC] Use Align::None instead of 1

    Summary:
    This is patch is part of a series to introduce an Alignment type.
    See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html
    See this patch for the introduction of the type: https://reviews.llvm.org/D64790

    Reviewers: courbet

    Subscribers: sdardis, nemanjai, hiraditya, kbarton, jrtc27, MaskRay, atanasyan, jsji, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D67704 (detail)
    by gchatelet
  5. Recommit -r372180

    Commit message below, original caused the sphinx build bot to fail, this
    one should fix it.

    Create UsersManual section entitled 'Controlling Floating Point
    Behavior'

    Create a new section for documenting the floating point options. Move
    all the floating point options into this section, and add new entries
    for the floating point options that exist but weren't previously
    described in the UsersManual.

    Patch By: mibintc
    Differential Revision: https://reviews.llvm.org/D67517 (detail)
    by erichkeane
  6. Revert "[AArch64][DebugInfo] Do not recompute CalleeSavedStackSize"

    Summary:
    This reverts commit r372204.

    This change causes build bot failures under msan:
    http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/35236/steps/check-llvm%20msan/logs/stdio:

    ```
    FAIL: LLVM :: DebugInfo/AArch64/asan-stack-vars.mir (19531 of 33579)
    ******************** TEST 'LLVM :: DebugInfo/AArch64/asan-stack-vars.mir' FAILED ********************
    Script:
    --
    : 'RUN: at line 1';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llc -O0 -start-before=livedebugvalues -filetype=obj -o - /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/DebugInfo/AArch64/asan-stack-vars.mir | /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llvm-dwarfdump -v - | /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/DebugInfo/AArch64/asan-stack-vars.mir
    --
    Exit Code: 2

    Command Output (stderr):
    --
    ==62894==WARNING: MemorySanitizer: use-of-uninitialized-value
        #0 0xdfcafb in llvm::AArch64FrameLowering::resolveFrameOffsetReference(llvm::MachineFunction const&, int, bool, unsigned int&, bool, bool) const /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1658:3
        #1 0xdfae8a in resolveFrameIndexReference /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1580:10
        #2 0xdfae8a in llvm::AArch64FrameLowering::getFrameIndexReference(llvm::MachineFunction const&, int, unsigned int&) const /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1536
        #3 0x46642c1 in (anonymous namespace)::LiveDebugValues::extractSpillBaseRegAndOffset(llvm::MachineInstr const&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/LiveDebugValues.cpp:582:21
        #4 0x4647cb3 in transferSpillOrRestoreInst /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/LiveDebugValues.cpp:883:11
        #5 0x4647cb3 in process /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/LiveDebugValues.cpp:1079
        #6 0x4647cb3 in (anonymous namespace)::LiveDebugValues::ExtendRanges(llvm::MachineFunction&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/LiveDebugValues.cpp:1361
        #7 0x463ac0e in (anonymous namespace)::LiveDebugValues::runOnMachineFunction(llvm::MachineFunction&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/LiveDebugValues.cpp:1415:18
        #8 0x4854ef0 in llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:73:13
        #9 0x53b0b01 in llvm::FPPassManager::runOnFunction(llvm::Function&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1648:27
        #10 0x53b15f6 in llvm::FPPassManager::runOnModule(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1685:16
        #11 0x53b298d in runOnModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1750:27
        #12 0x53b298d in llvm::legacy::PassManagerImpl::run(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1863
        #13 0x905f21 in compileModule(char**, llvm::LLVMContext&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:601:8
        #14 0x8fdc4e in main /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:355:22
        #15 0x7f67673632e0 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202e0)
        #16 0x882369 in _start (/b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llc+0x882369)

    MemorySanitizer: use-of-uninitialized-value /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:1658:3 in llvm::AArch64FrameLowering::resolveFrameOffsetReference(llvm::MachineFunction const&, int, bool, unsigned int&, bool, bool) const
    Exiting
    error: -: The file was not recognized as a valid object file
    FileCheck error: '-' is empty.
    FileCheck command line:  /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/DebugInfo/AArch64/asan-stack-vars.mir
    ```

    Reviewers: bkramer

    Reviewed By: bkramer

    Subscribers: sdardis, aprantl, kristof.beyls, jrtc27, atanasyan, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D67710 (detail)
    by krasimir
  7. [SimplifyLibCalls] fix crash with empty function name (PR43347)

    ...and improve some variable names while here.

    https://bugs.llvm.org/show_bug.cgi?id=43347 (detail)
    by spatel
  8. Follow-up to r372209: Use single quotes for host_ldflags in the lit config

    HOST_LDFLAGS is now using double quotes, and that would break the lit
    config file. (detail)
    by hans
  9. Revert r372082 "[Clang] Pragma vectorize_width() implies vectorize(enable)"

    This broke the Chromium build. Consider the following code:

      float ScaleSumSamples_C(const float* src, float* dst, float scale, int width) {
        float fsum = 0.f;
        int i;
      #if defined(__clang__)
      #pragma clang loop vectorize_width(4)
      #endif
        for (i = 0; i < width; ++i) {
          float v = *src++;
          fsum += v * v;
          *dst++ = v * scale;
        }
        return fsum;
      }

    Compiling at -Oz, Clang  now warns:

      $ clang++ -target x86_64 -Oz -c /tmp/a.cc
      /tmp/a.cc:1:7: warning: loop not vectorized: the optimizer was unable to
      perform the requested transformation; the transformation might be disabled or
      specified as part of an unsupported transformation ordering
      [-Wpass-failed=transform-warning]

    this suggests it's not actually enabling vectorization hard enough.

    At -Os it asserts instead:

      $ build.release/bin/clang++ -target x86_64 -Os -c /tmp/a.cc
      clang-10: /work/llvm.monorepo/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:2734: void
      llvm::InnerLoopVectorizer::emitMemRuntimeChecks(llvm::Loop*, llvm::BasicBlock*): Assertion `
      !BB->getParent()->hasOptSize() && "Cannot emit memory checks when optimizing for size"' failed.

    Of course neither of these are what the developer expected from the pragma.

    > Specifying the vectorization width was supposed to implicitly enable
    > vectorization, except that it wasn't really doing this. It was only
    > setting the vectorize.width metadata, but not vectorize.enable.
    >
    > This should fix PR27643.
    >
    > Differential Revision: https://reviews.llvm.org/D66290 (detail)
    by hans
  10. [SDA] Don't stop divergence propagation at the IPD.

    Summary:
    This fixes B42473 and B42706.

    This patch makes the SDA propagate branch divergence until the end of the RPO traversal. Before, the SyncDependenceAnalysis propagated divergence only until the IPD in rpo order. RPO is incompatible with post dominance in the presence of loops. This made the SDA crash because blocks were missed in the propagation.

    Reviewers: foad, nhaehnle

    Reviewed By: foad

    Subscribers: jvesely, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D65274 (detail)
    by foad
  11. [mips] Pass "xgot" flag as a subtarget feature

    We need "xgot" flag in the MipsAsmParser to implement correct expansion
    of some pseudo instructions in case of using 32-bit GOT (XGOT).
    MipsAsmParser does not have reference to MipsSubtarget but has a
    reference to "feature bit set". (detail)
    by atanasyan
  12. [mips] Mark tests for lw/sw expansion in PIC by a separate "check prefix". NFC

    That simplify adding XGOT tests later. (detail)
    by atanasyan
  13. [mips] Reduce code duplication in the `loadAndAddSymbolAddress`. NFC (detail)
    by atanasyan
  14. [AST] CommentLexer - Remove (optional) Invalid parameter from getSpelling.

    The static analyzer noticed that we were dereferencing it even when the default null value was being used. Further investigation showed that we never explicitly set the parameter so I've just removed it entirely. (detail)
    by rksimon

Started by timer (5 times)

This run spent:

  • 4 hr 11 min waiting;
  • 4 hr 12 min build duration;
  • 8 hr 24 min total from scheduled to completion.

Identified problems

Missing test results

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

Regression test failed

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

Ninja target failed

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