SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. Revert "[InstCombine] Fix infinite loop due to bitcast <-> phi (details)
  2. [Attributor][Fix] Avoid leaking memory after D68765 (details)
  3. Match code following lambdas when ignoring invisible nodes (details)
  4. Unnest struct in Matcher implementation (details)
  5. Implement additional traverse() overloads (details)
  6. [InstCombine] add/adjust tests for masked bit; NFC (details)
  7. [InstCombine] fold zext of masked bit set/clear (details)
  8. [mlir] Make code blocks more consistent (details)
Commit 7adb5c2aca8047ae184a96869e3cfcb034fbac39 by nikita.ppv
Revert "[InstCombine] Fix infinite loop due to bitcast <-> phi
transforms"
This reverts commit 27a0795943fee0f30b995fe5165428afc2dfd402.
Seems to break test-suite.
The file was removedllvm/test/Transforms/InstCombine/pr44245.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Commit df3b56c90544b17e645bcb1799ce60e3ae1d5c6d by johannes
[Attributor][Fix] Avoid leaking memory after D68765
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit d89c4cb938070a6de11e624984e5bd0e989fb334 by steveire
Match code following lambdas when ignoring invisible nodes
Reviewers: aaron.ballman
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71976
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
Commit 06fdbf3dafb76e54ea76e0eb5f690bc3d6773023 by steveire
Unnest struct in Matcher implementation
This allows implementation of the traverse() matcher to surround
matchers like unless().
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
Commit 69bb99914f35b887e949b72feafc5f41ee0db6e1 by steveire
Implement additional traverse() overloads
Summary: These overloads make it possible to wrap unless(), anyOf(),
has() etc with the traverse matcher.
Reviewers: aaron.ballman
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71977
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
Commit eb5c026ef0bc48207edaeda8115b832be631652d by spatel
[InstCombine] add/adjust tests for masked bit; NFC
The file was modifiedllvm/test/Transforms/InstCombine/zext.ll
Commit a041c4ec6f7aa659b235cb67e9231a05e0a33b7d by spatel
[InstCombine] fold zext of masked bit set/clear
This does not solve PR17101, but it is one of the underlying diffs noted
here: https://bugs.llvm.org/show_bug.cgi?id=17101#c8
We could ease the one-use checks for the 'clear'
(no 'not' op) half of the transform, but I do not know if that asymmetry
would make things better or worse.
Proofs: https://rise4fun.com/Alive/uVB
  Name: masked bit set
%sh1 = shl i32 1, %y
%and = and i32 %sh1, %x
%cmp = icmp ne i32 %and, 0
%r = zext i1 %cmp to i32
=>
%s = lshr i32 %x, %y
%r = and i32 %s, 1
  Name: masked bit clear
%sh1 = shl i32 1, %y
%and = and i32 %sh1, %x
%cmp = icmp eq i32 %and, 0
%r = zext i1 %cmp to i32
=>
%xn = xor i32 %x, -1
%s = lshr i32 %xn, %y
%r = and i32 %s, 1
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/zext.ll
Commit 430bba2a0f39b543e66119761d1526d037229936 by jpienaar
[mlir] Make code blocks more consistent
Use the same form specification for the same type of code.
The file was modifiedmlir/docs/Tutorials/Toy/Ch-1.md
The file was modifiedmlir/docs/DeclarativeRewrites.md
The file was modifiedmlir/docs/Tutorials/Toy/Ch-4.md
The file was modifiedmlir/docs/RationaleSimplifiedPolyhedralForm.md
The file was modifiedmlir/docs/Tutorials/Toy/Ch-3.md
The file was modifiedmlir/docs/Tutorials/Toy/Ch-6.md
The file was modifiedmlir/docs/Tutorials/Toy/Ch-2.md
The file was modifiedmlir/docs/ConversionToLLVMDialect.md
The file was modifiedmlir/lib/Support/CMakeLists.txt