SuccessChanges

Summary

  1. [Debuginfo][NFC] Unify error reporting routines inside DebugInfoDWARF. (details)
  2. Revert "[ARM] Add CPSR as an implicit use of t2IT" (details)
  3. [CostModel][X86] Improve extract/insert element costs (PR43605) (details)
  4. [InstCombine] Add PR14365 test cases + vector equivalents. (details)
  5. [WebAssembly] Add an `isWasm` target triple predicate. (details)
  6. [WebAssembly] Teach lld how to demangle "__main_argc_argv". (details)
  7. [WebAssembly] Mangle the argc/argv `main` as `__wasm_argc_argv`. (details)
  8. [Transforms][Debugify] Ignore PHI nodes when checking for DebugLocs (details)
  9. Revert "[SYCL] Driver option to select SYCL version" (details)
  10. Remove BinaryOperator::CreateFNeg (details)
  11. Add an attribute registry so plugins can add attributes (details)
  12. [InstCombine] DCE instructions earlier (details)
  13. [mlir] Hotfix - Rename MLIRRuntimeUtils to mlir_runtime_utils (details)
  14. [AMDGPU] improve fragile test for divergent branches (details)
  15. Forward declare special case lists (details)
  16. Forward declare FileEntry and DirectoryEntry in Module.h (details)
  17. [libc++] Mark more try_lock tests as possibly flaky. (details)
  18. [XCOFF] Don't emit non-external labels in the symbol table and handle MCSA_LGlobal (details)
  19. [clang-tidy] Store all ranges in clang::tooling::Diagnostic (details)
  20. [MLIR] add show-dialects option for mlir-opt (details)
  21. [MLIR][Loops] Expose transformations on loop.parallel in header (NFC). (details)
  22. [mlir] NFC - Split out RunnerUtils that don't require a C++ runtime (details)
  23. [LLDB] Fix AddressSanitizer failure in MemoryCache (details)
  24. [AArch64] regenerate complete test checks; NFC (details)
  25. [AArch64] add splat shuffle combine test; NFC (details)
Commit f943443e65115c83648f1185adedb3d333f8619f by a.v.lapshin
[Debuginfo][NFC] Unify error reporting routines inside DebugInfoDWARF.

Summary:
Error reporting in DebugInfoDWARF library currently done in three ways :

1. Direct calls to WithColor::error()/WithColor::warning()
2. ErrorPolicy defaultErrorHandler(Error E);
3. void dumpWarning(Error Warning);

additionally, other locations could have more variations:

lld/ELF/SyntheticSection.cpp
    if (Error e = cu->tryExtractDIEsIfNeeded(false)) {
      error(toString(sec) + ": " + toString(std::move(e)));

DebugInfo/DWARF/DWARFUnit.cpp
  if (Error e = tryExtractDIEsIfNeeded(CUDieOnly))
    WithColor::error() << toString(std::move(e));

Thus error reporting could look inconsistent. To have a consistent error
messages it is necessary to have a possibility to redefine error
reporting functions. This patch creates two handlers and allows to
redefine them. It also patches all places inside DebugInfoDWARF
to use these handlers.

The intention is always to use following handlers for error reporting
purposes inside DebugInfoDWARF:

DebugInfo/DWARF/DWARFContext.h

std::function<void(Error E)> RecoverableErrorHandler = WithColor::defaultErrorHandler;
std::function<void(Error E)> WarningHandler = WithColor::defaultWarningHandler;

This is last patch from series of patches: D74481, D74635, D75118.

Reviewers: jhenderson, dblaikie, probinson, aprantl, JDevlieghere

Reviewed By: jhenderson

Subscribers: grimar, hiraditya, llvm-commits

Tags: #llvm, #debug-info

Differential Revision: https://reviews.llvm.org/D74308
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp
Commit 965ba4291a6d978c7d4d98831d6ae62e9761f37d by sam.parker
Revert "[ARM] Add CPSR as an implicit use of t2IT"

This reverts commit e58229fded0407f3e4f77cd87bedcd4d35bb7c89.

Differential Revision: https://reviews.llvm.org/D75186
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/multiblock-massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-16.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-ignore-vctp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/extract-element.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unrolled-and-vector.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-vpsel-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-elem-moves.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-mov.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-8.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/switch.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-def-before-start.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-liveout-lsr-shift.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-itercount.mir
The file was modifiedllvm/test/CodeGen/ARM/constant-islands-split-IT.mir
The file was modifiedllvm/test/CodeGen/ARM/tail-dup-bundle.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp16-reduce.mir
The file was modifiedllvm/test/CodeGen/Thumb2/t2-teq-reduce.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-add-operand-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-use.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update2.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-store.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri12.mir
The file was modifiedllvm/test/CodeGen/Thumb2/constant-islands-cbz.mir
The file was modifiedllvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-cbnz.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-header.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-random.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/size-limit.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-start-after-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-chain.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-lr-terminator.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri.mir
The file was modifiedllvm/test/CodeGen/MIR/ARM/bundled-instructions.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-reorder.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cmplx_cong.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subi3.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-operand-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-load.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-32.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-opcode-liveout.mir
Commit 168a44a70eb562f9a88a2e25b6ffd9cca3b25052 by llvm-dev
[CostModel][X86] Improve extract/insert element costs (PR43605)

This tries to improve the accuracy of extract/insert element costs by accounting for subvector extraction/insertion for >128-bit vectors and the shuffling of elements to/from the 0'th index.

It also adds INSERTPS for f32 types and PINSR/PEXTR costs for integer types (at the moment we assume the same cost as MOVD/MOVQ - which isn't always true).

Differential Revision: https://reviews.llvm.org/D74976
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr35497.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/zext.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vshift-ashr-cost.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/X86/fround.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/resched.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vshift-lshr-cost.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vector-extract.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hadd.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/sitofp.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/commutativity.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleaving.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vector-insert.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fptosi.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/remark_horcost.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fptoui.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/load_store.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/extend.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR35865.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hsub.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/arith-fp.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
Commit 080890a9f38ff63f9693b55b263dc433ba8bed7a by llvm-dev
[InstCombine] Add PR14365 test cases + vector equivalents.
The file was addedllvm/test/Transforms/InstCombine/pr14365.ll
Commit c08384a3aeeb81646750543cd5637e096d6fc4b1 by sunfish
[WebAssembly] Add an `isWasm` target triple predicate.

This simplies code which needs to apply the same logic to both wasm32
and wasm64.

This patch is part of https://reviews.llvm.org/D70700.
The file was modifiedllvm/include/llvm/ADT/Triple.h
Commit 197bda587b4bb5e7603ad05fc1106332edc6afbd by sunfish
[WebAssembly] Teach lld how to demangle "__main_argc_argv".

WebAssembly requires that caller and callee signatures match, so it
can't do the usual trick of passing more arguments to main than it
expects. Instead WebAssembly will mangle "main" with argc/argv
parameters as "__main_argc_argv". This patch teaches lld how to
demangle it.

This patch is part of https://reviews.llvm.org/D70700.
The file was modifiedlld/wasm/Symbols.cpp
Commit 00072c08c75050ae2c835b7bb0e505475dbcd7b9 by sunfish
[WebAssembly] Mangle the argc/argv `main` as `__wasm_argc_argv`.

WebAssembly enforces a rule that caller and callee signatures must
match. This means that the traditional technique of passing `main`
`argc` and `argv` even when it doesn't need them doesn't work.

Currently the backend renames `main` to `__original_main`, however this
doesn't interact well with LTO'ing libc, and the name isn't intuitive.
This patch allows us to transition to `__main_argc_argv` instead.

This implements the proposal in
https://github.com/WebAssembly/tool-conventions/pull/134
with a flag to disable it when targeting Emscripten, though this is
expected to be temporary, as discussed in the proposal comments.

Differential Revision: https://reviews.llvm.org/D70700
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was addedclang/test/CodeGen/wasm-call-main.c
The file was modifiedclang/lib/AST/Mangle.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was addedclang/test/CodeGen/wasm-main_argc_argv.c
The file was modifiedclang/lib/Frontend/InitHeaderSearch.cpp
The file was addedclang/test/CodeGen/wasm-main.c
Commit f64e457cb75b61f6566de8327a1bfae498d5a296 by pierre.vanhoutryve
[Transforms][Debugify] Ignore PHI nodes when checking for DebugLocs

Fix for: https://bugs.llvm.org/show_bug.cgi?id=37964

Differential Revision: https://reviews.llvm.org/D75242
The file was modifiedllvm/lib/Transforms/Utils/Debugify.cpp
The file was addedllvm/test/DebugInfo/pr37964.ll
Commit 740ed617f7d4d16e7883636c5eff994f8be7eba4 by alexey.bader
Revert "[SYCL] Driver option to select SYCL version"

This reverts commit bd97704eaaaab5a95ecb048ce343c1a4be5d94e5.

It broke tests on mac: http://45.33.8.238/mac/9011/step_7.txt
The file was modifiedclang/test/Driver/sycl.c
The file was modifiedclang/test/SemaSYCL/kernel-attribute.cpp
The file was modifiedclang/test/Frontend/sycl-aux-triple.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/test/Preprocessor/sycl-macro.cpp
Commit ddd11273d9d0807e25a34181e5978e3307d78dc2 by simon.moll
Remove BinaryOperator::CreateFNeg

Use UnaryOperator::CreateFNeg instead.

Summary:
With the introduction of the native fneg instruction, the
fsub -0.0, %x idiom is obsolete. This patch makes LLVM
emit fneg instead of the idiom in all places.

Reviewed By: cameron.mcinally

Differential Revision: https://reviews.llvm.org/D75130
The file was modifiedllvm/test/Transforms/InstCombine/pow-1.ll
The file was modifiedclang/test/CodeGen/complex-math.c
The file was modifiedllvm/lib/Transforms/Scalar/Reassociate.cpp
The file was modifiedllvm/test/Transforms/InstCombine/minimum.ll
The file was modifiedllvm/test/Transforms/InstCombine/fsub.ll
The file was modifiedllvm/test/Transforms/InstCombine/fpcast.ll
The file was modifiedllvm/test/Transforms/InstCombine/maximum.ll
The file was modifiedllvm/test/Transforms/Reassociate/fast-basictest.ll
The file was modifiedllvm/include/llvm/IR/InstrTypes.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fneg.ll
The file was modifiedllvm/test/Transforms/InstCombine/minnum.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fmul.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fast-math.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
The file was modifiedllvm/test/Transforms/InstCombine/maxnum.ll
The file was modifiedllvm/test/Transforms/Reassociate/fp-expr.ll
The file was modifiedllvm/test/Transforms/InstCombine/minmax-fp.ll
The file was modifiedllvm/test/Transforms/InstCombine/cos-sin-intrinsic.ll
Commit 75d4d4bd028f6a5f24ef41dbbc45bed65b2305cf by john.brawn
Add an attribute registry so plugins can add attributes

When constructing a ParsedAttr the ParsedAttrInfo gets looked up in the
AttrInfoMap, which is auto-generated using tablegen. If that lookup fails then
we look through the ParsedAttrInfos that plugins have added to the registry and
check if any has a spelling that matches.

Differential Revision: https://reviews.llvm.org/D31338
The file was modifiedclang/lib/Sema/ParsedAttr.cpp
The file was modifiedclang/lib/Basic/Attributes.cpp
The file was modifiedclang/include/clang/Sema/ParsedAttr.h
The file was modifiedclang/utils/TableGen/ClangAttrEmitter.cpp
The file was modifiedclang/include/clang/Basic/AttributeCommonInfo.h
Commit 4ef272ec9c5f737b8d63a3cc8870d8d63bf0385e by nikita.ppv
[InstCombine] DCE instructions earlier

When InstCombine initially populates the worklist, it already
performs constant folding and DCE. However, as the instructions
are initially visited in program order, this DCE can pick up only
the last instruction of a dead chain, the rest would only get
picked up in the main InstCombine run.

To avoid this, we instead perform the DCE in separate pass over the
collected instructions in reverse order, which will allow us to
pick up full dead instruction chains. We already need to do this
reverse iteration anyway to populate the worklist, so this
shouldn't add extra cost.

This by itself only fixes a small part of the problem though:
The same basic issue also applies during the main InstCombine loop.
We generally always want DCE to occur as early as possible,
because it will allow one-use folds to happen. Address this by also
performing DCE while adding deferred instructions to the main worklist.

This drops the number of tests that perform more than 2 InstCombine
iterations from ~80 to ~40. There's some spurious test changes due
to operand order / icmp toggling.

Differential Revision: https://reviews.llvm.org/D75008
The file was modifiedllvm/test/Transforms/InstCombine/demorgan-sink-not-into-xor.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-imm-canon.ll
The file was modifiedllvm/test/Transforms/InstCombine/logical-select.ll
The file was modifiedllvm/test/Transforms/InstCombine/sub-ashr-or-to-icmp-select.ll
The file was modifiedllvm/include/llvm/Transforms/InstCombine/InstCombineWorklist.h
The file was modifiedllvm/test/Transforms/InstCombine/sub-ashr-and-to-icmp-select.ll
The file was modifiedllvm/test/Transforms/InstCombine/vec_sext.ll
The file was modifiedllvm/test/Transforms/InstCombine/2010-11-01-lshr-mask.ll
The file was modifiedllvm/test/Transforms/InstCombine/pr44245.ll
Commit 512f345a5db163ac52bf0223f749acc6188e6138 by ntv
[mlir] Hotfix - Rename MLIRRuntimeUtils to mlir_runtime_utils
The file was modifiedmlir/test/CMakeLists.txt
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
Commit 0c8a21879872c8ca8aa5966263f9d67207b3108e by sameer.sahasrabuddhe
[AMDGPU] improve fragile test for divergent branches

Summary:
The affected LIT test intends to test the correct use of divergence
analysis to detect a divergent branch with a uniform predicate. The
passes involved are LLVM IR passes, but the test runs llc and tries to
match against generated ISA, which makes it hard to demonstrate that
the intended behavior was really tested. Replaced this with a test
that invokes opt on the required passes and then checks for the
appropriate changes in the LLVM IR.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D75267
The file was modifiedllvm/test/CodeGen/AMDGPU/divergent-branch-uniform-condition.ll
Commit 04da3dfecc199a7fdd262b06eeb399fc8ce0d1f6 by rnk
Forward declare special case lists

This avoids pulling in unordered_map from TrigramIndex.h:

$ diff -u thedeps-before.txt thedeps-after.txt | \
        grep '^[-+] ' | sort | uniq -c | sort -nr
    976 -    ../llvm/include/llvm/Support/TrigramIndex.h
    976 -    ../llvm/include/llvm/Support/SpecialCaseList.h
    976 -    ../clang/include/clang/Basic/SanitizerSpecialCaseList.h
    502 -    ../../../PROGRA~2/MIB055~1/2019/PROFES~1/VC/Tools/MSVC/14.24.28314/include/unordered_map
    467 -    ../../../PROGRA~2/MIB055~1/2019/PROFES~1/VC/Tools/MSVC/14.24.28314/include/xhash
    467 -    ../../../PROGRA~2/MIB055~1/2019/PROFES~1/VC/Tools/MSVC/14.24.28314/include/xbit_ops.h
    212 -    ../llvm/include/llvm/ADT/StringSet.h
The file was modifiedclang/include/clang/Basic/XRayLists.h
The file was modifiedclang/include/clang/Basic/SanitizerBlacklist.h
The file was modifiedclang/lib/Basic/SanitizerBlacklist.cpp
The file was modifiedclang/lib/Basic/XRayLists.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/include/clang/Basic/SanitizerSpecialCaseList.h
The file was modifiedclang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
Commit bc8836651fba3304d92e1025ff6a918f25e9e209 by rnk
Forward declare FileEntry and DirectoryEntry in Module.h

FileManager.h is an expensive header (~350ms for me in isolation), so
try to do without it.

Notably, we need to avoid checking the alignment of FileEntry, which
happens for DenseMap<FileEntry*> and PointerUnion<FileEntry*>. I
adjusted the code to avoid PointerUnion, and moved the DenseMap
insertion to the .cpp file.

Globally, this only saved about ~17 includes of the related headers
because SourceManager.h still includes FileManager.h, and it is more
popular than Module.h.
The file was modifiedclang/include/clang/Basic/Module.h
The file was modifiedclang/lib/Basic/Module.cpp
The file was modifiedclang/lib/Lex/ModuleMap.cpp
The file was modifiedclang/include/clang/Serialization/ModuleFile.h
Commit d4ad2adb0046ef5bc4276552f978b43446e9c0c2 by eric
[libc++] Mark more try_lock tests as possibly flaky.

These tests check that an operations happens within a specified
deadline, which causes flaky failures on slow machines or machines
under heavy load.

By adding the // FLAKY_TEST. tag it allows the test suite to
retry or ignore the tests
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp
Commit d32fa59fa007ba53b8453f96a5661b149e4715c7 by daltenty
[XCOFF] Don't emit non-external labels in the symbol table and handle MCSA_LGlobal

Summary:
We need to handle the  MCSA_LGlobal case in emitSymbolAttribute for functions marked internal in the IR so that the
appropriate storage class is emitted on the function descriptor csect.  As part of this we need to make sure that external
labels are not emitted into the symbol table, so we don't emit the descriptor label in the object writing path.

Reviewers: jasonliu, DiggerLin, hubert.reinterpretcast

Reviewed By: jasonliu

Subscribers: Xiangling_L, wuzish, nemanjai, hiraditya, jsji, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D74968
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-const.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
The file was modifiedllvm/lib/MC/MCXCOFFStreamer.cpp
The file was addedllvm/test/CodeGen/PowerPC/aix-internal.ll
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
Commit b26c88e3c6e08f8f78ab4291bc85b5685241f493 by alexfh
[clang-tidy] Store all ranges in clang::tooling::Diagnostic

Summary: Instead of dropping all the ranges associated with a Diagnostic when
converting them to a ClangTidy error, instead attach them to the ClangTidyError,
so they can be consumed by other APIs.

Patch by Joe Turner <joturner@google.com>.
Differential Revision: https://reviews.llvm.org/D69782
The file was modifiedclang/unittests/Tooling/DiagnosticsYamlTest.cpp
The file was modifiedclang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
The file was modifiedclang/include/clang/Tooling/Core/Diagnostic.h
The file was modifiedclang/lib/Tooling/Core/Diagnostic.cpp
The file was modifiedclang/include/clang/Tooling/DiagnosticsYaml.h
Commit 01b209679f69cc42e96f05a3c37ba06480094819 by stephen.neuendorffer
[MLIR] add show-dialects option for mlir-opt

Display the list of dialects known to mlir-opt.  This is useful
for ensuring that linkage has happened correctly, for instance.

Differential Revision: https://reviews.llvm.org/D74865
The file was addedmlir/test/mlir-opt/commandline.mlir
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
Commit 9227a74b7e8ff9b9cb5924e03547b940dc06e331 by herhut
[MLIR][Loops] Expose transformations on loop.parallel in header (NFC).

Summary:
This change does not add any functionality but merely exposes existing
static functions to make the associated transformations available
outside of their testing passes.

Differential Revision: https://reviews.llvm.org/D75232
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp
The file was addedmlir/include/mlir/Dialect/LoopOps/Transforms.h
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp
Commit 4a966e5dd75160a7df0c7231e4c760a2bb127112 by ntv
[mlir] NFC - Split out RunnerUtils that don't require a C++ runtime

Summary:
This revision split out a new CRunnerUtils library that supports
MLIR execution on targets without a C++ runtime.

Differential Revision: https://reviews.llvm.org/D75257
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
The file was modifiedmlir/test/CMakeLists.txt
The file was modifiedmlir/test/mlir-cpu-runner/bare_ptr_call_conv.mlir
The file was addedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp
The file was modifiedmlir/include/mlir/ExecutionEngine/RunnerUtils.h
The file was addedmlir/lib/ExecutionEngine/CRunnerUtils.cpp
Commit 256e61699b19c8e3545c948547c12872a8567250 by paolosev
[LLDB] Fix AddressSanitizer failure in MemoryCache

The lldb sanitizer bot is flagging a container-overflow error after we
introduced test TestWasm.py. MemoryCache::Read didn't behave correctly
in case of partial reads that can happen with object files whose size is
smaller that the cache size. It should return the actual number of bytes
read and not try to fill the buffer with random memory.
Module::GetMemoryObjectFile needs to be modified accordingly, to resize
its buffer to only the size that was read.

Differential Revision: https://reviews.llvm.org/D75200
The file was modifiedlldb/source/Core/Module.cpp
The file was modifiedlldb/source/Target/Memory.cpp
Commit 84e6fd815a50965e07a689ade85d0ede0711b16a by spatel
[AArch64] regenerate complete test checks; NFC
The file was modifiedllvm/test/CodeGen/AArch64/arm64-dup.ll
Commit 2f090ce8904cd973bb336ad56006288e04a05178 by spatel
[AArch64] add splat shuffle combine test; NFC
The file was modifiedllvm/test/CodeGen/AArch64/arm64-dup.ll