Started 8 mo 11 days ago
Took 21 min on green-dragon-15

Failed Build #288 (Feb 11, 2019 9:30:14 PM)

Revisions
  • http://llvm.org/svn/llvm-project/llvm/trunk : 353793
  • http://llvm.org/svn/llvm-project/cfe/trunk : 353791
  • http://llvm.org/svn/llvm-project/compiler-rt/trunk : 353796
  • http://llvm.org/svn/llvm-project/debuginfo-tests/trunk : 346271
  • http://llvm.org/svn/llvm-project/libcxx/trunk : 353786
  • http://llvm.org/svn/llvm-project/clang-tools-extra/trunk : 353760
Changes
  1. [CMake] Avoid internal dependencies in the runtimes build

    When performing runtimes build, dependencies like clang and
    clang-headers aren't available. This was accidentally omitted in D57992. (detail/ViewSVN)
    by phosek
  2. [libFuzzer] make the fork mode less verbose (detail/ViewSVN)
    by kcc
  3. [build] Remove a stray comment. NFC

    The CMake change associated with this comment was removed but the
    comment got left behind. Add a newline instead. (detail/ViewSVN)
    by smeenai
  4. [libFuzzer] teach the fork mode to ignore OOMs and timeouts (detail/ViewSVN)
    by kcc
  5. Fix VS2015 build problem introduced by r353370. (detail/ViewSVN)
    by dyung
  6. [CMake] Don't override required compiler flags in the runtimes build

    Ensure that HandleLLVMOptions adds all necessary required flags,
    including -Wno-error when building with LLVM_ENABLE_WERROR enabled.

    Differential Revision: https://reviews.llvm.org/D58092 (detail/ViewSVN)
    by phosek
  7. [x86] add tests for logic of setcc (PR40611); NFC (detail/ViewSVN)
    by spatel
  8. [PowerPC] add tests for logic of setcc (PR40611); NFC (detail/ViewSVN)
    by spatel
  9. [sanitizer] Don't compile GetPathAssumingFileIsRelativeToExec on Fuchsia

    This avoids the unused function warning during compilation.

    Differential Revision: https://reviews.llvm.org/D58082 (detail/ViewSVN)
    by phosek
  10. [CMake] Avoid passing -rtlib=compiler-rt when using compiler-rt

    We build libc++ and libc++abi with -nodefaultlibs, so -rtlib=compiler-rt
    has no effect and results in an 'argument unused during compilation'
    warning which breaks the build when using -Werror. We can therefore drop
    -rtlib=compiler-rt without any functional change; note that the actual
    compiler-rt linking is handled by HandleCompilerRT.

    Differential Revision: https://reviews.llvm.org/D58084 (detail/ViewSVN)
    by phosek
  11. Fix r353771 to target linux only (split-dwarf isn't supported on macho) (detail/ViewSVN)
    by dblaikie
  12. [CMake][XRay] Silence llvm-config error when checking library support

    Otherwise this propagates all the way to CMake and results in an error
    during configuration. We check and handle the result and report warning
    separately so this is not changing the behavior.

    Differential Revision: https://reviews.llvm.org/D58086 (detail/ViewSVN)
    by phosek
  13. [libFuzzer] replace slow std::mt19937 with a much faster std::minstd_rand; second attempt after failed r352732, this time with a fix for cmake (detail/ViewSVN)
    by kcc
  14. [libFuzzer] simplify the code for print_coverage=1 so that it doesn't fail on broken debug info (detail/ViewSVN)
    by kcc
  15. [libFuzzer] Make coverage.test work on ARM64

    Summary:
    This test instruments the following code with coverage, runs the fuzzer
    once, and asserts that there are uncovered PCs. The ARM64 backend
    optimizes this code using the `csel` (Conditional select) instruction,
    which removes all branching from the resulting machine code. The test
    then fails because we do not have any uncovered PCs. The easiest
    solution for now is to turn off optimization for the DSOs used in this
    test.

    ```
    int DSO1(int a) {
      if (a < 123456)
        return 0;
      return 1;
    }
    ```

    rdar://47646400

    Reviewers: kcc

    Tags: #sanitizers, #llvm

    Differential Revision: https://reviews.llvm.org/D58087 (detail/ViewSVN)
    by yln
  16. [LoopReroll] Fix reroll root legality checking.

    The code checked that the first root was an appropriate distance from
    the base value, but skipped checking the other roots. This could lead to
    rerolling a loop that can't be legally rerolled (at least, not without
    rewriting the loop in a non-trivial way).

    Differential Revision: https://reviews.llvm.org/D56812 (detail/ViewSVN)
    by efriedma
  17. [libFuzzer] run the -fork=1 tests only on linux (detail/ViewSVN)
    by kcc
  18. [Test] Use autogenerated checks for more statepoint tests (detail/ViewSVN)
    by reames
  19. [libFuzzer] extend the -fork=1 functionality. Still not fully usable, but good enough for the first unit test (detail/ViewSVN)
    by kcc
  20. Don't declare fenv.h functions when they're a macro.

    libc still provides function declarations, and these declarations
    conflict with libc++'s (detail/ViewSVN)
    by ericwf
  21. [Tests] Fill out a few tests around gc relocation uniquing (detail/ViewSVN)
    by reames
  22. Make the sym_diff utilities more useful.

    In particular when working with static libraries and libstdc++. (detail/ViewSVN)
    by ericwf
  23. DebugInfo: Split DWARF + gmlt + no-split-dwarf-inlining shouldn't emit anything to the .dwo file

    This configuration (due to r349207) was intended not to emit any DWO CU,
    but a degenerate CU was still being emitted - containing a header and a
    DW_TAG_compile_unit with no attributes.

    Under that situation, emit nothing to the .dwo file. (since this is a
    dynamic property of the input the .dwo file is still emitted, just with
    nothing in it (so a valid, but empty, ELF file) - if some other CU
    didn't satisfy this criteria, its DWO CU would still go there, etc) (detail/ViewSVN)
    by dblaikie
  24. [Test] Autogenerate a statepoint test and actual show the reload (detail/ViewSVN)
    by reames
  25. Add fenv.h header

    Summary:
    Some implementations of fenv.h use macros to define the functions they provide. This can cause problems when `std::fegetround()` is spelled in source.

    This patch adds a `fenv.h` header to libc++ for the sole purpose of turning those macros into real functions.

    Reviewers: rsmith, mclow.lists, ldionne

    Reviewed By: rsmith

    Subscribers: mgorny, christof, libcxx-commits

    Differential Revision: https://reviews.llvm.org/D57729 (detail/ViewSVN)
    by ericwf
  26. Be conservative about unordered accesses for the moment

    Background: As described in https://reviews.llvm.org/D57601, I'm working towards separating volatile and atomic in the MMO uses for atomic instructions.

    In https://reviews.llvm.org/D57593, I fixed a bug where isUnordered was returning the wrong result, but didn't account for the fact I was getting slightly ahead of myself. While both uses of isUnordered are correct (as far as I can tell), we don't have tests to demonstrate this and being aggressive gets in the way of having the removal of volatile truly be non-functional. Once D57601 lands, I will return to these call sites, revert this patch, and add the appropriate tests to show the expected behaviour.

    Differential Revision: https://reviews.llvm.org/D57802 (detail/ViewSVN)
    by reames
  27. Add a new attribute, fortify_stdlib

    This attribute applies to declarations of C stdlib functions
    (sprintf, memcpy...) that have known fortified variants
    (__sprintf_chk, __memcpy_chk, ...). When applied, clang will emit
    calls to the fortified variant functions instead of calls to the
    defaults.

    In GCC, this is done by adding gnu_inline-style wrapper functions,
    but that doesn't work for us for variadic functions because we don't
    support __builtin_va_arg_pack (and have no intention to).

    This attribute takes two arguments, the first is 'type' argument
    passed through to __builtin_object_size, and the second is a flag
    argument that gets passed through to the variadic checking variants.

    rdar://47905754

    Differential revision: https://reviews.llvm.org/D57918 (detail/ViewSVN)
    by epilk
  28. [tblgen] Add a timer covering the time spent reading the Instruction defs

    This patch adds a -time-regions option to tablegen that can enable timers
    (currently only one) that assess the performance of tablegen itself. This
    can be useful for identifying scaling problems with tablegen backends.

    This particular timer has allowed me to ignore time that is not attributed
    the GISel combiner pass. It's useful by itself but it is particularly
    useful in combination with https://reviews.llvm.org/D52954 which causes
    this period of time to be annotated within Xcode Instruments which in turn
    allows profile samples and recorded allocations attributed to reading
    instructions to be filtered out. (detail/ViewSVN)
    by dsanders
  29. [Sema] Mark GNU compound literal array init as an rvalue.

    Basically the same issue as string init, except it didn't really have
    any visible consequences before I removed the implicit lvalue-to-rvalue
    conversion from CodeGen.

    While I'm here, a couple minor drive-by cleanups: IgnoreParens never
    returns a ConstantExpr, and there was a potential crash with string init
    involving a ChooseExpr.

    The analyzer test change maybe indicates we could simplify the analyzer
    code a little with this fix?  Apparently a hack was added to support
    lvalues in initializers in r315750, but I'm not really familiar with the
    relevant code.

    Fixes regression reported in the kernel build at
    https://bugs.llvm.org/show_bug.cgi?id=40430#c6 .

    Differential Revision: https://reviews.llvm.org/D58069 (detail/ViewSVN)
    by efriedma
  30. [WebAssembly] Make thread-related options consistent

    Summary:
    There have been three options related to threads and users had to set
    all three of them separately to get the correct compilation results.
    This makes sure the relationship between the options makes sense and
    sets necessary options for users if only part of the necessary options
    are specified. This does:

    - Remove `-matomics`; this option alone does not enable anything, so
      removed it to not confuse users.
    - `-mthread-model posix` sets `-target-feature +atomics`
    - `-pthread` sets both `-target-feature +atomics` and
      `-mthread-model posix`
    Also errors out when explicitly given options don't match, such as
    `-pthread` is given with `-mthread-model single`.

    Reviewers: dschuff, sbc100, tlively, sunfish

    Subscribers: jgravelle-google, jfb, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D57874 (detail/ViewSVN)
    by aheejin
  31. [NFC][clangd] Remove unused lambda capture

    Avoid this warning:

    llvm/clang-tools-extra/clangd/ClangdServer.cpp:365:23: warning: lambda
    capture 'this' is not used [-Wunused-lambda-capture]

      auto Action = [Sel, this](decltype(CB) CB, std::string File,
                        ~~^~~~
    1 warning generated. (detail/ViewSVN)
    by thegameg
  32. GlobalISel: Verify G_EXTRACT (detail/ViewSVN)
    by arsenm
  33. [TargetLibraryInfo] Update run time support for Windows

    It seems that, since VC19, the `float` C99 math functions are supported for all
    targets, unlike the C89 ones.

    According to the discussion at https://reviews.llvm.org/D57625. (detail/ViewSVN)
    by evandro
  34. [LegalizeTypes] Expand FNEG to bitwise op for IEEE FP types

    Summary:
    Except for custom floating point types x86_fp80 and ppc_fp128,
    expand Y = FNEG(X) to Y = X ^ sign mask to avoid library call.
    Using bitwise operation can improve code size and performance.

    Reviewers: efriedma

    Reviewed By: efriedma

    Subscribers: efriedma, kpn, arsenm, eli.friedman, javed.absar, rbar, johnrusso, simoncook, sabuasal, niosHD, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, PkmX, jocewei, asb, llvm-commits

    Differential Revision: https://reviews.llvm.org/D57875 (detail/ViewSVN)
    by apazos
  35. [IRReader] Expose getLazyIRModule

    Currently there is no way to lazy-load an in-memory IR module without
    first writing it to disk. This patch just exposes the existing
    implementation of getLazyIRModule.

    This is effectively a revert of rL212364

    Differential Revision: https://reviews.llvm.org/D56203 (detail/ViewSVN)
    by scott.linder
  36. GlobalISel: Implement moreElementsVector for implicit_def (detail/ViewSVN)
    by arsenm
  37. GlobalISel: Fix not calling the observer when legalizing G_EXTRACT (detail/ViewSVN)
    by arsenm
  38. [globalisel] Correct string emitted by GISelChangeObserver::erasingInstr()

    The API indicates that the MI is about to be erased rather than it has been erased. (detail/ViewSVN)
    by dsanders
  39. [X86] Correct the memory operand for the FLD emitted in FP_TO_INTHelper for 32-bit SSE targets.

    We were using DstTy, but that represents the integer type we are converting to which is i64 in this
    case. The FLD is part of an intermediate step to get from the SSE registers to the x87 registers.
    If the floating point type is f32, the memory operand should reflect a 4 byte access not an 8 byte
    access. The store we used to get from SSE to the stack is using the corect size.

    While there, consistenly use TheVT in place of Op.getOperand(0).getValueType() throughout the function. (detail/ViewSVN)
    by ctopper
  40. Fix a few tests that were missing ':' on CHECK lines and weren't testing anything.

    Found by `git grep '\/\/ CHECK-[^: ]* ' clang/test/ | grep -v RUN:`.

    Also tweak CodeGenCXX/arm-swiftcall.cpp to still pass now that it checks more.

    Differential Revision: https://reviews.llvm.org/D58061 (detail/ViewSVN)
    by nico
  41. [llvm-cxxfilt] Split and demangle stdin input

    Summary:
    Originally, llvm-cxxfilt would treat a line as a single mangled item to be demangled.
    If a mangled name appears in the middle of that string, that name would not be demangled.

    GNU c++filt  splits and demangles every word  in a  string that is piped to it via stdin.
    Prior to this patch llvm-cxxfilt would never split strings  piped to it.
    This patch replicates the GNU behavior and splits strings that are piped to it via stdin.

    This fixes PR39990

    Reviewers: compnerd, jhenderson, davide

    Reviewed By: compnerd, jhenderson

    Subscribers: erik.pilkington, jhenderson, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D57350 (detail/ViewSVN)
    by mattd
  42. [CodeGen] Set construction vtable visibility after creating initializer

    We must only set the construction vtable visibility after we create the
    vtable initializer, otherwise the global value will be treated as
    declaration rather than definition and the visibility won't be set.

    Differential Revision: https://reviews.llvm.org/D58010 (detail/ViewSVN)
    by phosek
  43. [globalisel] Restore comment explaining the nits of GISelChangeObserver::createdInstr() (detail/ViewSVN)
    by dsanders

Started by upstream project Clang Stage 2: cmake, R -g Asan&UBSan, using Stage 1 RA, Phase 1 build number 6128
originally caused by:

This run spent:

  • 6.2 sec waiting;
  • 21 min build duration;
  • 21 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

CMake Error

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