SuccessChanges

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

Summary

  1. SLPVectorizer.cpp - fix include ordering. NFCI. (details)
  2. TargetPassConfig.cpp - use auto const& iterator in for-range loop to avoid copies. NFCI. (details)
  3. [ARM][CMSE] Issue an error if passing arguments through memory across (details)
  4. [ObjCARC][NewPM] Port objc-arc-contract to NPM (details)
  5. [SCEV] Add additional max BTC tests with loop guards. (details)
  6. ImplicitNullChecks.cpp - use auto const& iterators in for-range loops to avoid copies. NFCI. (details)
  7. [SLP] simplify interface for gather(); NFC (details)
  8. The wrong placement of add pass with optimizations led to -funique-internal-linkage-names being disabled. (details)
  9. [lldb/Commands] Fix outdated `breakpoint command add` help string (details)
Commit 3ddecfd220079cd37d2d08810c3940ffcde57953 by llvm-dev
SLPVectorizer.cpp - fix include ordering. NFCI.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 3ae07b2a33f5541b36913280564420aaa46a54f8 by llvm-dev
TargetPassConfig.cpp - use auto const& iterator in for-range loop to avoid copies. NFCI.
The file was modifiedllvm/lib/CodeGen/TargetPassConfig.cpp
Commit 742250bf62a92647d3462d1e0b75940bc0914fcb by momchil.velikov
[ARM][CMSE] Issue an error if passing arguments through memory across
security boundary

It was never supported and that part was accidentally omitted when
upstreaming D76518.

Differential Revision: https://reviews.llvm.org/D86478

Change-Id: If6ba9506eb0431c87a1d42a38aa60e47ce263039
The file was addedllvm/test/CodeGen/ARM/cmse-errors.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit 024979b7b657d0946b791798994f070a24265cb8 by aeubanks
[ObjCARC][NewPM] Port objc-arc-contract to NPM

Similar to https://reviews.llvm.org/D86178.

This is a module pass instead of a function pass since
ARCRuntimeEntryPoints can lazily add function declarations.

Reviewed By: ahatanak

Differential Revision: https://reviews.llvm.org/D87806
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/include/llvm/Transforms/ObjCARC.h
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARC.cpp
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
The file was modifiedllvm/test/Transforms/ObjCARC/contract.ll
Commit 3cbdfe424fec923b5ac1912742c62c22f856fb29 by flo
[SCEV] Add additional max BTC tests with loop guards.
The file was modifiedllvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
Commit 6a0ed57a2259263d4f5923ff5c61850b8a731322 by llvm-dev
ImplicitNullChecks.cpp - use auto const& iterators in for-range loops to avoid copies. NFCI.
The file was modifiedllvm/lib/CodeGen/ImplicitNullChecks.cpp
Commit 46075e0b78c33be79c6c1ae5547a78ef87ddb374 by spatel
[SLP] simplify interface for gather(); NFC

The implementation of gather() should be reduced too,
but this change by itself makes things a little clearer:
we don't try to gather to a different type or
number-of-values than whatever is passed in as the value
list itself.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 6950db36d33d85d18e3241ab6c87494c05ebe0fb by tmsriram
The wrong placement of add pass with optimizations led to -funique-internal-linkage-names being disabled.

Fixed the placement of the MPM.addpass for UniqueInternalLinkageNames to make
it work correctly with -O2 and new pass manager. Updated the tests to
explicitly check O0 and O2.

Previously, the addPass was placed before BackendUtil.cpp#L1373 which is wrong
as MPM gets assigned at this point and any additions to the pass vector before
this is wrong. This change just moves it after MPM is assigned and places it at
a point where O0 and O0+ can share it.

Differential Revision: https://reviews.llvm.org/D87921
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedclang/test/CodeGen/unique-internal-linkage-names.cpp
Commit 3b3b9ba1c7d89afe4909a42e2a795354bb79e062 by davelee.com
[lldb/Commands] Fix outdated `breakpoint command add` help string

Update the some examples in the help string for `breakpoint command add`.

Python breakpoint commands have different output than what's shown in the help string.

Notes:
  * Removed an example containing an inner function, as it seems more about a Python technique than about `command script add`
  * Updated `print x` to `print(x)` to be python 2/3 agnostic

Differential Revision: https://reviews.llvm.org/D87807
The file was modifiedlldb/source/Commands/CommandObjectBreakpointCommand.cpp