SuccessChanges

Summary

  1. Set traversal explicitly where needed in clang-tidy (details)
  2. Set traversal explicitly where needed in tests (details)
  3. Make the ExprMutationAnalyzer explicit about how it traverses the AST (details)
  4. llvm-diff: Avoid crash with complex expressions (details)
  5. [PS4] Enable relaxed relocations by default (details)
  6. [docs] Fix buildbot failures (details)
  7. Don't jump to landing pads in Control Flow Optimizer (details)
  8. [Target] Use Align in TargetLoweringObjectFile::getSectionForConstant. (details)
  9. Add nomerge function attribute to clang (details)
  10. [AARCH64][NEON] Allow to sink operands of aarch64_neon_pmull64. (details)
  11. [Instruction] Set metadata uses to undef on deletion (details)
  12. Revert "Add nomerge function attribute to clang" (details)
  13. Rename FunctionOptimizationWarning to the more generic FrameSelectedCallback (NFC) (details)
  14. Reland "[Analyzer][WebKit] RefCntblBaseVirtualDtorChecker" (details)
  15. [gn build] Port 54e91a3c701 (details)
Commit a72307c3a6f15badc2efb4614b212e6c5fee1ee9 by steveire
Set traversal explicitly where needed in clang-tidy

Reviewers: aaron.ballman

Subscribers: nemanjai, kbarton, arphaman, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D72530
The file was modifiedclang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/ExprSequence.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/NarrowingConversionsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.cpp
Commit a30d411629d5425dedb0dadd616d0faabb611798 by steveire
Set traversal explicitly where needed in tests

Reviewers: aaron.ballman, shafik

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D72531
The file was modifiedclang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
The file was modifiedclang/unittests/AST/StmtPrinterTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/unittests/Tooling/StencilTest.cpp
The file was modifiedclang/unittests/AST/ASTImporterTest.cpp
The file was modifiedclang/unittests/Tooling/RangeSelectorTest.cpp
The file was modifiedclang/unittests/AST/SourceLocationTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/unittests/ASTMatchers/Dynamic/RegistryTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
The file was modifiedclang/unittests/Tooling/RefactoringCallbacksTest.cpp
Commit f85aedc167cde76bdb47b7814f873cfb40ad3ed8 by steveire
Make the ExprMutationAnalyzer explicit about how it traverses the AST

Reviewers: aaron.ballman

Subscribers: baloghadamsoftware, a.sidorin, Szelethus, donat.nagy, dkrupp, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D72532
The file was modifiedclang/lib/Analysis/ExprMutationAnalyzer.cpp
Commit 31984063678ef523b940160ac9d49fcb87c1e2ac by d.c.ddcc
llvm-diff: Avoid crash with complex expressions

Summary: With complex IR, the difference engine can enter an inconsistent state where the instruction and block difference engines return different results. Prevent a crash by refusing to pop beyond the end of the vector.

Reviewers: rjmccall

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80351
The file was modifiedllvm/tools/llvm-diff/DifferenceEngine.cpp
Commit 9d23b5025d5f6614a2b2b1b6fc19997f0fb69138 by Ben_Dunbobbin
[PS4] Enable relaxed relocations by default

PS4 supports these relocations types; so, we want to enable them by default.

Differential Revision: https://reviews.llvm.org/D79980
The file was addedclang/test/Driver/ps4-relax-relocations.c
The file was modifiedclang/lib/Driver/ToolChains/PS4CPU.h
Commit 628f008b201021198f49cd71826fd7f89b28cc26 by Jinsong Ji
[docs] Fix buildbot failures

Buildbot has been failing since
http://lab.llvm.org:8011/builders/llvm-sphinx-docs/builds/44711

This patch fix the minor issues that cause warnings.
The file was modifiedllvm/docs/AMDGPUUsage.rst
The file was modifiedllvm/docs/BitCodeFormat.rst
Commit fc937806efd71eb3803b35d0920bb7d76bc3040b by aeubanks
Don't jump to landing pads in Control Flow Optimizer

Summary: Likely fixes https://bugs.llvm.org/show_bug.cgi?id=45858.

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80047
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
The file was addedllvm/test/CodeGen/X86/branchfolding-ehpad.mir
Commit f96a7706d9f0afe33ee4a1f55ba7daec926e4ffe by craig.topper
[Target] Use Align in TargetLoweringObjectFile::getSectionForConstant.

Differential Revision: https://reviews.llvm.org/D80363
The file was modifiedllvm/lib/Target/TargetLoweringObjectFile.cpp
The file was modifiedllvm/lib/Target/Mips/MipsTargetObjectFile.h
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiTargetObjectFile.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXTargetObjectFile.h
The file was modifiedllvm/lib/Target/Lanai/LanaiTargetObjectFile.h
The file was modifiedllvm/lib/Target/Mips/MipsTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetObjectFile.h
The file was modifiedllvm/include/llvm/Target/TargetLoweringObjectFile.h
The file was modifiedllvm/lib/Target/XCore/XCoreTargetObjectFile.h
Commit 307e85395485e1eff9533b2d7952b16f33ceae38 by zequanwu
Add nomerge function attribute to clang
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was addedclang/test/Sema/attr-nomerge.cpp
The file was addedclang/test/CodeGen/attr-nomerge.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaStmtAttr.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
Commit bf242c067eaf8041a3505e115e0a827f28e4451a by a.v.lapshin
[AARCH64][NEON] Allow to sink operands of aarch64_neon_pmull64.

Summary:
This patch fixes a problem when pmull2 instruction is not
generated for vmull_high_p64 intrinsic.

ISel has a pattern for int_aarch64_neon_pmull64 intrinsic to generate
PMULL2 instruction. That pattern assumes that extraction operations
are located in the same basic block. We need to sink them
if they are not. Handle operands of int_aarch64_neon_pmull64
into AArch64TargetLowering::shouldSinkOperands.

Reviewed by: efriedma

Differential Revision: https://reviews.llvm.org/D80320
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/neon-vmull-high-p64.ll
Commit 77ffce6954470018de1748d33f9ac6aa66121e9f by Vedant Kumar
[Instruction] Set metadata uses to undef on deletion

Summary:
Replace any extant metadata uses of a dying instruction with undef to
preserve debug info accuracy. Some alternatives include:

- Treat Instruction like any other Value, and point its extant metadata
  uses to an empty ValueAsMetadata node. This makes extant dbg.value uses
  trivially dead (i.e. fair game for deletion in many passes), leading to
  stale dbg.values being in effect for too long.

- Call salvageDebugInfoOrMarkUndef. Not needed to make instruction removal
  correct. OTOH results in wasted work in some common cases (e.g. when all
  instructions in a BasicBlock are deleted).

This came up while discussing some basic cases in
https://reviews.llvm.org/D80052.

Reviewers: jmorse, TWeaver, aprantl, dexonsmith, jdoerfert

Subscribers: jholewinski, qcolombet, hiraditya, jfb, sstefan1, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80264
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll
The file was modifiedllvm/lib/IR/Instruction.cpp
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-addr-class.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/spillcost-di.ll
The file was modifiedllvm/test/Transforms/SafeStack/X86/debug-loc2.ll
The file was modifiedllvm/unittests/IR/DebugInfoTest.cpp
Commit b0a0f01bc175b4c444052f871a89421889f8b5ce by zequanwu
Revert "Add nomerge function attribute to clang"

This reverts commit 307e85395485e1eff9533b2d7952b16f33ceae38.
The file was removedclang/test/Sema/attr-nomerge.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was removedclang/test/CodeGen/attr-nomerge.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/Sema/SemaStmtAttr.cpp
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
Commit e6b613254d8b62cdd64ee9d8376f2bdda1bcc359 by Adrian Prantl
Rename FunctionOptimizationWarning to the more generic FrameSelectedCallback (NFC)
The file was modifiedlldb/source/Target/Thread.cpp
The file was modifiedlldb/include/lldb/Target/Thread.h
Commit 54e91a3c701040d9d2e467bd483c197073b2c5e4 by Jan Korous
Reland "[Analyzer][WebKit] RefCntblBaseVirtualDtorChecker"

This reverts commit 1108f5c737dbdab0277874a7e5b237491839c43a.
The file was addedclang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
The file was addedclang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
The file was modifiedclang/docs/analyzer/checkers.rst
The file was modifiedclang/include/clang/StaticAnalyzer/Checkers/Checkers.td
The file was addedclang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
The file was addedclang/lib/StaticAnalyzer/Checkers/WebKit/DiagOutputUtils.h
The file was addedclang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor.cpp
The file was addedclang/test/Analysis/Checkers/WebKit/mock-types.h
The file was addedclang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
The file was addedclang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-templates.cpp
Commit bb7fb6d7b2ff1af5fbcacf4fdf9f5878c033c9e0 by llvmgnsyncbot
[gn build] Port 54e91a3c701
The file was modifiedllvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn