SuccessChanges

Summary

  1. [NewPM][AMDGPU] Pass TargetMachine to AMDGPUSimplifyLibCallsPass (details)
  2. [ValueTracking] isGuaranteedNotToBePoison should return true on undef (details)
  3. [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II) (details)
  4. [LoopUtils] remove redundant opcode parameter; NFC (details)
  5. Revert "[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II)" (details)
  6. [clang] - Also look for devtoolset-10 (details)
  7. [NFCI] DwarfEHPrepare: update DomTree in non-permissive mode, when present (details)
  8. [NFCI] SimplifyCFG: switch to non-permissive DomTree updates, where possible (details)
  9. [SimplifyCFGPass] mergeEmptyReturnBlocks(): switch to non-permissive DomTree updates (details)
  10. [SimplifyCFG] simplifyIndirectBr(): switch to non-permissive DomTree updates (details)
  11. [SimplifyCFG] SimplifyEqualityComparisonWithOnlyPredecessor(): switch to non-permissive DomTree updates (details)
  12. [SimplifyCFG] SimplifyCondBranchToTwoReturns(): switch to non-permissive DomTree updates (details)
Commit 8e293fe6ad06225d748bdb8a4414461451e33c16 by aeubanks
[NewPM][AMDGPU] Pass TargetMachine to AMDGPUSimplifyLibCallsPass

Missed in https://reviews.llvm.org/D93863.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.wavefrontsize.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPU.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Commit abbef2fd46d48a0d92d86f0c00fa2973f8ae2c85 by aqjune
[ValueTracking] isGuaranteedNotToBePoison should return true on undef

This is a one-line fix to isGuaranteedNotToBePoison to return true if
undef is given.
The file was modifiedllvm/unittests/Analysis/ValueTrackingTest.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit efc82c4ad2bcb256a4f4c20238d08cd3afba4d2d by schuett
[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II)

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D93765
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/Sema/SemaObjCProperty.cpp
The file was modifiedclang/unittests/Sema/ExternalSemaSourceTest.cpp
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/CodeGen/CGNonTrivialStruct.cpp
The file was modifiedclang/lib/CodeGen/CGBlocks.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/AST/ODRHash.cpp
The file was modifiedclang/include/clang/AST/DeclOpenMP.h
The file was modifiedclang/lib/AST/DeclPrinter.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/lib/Analysis/CFG.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp
The file was modifiedclang/lib/CodeGen/ItaniumCXXABI.cpp
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/lib/Sema/SemaCoroutine.cpp
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/include/clang/Basic/Specifiers.h
The file was modifiedclang/lib/CodeGen/CGDecl.cpp
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteObjC.cpp
The file was modifiedclang/lib/Sema/SemaLambda.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/lib/AST/JSONNodeDumper.cpp
The file was modifiedclang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
The file was modifiedclang/lib/AST/DeclTemplate.cpp
The file was modifiedclang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
The file was modifiedclang/lib/Sema/SemaPseudoObject.cpp
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
Commit 36263a7cccc0d98afc36dea55e7a004d08455811 by spatel
[LoopUtils] remove redundant opcode parameter; NFC

While here, rename the inaccurate getRecurrenceBinOp()
because that was also used to get CmpInst opcodes.

The recurrence/reduction kind should always refer to the
expected opcode for a reduction. SLP appears to be the
only direct caller of createSimpleTargetReduction(), and
that calling code ideally should not be carrying around
both an opcode and a reduction kind.

This should allow us to generalize reduction matching to
use intrinsics instead of only binops.
The file was modifiedllvm/lib/Analysis/IVDescriptors.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
The file was modifiedllvm/include/llvm/Analysis/IVDescriptors.h
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
Commit 2fd11e0b1ef8bc6ea356670f15d78795aa8bb0e7 by schuett
Revert "[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II)"

This reverts commit efc82c4ad2bcb256a4f4c20238d08cd3afba4d2d.
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
The file was modifiedclang/lib/AST/JSONNodeDumper.cpp
The file was modifiedclang/lib/Sema/SemaCoroutine.cpp
The file was modifiedclang/lib/CodeGen/CGNonTrivialStruct.cpp
The file was modifiedclang/lib/Sema/SemaObjCProperty.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/Analysis/CFG.cpp
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteObjC.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
The file was modifiedclang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/include/clang/AST/DeclOpenMP.h
The file was modifiedclang/lib/AST/DeclTemplate.cpp
The file was modifiedclang/lib/CodeGen/ItaniumCXXABI.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
The file was modifiedclang/lib/CodeGen/CGBlocks.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/lib/Sema/SemaPseudoObject.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/unittests/Sema/ExternalSemaSourceTest.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/lib/CodeGen/CGDecl.cpp
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
The file was modifiedclang/include/clang/Basic/Specifiers.h
The file was modifiedclang/lib/AST/DeclPrinter.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/AST/ODRHash.cpp
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaLambda.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
Commit f67d3dbdb930eaf92668b47696e51ef0b2c3c3a5 by phosek
[clang] - Also look for devtoolset-10

devtoolset-10 has just been released so look for it as well.

Patch By: stephan.dollberg

Differential Revision: https://reviews.llvm.org/D92792
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
Commit b4f519bddda853443405d21728154c481837e18b by lebedev.ri
[NFCI] DwarfEHPrepare: update DomTree in non-permissive mode, when present

Being stricter will catch issues that would be just papered over
in permissive mode, and is likely faster.
The file was modifiedllvm/lib/CodeGen/DwarfEHPrepare.cpp
Commit 3fb57222c4c0db02f13f32579fb83d0d488becad by lebedev.ri
[NFCI] SimplifyCFG: switch to non-permissive DomTree updates, where possible

Notably, this doesn't switch *every* case, remaining cases
don't actually pass sanity checks in non-permissve mode,
and therefore require further analysis.

Note that SimplifyCFG still defaults to not preserving DomTree by default,
so this is effectively a NFC change.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
Commit ed9de61cc3e280f84e3f0f98a49af21c7e59c4c9 by lebedev.ri
[SimplifyCFGPass] mergeEmptyReturnBlocks(): switch to non-permissive DomTree updates

... which requires not inserting an edge that already exists.
The file was modifiedllvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
Commit a8604e3d5b7112da11508f100805d65a4eddeb33 by lebedev.ri
[SimplifyCFG] simplifyIndirectBr(): switch to non-permissive DomTree updates

... which requires not deleting an edge that just got deleted.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit 110b3d7855ef71a7d43a0779b2e1c32e1a31daae by lebedev.ri
[SimplifyCFG] SimplifyEqualityComparisonWithOnlyPredecessor(): switch to non-permissive DomTree updates

... which requires not deleting an edge that just got deleted.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit 32c47ebef18d904445ce909e4a6922ffbfe4053f by lebedev.ri
[SimplifyCFG] SimplifyCondBranchToTwoReturns(): switch to non-permissive DomTree updates

... which requires not deleting an edge that just got deleted,
because we could be dealing with a block that didn't go through
ConstantFoldTerminator() yet, and thus has a degenerate cond br
with matching true/false destinations.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp