Started 1 mo 20 days ago
Took 18 hr on green-dragon-09

Failed Build #5453 (Aug 27, 2019 12:46:17 AM)

Revisions
  • http://llvm.org/svn/llvm-project/llvm/trunk : 370018
  • http://llvm.org/svn/llvm-project/cfe/trunk : 370000
  • http://llvm.org/svn/llvm-project/compiler-rt/trunk : 370025
  • http://llvm.org/svn/llvm-project/debuginfo-tests/trunk : 364589
  • http://llvm.org/svn/llvm-project/libcxx/trunk : 369800
  • http://llvm.org/svn/llvm-project/clang-tools-extra/trunk : 370022
Changes
  1. [asan_symbolize] Fix broken pipe handling for python 2.7

    I D65322 I added a check for BrokenPipeError. However, python 2.7 doesn't
    have BrokenPipeError. To be python 2.7 and 3 compatible we need to catch
    IOError instead and check for errno == errno.EPIPE. (detail/ViewSVN)
    by arichardson
  2. NFC: clang-format r370008 to suppress lint errors (detail/ViewSVN)
    by Vitaly Buka
  3. Revert "[clangd] Release notes" (wrong branch)

    This reverts commit 51029e5c153bd33efa015e2ec35b60247d046ce4. (detail/ViewSVN)
    by sammccall
  4. Relax test introduced in D65322

    It is possible that addr2line returns a valid function and file name for
    the passed address on some build configuations.
    The test is only checking that asan_symbolize doesn't assert any more when
    passed a valid file with an invalid address so there is no need to check
    that it can't find a valid function name.
    This should fix http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux (detail/ViewSVN)
    by arichardson
  5. [SelectionDAGBuilder] Hide existence of ConstantDataVector vector from visitGetElementPtr.

    ConstantDataVector is a specialized verison of ConstantVector
    that stores data in a packed array of bits instead of as
    individual pointers to other Constants. But we really shouldn't
    expose that if we can void it. And we should handle regular
    ConstantVector equally well.

    This removes a dyn_cast to ConstantDataVector and just calls
    getSplatValue directly on a Constant* if the type is a vector. (detail/ViewSVN)
    by ctopper
  6. [SelectionDAGBuilder] Fix typo in comment. NFC (detail/ViewSVN)
    by ctopper
  7. [ValueTracking] Add AllowNonInbounds parameter to GetPointerBaseWithConstantOffset function

    This commit was part of D65402. (detail/ViewSVN)
    by uenoku
  8. [Attributor] Clamp operator to extend known state

    Summary:
    Similar to `^=` operator for IntegerState, this patch introduces a `+=` operator to "clamp" known information.

    Reviewers: jdoerfert, sstefan1

    Reviewed By: jdoerfert

    Subscribers: llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66635 (detail/ViewSVN)
    by uenoku
  9. [Attributor] Introduce an API to delete stuff

    Summary:
    During the fixpoint iteration, including the manifest stage, we should
    not delete stuff as other abstract attributes might have a reference to
    the value. Through the API this can now be done safely at the very end.

    Reviewers: uenoku, sstefan1

    Subscribers: hiraditya, bollu, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66779 (detail/ViewSVN)
    by jdoerfert
  10. [NFC] Replace the FIXME I added in rL369989 with a comment clarifying the current code

    The current approach is restrictive (as all of geps must be multiples of the alignment), but correct. (detail/ViewSVN)
    by reames
  11. Fix buildbot (detail/ViewSVN)
    by David CARLIER
  12. [Sanitizer] Using huge page on FreeBSD for shadow mapping

    - Unless explicit configuration, using FreeBSD super pages feature for shadow mapping.
    - asan only for now.

    Reviewers: dim, emaste, vitalybuka

    Reviewed By: vitalybuka

    Differential Revision: https://reviews.llvm.org/D65851 (detail/ViewSVN)
    by David CARLIER
  13. [sanitizer] Add lld into dependency of sanitizer_common unittests (detail/ViewSVN)
    by Vitaly Buka
  14. Revert r369927 - [DAGCombiner] Remove a bunch of redundant AddToWorklist calls.

    This change causes instrumented builds of Clang to have a fatal error in the
    backend.  https://reviews.llvm.org/D66537 has the details. (detail/ViewSVN)
    by rtrieu
  15. [WinEH] Allocate space in funclets stack to save XMM CSRs

    Summary:
    This is an alternate approach to D63396

    Currently funclets reuse the same stack slots that are used in the
    parent function for saving callee-saved xmm registers. If the parent
    function modifies a callee-saved xmm register before an excpetion is
    thrown, the catch handler will overwrite the original saved value.

    This patch allocates space in funclets stack for saving callee-saved xmm
    registers and uses RSP instead RBP to access memory.

    Signed-off-by: Pengfei Wang <pengfei.wang@intel.com>

    Reviewers: rnk, RKSimon, craig.topper, annita.zhang, LuoYuanke, andrew.w.kaylor

    Subscribers: hiraditya, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66596

    Signed-off-by: Pengfei Wang <pengfei.wang@intel.com> (detail/ViewSVN)
    by pengfei
  16. Fix clangd's IndexAction for FileSkipped API update (detail/ViewSVN)
    by arphaman
  17. [Analysis] In EmitGEPOffset, use Constant::getUniqueInteger to handle struct indices in vector GEPs.

    We previously called getSplatValue if the index had a vector type,
    but getSplatValue returns null for non-splats. This would cause
    a nullptr dereference if it wasn't a splat.

    Using getUniqueInteger gives us an assert if its a vector type,
    but the value isn't a splat. This is what is used in
    SelectionDAGBuilder's code that expands GEPs as well. (detail/ViewSVN)
    by ctopper
  18. Revert "[clang-scan-deps] Minimizer: Correctly handle multi-line content with CR+LF line endings"

    This reverts commit r369986.

    This change added a dependency on the 'dos2unix' tool, which is not one
    of our accepted test dependencies and may not exist on all machines that
    build Clang. (detail/ViewSVN)
    by rsmith
  19. Don't lose the FoundDecl and template arguments for a DeclRefExpr in
    TreeTransform. (detail/ViewSVN)
    by rsmith
  20. Use FileEntryRef for PPCallbacks::FileSkipped

    This fixes the issue where a filename dependendency was missing if the file that
    was skipped was included through a symlink in an earlier run, if the file
    manager was reused between runs. (detail/ViewSVN)
    by arphaman
  21. [MemorySSA] Fix insertUse.

    Actually call the renamePass on inserted Phis.
    Fixes PR42940.

    Subscribers: llvm-commits (detail/ViewSVN)
    by asbirlea
  22. Add PhaseOrdering/lifetime-sanitizer.ll tests

    Reviewers: lebedev.ri

    Subscribers: llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66761 (detail/ViewSVN)
    by Vitaly Buka
  23. AMDGPU: Combine directly on mul24 intrinsics

    The problem these are supposed to work around can occur before the
    intrinsics are lowered into the nodes. Try to directly simplify them
    so they are matched before the bit assert operations can be optimized
    out. (detail/ViewSVN)
    by arsenm
  24. [clang-scan-deps] Skip UTF-8 BOM in source minimizer

    Differential Revision: https://reviews.llvm.org/D66511 (detail/ViewSVN)
    by aganea
  25. NFC: Make test work with or without assertions (detail/ViewSVN)
    by Vitaly Buka
  26. AMDGPU: Run AMDGPUCodeGenPrepare after scalar opts

    The mul24 matching could interfere with SLSR and the other addressing
    mode related passes. This probably is not the optimal placement, but
    is an intermediate step. This should probably be moved after all the
    generic IR passes, particularly LSR. Moving this after LSR seems to
    help in some cases, and hurts others.

    As-is in this patch, in idiv-licm, it saves 1-2 instructions inside
    some of the loop bodies, but increases the number in others. Moving
    this later helps these loops. In the new lsr tests in
    mul24-pass-ordering, the intrinsic prevents introducing more
    instructions in the loop preheader, so moving this later ends up
    hurting them. This shouldn't be any worse than before the intrinsics
    were introduced in r366094, and LSR should probably be smarter. I
    think it's because it doesn't know the and inside the loop will be
    folded away. (detail/ViewSVN)
    by arsenm
  27. Reorganize code and add a fixme to point out a bug in existing code [NFC] (detail/ViewSVN)
    by reames
  28. [clang-scan-deps] Minimizer: Correctly skip over double slashes in angle bracket #include

    Previously, double slashes (//) occurring in angle brackets #include were incorrectly interpreted as comments. eg. #include <dir//file.h>

    Differential Revision: https://reviews.llvm.org/D66550 (detail/ViewSVN)
    by aganea
  29. [clang-scan-deps] Minimizer: Correctly handle multi-line content with CR+LF line endings

    Previously, an #error directive with quoted, multi-line content, along with CR+LF line endings wasn't handled correctly.

    Differential Revision: https://reviews.llvm.org/D66556 (detail/ViewSVN)
    by aganea
  30. PR42587: diagnose unexpanded uses of a pack parameter of a generic
    lambda from within the lambda-declarator.

    Instead of trying to reconstruct whether a parameter pack was declared
    inside a lambda (which we can't do correctly in general because we might
    not have attached parameters to their declaration contexts yet), track
    the set of parameter packs introduced in each live lambda scope, and
    require only those parameters to be immediately expanded when they
    appear inside that lambda.

    In passing, fix incorrect disambiguation of a lambda-expression starting
    with an init-capture pack in a braced-init-list. We previously
    incorrectly parsed that as a designated initializer. (detail/ViewSVN)
    by rsmith
  31. [mips] Fix indentation. NFC (detail/ViewSVN)
    by atanasyan
  32. [mips] clang-format the code. NFC (detail/ViewSVN)
    by atanasyan
  33. [X86] Delay combineIncDecVector until after op legalization.

    Probably better to keep add over sub in early DAG combines.

    It might make sense to push this to lowering or delay it all
    the way to isel. But this was the simplest change. (detail/ViewSVN)
    by ctopper
  34. hwasan, codegen: Keep more lifetime markers used for hwasan

    Reviewers: eugenis

    Subscribers: cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66697 (detail/ViewSVN)
    by Vitaly Buka
  35. msan, codegen, instcombine: Keep more lifetime markers used for msan

    Reviewers: eugenis

    Subscribers: hiraditya, cfe-commits, #sanitizers, llvm-commits

    Tags: #clang, #sanitizers, #llvm

    Differential Revision: https://reviews.llvm.org/D66695 (detail/ViewSVN)
    by Vitaly Buka
  36. [WebAssembly] Fix SSA rebuilding in SjLj transformation

    Summary:
    Previously we skipped uses within the same BB as a def when rebuilding
    SSA after SjLj transformation. For example, before transformation,
    ```
    for.cond:
      %0 = phi i32 [ %var, %for.inc ] ...
      %var = ...
      br label %for.inc

    for.inc:                               ; preds = %for.cond
      call i32 @setjmp(...)
      br %for.cond
    ```

    In this BB, %var should be defined in all paths from %for.inc to make %0
    valid. In the input it was true; %for.inc's only predecessor was
    %for.cond. But after SjLj transformation, it is possible that %for.inc
    has other predecessors that are reachable without reaching %for.cond.
    ```
    entry.split:
      ...
      br i1 %a, label %bb.1, label %for.inc

    for.cond:
      %0 = phi i32 [ %var, %for.inc ] ...  ; Not valid!
      %var = ...
      br label %for.inc

    for.inc:                               ; preds = %for.cond, %entry.split
      call i32 @setjmp(...)
      ...
      br %for.cond
    ```

    In this case, we can't use %var in the `phi` instruction in %for.cond,
    because %var is not defined in all paths through %for.inc (If the
    control flow is %entry -> %entry.split -> %for.inc -> %for.cond, %var
    has not been defined until we reach the `phi`). But the previous code
    excluded users within the same BB, skipping instructions within the same
    BB so they are not rewritten properly. User instructions within the same
    BB also should be candidates for rewriting if they are _before_ the
    original definition.

    Fixes PR43097.

    Reviewers: dschuff

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

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66729 (detail/ViewSVN)
    by aheejin
  37. [hwasan] Fix test failure in r369721.

    Try harder to emulate "old runtime" in the test.
    To get the old behavior with the new runtime library, we need both
    disable personality function wrapping and enable landing pad
    instrumentation. (detail/ViewSVN)
    by eugenis
  38. [ORC] Make sure that queries on emitted-but-not-ready symbols fail correctly.

    In r369808 the failure scheme for ORC symbols was changed to make
    MaterializationResponsibility objects responsible for failing the symbols
    they represented. This simplifies error logic in the case where symbols are
    still covered by a MaterializationResponsibility, but left a gap in error
    handling: Symbols that have been emitted but are not yet ready (due to a
    dependence on some unemitted symbol) are not covered by a
    MaterializationResponsibility object. Under the scheme introduced in r369808
    such symbols would be moved to the error state, but queries on those symbols
    were never notified. This led to deadlocks when such symbols were failed.

    This commit updates error logic to immediately fail queries on any symbol that
    has already been emitted if one of its dependencies fails. (detail/ViewSVN)
    by Lang Hames
  39. [ORC] Fix an overly aggressive assert.

    Symbols that have not been queried will not have MaterializingInfo entries,
    so remove the assert that all failed symbols should have these entries.
    Also updates the loop to only remove entries that were found earlier. (detail/ViewSVN)
    by Lang Hames
  40. [WebAssembly] Combine emscripten SjLj tests

    Summary:
    Combine a test in lower-em-sjlj-longjmp-only.ll into lower-em-sjlj.ll,
    because the test command is the same and I don't see any reason it
    should be a separate file. Also converted tabs into spaces and fixed
    indentations in lower-em-sjlj-sret.ll. (lower-em-sjlj.ll uses a
    different test command (llc), so it couldn't be combined)

    Reviewers: dschuff

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

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66728 (detail/ViewSVN)
    by aheejin
  41. [GlobalISel] Import patterns containing INSERT_SUBREG

    This teaches the importer to handle INSERT_SUBREG instructions.

    We were missing patterns involving INSERT_SUBREG in AArch64. It appears in
    AArch64InstrInfo.td 107 times, and 14 times in AArch64InstrFormats.td.

    To meaningfully import it, the GlobalISelEmitter needs to know how to infer a
    super register class for a given register class.

    This patch introduces the following:

    - `getSuperRegForSubReg`, a function which finds the largest register class
    which supports a value type and subregister index

    - `inferSuperRegisterClass`, a function which finds the appropriate super
    register class for an INSERT_SUBREG'

    - `inferRegClassFromPattern`, a function which allows for some trivial
    lookthrough into instructions

    - `getRegClassFromLeaf`, a helper function which returns the register class for
    a leaf `TreePatternNode`

    - Support for subregister index operands in `importExplicitUseRenderer`

    It also

    - Updates tests in each backend which are impacted by the change

    - Adds GlobalISelEmitterSubreg.td to test that we import and skip the expected
    patterns

    As a result of this patch, INSERT_SUBREG patterns in X86 may use the
    LOW32_ADDR_ACCESS_RBP register class instead of GR32. This is correct, since the
    register class contains the same registers as GR32 (except with the addition of
    RBP). So, this also teaches X86 to handle that register class. This is in line
    with X86ISelLowering, which treats this as a GR class.

    Differential Revision: https://reviews.llvm.org/D66498 (detail/ViewSVN)
    by paquette
  42. Revert r369843 "[Testing] Unbreak r369830"

    That was not the fix.

    This reverts commit 8bcf690ae03db85608b2ea22eac7a91c84df4dc. (detail/ViewSVN)
    by Vitaly Buka
  43. Debug Info: Support for DW_AT_export_symbols for anonymous structs

    This implements the DWARF 5 feature described in:

    http://dwarfstd.org/ShowIssue.php?issue=141212.1

    To support recognizing anonymous structs:

      struct A {
        struct { // Anonymous struct
            int y;
        };
      } a

    This patch adds support for the new flag in constructTypeDIE(...) and test to verify this change.

    Differential Revision: https://reviews.llvm.org/D66605 (detail/ViewSVN)
    by shafik
  44. Updating a test case that was missed in r369957. (detail/ViewSVN)
    by aaronballman
  45. [DWARF] Rename getDwarf5OrGNUCallSite{Attr,Tag}, NFC (detail/ViewSVN)
    by Vedant Kumar
  46. [DWARF] Pick the DWARF5 OP_entry_value opcode on Darwin

    Use the GNU extension for OP_entry_value consistently (i.e. whenever GNU
    extensions are used for TAG_call_site). (detail/ViewSVN)
    by Vedant Kumar
  47. Remove unused variables. (detail/ViewSVN)
    by d0k
  48. [DebugInfo] Add debug-entry-values test coverage, NFC

    Check that call site descriptions are emitted in dwarf4 + lldb +
    debug-entry-values mode. (detail/ViewSVN)
    by Vedant Kumar
  49. [test] Remove extra spaces from a test, NFC (detail/ViewSVN)
    by Vedant Kumar
  50. Add a clarify comment for meaning of SafePointes [NFC]

    Extracted from D66688 as requested. (detail/ViewSVN)
    by reames
  51. [ADT] Make StringRef(const char*) constexpr

    This should let us get rid of StringLiteral in the long term and avoid
    chasing accidental StringRef globals once and for all.

    This requires C++14, I godbolted it on every compiler I know we support
    so I hope there won't be much fallout. (detail/ViewSVN)
    by d0k
  52. Fixing a weird copy-pasta to get bots back to green. (detail/ViewSVN)
    by aaronballman
  53. Preland test cases for D66688 to make diffs clear. (detail/ViewSVN)
    by reames
  54. ContentCache: Drop getBuffer's dependency on SourceManager

    Refactor ContentCache::IsSystemFile to IsFileVolatile, checking
    SourceManager::userFilesAreVolatile at construction time.  This is a
    step toward lowering ContentCache down from SourceManager to
    FileManager.

    No functionality change intended.

    https://reviews.llvm.org/D66713 (detail/ViewSVN)
    by Duncan P. N. Exon Smith
  55. Reword the C11 extension diagnostic.

    This makes it more consistent with other language extension diagnostics. (detail/ViewSVN)
    by aaronballman
  56. Fix gen-cdb-fragment test for Windows

    Windows bots didn't seem to like the empty argument, so I rewrote the test. (detail/ViewSVN)
    by arphaman
  57. [Clang][Bundler] Use llvm-objcopy for creating fat object files

    clang-offload-bundler currently uses partial linking for creating fat object files, but such technique cannot be used on Windows due to the absence of partial linking support in the linker. This patch changes implementation to use llvm-objcopy for merging device and host objects instead of doing partial linking. This is one step forward towards enabling OpenMP offload on Windows.

    Differential Revision: https://reviews.llvm.org/D66485 (detail/ViewSVN)
    by sdmitriev
  58. Diagnose use of _Thread_local as an extension when not in C11 mode. (detail/ViewSVN)
    by aaronballman
  59. gn build: Merge r369918 (detail/ViewSVN)
    by nico
  60. Recommit [PowerPC] Update P9 vector costs for insert/extract

    Now that the v1i128 smin regression has been fixed, recommit the P9 cost
    updates from D60160. (detail/ViewSVN)
    by froese
  61. gn build: color linker errors when using lld (detail/ViewSVN)
    by nico
  62. gn build: (manually) merge r369741 (detail/ViewSVN)
    by nico
  63. [InstCombine] icmp eq/ne (gep inbounds P, Idx..), null -> icmp eq/ne P, null for vectors

    Extend the transform introduced in https://reviews.llvm.org/D66608 to work for vector geps as well.

    Differential Revision: https://reviews.llvm.org/D66671 (detail/ViewSVN)
    by reames
  64. gn build: (manually) merge r369940 (detail/ViewSVN)
    by nico
  65. [Hexagon] Improve generated code for test-if-bit-clear (detail/ViewSVN)
    by kparzysz
  66. [OPENMP][NVPTX]Fix critical region codegen.

    Summary:
    Previously critical regions were emitted with the barrier making it a
    worksharing construct though it is not. Also, it leads to incorrect
    behavior in Cuda9+. Patch fixes this problem.

    Reviewers: ABataev, jdoerfert

    Subscribers: jholewinski, guansong, cfe-commits, grokos

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66673 (detail/ViewSVN)
    by abataev
  67. [Attributor] Adjust and test the iteration bound of tests

    Summary:
    Try to verify how many iterations we need for a fixpoint in our tests.
    This patch adjust the way we count to make it easier to follow. It also
    adjusts the bounds to actually account for a fixpoint and not only the
    minimum number to pass all checks.

    Reviewers: uenoku, sstefan1

    Subscribers: hiraditya, bollu, llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66757 (detail/ViewSVN)
    by jdoerfert
  68. [msvc] Add necessary #include to make compiler intrinsics available. (detail/ViewSVN)
    by rsmith
  69. FileManager: Use llvm::Expected in new getFileRef API

    `FileManager::getFileRef` is a modern API which we expect to convert to
    over time.  We should modernize the error handling as well, using
    `llvm::Expected` instead of `llvm::ErrorOr`, to help clients that care
    about errors to ensure nothing is missed.

    However, not all clients care.  I've also added another path for those
    that don't:

    - `FileEntryRef` is now copy- and move-assignable (using a pointer
      instead of a reference).
    - `FileManager::getOptionalFileRef` returns an `llvm::Optional` instead
      of `llvm::Expected`.
    - Added an `llvm::expectedToOptional` utility in case this is useful
      elsewhere.

    https://reviews.llvm.org/D66705 (detail/ViewSVN)
    by Duncan P. N. Exon Smith
  70. [X86] Add a hack to combinePMULDQ to manually turn SIGN_EXTEND_VECTOR_INREG/ZERO_EXTEND_VECTOR_INREG inputs into an ANY_EXTEND_VECTOR_INREG style shuffle

    ANY_EXTEND_VECTOR_INREG isn't currently marked Legal which prevents SimplifyDemandedBits from turning SIGN/ZERO_EXTEND_VECTOR_INREG into it after op legalization. And even if we did make it Legal, combineExtInVec doesn't do shuffle combining on the VECTOR_INREG nodes until AVX1.

    This patch adds a quick hack to combinePMULDQ to directly emit a vector shuffle corresponding to an ANY_EXTEND_VECTOR_INREG operation. This avoids both of those issues without creating any other regressions on our tests. The xop-ifma.ll change here also showed up when I tried to resurrect D56306 and seemed to be the only improvement that patch creates now. This is a more direct way to get the benefit.

    Differential Revision: https://reviews.llvm.org/D66436 (detail/ViewSVN)
    by ctopper
  71. Fix file header. (detail/ViewSVN)
    by rsmith
  72. Improve behavior in the case of stack exhaustion.

    Summary:
    Clang performs various recursive operations (such as template instantiation),
    and may use non-trivial amounts of stack space in each recursive step (for
    instance, due to recursive AST walks). While we try to keep the stack space
    used by such steps to a minimum and we have explicit limits on the number of
    such steps we perform, it's impractical to guarantee that we won't blow out the
    stack on deeply recursive template instantiations on complex ASTs, even with
    only a moderately high instantiation depth limit.

    The user experience in these cases is generally terrible: we crash with
    no hint of what went wrong. Under this patch, we attempt to do better:

    * Detect when the stack is nearly exhausted, and produce a warning with a
       nice template instantiation backtrace, telling the user that we might
       run slowly or crash.

    * For cases where we're forced to trigger recursive template
       instantiation in arbitrarily-deeply-nested contexts, check whether
       we're nearly out of stack space and allocate a new stack (by spawning
       a new thread) after producing the warning.

    Reviewers: rnk, aaron.ballman

    Subscribers: mgorny, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66361 (detail/ViewSVN)
    by rsmith
  73. [driver] add a new option `-gen-cdb-fragment-path` to emit
    a fragment of a compilation database for each compilation

    This patch adds a new option called -gen-cdb-fragment-path to the driver,
    which can be used to specify a directory path to which clang can emit a fragment
    of a CDB for each compilation it needs to invoke.

    This option emits the same CDB contents as -MJ, and will be ignored if -MJ is specified.

    Differential Revision: https://reviews.llvm.org/D66555 (detail/ViewSVN)
    by arphaman
  74. [DAGCombiner][X86] Teach SimplifyVBinOp to fold VBinOp (concat X, undef/constant), (concat Y, undef/constant) -> concat (VBinOp X, Y), VecC

    This improves the combine I included in D66504 to handle constants in the upper operands of the concat. If we can constant fold them away we can pull the concat after the bin op. This helps with chains of madd reductions on X86 from loop unrolling. The loop madd reduction pattern creates pmaddwd with half the width of the add that follows it using zeroes to fill the upper bits. If we have two of these added together we can pull the zeroes through the accumulating add and then shrink it.

    Differential Revision: https://reviews.llvm.org/D66680 (detail/ViewSVN)
    by ctopper
  75. [Attributor] Further cut down on non-determinism (detail/ViewSVN)
    by jdoerfert
  76. [Attributor] Allow explicit dependence tracking

    By default, the Attributor tracks potential dependences between abstract
    attributes based on the issued Attributor::getAAFor queries. This
    simplifies the development of new abstract attributes but it can also
    lead to spurious dependences that might increase compile time and make
    internalization harder (D63312). With this patch, abstract attributes
    can opt-out of implicit dependence tracking and instead register
    dependences explicitly. It is up to the implementation to make sure all
    existing dependences are registered.

    Differential Revision: https://reviews.llvm.org/D63314 (detail/ViewSVN)
    by jdoerfert
  77. [clangd] Release notes (detail/ViewSVN)
    by sammccall
  78. Fix use of invalidated iterator introduced by r369680. (detail/ViewSVN)
    by rsmith
  79. [libclang][index][NFCi] Refactor machinery for skipping function bodies

    Refactor machinery for skipping inline function bodies that have already
    been parsed in other frontend actions.

    Preparations for moving this code to libIndex.

    Differential Revision: https://reviews.llvm.org/D66694 (detail/ViewSVN)
    by Jan Korous
  80. [asan_symbolize] Attempt to fix build-bot failure after latest change (detail/ViewSVN)
    by arichardson
  81. [NFC] Add comments to some bool arguments for better readability (detail/ViewSVN)
    by xazax
  82. [DAGCombiner] Remove a bunch of redundant AddToWorklist calls.

    Summary:
    This comes as a first step toward processing the DAG nodes in topological orders. Doing so ensure that arguments of a node are combined before the node itself is combined, which exposes ore opportunities for optimization and/or reduce the amount of patterns a node has to match for.

    DAGCombiner adding nodes to the worklist is various places causes the nodes to be in a different order from what is expected. In addition, this is reduant because these nodes end up being added to the worklist anyways due to the machinery at line 1621.

    Reviewers: craig.topper, efriedma, RKSimon, lebedev.ri

    Subscribers: llvm-commits

    Tags: #llvm

    Differential Revision: https://reviews.llvm.org/D66537 (detail/ViewSVN)
    by deadalnix
  83. Fix -dA flag, it is not a preprocessor flag.

    -dA was in the d_group, which is a preprocessor state dumping group.
    However -dA is a debug flag to cause a verbose asm.  It was already
    implemented to do the same thing as -fverbose-asm, so make it just be an
    alias. (detail/ViewSVN)
    by erichkeane
  84. [clang-doc] Switch Generator::CreateResources to use llvm::Error

    Differential Revision: https://reviews.llvm.org/D66502 (detail/ViewSVN)
    by juliehockett
  85. [asan_symbolize] Avoid blocking when llvm-symbolizer is installed as addr2line

    Summary:
    Currently, llvm-symbolizer will print -1 when presented with -1 and not
    print a second line. In that case we will block for ever trying to read
    the file name. This also happens for non-existent files, in which case GNU
    addr2line exits immediate, but llvm-symbolizer does not (see
    https://llvm.org/PR42754). While touching these lines, I also added some
    more debug logging to help diagnose this and potential future issues.

    Reviewers: kcc, eugenis, glider, samsonov

    Reviewed By: eugenis

    Subscribers: kubamracek, #sanitizers, llvm-commits

    Tags: #sanitizers, #llvm

    Differential Revision: https://reviews.llvm.org/D65322 (detail/ViewSVN)
    by arichardson
  86. [PowerPC] add tests for fma with negated ops; NFC (detail/ViewSVN)
    by spatel
  87. [clangd] Fix docs (detail/ViewSVN)
    by kadircet
  88. [SampleFDO] Extract the code calling each section reader to readOneSection.

    This is a followup of https://reviews.llvm.org/D66513. The code calling each
    section reader should be put into a separate function (readOneSection), so
    SampleProfileExtBinaryReader can override it. Otherwise, the base class
    SampleProfileExtBinaryBaseReader will need to be aware of all different kinds
    of section readers. That is not right.

    Differential Revision: https://reviews.llvm.org/D66693 (detail/ViewSVN)
    by wmi
  89. Moved GlobList into a separate header file

    Summary:
    It is a separate abstraction that is used in more contexts than just
    a helper for ClangTidyDiagnosticConsumer.

    Subscribers: mgorny, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66747 (detail/ViewSVN)
    by gribozavr
  90. [clangd] Add docs for configuration knobs in clangd

    Summary:
    This is a first step in documenting different configuration knobs we
    have in clangd.

    Reviewers: sammccall

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

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66740 (detail/ViewSVN)
    by kadircet
  91. clang-format: [JS] handle `as const`.

    Summary:
    TypeScript 3.4 supports casting into a const type using `as const`:

        const x = {x: 1} as const;

    Previously, clang-format would insert a space after the `const`. With
    this patch, no space is inserted after the sequence `as const`.

    Reviewers: krasimir

    Subscribers: cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66736 (detail/ViewSVN)
    by mprobst
  92. [clang-tidy][NFC] Qualify `makeRule` call in test, for consistency with other calls.

    One call `makeRule` is unqualified (and unintentionally relying on ADL to
    resolve correctly). This revision qualifies that call for consistency and to
    drop use of ADL. (detail/ViewSVN)
    by ymandel
  93. [clang-tidy] TransformerClangTidyCheck: change choice of location for diagnostic message.

    Summary:
    This patch changes the location specified to the
    `ClangTidyCheck::diag()`. Currently, the beginning of the matched range is
    used. This patch uses the beginning of the first fix's range.  This change both
    simplifies the code and (hopefully) gives a more intuitive result: the reported
    location aligns with the fix(es) provided, rather than the (arbitrary) range of
    the rule's match.

    N.B. this patch will break the line offset numbers in lit tests if the first fix
    is not at the beginning of the match.

    Reviewers: gribozavr

    Subscribers: xazax.hun, cfe-commits

    Tags: #clang

    Differential Revision: https://reviews.llvm.org/D66676 (detail/ViewSVN)
    by ymandel

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

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

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

This run spent:

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

Compile Error

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

Missing test results

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