SuccessChanges

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

Summary

  1. [buildbot] Use paths instead of env vars for ml bots (details)
Commit d99cf8c14b7b1552c869a019e8533e1e3363aa4f by mtrofin
[buildbot] Use paths instead of env vars for ml bots

Summary: Having trouble with env vars, so using hard-coded paths for now

Reviewers: davidxl, gkistanova

Differential Revision: https://reviews.llvm.org/D82482
The file was modifiedbuildbot/osuosl/master/config/builders.py

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

Summary

  1. [LLD][PowerPC] Add support for R_PPC64_GOT_PCREL34 (details)
  2. Loads.h - reduce AliasAnalysis.h include to forward declarations. NFC. (details)
  3. [llvm-readobj] - Don't crash when a broken GNU hash table is dumped with --hash-symbols. (details)
  4. [DSE,MSSA] Add missing -enable-dse-memoryssa flag to test. (details)
  5. [AMDGPU] Avoid redundant mode register writes (details)
  6. [lldb] Refactor Scalar::TruncOrExtendTo (details)
  7. [AST][RecoveryExpr] Add error-bit TemplateArgument (details)
  8. Cloning.h - reduce AliasAnalysis.h include to forward declarations. NFC. (details)
  9. WebAssembly: Don't store MachineFunction in MachineFunctionInfo (details)
  10. [VectorCombine] add tests for extract + cmp + binop; NFC (details)
  11. [VectorCombine] give invalid index value a name; NFC (details)
  12. [llvm] Added support for stand-alone cmake object libraries. (details)
  13. [llvm] Release-mode ML InlineAdvisor (details)
  14. [NewPM] Handle -simplifycfg in opt (details)
  15. [NewPM] Add SimpleLoopUnswitchPass to PassRegistry.def (details)
  16. Revert "[AMDGPU] Enable compare operations to be selected by divergence" (details)
  17. [ELF] -r: don't parse @ (symbol versioning) for .symver inline asm in bitcode (details)
  18. [Hexagon] Reducing minimum alignment requirement (details)
  19. [clangd] Disable printing of Value for tag-types on hover (details)
  20. AMDGPU/GlobalISel: Invert parameter for div/rem lowering function (details)
  21. AMDGPU/GlobalISel: Legalize 64-bit G_SDIV/G_SREM (details)
  22. [AMDGPU] Make sure to fix implicit operands on insertBranch (details)
  23. Disable flaky lldb-vscode tests on aarch64 (details)
  24. [SLP] Precommit short load / wide math test for AArch64. (details)
  25. GlobalISel: Add unit tests for some utils functions (details)
  26. [SemaObjC] Fix a crash on invalid when 'auto' is used in a @property (details)
  27. [OpenMP] Adopt std::set in HostDataToTargetMap (details)
  28. Revert "[llvm] Added support for stand-alone cmake object libraries." (details)
  29. [llvm] Remove full stop frome error message (details)
  30. [libTooling] Delete deprecated `Stencil` combinators. (details)
  31. [MLIR] Fix affine loop fusion private memref alloc (details)
  32. LoopUtils.h - reduce AliasAnalysis.h include to forward declarations. NFC. (details)
  33. [gn build] (manually) port bdceefe95ba6a (details)
  34. [gn build] Port 4fb2116ee7f (details)
  35. Start adding support for generating CC1 command lines from CompilerInvocation (details)
  36. [gn build] Port 29125ddf132 (details)
  37. Fix coding style. NFC. (details)
  38. [X86] Replace PROC macros with an enum and a lookup table of processor information. (details)
  39. [WPD] Allow virtual calls to be analyzed with multiple type tests (details)
  40. Disable a flaky lldb-vscode test on aarch64 (details)
  41. [X86] Rename O3-pipeline.ll to opt-pipeline.ll and add O1/O2 command lines (details)
  42. [NVPTX] Fix for NVPTX module asm regression (details)
  43. [llvm-objcopy] Update help messages (details)
  44. [OpenMP][Docs] Mark TR8 `present` as claimed in docs (details)
  45. Local.h - reduce includes to forward declarations. NFC. (details)
  46. InstCombineInternal.h - reduce AliasAnalysis.h include to forward declaration. NFC. (details)
  47. [OpenMP][NFC] Remove hard-coded line numbers from test (details)
  48. [ObjC] Copy a block to the heap if it is passed as a variadic argument (details)
  49. [FileCheck][NFC] Fix typo in test comment (details)
  50. [docs] Fix typo (details)
  51. [SLP] Limit GEP lists based on width of index computation. (details)
  52. [Apple Silicon] Initial support for Rosetta (details)
  53. [Apple Silicon] Debugging of process under Rosetta is supported. (details)
  54. [lld-macho] Use namespace qualifiers (macho::) instead of `namespace lld { namespace macho {` (details)
  55. [llvm-objcopy] Update help message tests (details)
  56. Fix crash on XCore on unused inline in EmitTargetMetadata (details)
  57. Add --hot-func-list to llvm-profdata show for sample profiles (details)
  58. Fix a pair of wtype-limits and 3 wparentheses warnings from 29125ddf1 (details)
  59. [x86][AArch64] add tests for fmul-fma combine; NFC (details)
  60. [InlineCost] Added InlineCostCallAnalyzer::print() (details)
  61. [lldb][NFC] Use expect_expr in TestStructTypes.py (details)
  62. [NFCI][CostModel] Add const to Value*. (details)
  63. [ProcessGDBRemote] Placate the Windows buildbot. (details)
  64. [SVE] Remove calls to VectorType::getNumElements from IPO (details)
  65. [NFC][PowerPC] Fix some typos in MachineCombiner comments (details)
  66. [lld-macho] Remove using namespace llvm::MachO (details)
  67. [ProcessGDBRemote] Fix a typo in an ifdef from 58de2a3851391d (details)
  68. [PowerPC][Power10] Implement Count Leading/Trailing Zeroes Builtins under bit Mask in LLVM/Clang (details)
  69. Add a git hook script that can be manually setup to run some checks on every push (details)
  70. [InlineCost] InlineCostAnnotationWriterPass introduced (details)
  71. [ARM] Make cp10 and cp11 usage a warning (details)
  72. Revert "[BitcodeReader] Fix DelayedShuffle handling for ConstantExpr shuffles." (details)
  73. Use concrete natural type alignment for masked load/store operations instead of 0. (details)
  74. [TextAPI/MachO] Fix style issues. NFC (details)
  75. Remove Passes dependency on CodeGen (details)
  76. Revert "Use concrete natural type alignment for masked load/store operations instead of 0." (details)
  77. [NFCI] SCEV: promote ScalarEvolutionDivision into an publicly usable class (details)
  78. [InstCombine] visitBitCast(): do not crash on weird `bitcast <1 x i8*> to i8*` (details)
  79. [IR] GetUnderlyingObject(), stripPointerCastsAndOffsets(): don't crash on `bitcast <1 x i8*> to i8*` (details)
  80. [SROA] convertValue(): we can have <N x iK> to <M x iQ*> cast (details)
  81. [SROA] convertValue(): we can have <N x iK*> to <M x iQ> cast (details)
  82. [NFCI][InstSimplify] Add CHECK-LABEL to new icmp.ll test (details)
  83. [gn build] Port 1e2691fe238 (details)
  84. [MIR] Fix CFI_INSTRUCTION escape printing (details)
  85. [llvm-profdata] --hot-func-list: fix some style issues in D81800 (details)
  86. [clangd] Make background index thread count calculation clearer (details)
Commit 8131ef5d635bc01b398c8648ea921f2891aaa9d2 by kamau.bridgeman
[LLD][PowerPC] Add support for R_PPC64_GOT_PCREL34

Add support for the 34bit relocation R_PPC64_GOT_PCREL34 for
PC Relative in LLD.

Reviewers: sfertile, MaskRay

Differential Revision: https://reviews.llvm.org/D81948
The file was addedlld/test/ELF/ppc64-reloc-got-pcrel34.s
The file was modifiedlld/ELF/Arch/PPC64.cpp
Commit bf77c7ef2dec2fb1d123bbd6250cb8e7973ed4ba by llvm-dev
Loads.h - reduce AliasAnalysis.h include to forward declarations. NFC.

Fix implicit include dependencies in source files.
The file was modifiedllvm/lib/Analysis/MemDerefPrinter.cpp
The file was modifiedllvm/lib/Analysis/Loads.cpp
The file was modifiedllvm/include/llvm/Analysis/Loads.h
The file was modifiedllvm/lib/CodeGen/MachineOperand.cpp
Commit 3249bfda9678724207803ce675505ffbfa65a372 by grimar
[llvm-readobj] - Don't crash when a broken GNU hash table is dumped with --hash-symbols.

Start using the `checkGNUHashTable` helper which was recently introduced to report
a proper warning when a GNU hash table goes past the end of the file.

Differential revision: https://reviews.llvm.org/D82449
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hash-symbols.test
Commit ab27603c6d444b15e5f8efc090611488440211a9 by flo
[DSE,MSSA] Add missing -enable-dse-memoryssa flag to test.
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/combined-partial-overwrites.ll
Commit c3b3b999ec9ef7e8d9367848db82c97a0369473f by tcorring
[AMDGPU] Avoid redundant mode register writes

Summary:
The SIModeRegister pass attempts to generate the minimal number of
writes to the mode register. However it was failing to correctly
deal with some loops, resulting in some redundant setreg instructions
being inserted.

This change amends the pass to avoid generating these redundant
instructions.

Subscribers: arsenm, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82215
The file was modifiedllvm/test/CodeGen/AMDGPU/mode-register.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIModeRegister.cpp
Commit 16e17ca16a89daa099fd2726d92f08a49870e5a9 by pavel
[lldb] Refactor Scalar::TruncOrExtendTo

The "type" argument to the function is mostly useless -- the only
interesting aspect of it is signedness. Pass signedness directly and
compute the value of bits and signedness fields -- that's exactly
what the single caller of this function does.
The file was modifiedlldb/include/lldb/Utility/Scalar.h
The file was modifiedlldb/unittests/Expression/DWARFExpressionTest.cpp
The file was modifiedlldb/source/Utility/Scalar.cpp
The file was modifiedlldb/source/Expression/DWARFExpression.cpp
The file was modifiedlldb/unittests/Utility/ScalarTest.cpp
Commit 5f94c9a421ec7cc7ece2bd875e010639ee0783ec by hokein.wu
[AST][RecoveryExpr] Add error-bit TemplateArgument

Summary: We are missing the error-bit somehow if the error-bit is propagated
through the code path: "error type/expr" -> "template argument" ->
"template specialization type", which will lead to crashes.

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82102
The file was modifiedclang/test/SemaCXX/invalid-template-base-specifier.cpp
The file was modifiedclang/lib/AST/Type.cpp
The file was modifiedclang/include/clang/AST/DependenceFlags.h
Commit 457db4036a14635c6bc6875a24e17c502a30f6e8 by llvm-dev
Cloning.h - reduce AliasAnalysis.h include to forward declarations. NFC.

Fix implicit include dependencies in source files.
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/Cloning.h
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
The file was modifiedllvm/unittests/Transforms/Utils/CloningTest.cpp
Commit c5d240093b60729829cb55823448e30bdfc69142 by Matthew.Arsenault
WebAssembly: Don't store MachineFunction in MachineFunctionInfo

Soon it will be disallowed to depend on MachineFunction state in the
constructor. This was only being used to get the MachineRegisterInfo
for an assert, which I'm not sure is necessarily worth it. I would
think any missing defs would be caught by the verifier later instead.
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyRegNumbering.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyLowerBrUnless.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
Commit 9e8afee47b070d21e96cb65f111da96997bbad14 by spatel
[VectorCombine] add tests for extract + cmp + binop; NFC
The file was addedllvm/test/Transforms/VectorCombine/X86/extract-cmp-binop.ll
Commit a0f967418f9e9030168ba934164cca56dc550634 by spatel
[VectorCombine] give invalid index value a name; NFC
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
Commit 62841415e685fe8857f75edd1fa92b7d1d08b875 by mtrofin
[llvm] Added support for stand-alone cmake object libraries.

Summary:
Currently, add_llvm_library would create an OBJECT library alongside
of a STATIC / SHARED library, but losing the link interface (its
elements would become dependencies instead). To support scenarios
where linking an object library also brings in its usage
requirements, this patch adds support for 'stand-alone' OBJECT
libraries - i.e. without an accompanying SHARED/STATIC library, and
maintaining the link interface defined by the user.

This is useful for cases where, for example, we want to build a part
of a component separately. Using a STATIC target would incur the risk
that symbols not referenced in the consumer would be dropped (which may
be undesirable).

The current application is the ML part of Analysis. It should be part
of the Analysis component, so it may reference other analyses; and (in
upcoming changes) it has dependencies on optional libraries.

Reviewers: karies, davidxl, beanz, phosek, smeenai

Subscribers: mgorny, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81447
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
Commit bdceefe95ba6a3057947705ae7a48bfcbaed2f64 by mtrofin
[llvm] Release-mode ML InlineAdvisor

Summary:
This implementation uses a pre-trained model which is statically
compiled into a native function.

RFC: http://lists.llvm.org/pipermail/llvm-dev/2020-April/140763.html

Reviewers: davidxl, jdoerfert, dblaikie

Subscribers: mgorny, eraman, hiraditya, arphaman, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81515
The file was addedllvm/include/llvm/Analysis/MLModelRunner.h
The file was addedllvm/lib/Analysis/models/inliner/saved_model.pb
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was modifiedllvm/test/Bindings/Go/lit.local.cfg
The file was addedllvm/test/Transforms/Inline/ML/ml-test-release-mode.ll
The file was addedllvm/test/Transforms/Inline/ML/bounds-checks.ll
The file was modifiedllvm/include/llvm/Analysis/InlineAdvisor.h
The file was addedllvm/include/llvm/Analysis/InlineModelFeatureMaps.h
The file was modifiedllvm/test/Transforms/Inline/inlining-advisor-default.ll
The file was addedllvm/lib/Analysis/ReleaseModeModelRunner.cpp
The file was addedllvm/lib/Analysis/models/inliner/variables/variables.index
The file was modifiedllvm/test/lit.cfg.py
The file was modifiedllvm/CMakeLists.txt
The file was addedllvm/include/llvm/Analysis/MLInlineAdvisor.h
The file was addedllvm/lib/Analysis/models/inliner/variables/variables.data-00000-of-00002
The file was addedllvm/cmake/modules/TensorFlowCompile.cmake
The file was addedllvm/lib/Analysis/models/inliner/variables/variables.data-00001-of-00002
The file was addedllvm/test/Transforms/Inline/ML/Inputs/test-module.ll
The file was addedllvm/lib/Analysis/MLInlineAdvisor.cpp
The file was modifiedllvm/test/lit.site.cfg.py.in
The file was modifiedllvm/lib/Analysis/InlineAdvisor.cpp
Commit fcf0741262c6b0f37f641020f0e5f5e3f5468f2d by aeubanks
[NewPM] Handle -simplifycfg in opt

Summary:
-simplifycfg is the legacy pass name for SimplifyCFGPass.

There is already -simplify-cfg in FUNCTION_PASS_WITH_PARAMS which
handles options for SimplifyCFGPass. Maybe that should be renamed to
-simplifycfg as well?

This reduces the number of check-llvm failures under NewPM from 2619 to 2392.

Reviewers: hans, leonardchan, asbirlea, ychen

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82421
The file was modifiedllvm/lib/Passes/PassRegistry.def
Commit b5979a383a25a81d77dd1f29ed90e4e4f6359c69 by aeubanks
[NewPM] Add SimpleLoopUnswitchPass to PassRegistry.def

Summary:
Seems to just be missing from PassRegistry.def.

Makes the number of check-llvm failures under new PM go from 2619 to 2581.

Reviewers: hans, ychen, asbirlea, leonardchan

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82422
The file was modifiedllvm/lib/Passes/PassRegistry.def
Commit 778351df777b89641cadf038b17e416b0bbf31ab by arsenm2
Revert "[AMDGPU] Enable compare operations to be selected by divergence"

This reverts commit 521ac0b5cea02f629d035f807460affbb65ae7ad.

Reported to break thousands of piglit tests.
The file was modifiedllvm/test/CodeGen/AMDGPU/icmp64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ctlz.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/or.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fshr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/min.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/extract_vector_elt-i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/select-vectors.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/setcc-opt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vector-extract-insert.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/si-annotate-cfg-loop-assert.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/select-opt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/srem64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/loop_break.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/uint_to_fp.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/saddo.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/extract_vector_elt-f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.div.fmas.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgcn.private-memory.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sdiv64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/udivrem.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fshl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/uint_to_fp.f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/selectcc-opt.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/control-flow-optnone.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/urem64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.mulo.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/branch-relaxation.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.round.f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/32-bit-local-address-space.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td
The file was modifiedllvm/test/CodeGen/AMDGPU/addrspacecast.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/cndmask-no-def-vcc.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/setcc.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/v_cndmask.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sint_to_fp.f64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/shift-i128.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/udiv64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/setcc64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/selectcc.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/vselect.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/uniform-cfg.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/zero_extend.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/extractelt-to-trunc.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/load-select-ptr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sign_extend.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sad.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/si-annotate-cf.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/sint_to_fp.ll
Commit 4542c18ef295702b269204f83352b673c59e6542 by maskray
[ELF] -r: don't parse @ (symbol versioning) for .symver inline asm in bitcode

Fixes PR46420
Similar to D43307 for non-LTO.

Module-level inline assembly can use .symver to create a symbol with `@` in the name.
For relocatable output, @ should be retained in the symbol name. `@ver` should
not be parsed and dropped.

Reviewed By: grimar, psmith

Differential Revision: https://reviews.llvm.org/D82433
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/test/ELF/lto/version-script2.ll
Commit 085701b8b0084b24b6badff7440ba63ea90e112e by iajbar
[Hexagon] Reducing minimum alignment requirement

This patch reduces minimum alignment requirement to 1 byte for arguments
passed by value on stack.
The file was addedllvm/test/CodeGen/Hexagon/abi-padding.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonCallingConv.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was addedllvm/test/CodeGen/Hexagon/abi-padding-2.ll
Commit 6a3cffce3e8076d0608daf951575d5f4d6a333a6 by kadircet
[clangd] Disable printing of Value for tag-types on hover

Summary: This is both confusing and crashy.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82326
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
The file was modifiedclang-tools-extra/clangd/Hover.cpp
Commit b5c4e6c148464bd327b02ed5d0e267eb93455c19 by Matthew.Arsenault
AMDGPU/GlobalISel: Invert parameter for div/rem lowering function
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit a44867075201b6aa3355f63445d81d66ef9daa50 by Matthew.Arsenault
AMDGPU/GlobalISel: Legalize 64-bit G_SDIV/G_SREM

Now all the divisions should be complete, although we should fix
emitting the entire common part for div/rem when you use both.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sdiv.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-srem.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
Commit e8775c8d817b7aa48bea17241f0eb459823f46b2 by david.stuttard
[AMDGPU] Make sure to fix implicit operands on insertBranch

Summary:
Without fixImplicitOperands we may end up creating default implicit operands
that are the wrong wave size

Includes simple test that provokes insertBranch in the correct way to expose the
issue being fixed.

Change-Id: I92bdcdee9fcb7b4d91529b84e76a48ac8218483e

Subscribers: arsenm, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, tpr, t-tye, hiraditya, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82459
The file was addedllvm/test/CodeGen/AMDGPU/insert-branch-w32.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 8e08422385d93fd99354286abd495484f4513f88 by waltermelon
Disable flaky lldb-vscode tests on aarch64

Summary:
These two tests are flaky only on this arch for some reason. They are testing important features and are not flaky on x86_64, so I'll investigate this arm issue separatedly.

Some flaky runs:
http://lab.llvm.org:8011/builders/lldb-aarch64-ubuntu/builds/5517/steps/test/logs/stdio
http://lab.llvm.org:8011/builders/lldb-aarch64-ubuntu/builds/5527/steps/test/logs/stdio

Diff that created those tests:
https://reviews.llvm.org/D81978
The file was modifiedlldb/test/API/tools/lldb-vscode/attach/TestVSCode_attach.py
Commit f4044dd5392d97a2a0f1477f42e6039dd3764016 by flo
[SLP] Precommit short load / wide math test for AArch64.

This pattern is key to eliminate a 10% performance regression in
SPEC2006.
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
Commit 4fb2116ee7f19d8048f4d64933b3e8666e3658c2 by Matthew.Arsenault
GlobalISel: Add unit tests for some utils functions

The test constants were originally constexpr, but this apparently
crashes old versions of gcc.
The file was addedllvm/unittests/CodeGen/GlobalISel/GISelUtilsTest.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/CMakeLists.txt
Commit 69d2fa9ed1c1aba6f473feb03cad257e69a0cf52 by erik.pilkington
[SemaObjC] Fix a crash on invalid when 'auto' is used in a @property

rdar://48506879
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/test/SemaObjCXX/property-invalid-type.mm
Commit 6e5f64c44f26465829e5aed38e900129ace6e64f by tianshilei1992
[OpenMP] Adopt std::set in HostDataToTargetMap

Summary:
lookupMapping took significant time due to linear complexity searching.
This is bad for offloading from multiple host threads because lookupMapping is protected by mutex.
Use std::set for logarithmic complexity searching.

Before my change.
libomptarget inclusive time 16.7 sec, exclusive time 8.6 sec.
After the change
libomptarget inclusive time 7.3 sec, exclusive time 0.4 sec.

Most of the overhead of libomptarget (exclusive time) is gone.

Reviewers: jdoerfert, grokos

Reviewed By: grokos

Subscribers: tianshilei1992, yaxunl, guansong, sstefan1

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D82264
The file was modifiedopenmp/libomptarget/src/omptarget.cpp
The file was modifiedopenmp/libomptarget/src/device.cpp
The file was modifiedopenmp/libomptarget/src/device.h
Commit 6a890885237a6cfa4e6310e336b0b7d2bea6ba75 by mtrofin
Revert "[llvm] Added support for stand-alone cmake object libraries."

This reverts commit 62841415e685fe8857f75edd1fa92b7d1d08b875.

The commit is a misnomer, and it "made its way in" unintentionally,
through a patch that had it as a depdendency. The change itself ended up
to be just a comment update, but the description is completely wrong.
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
Commit fd9f5f9c1b75d6d5a6d0f12d189ea87ae82c94a0 by Jonas Devlieghere
[llvm] Remove full stop frome error message

Address post-commit feedback from James Henderson in D80959.
The file was modifiedllvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/cmdline.test
Commit 87340a2bf1d2618565b7cf606913c8968e6513fb by yitzhakm
[libTooling] Delete deprecated `Stencil` combinators.

Summary: Deletes `text()` and `selection()` combinators, since they have been deprecated for months.

Reviewers: tdl-g

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82225
The file was modifiedclang/lib/Tooling/Transformer/Stencil.cpp
The file was modifiedclang/unittests/Tooling/StencilTest.cpp
The file was modifiedclang/include/clang/Tooling/Transformer/Stencil.h
Commit aec5344f48a23217a20ece5219f9e1e2f149c552 by uday
[MLIR] Fix affine loop fusion private memref alloc

Drop stale code that provided the wrong operands to alloc.

Reported-by: rjnw on discourse

Differential Revision: https://reviews.llvm.org/D82409
The file was modifiedmlir/lib/Transforms/LoopFusion.cpp
The file was modifiedmlir/test/Transforms/loop-fusion.mlir
Commit c18b753686dc98bf978760d19dc9cba1dba58a13 by llvm-dev
LoopUtils.h - reduce AliasAnalysis.h include to forward declarations. NFC.

Fix implicit include dependencies in source files and replace legacy AliasAnalysis typedef with AAResults where necessary.
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
The file was modifiedllvm/unittests/Transforms/Utils/LoopUtilsTest.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Target/ARM/MVETailPredication.cpp
Commit 324fa9a4cfd1bc6cbe75d53b5c72de04aef90611 by thakis
[gn build] (manually) port bdceefe95ba6a
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
Commit ceb298be40211a7235f73c7ff9f46603ca84fd6b by llvmgnsyncbot
[gn build] Port 4fb2116ee7f
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/CodeGen/GlobalISel/BUILD.gn
Commit 29125ddf1323951901184d2859274afdecac0327 by dany.grumberg
Start adding support for generating CC1 command lines from CompilerInvocation

This change includes the following:
- Add additional information in the relevant table-gen files to encode
the necessary information to automatically parse the argument into a
CompilerInvocation instance and to generate the appropriate command
line argument from a CompilerInvocation instance.
- Extend OptParserEmitter to emit the necessary macro tables as well as
constant tables to support parsing and generating command line
arguments for options that provide the necessary information.
- Port some options to use this new system for parsing and generating
command line arguments.

Differential Revision: https://reviews.llvm.org/D79796
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
The file was addedclang/unittests/Frontend/CompilerInvocationTest.cpp
The file was modifiedllvm/include/llvm/Option/OptParser.td
The file was modifiedclang/unittests/Frontend/CMakeLists.txt
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/CC1Options.td
The file was modifiedllvm/utils/TableGen/OptParserEmitter.cpp
Commit e7f25483803f207a3acfd86e7ea404ec3809418f by llvmgnsyncbot
[gn build] Port 29125ddf132
The file was modifiedllvm/utils/gn/secondary/clang/unittests/Frontend/BUILD.gn
Commit ebc9e0f1f0786b892b4a6eaf50013a18aed31aa5 by michael.hliao
Fix coding style. NFC.

- Remove `else` after `return`.
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
Commit 8dc92142e3c5332d741aff4bc81ee6aeed7784b2 by craig.topper
[X86] Replace PROC macros with an enum and a lookup table of processor information.

This patch removes the PROC macro in favor of CPUKind enum and a
table that contains information about CPUs.

The current information in the table is the CPU name, CPUKind enum
value, key feature for target multiversioning, and Is64Bit capable.
For the strings that are aliases, I've duplicated the information
in the table. This means there are more rows in the table than
CPUKind enums.

This replaces multiple StringSwitch's with loops through the table.
They are linear searches due to the table being more logically
ordered than alphabetical. The StringSwitch's would have also been
linear. I've used StringLiteral on the strings in the table so we
can quickly check the length while searching.

I contemplated having a CPUKind for each string so there was a 1:1
mapping, but didn't want to spread more names to the places that
use the enum.

My ultimate goal here is to store the features for each CPU as a
bitset within the table. Hoping to use constexpr to make this
composable so we can group features and inherit them. After the
table lookup we can turn the bitset into a list of strings for the
frontend. The current switch we have for selecting features for
CPUs has become difficult to maintain while trying to express
inheritance relationships.

Differential Revision: https://reviews.llvm.org/D82414
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedllvm/include/llvm/Support/X86TargetParser.def
The file was modifiedllvm/include/llvm/Support/X86TargetParser.h
The file was modifiedllvm/lib/Support/X86TargetParser.cpp
Commit d291bd510e6a4e62594186cb8f3ddc18acf2ee1a by tejohnson
[WPD] Allow virtual calls to be analyzed with multiple type tests

Summary:
In D52514 I had fixed a bug with WPD after indirect call promotion, by
checking that a type test being analyzed dominates potential virtual
calls. With that fix I included a small effiency enhancement to avoid
processing a devirt candidate multiple times (when there are multiple
type tests). This latter change wasn't in response to any measured
efficiency issues, it was merely theoretical. Unfortuantely, it turns
out to limit optimization opportunities after inlining.

Specifically, consider code that looks like:

class A {
  virtual void foo();
};
class B : public A {
  void foo();
}
void callee(A *a) {
  a->foo(); // Call 1
}
void caller(B *b) {
  b->foo(); // Call 2
  callee(b);
}

After inlining callee into caller, because of the existing call to
b->foo() in caller there will be 2 type tests in caller for the vtable
pointer of b: the original type test against B from Call 2, and the
inlined type test against A from Call 1. If the code was compiled with
-fstrict-vtable-pointers, then after optimization WPD will see that
both type tests are associated with the inlined virtual Call 1.
With my earlier change to only process a virtual call against one type
test, we may only consider virtual Call 1 against the base class A type
test, which can't be devirtualized. With my change here to remove this
restriction, it also gets considered for the type test against the
derived class B type test, where it can be devirtualized.

Note that if caller didn't include it's own earlier virtual call
b->foo() we will not be able to devirtualize after inlining callee even
after this fix, since there would not be a type test against B in the
IR. As a future enhancement we can consider inserting type tests at call
sites that pass pointers to classes with virtual calls, to enable
context-sensitive devirtualization after inlining.

Reviewers: pcc, vitalybuka, evgeny777

Subscribers: Prazek, hiraditya, steven_wu, dexonsmith, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D79235
The file was modifiedllvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
The file was addedllvm/test/ThinLTO/X86/devirt_multiple_type_test.ll
Commit d4ef569577625d50dfe01ab54c7b9995db3e013f by waltermelon
Disable a flaky lldb-vscode test on aarch64

Summary:
These tests isflaky only on this arch for some reason. It's testing important features and is not flaky on x86_64, so I'll investigate this arm issue separatedly.

A flaky run:
http://lab.llvm.org:8011/builders/lldb-aarch64-ubuntu/builds/5540/steps/test/logs/stdio

Diff that created those tests:
https://reviews.llvm.org/D81978
The file was modifiedlldb/test/API/tools/lldb-vscode/launch/TestVSCode_launch.py
Commit 1a4f8889800a8c80819602725c5ce509ded2d451 by craig.topper
[X86] Rename O3-pipeline.ll to opt-pipeline.ll and add O1/O2 command lines

Eric Cristopher asked me about possibly disabling some passes at
-O1/Og. Figured a good first step was to test all the pipelines.
They all appear to be the same for now. Hoping we can use FileCheck
prefixes for differences to avoid repeating the contents 3 times.
The file was removedllvm/test/CodeGen/X86/O3-pipeline.ll
The file was addedllvm/test/CodeGen/X86/opt-pipeline.ll
Commit af5e61bf4fd1bf865f90beab0227ff4901246eeb by tra
[NVPTX] Fix for NVPTX module asm regression

Currently module asm ends up emitted twice and at the wrong place in the PTX.
This patch moves module asm generation into emitStartOfAsmFile() which puts at
the correct location in the generated PTX.

Differential Revision: https://reviews.llvm.org/D82280
The file was modifiedllvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
The file was modifiedllvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/NVPTX/module-inline-asm.ll
Commit ca133cdecfeacf9a36f7f4b547239ca8b799641c by alexshap
[llvm-objcopy] Update help messages

This diff updates the help messages 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/D81907
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-help-message.test
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/help-message.test
Commit 3fa666b883625a678cfcfd9ad96b2daabcef09e8 by jdenny.ornl
[OpenMP][Docs] Mark TR8 `present` as claimed in docs
The file was modifiedclang/docs/OpenMPSupport.rst
Commit a53dddb3e95de0fb80d280bd625a1ebc04315d51 by llvm-dev
Local.h - reduce includes to forward declarations. NFC.

Fix implicit include dependencies in source files and replace legacy AliasAnalysis typedef with AAResults where necessary.
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/lib/CodeGen/HardwareLoops.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64StackTagging.cpp
The file was modifiedllvm/lib/Transforms/Utils/FlattenCFG.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SCCP.cpp
Commit 6c6adde84f31fb83ba35dc08a8420afb7ce7e093 by llvm-dev
InstCombineInternal.h - reduce AliasAnalysis.h include to forward declaration. NFC.

Fix implicit include dependencies in source files and replace legacy AliasAnalysis typedef with AAResults where necessary.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
Commit 01ddb2a7b044f697a15043e47acdb93e2825809a by jdenny.ornl
[OpenMP][NFC] Remove hard-coded line numbers from test

Otherwise, it's painful to insert new code.  There are many existing
examples in the same test file where the line numbers are not
hard-coded.

I intend to do the same for several other OpenMP tests, but I want to
be sure there are no objections before I spend time on it.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D82224
The file was modifiedclang/test/OpenMP/target_map_codegen.cpp
Commit cdd6a2788caced6b377af818154138d9983dba5f by Akira
[ObjC] Copy a block to the heap if it is passed as a variadic argument

Call maybeExtendBlockObject in DefaultVariadicArgumentPromotion so that
the block is copied to the heap when it is passed as a variadic argument
to any calls, not only to C function calls.

rdar://problem/64201532
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/CodeGenObjC/arc-blocks.m
Commit ecb098c6debd13a8fbe5c730a5c717b627ee27cd by jdenny.ornl
[FileCheck][NFC] Fix typo in test comment
The file was modifiedllvm/test/FileCheck/dump-input-enable.txt
Commit d65cdb498f901d7ce03dbaa1831c629400ebb422 by Vedant Kumar
[docs] Fix typo
The file was modifiedllvm/docs/HowToUpdateDebugInfo.rst
Commit 35bb9bfbb099eb78dbed8f96d7cd7f5506d6584f by flo
[SLP] Limit GEP lists based on width of index computation.

D68667 introduced a tighter limit to the number of GEPs to simplify
together. The limit was based on the vector element size of the pointer,
but the pointers themselves are not actually put in vectors.

IIUC we try to vectorize the index computations here, so we should base
the limit on the vector element size of the computation of the index.

This restores the test regression on AArch64 and also restores the
vectorization for a important pattern in SPEC2006/464.h264ref on
AArch64 (@test_i16_extend). We get a large benefit from doing a single
load up front and then processing the index computations in vectors.

Note that we could probably even further improve the AArch64 codegen, if
we would do zexts to i32 instead of i64 for the sub operands and then do
a single vector sext on the result of the subtractions. AArch64 provides
dedicated vector instructions to do so. Sketch of proof in Alive:
https://alive2.llvm.org/ce/z/A4xYAB

Reviewers: craig.topper, RKSimon, xbolva00, ABataev, spatel

Reviewed By: ABataev, spatel

Differential Revision: https://reviews.llvm.org/D82418
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit fd19ddb8f2a2b082f492fc59f7f360adf3495701 by ditaliano
[Apple Silicon] Initial support for Rosetta

Translated processes talk with a different debugserver, shipped with
macOS 11. This patch detects whether a process is translated and
attaches to the correct debugserver implementation.
It's the first patch of a series. Tested on the lldb test suite.

Differential Revision:  https://reviews.llvm.org/D82491
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
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/MachO/install-name-tool-help-message.test
The file was removedllvm/test/tools/llvm-objcopy/ELF/help-message.test
The file was addedllvm/test/tools/llvm-objcopy/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/TargetInfo.h
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
The file was addedclang/test/CodeGen/xcore-unused-inline.c
The file was modifiedclang/lib/CodeGen/CodeGenModule.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/Inputs/sample-hot-func-list.proftext
The file was addedllvm/test/tools/llvm-profdata/sample-hot-func-list.test
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
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/Transforms/Scalar/LoopIdiomRecognize.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.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 modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was modifiedllvm/test/CodeGen/PowerPC/p10-bit-manip-ops.ll
The file was modifiedclang/test/CodeGen/builtins-ppc-p10vector.c
The file was modifiedllvm/test/MC/PowerPC/p10.s
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
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def
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 addedllvm/utils/git/pre-push.py
The file was modifiedllvm/docs/GettingStarted.rst
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 modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Analysis/InlineCost.cpp
The file was modifiedllvm/test/Transforms/Inline/debuginline-cost-delta.ll
The file was removedllvm/test/Transforms/Inline/print-instructions-deltas-unfinished.ll
The file was addedllvm/test/Transforms/Inline/inline-cost-annotation-pass.ll
The file was modifiedllvm/include/llvm/Analysis/InlineCost.h
Commit b7d41a11cd31388e8b542b2d881f5c9d7130b95e by stefan
[ARM] Make cp10 and cp11 usage a warning

The ARM ARM considers p10/p11 valid arguments for MCR/MRC instructions.
MRC instructions with p10 arguments are also used in kernel code which
is shared for different architectures. Turn usage of p10/p11 to warnings
for ARMv7/ARMv8-M.

Reviewers: rengolin, olista01, t.p.northover, efriedma, psmith, simon_tatham

Reviewed By: simon_tatham

Subscribers: hiraditya, danielkiss, jcai19, tpimh, nickdesaulniers, peter.smith, javed.absar, kristof.beyls, jdoerfert, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D59733
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
The file was modifiedllvm/test/MC/ARM/coprocessors.s
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/test/MC/ARM/diagnostics.s
Commit 10045cbe01928d9281723c640c03984d540f9012 by 31459023+hctim
Revert "[BitcodeReader] Fix DelayedShuffle handling for ConstantExpr shuffles."

Patch has a memory leak bug that broke the ASan buildbots. More info
available at: https://reviews.llvm.org/D80330

This reverts commit b5740105d270a2d76da8812cafb63e4b799ada73.
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
The file was removedllvm/test/Bitcode/vscale-shuffle.ll
Commit 39819ccd36b6dd61c9decd29df64fd4e8a7ee9ad by gchatelet
Use concrete natural type alignment for masked load/store operations instead of 0.
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit c6d01ed0465c77090c816f37769643edce8e3501 by maskray
[TextAPI/MachO] Fix style issues. NFC

See https://llvm.org/docs/CodingStandards.html#use-namespace-qualifiers-to-implement-previously-declared-functions
The file was modifiedllvm/lib/TextAPI/MachO/InterfaceFile.cpp
The file was modifiedllvm/lib/TextAPI/MachO/TextStub.cpp
Commit ebc88811b5c9ed9375a681a7267831ae7ad46ba7 by Yuanfang Chen
Remove Passes dependency on CodeGen

The dependency was introduced in
5134020ea62d1e1e125fdac48d251a26b80e9781. The only functional change
from this removal would be the new PM interface for the two codegen
passes. This is not necessary since we don't have codegen pipeline using
new PM yet. This removal is to break the potential circular dependency between
Passes and CodeGen once the codegen begins to gain new PM support.
The file was modifiedllvm/lib/Passes/LLVMBuild.txt
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/test/CodeGen/X86/unreachableblockelim.ll
The file was modifiedllvm/test/Transforms/PreISelIntrinsicLowering/load-relative.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/test/Transforms/PreISelIntrinsicLowering/objc-arc.ll
Commit 31bd860ec02f975777a8d861fab299a59f180e84 by gchatelet
Revert "Use concrete natural type alignment for masked load/store operations instead of 0."

This reverts commit 39819ccd36b6dd61c9decd29df64fd4e8a7ee9ad.
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit 1e2691fe238b9b47dd3fa2c7a8874826ead45760 by lebedev.ri
[NFCI] SCEV: promote ScalarEvolutionDivision into an publicly usable class

This makes it usable from outside of SCEV,
while previously it was internal to the ScalarEvolution.cpp

In particular, i want to use it in an WIP alloca promotion helper pass,
to analyze if some SCEV is a multiple of some other SCEV.
The file was addedllvm/lib/Analysis/ScalarEvolutionDivision.cpp
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was addedllvm/include/llvm/Analysis/ScalarEvolutionDivision.h
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
Commit 381054a989ebd0b585fee46f2a01a7c5de10acf7 by lebedev.ri
[InstCombine] visitBitCast(): do not crash on weird `bitcast <1 x i8*> to i8*`

Even if we know that RHS of a bitcast is a pointer,
we can't assume LHS is, because it might be
a single-element vector of pointer.
The file was modifiedllvm/test/Transforms/InstCombine/bitcast.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Commit 2b8d706b19c0e049da3eb62572b08af72ba2e5e6 by lebedev.ri
[IR] GetUnderlyingObject(), stripPointerCastsAndOffsets(): don't crash on `bitcast <1 x i8*> to i8*`

I'm not sure how to write standalone tests for each of two changes here.
If either one of these two fixes is missing, the test fill crash.
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/lib/IR/Value.cpp
The file was addedllvm/test/Transforms/InstSimplify/icmp.ll
Commit 07a23c06dd9c616fc24410f8cdbc8b4797b31cdc by lebedev.ri
[SROA] convertValue(): we can have <N x iK> to <M x iQ*> cast

Provided test case crashes otherwise.

If NewTy is already DL.getIntPtrType(NewTy),
CreateBitCast() won't actually create any bitcast,
so we are better off just doing the general thing.
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
The file was modifiedllvm/test/Transforms/SROA/vector-conversion.ll
Commit 8911a35180c6777188fefe0954a2451a2b91deaf by lebedev.ri
[SROA] convertValue(): we can have <N x iK*> to <M x iQ> cast

Provided test case crashes otherwise.
Much like to the opposite case.
The file was modifiedllvm/test/Transforms/SROA/vector-conversion.ll
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
Commit 0c221470275270abe9dbb72cced030a0251ecfb6 by lebedev.ri
[NFCI][InstSimplify] Add CHECK-LABEL to new icmp.ll test
The file was modifiedllvm/test/Transforms/InstSimplify/icmp.ll
Commit 8fe9d2a20677b3f0d01db05fc4bb9373f8ea8dc2 by llvmgnsyncbot
[gn build] Port 1e2691fe238
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn
Commit 4d81aec40c62a0599a4bfbd7b45df78b302dbc3c by scott.linder
[MIR] Fix CFI_INSTRUCTION escape printing

Summary:
The printer seems to intend to not print the trailing comma but has a
copy-paste error for the last value in the escape, and the parser
enforces having no trailing comma, but somehow a test was never included
to actually confirm it.

Reviewers: thegameg, arsenm

Reviewed By: thegameg, arsenm

Subscribers: wdng, arsenm, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82478
The file was modifiedllvm/test/CodeGen/MIR/AArch64/cfi.mir
The file was modifiedllvm/lib/CodeGen/MachineOperand.cpp
The file was addedllvm/test/CodeGen/MIR/Generic/cfi-escape.mir
Commit 546be0883784838be5d07a82f39ec4390f49e19e by maskray
[llvm-profdata] --hot-func-list: fix some style issues in D81800

Reviewed By: wenlei, hoyFB

Differential Revision: https://reviews.llvm.org/D82500
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
The file was modifiedllvm/test/tools/llvm-profdata/sample-hot-func-list.test
Commit 3c5745cb1f3c501e551a8fa63b8f1d564c35016d by sam.mccall
[clangd] Make background index thread count calculation clearer

Summary:
This confusion was inadvertently introduced in a change to the
heavyweight_hardware_concurrency API: 8404aeb56a73ab24f9b295111de3b37a37f0b841

- don't indirect through the rebuilder policy when building the thread pool
- document that rebuilder thresholds are exposed for testing only
- don't use 0 as a sentinel value for "all threads", as we use it as a
  sentinel value for "synchronous" (though unsupported for BackgroundIndex)
- rather than pick some new sentinel value, just always use 4 threads for tests

Reviewers: kadircet, aganea

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82352
The file was modifiedclang-tools-extra/clangd/index/Background.cpp
The file was modifiedclang-tools-extra/clangd/index/Background.h
The file was modifiedclang-tools-extra/clangd/index/BackgroundRebuild.h