SuccessChanges

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

Summary

  1. [yaml2obj] - Teach tool to describe SHT_GNU_verdef section with a (details)
  2. [NFC] ASSERT_EQ before accessing items in containers (details)
  3. [clangd] Speed up when building rename edit. (details)
  4. [lldb][NFC] Extract type modifier parsing from (details)
  5. [lldb] Add boilerplate to recognize the .debug_rnglists.dwo section (details)
  6. [lldb][NFC] Simplify structure parsing code in (details)
  7. [yaml2obj] - Fix BB after «[yaml2obj] - Teach tool to describe (details)
  8. [lldb][NFC] Remove no longer unused variable in (details)
  9. [lldb/symbolvendorelf] Copy more sections from separate debug files (details)
  10. [lldb] remove unsigned Stream::operator<< overloads (details)
  11. Partially reland "[Diagnostics] Put "deprecated copy" warnings into (details)
  12. [lldb] remove a superfluous semicolon (details)
  13. [lldb] fix a -Wcast-qual warning (details)
  14. [llvm-readobj][test] - Cleanup the many-sections.s test case. (details)
  15. [lldb] Use llvm::format in AppleObjCRuntimeV2.cpp (details)
  16. [lldb][NFC] Modernize string handling in (details)
  17. [InferFuncAttributes][Attributor] add tests for 'dereferenceable'; NFC (details)
  18. [lldb] Avoid snprintf in PlatformRemoteDarwinDevice (details)
  19. [llvm-readobj/llvm-readelf] - Reimplement dumping of the SHT_GNU_verdef (details)
  20. [RISCV] Handle fcopysign(f32, f64) and fcopysign(f64, f32) (details)
  21. [LegalizeTypes][RISCV] Soften FCOPYSIGN operand (details)
  22. [clang-tidy] Use range-for for check registration. NFC (details)
  23. [lldb] [test] Un-XFAIL lldb-server tests fixed on NetBSD (details)
  24. [OPENMP]Fix PR44133: crash on lambda reductions in templates. (details)
  25. [AMDGPU] Fix emitIfBreak CF lowering: use temp reg to make register (details)
  26. [XCOFF][AIX] Check linkage on the function, and two fixes for comments (details)
  27. [DebugInfo] Disallow fragmenting DIExpressions with shift operators (details)
  28. [ARM] Lots of MVE offset masked load and store tests. NFC (details)
  29. [Codegen][ARM] Add addressing modes from masked loads and stores (details)
  30. [ARM] Clean up the load and store code. NFC (details)
  31. [OPENMP]Simplify printing of declare variant attribute, NFC. (details)
  32. [OPENMP]Remove tab in message, NFC. (details)
  33. [ELF] Replace SymbolTable::forEachSymbol with iterator_range symbols() (details)
  34. [ELF] Add a corrector for case mismatch problems (details)
  35. [Object][RISCV][test] Improve DebugInfo/RISCV/relax-debug-frame.ll (details)
Commit f69ac55d60d916e295ae0e507c5f4c2655360089 by grimar
[yaml2obj] - Teach tool to describe SHT_GNU_verdef section with a
"Content" property.
There is no way to set raw content for SHT_GNU_verdef section. This
patch implements it.
Differential revision: https://reviews.llvm.org/D70710
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
The file was modifiedllvm/test/tools/yaml2obj/ELF/verdef-section.yaml
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
Commit c547c22f18973dceaf5b40dae1b4ad7d3dd4eab7 by kbobyrev
[NFC] ASSERT_EQ before accessing items in containers
As discussed offline, something different from `EXPECT_EQ` should be
used to check if the container contains enough items before accessing
them so that other tests can still be run even if the assertion fails as
opposed to having `EXPECT_EQ` failing and then aborting the run due to
the errors caused by out-of-bounds memory access.
Reviewed by: ilya-biryukov
Differential Revision: https://reviews.llvm.org/D70528
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
Commit 8805316172a650d62cdb6d3854ef0e54fb300ca6 by hokein.wu
[clangd] Speed up when building rename edit.
Summary: We used to scan the code everytime when computing the LSP
position to the offset
(respect the LSP encoding). Now we only scan the source code once.
Reviewers: ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70441
The file was modifiedclang-tools-extra/clangd/refactor/Rename.h
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit 30fc94be237f26d3127d8bbc872d9e3b82f03590 by Raphael Isemann
[lldb][NFC] Extract type modifier parsing from
DWARFASTParserClang::ParseTypeFromDWARF
Part of the work to split up this monolithic parsing function.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
Commit 4023bd05fcb4f75c6a11d661f407f8e0896176e2 by pavel
[lldb] Add boilerplate to recognize the .debug_rnglists.dwo section
The file was modifiedlldb/source/Core/Section.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFContext.cpp
The file was modifiedlldb/test/Shell/ObjectFile/ELF/section-types.yaml
The file was modifiedlldb/source/Symbol/ObjectFile.cpp
The file was modifiedlldb/include/lldb/lldb-enumerations.h
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Commit 0181338ddae26230d4067fdc00c2f7218f1d64d7 by Raphael Isemann
[lldb][NFC] Simplify structure parsing code in
DWARFASTParserClang::ParseTypeFromDWARF
This way it looks more like the code around it. The assert is also gone
as it just checks that the variables we declare directly above were not
initialized by anyone. That made more sense when this was one large
function.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Commit 91827ebf5e3d9eb633ba909e8f50a3d402698cce by grimar
[yaml2obj] - Fix BB after «[yaml2obj] - Teach tool to describe
SHT_GNU_verdef section with a "Content" property.»
Fixed a temporary file name.
BB:
http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-ubuntu/builds/669
The file was modifiedllvm/test/tools/yaml2obj/ELF/verdef-section.yaml
Commit cdfecb82ee27fabf927102a356acd298ddca8703 by Raphael Isemann
[lldb][NFC] Remove no longer unused variable in
DWARFASTParserClang::ParseTypeFromDWARF
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Commit 9b06897009dc32313354559c969d6cf0a564ec06 by pavel
[lldb/symbolvendorelf] Copy more sections from separate debug files
Include the fancier DWARF5 sections too.
The file was modifiedlldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
The file was modifiedlldb/test/Shell/ObjectFile/ELF/build-id-case.yaml
Commit 957d9a0335b8199b01caec56574e72154c3a1226 by pavel
[lldb] remove unsigned Stream::operator<< overloads
Summary: I recently re-discovered that the unsinged stream operators of
the lldb_private::Stream class have a surprising behavior in that they
print the number in hex. This is all the more confusing because the
"signed" versions of those operators behave normally.
Now that, thanks to Raphael, each Stream class has a llvm::raw_ostream
wrapper, I think we should delete most of our formatting capabilities
and just delegate to that. This patch tests the water by just deleting
the operators with the most surprising behavior.
Most of the code using these operators was printing user_id_t values. It
wasn't fully consistent about prefixing them with "0x", but I've tried
to consistenly print it without that prefix, to make it more obviously
different from pointer values.
Reviewers: teemperor, JDevlieghere, jdoerfert
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D70241
The file was modifiedlldb/source/Utility/Stream.cpp
The file was modifiedlldb/source/Symbol/Variable.cpp
The file was modifiedlldb/test/Shell/SymbolFile/DWARF/array-sizes.s
The file was modifiedlldb/include/lldb/Utility/Stream.h
The file was modifiedlldb/source/Symbol/SymbolContext.cpp
The file was modifiedlldb/source/Symbol/Type.cpp
The file was modifiedlldb/source/Expression/DWARFExpression.cpp
The file was modifiedlldb/unittests/Utility/StreamTest.cpp
Commit 4eacc32672e60113b835c4356d1c398dc1e30279 by Dávid Bolvanský
Partially reland "[Diagnostics] Put "deprecated copy" warnings into
-Wdeprecated-copy""
But do not enable it under -Wextra until libcxx issue is solved.
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was addedclang/test/SemaCXX/deprecated-copy.cpp
Commit 6612fabc47f16d265d169b5b73dc8070dde436a8 by pavel
[lldb] remove a superfluous semicolon
The file was modifiedlldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
Commit 12284e54b483c2541eb09cd7c575f438970b66c1 by pavel
[lldb] fix a -Wcast-qual warning
The file was modifiedlldb/tools/driver/Driver.cpp
Commit 64225aea8f9ea92bd4189acceead272f498981b8 by grimar
[llvm-readobj][test] - Cleanup the many-sections.s test case.
It removes 2 precompiled binaries used which are now can be crafted with
the use of yaml2obj.
Differential revision: https://reviews.llvm.org/D70711
The file was modifiedllvm/test/tools/llvm-readobj/many-sections.s
The file was removedllvm/test/tools/llvm-readobj/Inputs/many-sections-stripped.elf-x86_64
The file was removedllvm/test/tools/llvm-readobj/Inputs/many-sections.elf-x86_64
Commit 290e43ddb660db2e9b294e1e963222c08965d211 by pavel
[lldb] Use llvm::format in AppleObjCRuntimeV2.cpp
Crushing a "sprintf" buffer is null warning.
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
Commit 16144d2b21d90a0515be2fc9158cbaf828abd980 by Raphael Isemann
[lldb][NFC] Modernize string handling in
DWARFASTParserClang::ParseTypeModifier
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Commit 2bd252ea894189f77e09755cf6951727e1d03a74 by spatel
[InferFuncAttributes][Attributor] add tests for 'dereferenceable'; NFC
Pulling a couple of extra tests out of D64258 before abandoning in favor
of D70714
The file was modifiedllvm/test/Transforms/InferFunctionAttrs/dereferenceable.ll
Commit 5871cba86172c5bd947952a9441acf80332455ea by pavel
[lldb] Avoid snprintf in PlatformRemoteDarwinDevice
This quashes a -Wformat-truncation warning.
The file was modifiedlldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
Commit d88f67bdca7526c2adc3749bb2cfef6b32da971c by grimar
[llvm-readobj/llvm-readelf] - Reimplement dumping of the SHT_GNU_verdef
section.
Currently we have following issues: 1) We have 2 different
implementations with a different behaviors for GNU/LLVM styles. 2)
Errors are either not handled at all or we call report_fatal_error with
not helpfull messages. 3) There is no test coverage even for those
errors that are reported.
This patch reimplements parsing of the SHT_GNU_verdef section entries in
a single place, adds a few error messages and test coverage.
Differential revision: https://reviews.llvm.org/D70495
The file was modifiedllvm/test/tools/llvm-readobj/elf-versioninfo.test
The file was modifiedllvm/test/tools/yaml2obj/ELF/verdef-section.yaml
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit d7be3eab5c0e1598e919973ed68a200997a4734a by luismarques
[RISCV] Handle fcopysign(f32, f64) and fcopysign(f64, f32)
Summary: Adds tablegen patterns to explicitly handle fcopysign where the
magnitude and sign arguments have different types, due to the sign value
casts being removed the by DAGCombiner. Support for RV32IF follows in a
separate commit. Adds tests for all relevant scenarios except RV32IF.
Reviewers: lenary Reviewed By: lenary Tags: #llvm Differential Revision:
https://reviews.llvm.org/D70678
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoD.td
The file was addedllvm/test/CodeGen/RISCV/copysign-casts.ll
Commit 6fd4c42fa815952b29bee573068d60d13f7c9f37 by luismarques
[LegalizeTypes][RISCV] Soften FCOPYSIGN operand
Summary: Adds support for softening FCOPYSIGN operands. Adds RISC-V
tests that exercise the new softening code.
Reviewers: asb, lenary, efriedma Reviewed By: efriedma Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70679
The file was modifiedllvm/test/CodeGen/RISCV/copysign-casts.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
Commit aa0e92e1f7069834852c08fdd32a92258e30555c by alexfh
[clang-tidy] Use range-for for check registration. NFC
Actually, just testing GitHub commit rights.
The file was modifiedclang-tools-extra/clang-tidy/ClangTidy.cpp
Commit 3cd9a8b7dc61e3ca5829225548d6346b8a5a25bb by mgorny
[lldb] [test] Un-XFAIL lldb-server tests fixed on NetBSD
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestLldbGdbServer.py
Commit a913e872d6e7044ae77e55c45ab3ea5304eb7262 by a.bataev
[OPENMP]Fix PR44133: crash on lambda reductions in templates.
Need to perform the instantiation of the combiner/initializer even if
the resulting type is not dependent, if the construct is defined in
templates in some cases.
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was addedclang/test/OpenMP/declare_reduction_codegen_in_templates.cpp
Commit 008e65a7bfb320bf197a04ff6427da84f8d38b76 by vpykhtin
[AMDGPU] Fix emitIfBreak CF lowering: use temp reg to make register
coalescer life easier.
Differential revision: https://reviews.llvm.org/D70405
The file was modifiedllvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/multilevel-break.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/loop_break.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/divergent-branch-uniform-condition.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/si-annotate-cf.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/valu-i1.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wave32.ll
The file was modifiedllvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
Commit 7707d8aa9db8aa3814593f9c40cc707f306e3ae2 by jasonliu
[XCOFF][AIX] Check linkage on the function, and two fixes for comments
This is a follow up commit to address post-commit comment in D70443
Differential revision: https://reviews.llvm.org/D70443
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
The file was addedllvm/test/CodeGen/PowerPC/aix-weak-undef-func-call.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit 184d72a7c6a7f40e752a044eb0336cbd4c43d004 by stozer
[DebugInfo] Disallow fragmenting DIExpressions with shift operators
DIExpressions with shift operators should not be fragmented for the same
reason as arithmetic operators: carry over cannot be expressed from one
fragment to the other, so an invalid result would be produced.
Differential Revision: https://reviews.llvm.org/D70601
The file was modifiedllvm/unittests/IR/MetadataTest.cpp
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp
Commit 549db744bde29c8331411a4b41607a33c363c108 by david.green
[ARM] Lots of MVE offset masked load and store tests. NFC
The file was addedllvm/test/CodeGen/Thumb2/mve-masked-ldst-offset.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-masked-ldst-postinc.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-ldst.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-masked-ldst-preinc.ll
Commit b5315ae8ffa6fb8befdd558d0dfd04295dbc5523 by david.green
[Codegen][ARM] Add addressing modes from masked loads and stores
MVE has a basic symmetry between it's normal loads/store operations and
the masked variants. This means that masked loads and stores can use
pre-inc and post-inc addressing modes, just like the standard loads and
stores already do.
To enable that, this patch adds all the relevant infrastructure for
treating masked loads/stores addressing modes in the same way as normal
loads/stores.
This involves:
- Adding an AddressingMode to MaskedLoadStoreSDNode, along with an extra
  Offset operand that is added after the PtrBase.
- Extending the IndexedModeActions from 8bits to 16bits to store the
  legality of masked operations as well as normal ones. This array is
  fairly small, so doubling the size still won't make it very large.
  Offset masked loads can then be controlled with
  setIndexedMaskedLoadAction, similar to standard loads.
- The same methods that combine to indexed loads, such as
  CombineToPostIndexedLoadStore, are adjusted to handle masked loads in
  the same way.
- The ARM backend is then adjusted to make use of these indexed masked
  loads/stores.
- The X86 backend is adjusted to hopefully be no functional changes.
Differential Revision: https://reviews.llvm.org/D70176
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-store.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-load.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-vector-reduce-mve-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-ldst-preinc.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-arith-codegen.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-ldst-postinc.ll
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/lib/Target/X86/X86InstrFragmentsSIMD.td
Commit 4965779f171343fc7e74276a548ec30906a740d0 by david.green
[ARM] Clean up the load and store code. NFC
Some of these patterns have grown quite organically. I've tried to
organise them a little here, moving all the PatFlags together and giving
them a more consistent naming scheme, to allow some of the later
patterns to be merged into a single multiclass.
Differential Revision: https://reviews.llvm.org/D70178
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
Commit 87c3f4a5e0bb53ca0d9799ca627e0897b10a82b3 by a.bataev
[OPENMP]Simplify printing of declare variant attribute, NFC.
The file was modifiedclang/include/clang/Basic/Attr.td
Commit 49a2b2a3d2c869cb10407c480fff2f832e080018 by a.bataev
[OPENMP]Remove tab in message, NFC.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
Commit a2fc96441788fba1e4709d63677f34ed8e321dae by maskray
[ELF] Replace SymbolTable::forEachSymbol with iterator_range symbols()
D62381 introduced forEachSymbol(). It seems that many call sites cannot
be parallelized because the body shared some states. Replace
forEachSymbol with iterator_range<filter_iterator<...>> symbols() to
simplify code and improve debuggability (std::function calls take some
frames).
It also allows us to use early return to simplify code added in D69650.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D70505
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/ELF/LTO.cpp
The file was modifiedlld/ELF/Writer.cpp
The file was modifiedlld/ELF/MarkLive.cpp
The file was modifiedlld/ELF/Relocations.cpp
The file was modifiedlld/ELF/SymbolTable.h
Commit 54a366f5156edc34019d5f04fff6844848d87f99 by maskray
[ELF] Add a corrector for case mismatch problems
Reviewed By: grimar, peter.smith
Differential Revision: https://reviews.llvm.org/D70506
The file was modifiedlld/ELF/Relocations.cpp
The file was modifiedlld/test/ELF/undef-spell-corrector.s
Commit cd9c915d2ac0e6660593c76c63827a4f4d3257d4 by maskray
[Object][RISCV][test] Improve DebugInfo/RISCV/relax-debug-frame.ll
Reviewed By: luismarques
Differential Revision: https://reviews.llvm.org/D70578
The file was modifiedllvm/test/DebugInfo/RISCV/relax-debug-frame.ll