Started 7 days 22 hr ago
Took 18 hr on green-dragon-09

Failed Build #5507 (Oct 8, 2019 12:06:15 AM)

Revisions
  • http://llvm.org/svn/llvm-project/llvm/trunk : 374018
  • http://llvm.org/svn/llvm-project/cfe/trunk : 374013
  • http://llvm.org/svn/llvm-project/compiler-rt/trunk : 374010
  • http://llvm.org/svn/llvm-project/debuginfo-tests/trunk : 364589
  • http://llvm.org/svn/llvm-project/libcxx/trunk : 373971
  • http://llvm.org/svn/llvm-project/clang-tools-extra/trunk : 373951
Changes
  1. [IA] Recognize hexadecimal escape sequences

    Summary:
    Implement support for hexadecimal escape sequences to match how GNU 'as'
    handles them. I.e., read all hexadecimal characters and truncate to the
    lower 16 bits.

    Reviewers: nickdesaulniers, jcai19

    Subscribers: llvm-commits, hiraditya

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68598 (detail/ViewSVN)
    by void
  2. [LoopVectorize][PowerPC] Estimate int and float register pressure separately in loop-vectorize

    In loop-vectorize, interleave count and vector factor depend on target register number. Currently, it does not
    estimate different register pressure for different register class separately(especially for scalar type,
    float type should not be on the same position with int type), so it's not accurate. Specifically,
    it causes too many times interleaving/unrolling, result in too many register spills in loop body and hurting performance.

    So we need classify the register classes in IR level, and importantly these are abstract register classes,
    and are not the target register class of backend provided in td file. It's used to establish the mapping between
    the types of IR values and the number of simultaneous live ranges to which we'd like to limit for some set of those types.

    For example, POWER target, register num is special when VSX is enabled. When VSX is enabled, the number of int scalar register is 32(GPR),
    float is 64(VSR), but for int and float vector register both are 64(VSR). So there should be 2 kinds of register class when vsx is enabled,
    and 3 kinds of register class when VSX is NOT enabled.

    It runs on POWER target, it makes big(+~30%) performance improvement in one specific bmk(503.bwaves_r) of spec2017 and no other obvious degressions.

    Differential revision: https://reviews.llvm.org/D67148 (detail/ViewSVN)
    by wuzish
  3. [ConstantRange] [NFC] replace addWithNoSignedWrap with addWithNoWrap. (detail/ViewSVN)
    by shchenz
  4. [WebAssembly] Add REQUIRES: asserts to cfg-stackify-eh.ll

    This was missing in D68552. (detail/ViewSVN)
    by aheejin
  5. [ItaniumMangle] Fix mangling of GNU __null in an expression to match GCC

    Reviewers: rsmith

    Reviewed By: rsmith

    Subscribers: erik.pilkington, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68368 (detail/ViewSVN)
    by jrtc27
  6. [NFC] Fix ubsan-blacklist test

    Restored original test and marked tests for VFS as unsupported on Windows. (detail/ViewSVN)
    by Jan Korous
  7. [sanitizer] Fix signal_trap_handler.cpp on android (detail/ViewSVN)
    by Vitaly Buka
  8. [LitConfig] Silenced notes/warnings on quiet.

    Lit has a "quiet" option, -q, which is documented to "suppress no
    error output". Previously, LitConfig displayed notes and warnings when
    the quiet option was specified. The result was that it was not
    possible to get only pertinent file/line information to be used by an
    editor to jump to the location where checks were failing without
    passing a number of unhelpful locations first. Here, the
    implementations of LitConfig.note and LitConfig.warning are modified
    to account for the quiet flag and avoid displaying if the flag has
    indeed been set.

    Patch by Nate Chandler

    Reviewed by yln

    Differential Revision: https://reviews.llvm.org/D68044 (detail/ViewSVN)
    by atrick
  9. Reland 'Add VFS support for sanitizers' blacklist'

    The original patch broke the test for Windows.
    Trying to fix as per Reid's suggestions outlined here:
    https://reviews.llvm.org/rC371663

    Differential Revision: https://reviews.llvm.org/D67742 (detail/ViewSVN)
    by Jan Korous
  10. Revert "Add VFS support for sanitizers' blacklist"

    Fix tests on Windows for now.

    This reverts commit 96ac97a4213287003f08636d0c372b3f71e9cfca. (detail/ViewSVN)
    by Jan Korous
  11. [msan] Add interceptors: crypt, crypt_r.

    Reviewers: vitalybuka

    Subscribers: srhines, #sanitizers, llvm-commits

    Tags: #sanitizers, #llvm

    Differential Revision: https://reviews.llvm.org/D68431 (detail/ViewSVN)
    by eugenis
  12. [clang] Accept -ftrivial-auto-var-init in clang-cl

    Reviewers: eugenis, rnk

    Subscribers: cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68608 (detail/ViewSVN)
    by Vitaly Buka
  13. AMDGPU/GlobalISel: Clamp G_SITOFP/G_UITOFP sources (detail/ViewSVN)
    by arsenm
  14. [Attributor][NFC] Add debug output (detail/ViewSVN)
    by jdoerfert
  15. [Attributor][FIX] Remove initialize calls and add undefs

    The initialization logic has become part of the Attributor but the
    patches that introduced these calls here were in development when the
    transition happened.

    We also now clean up (undefine) the macros used to create attributes. (detail/ViewSVN)
    by jdoerfert
  16. [Attributor] Use local linkage instead of internal

    Local linkage is internal or private, and private is a specialization of
    internal, so either is fine for all our "local linkage" queries. (detail/ViewSVN)
    by jdoerfert
  17. [Attributor] Use abstract call sites for call site callback

    Summary:
    When we iterate over uses of functions and expect them to be call sites,
    we now use abstract call sites to allow callback calls.

    Reviewers: sstefan1, uenoku

    Subscribers: hiraditya, bollu, hfinkel, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D67871 (detail/ViewSVN)
    by jdoerfert
  18. [tsan, go] fix Go windows build

    Summary:
    Don't use weak exports when building tsan into a shared library for Go. gcc can't handle the pragmas used to make the weak references.

    Include files that have been added since the last update to build.bat. (We should really find a better way to list all the files needed.)

    Add windows version defines (WINVER and _WIN32_WINNT) to get AcquireSRWLockExclusive and ReleaseSRWLockExclusive defined.

    Define GetProcessMemoryInfo to use the kernel32 version. This is kind of a hack, the windows header files should do this translation for us. I think we're not in the right family partition (we're using Desktop, but that translation only happens for App and System partitions???), but hacking the family partition seems equally gross and I have no idea what the consequences of that might be.

    Patch by Keith Randall.

    Reviewers: dvyukov, vitalybuka

    Reviewed By: vitalybuka

    Subscribers: jfb, delcypher, #sanitizers, llvm-commits

    Tags: #llvm, #sanitizers

    Differential Revision: https://reviews.llvm.org/D68599 (detail/ViewSVN)
    by Vitaly Buka
  19. [tsan, go] break commands into multiple lines

    Summary: Patch by Keith Randall.

    Reviewers: dvyukov, vitalybuka

    Subscribers: delcypher, jfb, #sanitizers, llvm-commits

    Tags: #llvm, #sanitizers

    Differential Revision: https://reviews.llvm.org/D68596 (detail/ViewSVN)
    by Vitaly Buka
  20. [X86] Shrink zero extends of gather indices from type less than i32 to types larger than i32.

    Gather instructions can use i32 or i64 elements for indices. If
    the index is zero extended from a type smaller than i32 to i64, we
    can shrink the extend to just extend to i32. (detail/ViewSVN)
    by ctopper
  21. [X86] Add test cases for zero extending a gather index from less than i32 to i64.

    We should be able to use a smaller zero extend. (detail/ViewSVN)
    by ctopper
  22. Fix the spelling of my name. (detail/ViewSVN)
    by joerg
  23. [sanitizer] Print SIGTRAP for corresponding signal

    Reviewers: eugenis, jfb

    Subscribers: #sanitizers, llvm-commits

    Tags: #sanitizers, #llvm

    Differential Revision: https://reviews.llvm.org/D68603 (detail/ViewSVN)
    by Vitaly Buka
  24. [tsan] Don't delay SIGTRAP handler

    Reviewers: eugenis, jfb

    Subscribers: #sanitizers, llvm-commits

    Tags: #sanitizers, #llvm

    Differential Revision: https://reviews.llvm.org/D68604 (detail/ViewSVN)
    by Vitaly Buka
  25. Add VFS support for sanitizers' blacklist

    Differential Revision: https://reviews.llvm.org/D67742 (detail/ViewSVN)
    by Jan Korous
  26. [X86] Add new calling convention that guarantees tail call optimization

    When the target option GuaranteedTailCallOpt is specified, calls with
    the fastcc calling convention will be transformed into tail calls if
    they are in tail position. This diff adds a new calling convention,
    tailcc, currently supported only on X86, which behaves the same way as
    fastcc, except that the GuaranteedTailCallOpt flag does not need to
    enabled in order to enable tail call optimization.

    Patch by Dwight Guth <dwight.guth@runtimeverification.com>!

    Reviewed By: lebedev.ri, paquette, rnk

    Differential Revision: https://reviews.llvm.org/D67855 (detail/ViewSVN)
    by rnk
  27. [WebAssembly] Fix unwind mismatch stat computation

    Summary:
    There was a bug when computing the number of unwind destination
    mismatches in CFGStackify. When there are many mismatched calls that
    share the same (original) destination BB, they have to be counted
    separately.

    This also fixes a typo and runs `fixUnwindMismatches` only when the wasm
    exception handling is enabled. This is to prevent unnecessary
    computations and does not change behavior.

    Reviewers: dschuff

    Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68552 (detail/ViewSVN)
    by aheejin
  28. [llvm-lipo] Add TextAPI to LINK_COMPONENTS

    Summary:
    D68319 uses `MachO::getCPUTypeFromArchitecture` and without this builds
    with `-DBUILD_SHARED_LIBS=ON` fail.

    Reviewers: alexshap

    Subscribers: mgorny, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68594 (detail/ViewSVN)
    by aheejin
  29. [Diagnostics] Emit better -Wbool-operation's warning message if we known that the result is always true (detail/ViewSVN)
    by xbolva00
  30. [Attributor][FIX] Remove assertion wrong for on invalid IRPositions (detail/ViewSVN)
    by jdoerfert
  31. [libc++] Remove C++03 variadics in shared_ptr (v2)

        Summary: In my last patch (D67675) I forgot a few variadics. This patch removes the remaining make_shared and allocate_shared C++03 variadics.

        Reviewers: ldionne, EricWF, mclow.lists

        Subscribers: christof, dexonsmith, libcxx-commits

        Tags: #libc

        Differential Revision: https://reviews.llvm.org/D68000 (detail/ViewSVN)
    by zoecarver
  32. [llvm-c] Add UnaryOperator to LLVM_FOR_EACH_VALUE_SUBCLASS macro

    Note that we are not sure where the tests for these functions lives. This was discussed in the Phab Diff.

    Differential Revision: https://reviews.llvm.org/D68588 (detail/ViewSVN)
    by mcinally
  33. [WebAssembly] Add memory intrinsics handling to mayThrow()

    Summary:
    Previously, `WebAssembly::mayThrow()` assumed all inputs are global
    addresses. But when intrinsics, such as `memcpy`, `memmove`, or `memset`
    are lowered to external symbols in instruction selection and later
    emitted as library calls. And these functions don't throw.

    This patch adds handling to those memory intrinsics to `mayThrow`
    function. But while most of libcalls don't throw, we can't guarantee all
    of them don't throw, so currently we conservatively return true for all
    other external symbols.

    I think a better way to solve this problem is to embed 'nounwind' info
    in `TargetLowering::CallLoweringInfo`, so that we can access the info
    from the backend. This will also enable transferring 'nounwind'
    properties of LLVM IR instructions. Currently we don't transfer that
    info and we can only access properties of callee functions, if the
    callees are within the module. Other targets don't need this info in the
    backend because they do all the processing before isel, but it will help
    us because that info will reduce code size increase in fixing unwind
    destination mismatches in CFGStackify.

    But for now we return false for these memory intrinsics and true for all
    other libcalls conservatively.

    Reviewers: dschuff

    Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68553 (detail/ViewSVN)
    by aheejin
  34. [llvm-lipo] Relax the check of the specified input file architecture

    cctools lipo only compares the cputypes when it verifies that
    the specified (via -arch) input file and the architecture match.
    This diff adjusts the behavior of llvm-lipo accordingly.

    Differential revision: https://reviews.llvm.org/D68319

    Test plan: make check-all (detail/ViewSVN)
    by alexshap
  35. [Attributor] Deduce memory behavior of functions and arguments

    Deduce the memory behavior, aka "read-none", "read-only", or
    "write-only", for functions and arguments.

    Reviewers: sstefan1, uenoku

    Subscribers: hiraditya, bollu, jfb, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D67384 (detail/ViewSVN)
    by jdoerfert
  36. [InstCombine] Fold conditional sign-extend of high-bit-extract into high-bit-extract-with-signext (PR42389)

    This can come up in Bit Stream abstractions.

    The pattern looks big/scary, but it can't be simplified any further.
    It only is so simple because a number of my preparatory folds had
    happened already (shift amount reassociation / shift amount
    reassociation in bit test, sign bit test detection).

    Highlights:
    * There are two main flavors: https://rise4fun.com/Alive/zWi
      The difference is add vs. sub, and left-shift of -1 vs. 1
    * Since we only change the shift opcode,
      we can preserve the exact-ness: https://rise4fun.com/Alive/4u4
    * There can be truncation after high-bit-extraction:
      https://rise4fun.com/Alive/slHc1   (the main pattern i'm after!)
      Which means that we need to ignore zext of shift amounts and of NBits.
    * The sign-extending magic can be extended itself (in add pattern
      via sext, in sub pattern via zext. not the other way around!)
      https://rise4fun.com/Alive/NhG
      (or those sext/zext can be sinked into `select`!)
      Which again means we should pay attention when matching NBits.
    * We can have both truncation of extraction and widening of magic:
      https://rise4fun.com/Alive/XTw
      In other words, i don't believe we need to have any checks on
      bitwidths of any of these constructs.

    This is worsened in general by the fact that we may have `sext` instead
    of `zext` for shift amounts, and we don't yet canonicalize to `zext`,
    although we should. I have not done anything about that here.

    Also, we really should have something to weed out `sub` like these,
    by folding them into `add` variant.

    https://bugs.llvm.org/show_bug.cgi?id=42389 (detail/ViewSVN)
    by lebedevri
  37. [InstCombine][NFC] Tests for "conditional sign-extend of high-bit-extract" pattern (PR42389)

    https://bugs.llvm.org/show_bug.cgi?id=42389 (detail/ViewSVN)
    by lebedevri
  38. [InstCombine] Move isSignBitCheck(), handle rest of the predicates

    True, no test coverage is being added here. But those non-canonical
    predicates that are already handled here already have no test coverage
    as far as i can tell. I tried to add tests for them, but all the patterns
    already get handled elsewhere. (detail/ViewSVN)
    by lebedevri
  39. [InstCombine][NFC] dropRedundantMaskingOfLeftShiftInput(): change how we deal with mask

    Summary:
    Currently, we pre-check whether we need to produce a mask or not.
    This involves some rather magical constants.
    I'd like to extend this fold to also handle the situation
    when there's also a `trunc` before outer shift.
    That will require another set of magical constants.
    It's ugly.

    Instead, we can just compute the mask, and check
    whether mask is a pass-through (all-ones) or not.
    This way we don't need to have any magical numbers.

    This change is NFC other than the fact that we now compute
    the mask and then check if we need (and can!) apply it.

    Reviewers: spatel

    Reviewed By: spatel

    Subscribers: hiraditya, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68470 (detail/ViewSVN)
    by lebedevri
  40. [InstCombine] dropRedundantMaskingOfLeftShiftInput(): propagate undef shift amounts

    Summary:
    When we do `ConstantExpr::getZExt()`, that "extends" `undef` to `0`,
    which means that for patterns a/b we'd assume that we must not produce
    any bits for that channel, while in reality we simply didn't care
    about that channel - i.e. we don't need to mask it.

    Reviewers: spatel

    Reviewed By: spatel

    Subscribers: hiraditya, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68239 (detail/ViewSVN)
    by lebedevri
  41. [Bitcode] Update naming of UNOP_NEG to UNOP_FNEG

    Differential Revision: https://reviews.llvm.org/D68588 (detail/ViewSVN)
    by mcinally
  42. [AccelTable] Remove stale comment (NFC)

    rdar://55857228 (detail/ViewSVN)
    by Jonas Devlieghere
  43. [OPENMP]Fix caonical->canonical, NFC.

    Fixed typo. (detail/ViewSVN)
    by abataev
  44. Attempt to fix a few clang-tidy tests on Windows, see PR43593. (detail/ViewSVN)
    by nico
  45. Fix for expanding __pragmas in macro arguments

    Summary:
    Avoid parsing __pragma into an annotation token when macro arguments are pre-expanded.
    This is what clang currently does when parsing _Pragmas.

    Fixes https://bugs.llvm.org/show_bug.cgi?id=41128, where clang crashed
    when trying to get the length of an annotation token.

    Subscribers: cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68114 (detail/ViewSVN)
    by akhuang
  46. gn build: try to make system-libs.windows.test pass (detail/ViewSVN)
    by nico
  47. AMDGPU/GlobalISel: Handle more G_INSERT cases

    Start manually writing a table to get the subreg index. TableGen
    should probably generate this, but I'm not sure what it looks like in
    the arbitrary case where subregisters are allowed to not fully cover
    the super-registers. (detail/ViewSVN)
    by arsenm
  48. GlobalISel: Partially implement lower for G_INSERT (detail/ViewSVN)
    by arsenm
  49. AMDGPU/GlobalISel: Fix selection of 16-bit shifts (detail/ViewSVN)
    by arsenm
  50. AMDGPU/GlobalISel: Select VALU G_AMDGPU_FFBH_U32 (detail/ViewSVN)
    by arsenm
  51. AMDGPU/GlobalISel: Use S_MOV_B64 for inline constants

    This hides some defects in SIFoldOperands when the immediates are
    split. (detail/ViewSVN)
    by arsenm
  52. AMDGPU/GlobalISel: Widen 16-bit G_MERGE_VALUEs sources

    Continue making a mess of merge/unmerge legality. (detail/ViewSVN)
    by arsenm
  53. [OPENMP50]Treat range-based for as canonical loop.

    According to OpenMP 5.0, range-based for is also considered as a
    canonical form of loops. (detail/ViewSVN)
    by abataev
  54. AMDGPU/GlobalISel: Select more G_INSERT cases

    At minimum handle the s64 insert type, which are emitted in real cases
    during legalization.

    We really need TableGen to emit something to emit something like the
    inverse of composeSubRegIndices do determine the subreg index to use. (detail/ViewSVN)
    by arsenm
  55. GlobalISel: Add target pre-isel instructions

    Allows targets to introduce regbankselectable
    pseudo-instructions. Currently the closet feature to this is an
    intrinsic. However this requires creating a public intrinsic
    declaration. This litters the public intrinsic namespace with
    operations we don't necessarily want to expose to IR producers, and
    would rather leave as private to the backend.

    Use a new instruction bit. A previous attempt tried to keep using enum
    value ranges, but it turned into a mess. (detail/ViewSVN)
    by arsenm
  56. [clang] [cmake] Support LLVM_DISTRIBUTION_COMPONENTS in stand-alone build

    Differential Revision: https://reviews.llvm.org/D68412 (detail/ViewSVN)
    by mgorny
  57. Second attempt to add iterator_range::empty()

    Doing this makes MSVC complain that `empty(someRange)` could refer to
    either C++17's std::empty or LLVM's llvm::empty, which previously we
    avoided via SFINAE because std::empty is defined in terms of an empty
    member rather than begin and end. So, switch callers over to the new
    method as it is added.

    https://reviews.llvm.org/D68439 (detail/ViewSVN)
    by jrose
  58. Try to get clangd tests passing on Windows.

    Part of PR43592. See also r328645. (detail/ViewSVN)
    by nico
  59. [scudo][standalone] Correct releaseToOS behavior

    Summary:
    There was an issue in `releaseToOSMaybe`: one of the criteria to
    decide if we should proceed with the release was wrong. Namely:

    ```
    const uptr N = Sci->Stats.PoppedBlocks - Sci->Stats.PushedBlocks;
    if (N * BlockSize < PageSize)
      return; // No chance to release anything.
    ```

    I meant to check if the amount of bytes in the free list was lower
    than a page, but this actually checks if the amount of **in use** bytes
    was lower than a page.

    The correct code is:

    ```
    const uptr BytesInFreeList =
      Region->AllocatedUser -
      (Region->Stats.PoppedBlocks - Region->Stats.PushedBlocks) * BlockSize;
    if (BytesInFreeList < PageSize)
      return 0; // No chance to release anything.
    ```

    Consequences of the bug:
    - if a class size has less than a page worth of in-use bytes (allocated
      or in a cache), reclaiming would not occur, whatever the amount of
      blocks in the free list; in real world scenarios this is unlikely to
      happen and be impactful;
    - if a class size had less than a page worth of free bytes (and enough
      in-use bytes, etc), then reclaiming would be attempted, with likely
      no result. This means the reclaiming was overzealous at times.

    I didn't have a good way to test for this, so I changed the prototype
    of the function to return the number of bytes released, allowing to
    get the information needed. The test added fails with the initial
    criteria.

    Another issue is that `ReleaseToOsInterval` can actually be 0, meaning
    we always try to release (side note: it's terrible for performances).
    so change a `> 0` check to `>= 0`.

    Additionally, decrease the `CanRelease` threshold to `PageSize / 32`.
    I still have to make that configurable but I will do it at another time.

    Finally, rename some variables in `printStats`: I feel like "available"
    was too ambiguous, so change it to "total".

    Reviewers: morehouse, hctim, eugenis, vitalybuka, cferris

    Reviewed By: morehouse

    Subscribers: delcypher, #sanitizers, llvm-commits

    Tags: #llvm, #sanitizers

    Differential Revision: https://reviews.llvm.org/D68471 (detail/ViewSVN)
    by cryptoad
  60. Fix Calling Convention through aliases

    r369697 changed the behavior of stripPointerCasts to no longer include
    aliases.  However, the code in CGDeclCXX.cpp's createAtExitStub counted
    on the looking through aliases to properly set the calling convention of
    a call.

    The result of the change was that the calling convention mismatch of the
    call would be replaced with a llvm.trap, causing a runtime crash.

    Differential Revision: https://reviews.llvm.org/D68584 (detail/ViewSVN)
    by erichkeane
  61. [libTooling][NFC] Fix build break in r373916.

    r373916 used raw strings inside macro calls, which breaks some builds. (detail/ViewSVN)
    by ymandel
  62. [clangd] Fix raciness in code completion tests

    Reviewers: sammccall, ilya-biryukov

    Subscribers: MaskRay, jkorous, arphaman, usaxena95, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68273 (detail/ViewSVN)
    by kadircet
  63. [Remarks] Pass StringBlockValue as StringRef.

    After changing the remark serialization, we now pass StringRefs to the
    serializer. We should use StringRef for StringBlockVal, to avoid
    creating temporary objects, which then cause StringBlockVal.Value to
    point to invalid memory.

    Reviewers: thegameg, anemet

    Reviewed By: thegameg

    Differential Revision: https://reviews.llvm.org/D68571 (detail/ViewSVN)
    by fhahn
  64. [clang-format] [PR27004] omits leading space for noexcept when formatting operator delete()

    Summary:
    clang-format is incorrectly thinking the parameter parens are part of a cast operation, this is resulting in there sometimes being not space between the paren and the noexcept (and other keywords like volatile etc..)

    ```
    void operator++(int) noexcept;
    void operator++(int &) noexcept;
    void operator delete(void *, std::size_t, const std::nothrow_t &)noexcept;
    ```

    Reviewers: klimek, owenpan, mitchell-stellar

    Reviewed By: mitchell-stellar

    Subscribers: cfe-commits

    Tags: #clang-format, #clang

    Differential Revision: https://reviews.llvm.org/D68481 (detail/ViewSVN)
    by paulhoad
  65. [clang-format] [NFC] Ensure clang-format is itself clang-formatted.

    Summary:
    Before making a proposed change, ensure ClangFormat.cpp is fully clang-formatted,

    no functional change just clang-formatting using the in tree .clang-format.

    Reviewers: mitchell-stellar

    Reviewed By: mitchell-stellar

    Subscribers: Eugene.Zelenko, cfe-commits

    Tags: #clang-format, #clang

    Differential Revision: https://reviews.llvm.org/D68551 (detail/ViewSVN)
    by paulhoad
  66. Fix build errors caused by rL373914. (detail/ViewSVN)
    by wmi
  67. Codegen - silence static analyzer getAs<> null dereference warnings. NFCI.

    The static analyzer is warning about potential null dereferences, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. (detail/ViewSVN)
    by rksimon
  68. [llvm-profdata] Minor format fix

    Summary: Minor format fix for output of "llvm-profdata -show"

    Reviewers: wmi

    Subscribers: hiraditya, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D68440 (detail/ViewSVN)
    by wenlei
  69. [libTooling] Add `toString` method to the Stencil class

    Summary:
    `toString` generates a string representation of the stencil.

    Patch by Harshal T. Lehri.

    Reviewers: gribozavr

    Subscribers: cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68574 (detail/ViewSVN)
    by ymandel
  70. [X86][SSE] getTargetShuffleInputs - move VT.isSimple/isVector checks inside. NFCI.

    Stop all the callers from having to check the value type before calling getTargetShuffleInputs. (detail/ViewSVN)
    by rksimon
  71. [SampleFDO] Add compression support for any section in ExtBinary profile format

    Previously ExtBinary profile format only supports compression using zlib for
    profile symbol list. In this patch, we extend the compression support to any
    section. User can select some or all of the sections to compress. In an
    experiment, for a 45M profile in ExtBinary format, compressing name table
    reduced its size to 24M, and compressing all the sections reduced its size
    to 11M.

    Differential Revision: https://reviews.llvm.org/D68253 (detail/ViewSVN)
    by wmi
  72. [LoopVectorize] add test that asserted after cost model change (PR43582); NFC (detail/ViewSVN)
    by spatel
  73. Allow update_test_checks.py to not scrub names.

    Add a --preserve-names option to tell the script not to replace IR names.
    Sometimes tests want those names.  For example if a test is looking for a
    modification to an existing instruction we'll want to make the names.

    Differential Revision: https://reviews.llvm.org/D68081 (detail/ViewSVN)
    by greened
  74. Sema - silence static analyzer getAs<> null dereference warnings. NFCI.

    The static analyzer is warning about potential null dereferences, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. (detail/ViewSVN)
    by rksimon
  75. [clang] Add test for FindNextToken in Lexer.

    Reviewers: ilya-biryukov

    Subscribers: cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68565 (detail/ViewSVN)
    by usaxena95
  76. Fix another sphinx warning.

    Differential Revision: https://reviews.llvm.org/D64746 (detail/ViewSVN)
    by kpn
  77. Regenerate ptr-rotate.ll . NFC (detail/ViewSVN)
    by deadalnix
  78. [Mips] Always save RA when disabling frame pointer elimination

    This ensures that frame-based unwinding will continue to work when
    calling a noreturn function; there is not much use having the caller's
    frame pointer saved if you don't also have the caller's program counter.

    Patch by James Clarke.

    Differential Revision: https://reviews.llvm.org/D68542 (detail/ViewSVN)
    by atanasyan
  79. [Mips] Fix evaluating J-format branch targets

    J/JAL/JALX/JALS are absolute branches, but stay within the current
    256 MB-aligned region, so we must include the high bits of the
    instruction address when calculating the branch target.

    Patch by James Clarke.

    Differential Revision: https://reviews.llvm.org/D68548 (detail/ViewSVN)
    by atanasyan
  80. RewriteModernObjC - silence static analyzer getAs<> null dereference warnings. NFCI.

    The static analyzer is warning about potential null dereferences, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. (detail/ViewSVN)
    by rksimon
  81. AST - silence static analyzer getAs<> null dereference warnings. NFCI.

    The static analyzer is warning about potential null dereferences, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. (detail/ViewSVN)
    by rksimon
  82. [LLVM-C] Add bindings to create macro debug info

    Summary: The C API doesn't have the bindings to create macro debug information.

    Reviewers: whitequark, CodaFi, deadalnix

    Reviewed By: whitequark

    Subscribers: aprantl, hiraditya, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D58334 (detail/ViewSVN)
    by whitequark
  83. Fix sphinx warnings.

    Differential Revision: https://reviews.llvm.org/D64746 (detail/ViewSVN)
    by kpn
  84. Test commit

    Fix comment. (detail/ViewSVN)
    by mbrkusanin
  85. [FPEnv] Add constrained intrinsics for lrint and lround

    Earlier in the year intrinsics for lrint, llrint, lround and llround were
    added to llvm. The constrained versions are now implemented here.

    Reviewed by: andrew.w.kaylor, craig.topper, cameron.mcinally
    Approved by: craig.topper
    Differential Revision: https://reviews.llvm.org/D64746 (detail/ViewSVN)
    by kpn
  86. gn build: use better triple on windows

    The CMake build uses "x86_64-pc-windows-msvc". The "-msvc" suffix is
    important because e.g. clang/test/lit.cfg.py matches against the
    suffix "windows-msvc" to compute the presence of the "ms-sdk" and
    the absence of the "LP64" feature.

    Differential Revision: https://reviews.llvm.org/D68572 (detail/ViewSVN)
    by nico
  87. Revert r373888 "[IA] Recognize hexadecimal escape sequences"

    It broke MC/AsmParser/directive_ascii.s on all bots:

        Assertion failed: (Index < Length && "Invalid index!"), function operator[],
            file ../../llvm/include/llvm/ADT/StringRef.h, line 243. (detail/ViewSVN)
    by nico
  88. [clangd] Catch an unchecked "Expected<T>" in HeaderSourceSwitch.

    Summary: Also fixes a potential user-after-scope issue of "Path".

    Reviewers: kadircet

    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D68564 (detail/ViewSVN)
    by hokein
  89. [ASTImporter][NFC] Enable disabled but passing test

    RedeclChainShouldBeCorrectAmongstNamespaces (detail/ViewSVN)
    by martong
  90. [ASTImporter][NFC] Update ASTImporter internals docs (detail/ViewSVN)
    by martong
  91. [ASTImporter][NFC] Fix typo in user docs (detail/ViewSVN)
    by martong
  92. [AMDGPU] Fix test checks

    The GFX10-DENORM-STRICT checks were only passing by accident. Fix them
    to make the test more robust in the face of scheduling or register
    allocation changes. (detail/ViewSVN)
    by foad

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

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

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

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

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

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

This run spent:

  • 19 hr waiting;
  • 18 hr build duration;
  • 1 day 13 hr 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

Link error

A link command has failed:
Indication 3 Indication 4 Indication 5 Indication 6 Indication 7 Indication 8 Indication 9 Indication 10 Indication 11 Indication 12 Indication 13 Indication 14

Missing test results

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

Regression test failed

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