SuccessChanges

Summary

  1. [Apple Silicon] Debugging of process under Rosetta is supported. (details)
  2. [lld-macho] Use namespace qualifiers (macho::) instead of `namespace lld { namespace macho {` (details)
  3. [llvm-objcopy] Update help message tests (details)
  4. Fix crash on XCore on unused inline in EmitTargetMetadata (details)
  5. Add --hot-func-list to llvm-profdata show for sample profiles (details)
  6. Fix a pair of wtype-limits and 3 wparentheses warnings from 29125ddf1 (details)
  7. [x86][AArch64] add tests for fmul-fma combine; NFC (details)
  8. [InlineCost] Added InlineCostCallAnalyzer::print() (details)
  9. [lldb][NFC] Use expect_expr in TestStructTypes.py (details)
  10. [NFCI][CostModel] Add const to Value*. (details)
  11. [ProcessGDBRemote] Placate the Windows buildbot. (details)
  12. [SVE] Remove calls to VectorType::getNumElements from IPO (details)
  13. [NFC][PowerPC] Fix some typos in MachineCombiner comments (details)
  14. [lld-macho] Remove using namespace llvm::MachO (details)
  15. [ProcessGDBRemote] Fix a typo in an ifdef from 58de2a3851391d (details)
  16. [PowerPC][Power10] Implement Count Leading/Trailing Zeroes Builtins under bit Mask in LLVM/Clang (details)
  17. Add a git hook script that can be manually setup to run some checks on every push (details)
  18. [InlineCost] InlineCostAnnotationWriterPass introduced (details)
Commit b4fdddf971b191aa9a6643ab637b87bc1d686254 by ditaliano
[Apple Silicon] Debugging of process under Rosetta is supported.

Remove this early exit. It's vestigial from the ppc -> Intel transition,
but it doesn't apply anymore.
The file was modifiedlldb/source/Host/macosx/objcxx/Host.mm
Commit 18db086dca8d3bc2a7f380e6164b44c40890712d by i
[lld-macho] Use namespace qualifiers (macho::) instead of `namespace lld { namespace macho {`

See https://llvm.org/docs/CodingStandards.html#use-namespace-qualifiers-to-implement-previously-declared-functions
Similar to D79982.

Reviewed By: #lld-macho, int3

Differential Revision: https://reviews.llvm.org/D82432
The file was modifiedlld/MachO/ExportTrie.cpp
The file was modifiedlld/MachO/SyntheticSections.cpp
Commit 395920a6149323a17813b384caf6bdb883fd767e by alexshap
[llvm-objcopy] Update help message tests

This diff merges help message tests for llvm-objcopy, llvm-strip and
llvm-install-name-tool.

Patch by Sameer Arora!

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D82012
The file was removedllvm/test/tools/llvm-objcopy/ELF/help-message.test
The file was addedllvm/test/tools/llvm-objcopy/tool-help-message.test
The file was removedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-help-message.test
Commit dc3f8913d2ad33b1129ea488393e12cc88061aff by erich.keane
Fix crash on XCore on unused inline in EmitTargetMetadata

EmitTargetMetadata passed to emitTargetMD a null pointer as returned
from GetGlobalValue, for an unused inline function which has been
removed from the module at that point.

A FIXME in CodeGenModule.cpp commented that the calling code in
EmitTargetMetadata should be moved into the one target that needs it
(XCore). A review comment agreed. So the calling loop has been moved
into the XCore subclass. The check for null is done in that loop.

Differential Revision: https://reviews.llvm.org/D77068
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was modifiedclang/lib/CodeGen/TargetInfo.h
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was addedclang/test/CodeGen/xcore-unused-inline.c
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
Commit 53cf53023cbeb47d03fb9937ab3d06181eec8843 by aktoon
Add --hot-func-list to llvm-profdata show for sample profiles

Summary:
Add the --hot-func-list feature to llvm-profdata show for sample profiles. This feature prints a list of hot functions whose max sample count are above the 99% threshold, with their numbers of total samples, total samples percentage, max samples, entry samples, and their function names.

Test Plan:

Reviewers: wenlei, hoyFB

Reviewed By: wenlei, hoyFB

Subscribers: hoyFB, wenlei, weihe, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82355
The file was addedllvm/test/tools/llvm-profdata/sample-hot-func-list.test
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
The file was addedllvm/test/tools/llvm-profdata/Inputs/sample-hot-func-list.proftext
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
Commit 56b530d92c42e962a1828e14783601d2861ba353 by erich.keane
Fix a pair of wtype-limits and 3 wparentheses warnings from 29125ddf1
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 26fd3ffa78360e4b4581e2165efa18bf67c59d86 by spatel
[x86][AArch64] add tests for fmul-fma combine; NFC

As discussed in D80801, there's a possible overstep in
what is allowed by the 'contract' fast-math-flag.
The file was modifiedllvm/test/CodeGen/X86/fma_patterns.ll
The file was modifiedllvm/test/CodeGen/AArch64/fadd-combines.ll
Commit ca899bf90aca0709d0bbe221ec6ee1d59ee9ec0b by knaumov
[InlineCost] Added InlineCostCallAnalyzer::print()

For the upcoming changes, we need to have an ability to dump
InlineCostCallAnalyzer info in non-debug builds as well.

Reviewed-By: mtrofin
Differential Revision: https://reviews.llvm.org/D82205
The file was modifiedllvm/lib/Analysis/InlineCost.cpp
Commit cad79f73b6b67c9306ad147381e8a8be5db6d5cf by Raphael Isemann
[lldb][NFC] Use expect_expr in TestStructTypes.py
The file was modifiedlldb/test/API/lang/c/struct_types/main.c
Commit 7ddee0922fc2b8629fa12392e61801a8ad96b7af by dfukalov
[NFCI][CostModel] Add const to Value*.

Summary:
Get back `const` partially lost in one of recent changes.
Additionally specify explicit qualifiers in few places.

Reviewers: samparker

Reviewed By: samparker

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82383
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit 58de2a3851391dd9fa675ea6bcd26072a0638829 by ditaliano
[ProcessGDBRemote] Placate the Windows buildbot.

I'm probably going to rewrite this function anyway, but, in
the meanwhile.
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Commit 3d123e17d84ea4062a10d6b2ef0426fdb7c90158 by ctetreau
[SVE] Remove calls to VectorType::getNumElements from IPO

Reviewers: efriedma, jdoerfert, sdesmalen, kmclaughlin

Reviewed By: efriedma, jdoerfert

Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82219
The file was modifiedllvm/lib/Transforms/IPO/GlobalOpt.cpp
Commit 81b2d1d112035d34fcbad1624f29bc214e67f1e5 by Jinsong Ji
[NFC][PowerPC] Fix some typos in MachineCombiner comments
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
Commit 40bc99538c85904e3f4de04c795bbebd4013bbe7 by maskray
[lld-macho] Remove using namespace llvm::MachO

llvm/include/llvm/TextAPI/MachO/ inappropriately uses the llvm::MachO namespace (this is for BinaryFormat and Object) and causes conflicts in some MSVC builds::

http://lab.llvm.org:8011/builders/sanitizer-windows/builds/65324/steps/stage%201%20build/logs/stdio

Removing `using namespace llvm::MachO` should decrease name collisions.
The file was modifiedlld/MachO/SyntheticSections.cpp
Commit 0cd9e598291df8c633aaa0c0e1d8eeab95de9680 by martin
[ProcessGDBRemote] Fix a typo in an ifdef from 58de2a3851391d
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Commit d82f26cc4bc7cb78f7ef327fa43a93e3d0ff9706 by amy.kwan1
[PowerPC][Power10] Implement Count Leading/Trailing Zeroes Builtins under bit Mask in LLVM/Clang

This patch implements builtins for the following prototypes:

unsigned long long __builtin_cntlzdm (unsigned long long, unsigned long long)
unsigned long long __builtin_cnttzdm (unsigned long long, unsigned long long)
vector unsigned long long vec_cntlzm (vector unsigned long long, vector unsigned long long)
vector unsigned long long vec_cnttzm (vector unsigned long long, vector unsigned long long)

Differential Revision: https://reviews.llvm.org/D80941
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td
The file was modifiedllvm/test/CodeGen/PowerPC/p10-bit-manip-ops.ll
The file was modifiedllvm/test/MC/PowerPC/p10.s
The file was modifiedclang/test/CodeGen/builtins-ppc-p10vector.c
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was modifiedclang/lib/Headers/altivec.h
The file was modifiedclang/test/CodeGen/builtins-ppc-p10.c
The file was modifiedllvm/test/MC/Disassembler/PowerPC/p10insts.txt
Commit a61c73dbe320f1caf9940717090548df8ee30f8b by joker.eph
Add a git hook script that can be manually setup to run some checks on every push

Right now it just catches arcanist noisy tags, and include a script to
automatically clean these.

Follow up on http://lists.llvm.org/pipermail/llvm-dev/2019-December/137848.html

Differential Revision: https://reviews.llvm.org/D80978
The file was modifiedllvm/docs/Phabricator.rst
The file was modifiedllvm/docs/GettingStarted.rst
The file was addedllvm/utils/git/pre-push.py
The file was addedllvm/utils/git/arcfilter.sh
Commit 6a5d7d498c0b16b13ace802f422b223eb510c303 by knaumov
[InlineCost] InlineCostAnnotationWriterPass introduced

This class allows to see the inliner's decisions for better
optimization verifications and tests. To use, use flag
"-passes="print<inline-cost>"".

This is the second attempt to integrate the patch.
The problem from the first try has been discussed and
fixed in D82205.

Reviewers: apilipenko, mtrofin, davidxl, fedor.sergeev

Reviewed By: mtrofin

Differential revision: https://reviews.llvm.org/D81743
The file was removedllvm/test/Transforms/Inline/print-instructions-deltas-unfinished.ll
The file was modifiedllvm/lib/Analysis/InlineCost.cpp
The file was modifiedllvm/include/llvm/Analysis/InlineCost.h
The file was modifiedllvm/test/Transforms/Inline/debuginline-cost-delta.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was addedllvm/test/Transforms/Inline/inline-cost-annotation-pass.ll