SuccessChanges

Summary

  1. VFS: Return new file systems as uniquely owned when possible, almost NFC (details)
  2. Support: Add RedirectingFileSystem::create from simple list of redirections (details)
  3. [PowerPC] prepare more dq form for P10 pair load/store (details)
  4. Basic: Add hashing support for FileEntryRef and DirectoryEntryRef (details)
  5. [NFC] Added test for PR33549 (details)
  6. [WebAssembly] Fix code generated for atomic operations in PIC mode (details)
  7. [IR] Use llvm::is_contained (NFC) (details)
  8. [MemorySSA] Remove unused declaration determineInsertionPoint (NFC) (details)
Commit a22eda548b8e1f9362018dec194af0ca91b35da0 by Duncan P. N. Exon Smith
VFS: Return new file systems as uniquely owned when possible, almost NFC

Uniformly return uniquely-owned filesystems from VFS creation APIs. The
one exception is `getRealFileSystem`, which has a single instance and
needs to be shared.

This is almost NFC, except that it fixes a memory leak in
`vfs::collectVFSFromYAML()`.

Depends on https://reviews.llvm.org/D92888

Differential Revision: https://reviews.llvm.org/D92890
The file was modifiedllvm/include/llvm/Support/VirtualFileSystem.h
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
The file was modifiedllvm/unittests/Support/VirtualFileSystemTest.cpp
Commit 75cd8d756d6e88b075fae8fe631fdbb17802bdb8 by Duncan P. N. Exon Smith
Support: Add RedirectingFileSystem::create from simple list of redirections

Add an overload of `RedirectingFileSystem::create` that builds a
redirecting filesystem off of a simple vector of string pairs. This is
intended to be used to support `clang::arcmt::FileRemapper` and
`clang::PreprocessorOptions::RemappedFiles`.

Differential Revision: https://reviews.llvm.org/D91317
The file was modifiedllvm/include/llvm/Support/VirtualFileSystem.h
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
The file was modifiedllvm/unittests/Support/VirtualFileSystemTest.cpp
Commit 66a03d10220a56437352cafa1f6ff803e307eb8c by czhengsz
[PowerPC] prepare more dq form for P10 pair load/store

Reviewed By: steven.zhang

Differential Revision: https://reviews.llvm.org/D92393
The file was modifiedllvm/lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp
The file was addedllvm/test/CodeGen/PowerPC/more-dq-form-prepare.ll
Commit 2878e965af27ce037378a4f0409e89039108c09f by Duncan P. N. Exon Smith
Basic: Add hashing support for FileEntryRef and DirectoryEntryRef

Allow hashing FileEntryRef and DirectoryEntryRef via `hash_value`, and
use that to implement `DenseMapInfo`. This hash should be equal whenever
the entry is the same (the name used to reference it is not relevant).

Also add `DirectoryEntryRef::isSameRef` to simplify the implementation
and facilitate testing.

Differential Revision: https://reviews.llvm.org/D92627
The file was modifiedclang/include/clang/Basic/FileEntry.h
The file was modifiedclang/include/clang/Basic/DirectoryEntry.h
The file was modifiedclang/unittests/Basic/FileEntryTest.cpp
Commit 5da71a4274acb86d31b74b79490cab30ac96bbf3 by Dávid Bolvanský
[NFC] Added test for PR33549
The file was addedllvm/test/Transforms/GVN/pr33549.ll
Commit 1b6d879ec1fc4e883d0f1f580bbe9230215d9e80 by sbc
[WebAssembly] Fix code generated for atomic operations in PIC mode

The main this this test does is to add the `IsNotPIC` predicate to the
all the atomic instructions pattern that directly refer to
`tglobaladdr`.

This is because in PIC mode we need to generate separate instruction
sequence (either a direct global.get, or __memory_base + offset) for
accessing global addresses.

As part of this change I noticed that many of the `Requires` attributes
added to the instruction in `WebAssemblyInstrAtomics.td` were being
honored.  This is because the wrapped in a `let Predicates =
[HasAtomics]` block and it seems that that outer wrapping overrides any
`Requires` on defs within it.   As a workaround I removed the outer
`let` and added `HasAtomics` to all the inner `Requires`.  I believe
that all the instrucitons that don't have `Requires` explicit bottom out
in `ATOMIC_I` and `ATOMIC_NRI` which have `HasAtomics` so this should
not remove this predicate from any patterns (at least that is the idea).

The alternative to this approach looks like implementing something
like `PredicateControl` in `Mips.td` where we can split the predicates
into groups so they don't clobber each other.

Differential Revision: https://reviews.llvm.org/D92744
The file was addedllvm/test/CodeGen/WebAssembly/atomic-pic.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/offset-atomics.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
Commit 70de3240466233c640dc74a54068c184ff69b6fc by kazu
[IR] Use llvm::is_contained (NFC)
The file was modifiedllvm/lib/IR/Metadata.cpp
The file was modifiedllvm/lib/IR/PrintPasses.cpp
Commit f57d4c29daaf0fdfc9bd409d81667c614f8dc2c9 by kazu
[MemorySSA] Remove unused declaration determineInsertionPoint (NFC)

The declaration was introduced without a corresponding definition on
Feb 2, 2016 in commit e1100f533f0a48f55e80e1152b06f5deab5f9b30.
The file was modifiedllvm/include/llvm/Analysis/MemorySSA.h

Summary

  1. Improved InformativeMailNotifier. (details)
  2. Listen for the main branch. (details)
Commit 87fcb5ae44d7bdfcfd8c4277e22b50b3cb5bc530 by gkistanova
Improved InformativeMailNotifier.
The file was modifiedzorg/buildbot/util/InformativeMailNotifier.py
Commit e0fad68331d74ff0a6895438bd193499b9528798 by gkistanova
Listen for the main branch.
The file was modifiedbuildbot/osuosl/master/master.cfg
The file was modifiedzorg/buildbot/changes/llvmgitpoller.py
The file was modifiedbuildbot/osuosl/master/config/schedulers.py