SuccessChanges

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

Summary

  1. [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy (details)
  2. [lldb] Fix TestFormattersSBAPI test (details)
  3. [LLDB] Set the right address size on output DataExtractors from (details)
  4. [MIBundles] Move analyzePhysReg out of MIBundleOperands iterator (NFC). (details)
  5. [clangd] repair mac tests for 88bccded8fa1 (details)
  6. [lldb/CMake] Simplify logic for adding example Python packages (NFC) (details)
  7. [lldb/CMake] Add in_call_stack to the utilities package (details)
  8. [Remarks][ThinLTO] Use the correct file extension based on the format (details)
  9. Revert "[clangd] repair mac tests for 88bccded8fa1" (details)
  10. [libcxx{,abi}] Emit deplibs only when detected by CMake (details)
  11. [LLDB] [test] Try to fix the test from 7d019d1a3b when run on Windows. (details)
  12. Remove redundant file. (details)
  13. [PGO][PGSO] Add an optional query type parameter to (details)
  14. Automatically generated arm64-abi-varargs.ll . NFC (details)
  15. Remove extraneous semicolon. (details)
  16. Temporarily revert "build: avoid hardcoding the libxml2 library name" as (details)
  17. Fix comment to more accurately describe C++ language requirements around (details)
  18. [clang test] Do not assume default target (details)
  19. FileCheck IR output for blockaddress in new test (details)
  20. Place the "cold" code piece into the same section as the original (details)
  21. [clang-tidy] Rewrite modernize-avoid-bind check. (details)
  22. Fix failing testcase to check for the correct output (details)
  23. [X86] Model MXCSR for AVX instructions other than AVX512 (details)
  24. [clang-scan-deps] do not skip empty #if/#elif in the minimizer to avoid (details)
  25. [DebugInfo] Support for debug_macinfo.dwo section in llvm and (details)
  26. Recommit "[DWARF5]Addition of alignment atrribute in typedef DIE." (details)
  27. [NFC][PowerPC] Add the inheritable and additional features to make the (details)
  28. [LegalizeDAG] When expanding vector SRA/SRL/SHL add the new BUILD_VECTOR (details)
  29. [LegalizeDAG] Return true from ExpandNode for some nodes that don't have (details)
  30. AvoidBindCheck.cpp: Fix GCC 5.3 build errors (details)
  31. AvoidBindCheck.cpp: Fix unused variables warning (details)
  32. [lldb][NFC] Remove ThreadSafeSTLVector and ThreadSafeSTLMap and their (details)
Commit 3d02fa6da7d250e086b01b4ec66b513debb7950d by vkeles
[GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy
Summary: When combining COPY instructions, we were replacing the
destination registers with the source register without checking register
constraints. This patch adds a simple logic to check if the constraints
match before replacing registers.
Reviewers: qcolombet, aditya_nandakumar, aemerson, paquette, dsanders,
Petar.Avramovic
Reviewed By: aditya_nandakumar
Subscribers: rovka, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70616
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-copy.mir
Commit afd5d912812e6f2ea99c8890676d47a01bbcfbb1 by aadsm
[lldb] Fix TestFormattersSBAPI test
Summary: This test was broken in two ways:
* Using the wrong API (e.g.: format = instead of SetFormat)
* The hex checker was only checking "01" which will pass with 0x0000001
Reviewers: clayborg, lanza, wallace
Reviewed By: clayborg
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D70884
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/formatters/TestFormattersSBAPI.py
Commit 7d019d1a3be252a885e8db1ee7af11c90b450d38 by martin
[LLDB] Set the right address size on output DataExtractors from
ObjectFile
If filling in a DataExtractor from an ObjectFile, e.g. via the
ReadSectionData method, the output DataExtractor gets the address size
from the m_data member.
ObjectFile's m_data member is initialized without knowledge about the
address size (so the address size is set based on the host's
sizeof(void*), and at that point within ObjectFile's constructor,
virtual methods implemented in subclasses (like GetAddressByteSize())
can't be called, therefore fix it up when filling in external
DataExtractors.
This makes sure that line tables from executables with a different
address size are parsed properly; previously this tripped up
DWARFDebugLine::LineTable::parse for 32 bit executables on a 64 bit
host, as the address size in the line table (4) didn't match the one set
in the DWARFDataExtractor.
Differential Revision: https://reviews.llvm.org/D70848
The file was addedlldb/test/Shell/SymbolFile/DWARF/win-i386-line-table.s
The file was modifiedlldb/source/Symbol/ObjectFile.cpp
Commit 5154b0253d262be12d8f21edefd8c6d231dcf7a1 by flo
[MIBundles] Move analyzePhysReg out of MIBundleOperands iterator (NFC).
analyzePhysReg does not really fit into the iterator and moving it makes
it easier to change the base iterator.
Reviewers: evandro, t.p.northover, paquette, MatzeB, arsenm, qcolombet
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D70559
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/lib/CodeGen/MachineInstrBundle.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineInstrBundle.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
Commit 82039cbc8d2a0f6fb5995f54e0e42919999bcfd0 by sam.mccall
[clangd] repair mac tests for 88bccded8fa1
The file was modifiedclang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
Commit e5290a06d6c23bd222543cb9b689a199343021a7 by Jonas Devlieghere
[lldb/CMake] Simplify logic for adding example Python packages (NFC)
This simplifies the CMake logic for adding the Python examples to the
Python package. It unifies the use of create_python_package by adding
the NOINIT option and removes the `target` argument, which is always
`finish_swig`.
The file was modifiedlldb/CMakeLists.txt
Commit 8f2c100f6fa5250b987d11e53d24119bc1f8850e by Jonas Devlieghere
[lldb/CMake] Add in_call_stack to the utilities package
A subset of the examples are shipped as python packages. Include the
in_call_stack utility.
The file was modifiedlldb/CMakeLists.txt
Commit 7902d6cc803065eae4d434642a8b4afd940a216b by francisvm
[Remarks][ThinLTO] Use the correct file extension based on the format
Since we now have multiple formats, the ThinLTO remark files should also
respect that.
The file was modifiedllvm/test/ThinLTO/X86/diagnostic-handler-remarks.ll
The file was modifiedllvm/lib/LTO/LTO.cpp
Commit 93f77617abba512d2861e2fc50ce385883f587b6 by sam.mccall
Revert "[clangd] repair mac tests for 88bccded8fa1"
Revert "[clangd] Try harder to find a plausible `clang` as argv0,
particularly on Mac."
The file was modifiedclang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
The file was modifiedclang-tools-extra/clangd/GlobalCompilationDatabase.cpp
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
Commit a9b5fff591d462f1f22e44ab1a269b82b8f2a664 by mgorny
[libcxx{,abi}] Emit deplibs only when detected by CMake
This is a followup to 35bc5276ca3.  It fixes the dependent libs usage in
libcxx and libcxxabi to link pthread and rt libraries only if CMake
detects them, rather than based on explicit platform blacklist.
Differential Revision: https://reviews.llvm.org/D70888
The file was modifiedlibcxxabi/src/cxa_thread_atexit.cpp
The file was modifiedlibcxx/src/debug.cpp
The file was modifiedlibcxx/CMakeLists.txt
The file was modifiedlibcxxabi/src/cxa_guard_impl.h
The file was modifiedlibcxxabi/src/fallback_malloc.cpp
The file was modifiedlibcxx/src/experimental/memory_resource.cpp
The file was modifiedlibcxxabi/CMakeLists.txt
The file was modifiedlibcxx/src/memory.cpp
The file was modifiedlibcxxabi/src/cxa_exception_storage.cpp
The file was modifiedlibcxx/src/chrono.cpp
The file was modifiedlibcxx/src/condition_variable.cpp
The file was modifiedlibcxx/src/thread.cpp
The file was modifiedlibcxx/src/algorithm.cpp
The file was modifiedlibcxx/src/filesystem/operations.cpp
The file was modifiedlibcxx/src/shared_mutex.cpp
The file was modifiedlibcxx/src/mutex.cpp
Commit 62a635e864e01edf7f0bbfeb580c465440f02eb5 by martin
[LLDB] [test] Try to fix the test from 7d019d1a3b when run on Windows.
The file was modifiedlldb/test/Shell/SymbolFile/DWARF/win-i386-line-table.s
Commit 7999cd41d16d841d66c9c91b56bddaf209c54955 by taewook.oh
Remove redundant file.
The file was removedDIFF
Commit 8cdfdfeee6dada5d47eabe9c1d44ceb12235da8f by yamauchi
[PGO][PGSO] Add an optional query type parameter to
shouldOptimizeForSize.
Summary: In case of a need to distinguish different query sites for
gradual commit or debugging of PGSO. NFC.
Reviewers: davidxl
Subscribers: hiraditya, zzheng, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70510
The file was modifiedllvm/include/llvm/CodeGen/MachineSizeOpts.h
The file was modifiedllvm/lib/Transforms/Scalar/ConstantHoisting.cpp
The file was modifiedllvm/lib/Transforms/Utils/SizeOpts.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/SizeOpts.h
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
The file was modifiedllvm/lib/CodeGen/MachineSizeOpts.cpp
Commit 77b7b23ca1ac66ebf9aa392d5ec461b055baf4b6 by deadalnix
Automatically generated arm64-abi-varargs.ll . NFC
The file was modifiedllvm/test/CodeGen/AArch64/arm64-abi-varargs.ll
Commit 936de1c5bc2dfbec25318985cddb7345d989a7ee by isanbard
Remove extraneous semicolon.
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit 2e75681b55ab55301022533b203269f5f3d6f909 by echristo
Temporarily revert "build: avoid hardcoding the libxml2 library name" as
it breaks uses of llvm-config --system-libs and the follow-on commit
"build: avoid cached literals being linked against"
This reverts commits 340e7c0b77a7037afefe7255503afe362967b577 and
340e7c0b77a7037afefe7255503afe362967b577.
The file was modifiedllvm/cmake/config-ix.cmake
The file was modifiedllvm/lib/WindowsManifest/CMakeLists.txt
Commit 711c669ae92658aecc6fabccc583594924bac6d7 by richard
Fix comment to more accurately describe C++ language requirements around
tail padding.
Summary: As of C++ core issue 43 (http://wg21.link/cwg43), which was
voted into the C++ working draft in 1999, it is not permissible to
memcpy a base class subobject, even if it's of POD type, so there is no
problem with reusing the tail padding of a base class. That issue was
voted into the standard in DR status, so it applies retroactively to
C++98 (and is in any case part of C++03).
So stop suggesting that AlwaysUseTailPadding mode is non-conforming.
Reviewers: rjmccall
Reviewed By: rjmccall
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70923
The file was modifiedclang/include/clang/Basic/TargetCXXABI.h
Commit 717140a0dcc651ca2fec23248d1675fb2d388b9c by thomasp
[clang test] Do not assume default target
Summary: clang test Driver/darwin-opt-record.c assumes the default
target is x86_64 by its uses of the -arch x86_64 and -arch x86_64h and
thus fail on systems where it is not the case. Adding a target
x86_64-apple-darwin10 reveals another problem: the driver refuses 2
-arch for an assembly output so this commit also changes the output to
be an object file.
Reviewers: thegameg
Reviewed By: thegameg
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70748
The file was modifiedclang/test/Driver/darwin-opt-record.c
Commit 536cedaecbe586ec9cf86d5102872adc27e6ea23 by rnk
FileCheck IR output for blockaddress in new test
Minor improvement to a test added in 1ac700cdef787383ad49a
The file was modifiedclang/test/CodeGen/label-array-aggregate-init.c
Commit 87f146767ed709f6e354fe46f325c5b6848ad428 by isanbard
Place the "cold" code piece into the same section as the original
function
Summary: This cropped up in the Linux kernel where cold code was placed
in an incompatible section.
Reviewers: compnerd, vsk, tejohnson
Reviewed By: vsk
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70925
The file was modifiedllvm/lib/Transforms/IPO/HotColdSplitting.cpp
The file was addedllvm/test/Transforms/HotColdSplit/retain-section.ll
Commit 64f74bf72eb484aa32e1104050cb54745116decf by zturner
[clang-tidy] Rewrite modernize-avoid-bind check.
This represents largely a full re-write of modernize-avoid-bind, adding
significant new functionality in the process. In particular:
* Both boost::bind and std::bind are now supported
* Function objects are supported in addition to functions
* Member functions are supported
* Nested calls are supported using capture-init syntax
* std::ref() and boost::ref() are now recognized, and will capture by
reference.
* Rather than capturing with a global =, we now build up an individual
capture list that is both necessary and sufficient for the call.
* Fixits are supported in a much larger variety of scenarios than
before.
All previous tests pass under the re-write, but a large number of new
tests have been added as well.
Differential Revision: https://reviews.llvm.org/D70368
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/modernize-avoid-bind.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/modernize-avoid-bind-permissive-parameter-list.cpp
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/modernize-avoid-bind.rst
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was modifiedclang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/AvoidBindCheck.h
Commit f61099af9ec75412c52e53ed1e4704f4ffef01c6 by isanbard
Fix failing testcase to check for the correct output
The file was modifiedllvm/test/Transforms/HotColdSplit/retain-section.ll
Commit cf81714a7eb367260f9e6ae5f3bb11bb63d39124 by pengfei.wang
[X86] Model MXCSR for AVX instructions other than AVX512
Summary: Model MXCSR for AVX instructions other than AVX512
Reviewers: craig.topper, RKSimon
Subscribers: hiraditya, llvm-commits, LuoYuanke, LiuChen3
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70875
The file was modifiedllvm/test/tools/llvm-exegesis/X86/uops-VFMADDSS4rm.s
The file was modifiedllvm/lib/Target/X86/X86InstrFMA.td
The file was modifiedllvm/test/CodeGen/X86/mxcsr-reg-usage.ll
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
Commit 389530524be1715e97947810514f3a75dfe73975 by Alex Lorenz
[clang-scan-deps] do not skip empty #if/#elif in the minimizer to avoid
missing `__has_include` dependencies
This patch makes the minimizer more conservative to avoid missing
dependency files that are brought in by __has_include PP expressions
that occur in a condition of an #if/#elif that was previously skipped.
The __has_include PP expressions can be used in an #if/#elif either
directly, or through macro expansion, so we can't detect them at the
time of minimization.
Differential Revision: https://reviews.llvm.org/D70936
The file was modifiedclang/unittests/Lex/DependencyDirectivesSourceMinimizerTest.cpp
The file was addedclang/test/ClangScanDeps/Inputs/has_include_if_elif.json
The file was modifiedclang/lib/Lex/DependencyDirectivesSourceMinimizer.cpp
The file was addedclang/test/ClangScanDeps/has_include_if_elif.cpp
Commit 3f3d0f4f4be04f2dae219c0fe76562eb01ba06d2 by SourabhSingh.Tomar
[DebugInfo] Support for debug_macinfo.dwo section in llvm and
llvm-dwarfdump.
This patch adds support for debug_macinfo.dwo section[pre-standardized]
to llvm and llvm-dwarfdump.
Reviewers: probinson, dblaikie, aprantl, jini.susan.george, alok
Differential Revision: https://reviews.llvm.org/D70705
Tags: #debug-info #llvm
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
The file was modifiedllvm/lib/MC/MCObjectFileInfo.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFObject.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
The file was addedllvm/test/DebugInfo/Inputs/dwarfdump-macro.dwo
The file was modifiedllvm/include/llvm/MC/MCObjectFileInfo.h
The file was addedllvm/test/DebugInfo/debugmacinfo-dwo.test
Commit f1e3988aa6016188c376b9bcca1afc7559f9fbc0 by SourabhSingh.Tomar
Recommit "[DWARF5]Addition of alignment atrribute in typedef DIE."
This revision is revised to update Go-bindings and Release Notes.
The original commit message follows.
This patch, adds support for DW_AT_alignment[DWARF5] attribute, to be
emitted with typdef DIE. When explicit alignment is specified.
Patch by Awanish Pandey <Awanish.Pandey@amd.com>
Reviewers: aprantl, dblaikie, jini.susan.george, SouraVX, alok,
deadalinx
Differential Revision: https://reviews.llvm.org/D70111
The file was modifiedllvm/lib/IR/DebugInfo.cpp
The file was addedclang/test/CodeGenCXX/debug-info-template-align.cpp
The file was modifiedllvm/include/llvm-c/DebugInfo.h
The file was modifiedllvm/docs/ReleaseNotes.rst
The file was modifiedllvm/lib/IR/DIBuilder.cpp
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
The file was modifiedllvm/bindings/go/llvm/dibuilder.go
The file was modifiedllvm/include/llvm/IR/DIBuilder.h
The file was addedllvm/test/DebugInfo/X86/debug-info-template-align.ll
The file was modifiedllvm/tools/llvm-c-test/debuginfo.c
Commit 4cde2d6b8db6257739c44d339a1677934b154704 by qshanz
[NFC][PowerPC] Add the inheritable and additional features to make the
processor definition more clear
The old processor design assume that, all the old processor's feature
must be inherited into future processor. That is not true as instruction
fusion or some implementation defined features are not inheritable.
What this patch did:
* Rename the old "specific features" to "additional features" that keep
the new added inheritable features.
* Use the "specific features" to keep those features only for specific
processor.
* Add the "inheritable features" to keep all the features that
inherited from early processor.
Differential Revision: https://reviews.llvm.org/D70768
The file was modifiedllvm/lib/Target/PowerPC/PPC.td
Commit f92000187e149a51900c05056ed644f43603fb66 by craig.topper
[LegalizeDAG] When expanding vector SRA/SRL/SHL add the new BUILD_VECTOR
to the Results vector instead of just calling ReplaceNode
The code that processes the Results vector also calls ReplaceNode and
makes ExpandNode return true.
If we don't add it to the Results node, we end up returning false from
ExpandNode. This causes ConvertNodeToLibcall to be called next. But
ConvertNodeToLibcall doesn't do anything for shifts so they just pass
through unmodified. Except for printing a debug message.
Ultimately, I'd like to add more checks to ExpandNode and
ConvertNodeToLibcall to make sure we don't have nodes marked as Expand
that don't have any Expand or libcall handling.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Commit 039664db87d255570854ade5241bf53b8ce3b5a9 by craig.topper
[LegalizeDAG] Return true from ExpandNode for some nodes that don't have
expand support.
These nodes have a FIXME that they only get here because a Custom
handler returned SDValue() instead of the original Op.
Even though we aren't expanding them, we should return true here to
prevent ConvertNodeToLibcall from also trying to process them until the
FIXME has been addressed.
I'm hoping to add checking to ConvertNodeToLibcall to make sure we don't
give it nodes it doesn't have support for.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Commit 8e7f60e942ff009de742e20e10ebc09dcdecd5a2 by hans
AvoidBindCheck.cpp: Fix GCC 5.3 build errors
It was failing with:
clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp:61:29: error:
declaration of ‘clang::tidy::modernize::{anonymous}::CaptureMode
clang::tidy::modernize::{anonymous}::BindArgument::CaptureMode’
[-fpermissive]
  CaptureMode CaptureMode = CM_None;
                            ^
clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp:38:6: error:
changes meaning of ‘CaptureMode’ from ‘enum
clang::tidy::modernize::{anonymous}::CaptureMode’ [-fpermissive]
enum CaptureMode { CM_None, CM_ByRef, CM_ByValue, CM_InitExpression };
     ^
The file was modifiedclang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
Commit b5f295ffcec2fa7402e39eb1262acbd55a7d39f5 by hans
AvoidBindCheck.cpp: Fix unused variables warning
The file was modifiedclang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
Commit 315600f480055f5143aaa245f25bd25221edfa91 by Raphael Isemann
[lldb][NFC] Remove ThreadSafeSTLVector and ThreadSafeSTLMap and their
use in ValueObjectSynthetic
Summary: ThreadSafeSTLVector and ThreadSafeSTLMap are not useful for
achieving any degree of thread safety in LLDB and should be removed
before they are used in more places. They are only used (unsurprisingly
incorrectly) in
`ValueObjectSynthetic::GetChildAtIndex`, so this patch replaces their
use there with a simple mutex with which we guard the related data
structures. This doesn't make ValueObjectSynthetic::GetChildAtIndex any
more thread-safe, but on the other hand it at least allows us to get rid
of the ThreadSafeSTL* data structures without changing the observable
behaviour of ValueObjectSynthetic (beside that it is now a few bytes
smaller).
Reviewers: labath, JDevlieghere, jingham
Reviewed By: labath
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D70845
The file was modifiedlldb/source/Core/ValueObjectSyntheticFilter.cpp
The file was removedlldb/include/lldb/Core/ThreadSafeSTLMap.h
The file was modifiedlldb/include/lldb/Core/ValueObjectSyntheticFilter.h
The file was removedlldb/include/lldb/Core/ThreadSafeSTLVector.h