Started 14 days ago
Took 1 hr 54 min on green-dragon-02

Failed Build #14359 (Jul 8, 2019 6:49:02 PM)

Revisions
  • http://llvm.org/svn/llvm-project/llvm/trunk : 365419
  • http://llvm.org/svn/llvm-project/cfe/trunk : 365414
  • http://llvm.org/svn/llvm-project/compiler-rt/trunk : 365422
  • http://llvm.org/svn/llvm-project/zorg/trunk : 365385
  • http://llvm.org/svn/llvm-project/libcxx/trunk : 365359
  • http://llvm.org/svn/llvm-project/clang-tools-extra/trunk : 365380
Changes
  1. [sanitizers][windows] Rtl-Heap Interception and tests
       - Adds interceptors for Rtl[Allocate|Free|Size|ReAllocate]Heap
       - Adds unit tests for the new interceptors and expands HeapAlloc
         tests to demonstrate new functionality.
       Reviewed as D62927 (detail)
    by mcgov
  2. [LoopPred] Extend LFTR normalization to the inverse EQ case

    A while back, I added support for NE latches formed by LFTR.  I didn't think that quite through, as LFTR will also produce the inverse EQ form for some loops and I hadn't handled that.  This change just adds handling for that case as well. (detail)
    by reames
  3. [WebAssembly] Fix a typo in a test file name

    Reviewers: sbc100

    Subscribers: dschuff, jgravelle-google, sunfish, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D64324 (detail)
    by aheejin
  4. Changing CodeView debug info type record representation in assembly files to make it more human-readable & editable & fixing bug introduced in r364987 (detail)
    by nilanjana_basu
  5. [TSan] Fix linker error for Linux/AArch64 (detail)
    by yln
  6. Use `ln -n` to prevent forming a symlink cycle, instead of rm'ing the source

    This is a better fix for the problem fixed in r334972.

    Also remove the rm'ing of the symlink destination that was there to
    clean up the bots -- it's over a year later, bots should be happy now.

    Differential Revision: https://reviews.llvm.org/D64301 (detail)
    by nico
  7. Let unaliased Args track which Alias they were created from, and use that in Arg::getAsString() for diagnostics

    With this, `clang-cl /source-charset:utf-16 test.cc` now prints `invalid
    value 'utf-16' in '/source-charset:utf-16'` instead of `invalid value
    'utf-16' in '-finput-charset=utf-16'` before, and several other clang-cl
    flags produce much less confusing output as well.

    Fixes PR29106.

    Since an arg and its alias can have different arg types (joined vs not)
    and different values (because of AliasArgs<>), I chose to give the Alias
    its own Arg object. For convenience, I just store the alias directly in
    the unaliased arg – there aren't many arg objects at runtime, so that
    seems ok.

    Finally, I changed Arg::getAsString() to use the alias's representation
    if it's present – that function was already documented as being the
    suitable function for diagnostics, and most callers already used it for
    diagnostics.

    Implementation-wise, Arg::accept() previously used to parse things as
    the unaliased option. The core of that switch is now extracted into a
    new function acceptInternal() which parses as the _aliased_ option, and
    the previously-intermingled unaliasing is now done as an explicit step
    afterwards.

    (This also changes one place in lld that didn't use getAsString() for
    diagnostics, so that that one place now also prints the flag as the user
    wrote it, not as it looks after it went through unaliasing.)

    Differential Revision: https://reviews.llvm.org/D64253 (detail)
    by nico
  8. [X86][PPC] Support -mlong-double-64

    -mlong-double-64 is supported on some ports of gcc (i386, x86_64, and ppc{32,64}).
    On many other targets, there will be an error:

        error: unrecognized command line option '-mlong-double-64'

    This patch makes the driver option -mlong-double-64 available for x86
    and ppc. The CC1 option -mlong-double-64 is available on all targets for
    users to test on unsupported targets.

    LongDoubleSize is added as a VALUE_LANGOPT so that the option can be
    shared with -mlong-double-128 when we support it in clang.

    Also, make powerpc*-linux-musl default to use 64-bit long double. It is
    currently the only supported ABI on musl and is also how people
    configure powerpc*-linux-musl-gcc.

    Reviewed By: rnk

    Differential Revision: https://reviews.llvm.org/D64067 (detail)
    by maskray
  9. clang-cl: Port cl.exe's C4659 to clang-cl

    Differential Revision: https://reviews.llvm.org/D64349 (detail)
    by nico
  10. [analyzer] exploded-graph-rewriter: Implement a topology-only mode.

    In this mode the rewriter will only rewrite program points
    and omit program states. Useful for understanding
    the rough topology of the graph.

    Differential Revision: https://reviews.llvm.org/D64264 (detail)
    by dergachev
  11. [analyzer] exploded-graph-rewriter: Implement a single-path mode.

    Instead of rewriting the whole graph, rewrite the leftmost path in the
    graph. Useful for trimmed graphs that are still too large to display due
    to multiple equivalent reports mixed into them.

    Differential Revision: https://reviews.llvm.org/D64263 (detail)
    by dergachev
  12. [ObjC] Add a -Wtautological-compare warning for BOOL

    On macOS, BOOL is a typedef for signed char, but it should never hold a value
    that isn't 1 or 0. Any code that expects a different value in their BOOL should
    be fixed.

    rdar://51954400

    Differential revision: https://reviews.llvm.org/D63856 (detail)
    by epilk
  13. [Attributor] Deduce the "returned" argument attribute

    Deduce the "returned" argument attribute by collecting all potentially
    returned values.

    Not only the unique return value, if any, can be used by subsequent
    attributes but also the set of all potentially returned values as well
    as the mapping from returned values to return instructions that they
    originate from (see AAReturnedValues::checkForallReturnedValues).

    Change in statistics (-stats) for LLVM-TS + Spec2006, totaling ~19% more "returned" arguments.

      ADDED: attributor                   NumAttributesManifested                  n/a ->        637
      ADDED: attributor                   NumAttributesValidFixpoint               n/a ->      25545
      ADDED: attributor                   NumFnArgumentReturned                    n/a ->        637
      ADDED: attributor                   NumFnKnownReturns                        n/a ->      25545
      ADDED: attributor                   NumFnUniqueReturned                      n/a ->      14118
    CHANGED: deadargelim                  NumRetValsEliminated                     470 ->        449 (    -4.468%)
    REMOVED: functionattrs                NumReturned                              535 ->        n/a
    CHANGED: indvars                      NumElimIdentity                          138 ->        164 (   +18.841%)

    Reviewers: homerdin, hfinkel, fedor.sergeev, sanjoy, spatel, nlopes, nicholas, reames, efriedma, chandlerc

    Subscribers: hiraditya, bollu, cfe-commits, llvm-commits

    Tags: #clang, #llvm

    Differential Revision: https://reviews.llvm.org/D59919 (detail)
    by jdoerfert
  14. [cxx2a] P0624R2 fix: only lambdas with no lambda-capture are default-constructible and assignable.

    This is a fix for rG864949 which only disabled default construction and
    assignment for lambdas with capture-defaults, where the C++2a draft
    disables them for lambdas with any lambda-capture at all.

    Patch by Logan Smith!

    Differential Revision: https://reviews.llvm.org/D64058 (detail)
    by dblaikie
  15. [Frontend] Explicitly include Bitstream/BitCodes.h and BitstreamWriter.h

    This fixes a modules issue:

    error: declaration of 'bitc' must be imported from module
    'Clang_Serialization.ASTBitCodes' before it is required
    Stream.EmitRecord(llvm::bitc::BLOCKINFO_CODE_SETBID, Record); (detail)
    by thegameg
  16. [AArch64][GlobalISel] Use TST for comparisons when possible

    Porting over the part of `emitComparison` in AArch64ISelLowering where we use
    TST to represent a compare.

    - Rename `tryOptCMN` to `tryFoldIntegerCompare`, since it now also emits TSTs
      when possible.

    - Add a utility function for emitting a TST with register operands.

    - Rename opt-fold-cmn.mir to opt-fold-compare.mir, since it now also tests the
      TST fold as well.

    Differential Revision: https://reviews.llvm.org/D64371 (detail)
    by paquette
  17. Fix line endings. NFC (detail)
    by probinson
  18. [llvm-profdata] Fix buildbot failure on llvm-clang-x86_64-expensive-checks-win

    This fixes buildbot failure in LLVM on llvm-clang-x86_64-expensive-checks-win
    from r365386. (detail)
    by xur
  19. [Sanitizers] Remove clang_rt.sancov_{begin,end} on Solaris

    There's no point to manually create the __start___sancov_guards and __stop___sancov_guards
    sections and labels on Solaris any longer.  They were originally introduced in
    https://reviews.llvm.org/D40899 and https://reviews.llvm.org/D40903.

    - The Solaris 11.4 ld supports creating them out of the box.
    - We already unconditionally use Solaris 11.4 features like the ld -z gnu-version-script-compat option and fully working .preinit_array support in compiler-rt.
    - The current files don't assemble on SPARC because the assembler syntax may be different between /bin/as and GNU as.

    Tested on amd64-pc-solaris2.11.

    Differential Revision: https://reviews.llvm.org/D63601 (detail)
    by ro
  20. AMDGPU: Split extload/zextload local load patterns

    This will help removing the custom load predicates, allowing the
    global isel emitter to handle them. (detail)
    by arsenm
  21. [Sanitizers] Don't use clang_rt.sancov_{begin,end} on Solaris

    As explained in https://reviews.llvm.org/D63601, there's no point using clang_rt.sancov_{begin,end}
    on Solaris any longer.

    This companion patch to the above removes their use from the driver.

    Tested on amd64-pc-solaris2.11

    Differential Revision: https://reviews.llvm.org/D63602 (detail)
    by ro
  22. Add parentheses to silence warnings. (detail)
    by void
  23. Add parentheses to silence warning. (detail)
    by void
  24. Revert [Sema] Resolve placeholder types before type deduction to silence spurious `-Warc-repeated-use-of-weak` warnings

    This reverts r365382 (git commit 8b1becf2e31d9170ee356a19c7b6ea991d3a520f)

    Appears to regress this semi-reduced fragment of valid code from windows
    SDK headers:

      #define InterlockedIncrement64 _InterlockedIncrement64
      extern "C" __int64 InterlockedIncrement64(__int64 volatile *Addend);
      #pragma intrinsic(_InterlockedIncrement64)
      unsigned __int64 InterlockedIncrement(unsigned __int64 volatile *Addend) {
        return (unsigned __int64)(InterlockedIncrement64)((volatile __int64 *)Addend);
      }

    Found on a buildbot here, but no mail was sent due to it already being
    red:
    http://lab.llvm.org:8011/builders/sanitizer-windows/builds/48067 (detail)
    by rnk
  25. Standardize on MSVC behavior for triples with no environment

    Summary:
    This makes it so that IR files using triples without an environment work
    out of the box, without normalizing them.

    Typically, the MSVC behavior is more desirable. For example, it tends to
    enable things like constant merging, use of associative comdats, etc.

    Addresses PR42491

    Reviewers: compnerd

    Subscribers: hiraditya, dexonsmith, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D64109 (detail)
    by rnk
  26. llvm-profdata] Handle the cases of overlapping input file and output file

    Currently llvm-profdata does not expect the same file name for the input profile
    and the output profile.
    >llvm-profdata merge A.profraw B.profraw -o B.profraw
    The above command runs successfully but the resulted B.profraw is not correct.
    This patch fixes the issue by moving the initialization of writer after loading
    the profile.

    For the show command, the following will report a confusing error of
    "Empty raw profile file":
    >llvm-profdata show B.profraw -o B.profraw
    It's harder to fix as we need to output something before loading the input profile.
    I don't think that a fix for this is worth the effort. I just make the error explicit for
    the show command.

    Differential Revision: https://reviews.llvm.org/D64360 (detail)
    by xur

Started by timer (5 times)

This run spent:

  • 4 hr 38 min waiting;
  • 1 hr 54 min build duration;
  • 6 hr 32 min total from scheduled to completion.

Identified problems

Ninja target failed

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

Compile Error

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

Missing test results

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