FailedChanges

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

Summary

  1. [AVR] Fix codegen for rotate instructions (details)
  2. build: use `find_package(Python3)` rather than `PYTHON_HOME` (details)
  3. [lldb/ScriptInterpreter] Remove can_reload which is always true (NFC) (details)
  4. [Concepts] Constrained partial specializations and function overloads. (details)
  5. [NFC][Test][PowerPC] Add more tests for 'and mask' (details)
  6. [SLP] Replace NeedToGather variable with enum. (details)
  7. Fix case style warnings in DIBuilder. NFC. (details)
  8. [Power9] Remove the PPCISD::XXREVERSE as it has completely the same (details)
  9. [lldb][NFC] Make CompilerDeclContext construction type safe (details)
  10. [lldb][NFC] Document CompilerDeclContext constructors (details)
  11. [NFC] Style cleanups (details)
  12. [lldb] Add a SubsystemRAII that takes care of calling Initialize and (details)
  13. [lldb][NFC] Simplify ClangASTContext::GetTranslationUnitDecl (details)
  14. [lldb/lua] Fix bindings.test for lua-5.1 (details)
  15. [lldb] Fix a -Wreturn-type gcc warning in ScriptInterpreter.cpp (details)
  16. [llvm-readobj][test] - Stop using Inputs/trivial.obj.elf-x86-64. (details)
  17. [ItaniumCXXABI] Don't mark an extern_weak init function as dso_local on (details)
  18. [ARM] [Windows] Use COFF stubs for calls to extern_weak functions (details)
  19. [AArch64] [Windows] Use COFF stubs for calls to extern_weak functions (details)
  20. [yaml2obj] - Add testing for OSABI field. (details)
  21. [lldb] Don't process symlinks deep inside DWARFUnit (details)
  22. [yaml2obj] - Add support for ELFOSABI_LINUX. (details)
  23. [yaml2obj] - Allow using an arbitrary value for OSABI. (details)
  24. [lldb] Add sanity check to CreateDeclContext and fixed illformed (details)
  25. [lldb][NFC] Delete all 'else return ...' in CompilerDeclContext.cpp (details)
  26. [lldb][NFC] Remove wrong and unused ClangASTContext::CopyDecl method (details)
  27. [lldb][NFC] Remove unused 'type' parameter in (details)
  28. [find_interesting_reviews.py] Add git blame output cache (details)
  29. [lldb][NFC] Simplify ClangExternalASTSourceCallbacks (details)
  30. [OpenCL] Add atomic builtin functions (details)
  31. [lldb][NFC] Remove unused callback functionality from ClangASTContext (details)
  32. [Matrix] Add forward shape propagation and first shape aware lowerings. (details)
  33. [NFC] Move OptionUtils from Basic to Driver (details)
  34. [Matrix] Use fmuladd  for matrix.multiply if allowed. (details)
  35. [lldb/DWARF] Fix hostname-stripping logic (details)
  36. [gn build] Port eca40066ebb (details)
  37. [lldb] Remove DWARFUnit::AppendDIEsWithTag (details)
  38. [OPENMP50]Codegen for nontemporal clause. (details)
  39. [DAGCombine] visitEXTRACT_SUBVECTOR - 'little to big' (details)
  40. [PowerPC] NFC - fix the testcase bug of folding rlwinm (details)
  41. [RISCV][NFC] Fix use of missing attribute groups in tests (details)
  42. [AMDGPU] Don't create MachinePointerInfos with an UndefValue pointer (details)
  43. [ELF] Don't suggest an alternative spelling for a symbol in a discarded (details)
  44. Move from a long list of checkers to tables (details)
  45. [lldb/Test] Disable TestSynchronous.test on Windows. (details)
  46. Fix LLVM tool --version build mode printing for MSVC (details)
  47. MC: Ensure test only reads from the Inputs directory (details)
  48. [Sema][X86] Consider target attribute into the checks in (details)
  49. [msan] Intercept qsort, qsort_r. (details)
  50. [msan] Check qsort input. (details)
  51. [FPEnv][X86] More strict int <-> FP conversion fixes (details)
  52. ASTContext: fix declaration of ParsedTargetAttr [-Wmismatched-tags] (details)
Commit da0fe5db999baa659c2e386e5b0636dadfbbf759 by tclin914
[AVR] Fix codegen for rotate instructions
Summary:
   This patch introduces the ROLBRd and RORBRd pseudo-instructions,
   which implemenent the "traditional" rotate operations; instead of
   the AVR rotate instructions that use the carry bit.
    The code is not optimized at all. Especially when dealing with
   loops of rotate instructions, this codegen should be improved some
   day.
Related bug: 41358 <https://bugs.llvm.org/show_bug.cgi?id=41358>
//Note//: This is my first submitted patch.
Reviewers: dylanmckay, Jim
Reviewed By: dylanmckay
Subscribers: hiraditya, llvm-commits, dylanmckay, dsprenkels
Tags: #llvm
Patched by dsprenkels (Daan Sprenkels)
Differential Revision: https://reviews.llvm.org/D60365
The file was modifiedllvm/test/CodeGen/AVR/rot.ll
The file was modifiedllvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
The file was modifiedllvm/lib/Target/AVR/AVRInstrInfo.td
The file was modifiedllvm/lib/Target/AVR/AVRISelLowering.cpp
Commit b449d19e55888ab9554b04184c6d9716389820fd by Saleem Abdulrasool
build: use `find_package(Python3)` rather than `PYTHON_HOME`
The behaviour of `PYTHON_HOME` can be emulated by setting
`Python3_EXECUTABLE` to the absolute path instead of the custom variable
now that we can find the python interpreter.
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
Commit 1562511275fe1f002458194c085216cf9ae36d1f by Jonas Devlieghere
[lldb/ScriptInterpreter] Remove can_reload which is always true (NFC)
The `-r` option for `command script import` is there for legacy
compatibility, however the can_reload flag is always set to true. This
patch removes the flag and any code that relies on it being false.
The file was modifiedlldb/source/Commands/CommandObjectCommands.cpp
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
The file was modifiedlldb/include/lldb/Interpreter/ScriptInterpreter.h
The file was modifiedlldb/source/Core/Module.cpp
The file was modifiedlldb/source/Interpreter/ScriptInterpreter.cpp
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
The file was modifiedlldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
Commit df061c3e2b97974f9e2d72a023eb1c5b987010bc by saar
[Concepts] Constrained partial specializations and function overloads.
Added support for constraint satisfaction checking and partial ordering
of constraints in constrained partial specialization and function
template overloads. Re-commit after fixing another crash (added
regression test).
Differential Revision: https://reviews.llvm.org/D41910
The file was modifiedclang/lib/AST/DeclTemplate.cpp
The file was addedclang/test/CXX/temp/temp.constr/temp.constr.order/var-template-partial-specializations.cpp
The file was addedclang/test/CXX/temp/temp.constr/temp.constr.order/class-template-partial-specializations.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/test/CXX/expr/expr.prim/expr.prim.id/p3.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was addedclang/test/CXX/temp/temp.constr/temp.constr.normal/p1.cpp
The file was modifiedclang/include/clang/AST/DeclTemplate.h
The file was modifiedclang/lib/Frontend/FrontendActions.cpp
The file was modifiedclang/lib/Sema/SemaConcept.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/Sema/SemaTemplateDeduction.cpp
The file was addedclang/test/CXX/temp/temp.constr/temp.constr.order/function-templates.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiate.cpp
Commit 9d1071eac401830b07edf3e3ca91c40f1df112d7 by qshanz
[NFC][Test][PowerPC] Add more tests for 'and mask'
The file was modifiedllvm/test/CodeGen/PowerPC/shift_mask.ll
The file was addedllvm/test/CodeGen/PowerPC/and-mask.ll
Commit a755ccefe679ffa138174e6765ce0cdcab358e4b by dtemirbulatov
[SLP] Replace NeedToGather variable with enum.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 3654ed21ee73f5a4f6e4b3e8ddfc8780a15a9b3d by llvm-dev
Fix case style warnings in DIBuilder. NFC.
The file was modifiedllvm/include/llvm/IR/DIBuilder.h
The file was modifiedllvm/lib/IR/DIBuilder.cpp
Commit 6d5e35e89d73711b494c83d3f8b68582d06a0b53 by qshanz
[Power9] Remove the PPCISD::XXREVERSE as it has completely the same
semantics of ISD::BSWAP
The custom node PPCISD::XXREVERSE has completely the same semantics of
generic node ISD::BSWAP. We need to clean up it as we have the combine
rules for bswap in the base class, while nothing for xxreverse.
Differential Revision: https://reviews.llvm.org/D70657
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
The file was modifiedllvm/test/CodeGen/PowerPC/vec_revb.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
Commit 42ec584a8b4e604360b7a4d45a65c570d58b1bf9 by Raphael Isemann
[lldb][NFC] Make CompilerDeclContext construction type safe
The CompilerDeclContext constructor takes a void* pointer which means
that all callers of this constructor need to first explicitly convert
all pointers to clang::DeclContext*. This causes that we for example
can't just pass a TranslationUnitDecl* to the constructor without first
casting it to its parent class (as it inherits from both Decl and
DeclContext so the void* pointer is actually a Decl*).
This patch introduces a utility function in the ClangASTContext which
gets rid of the requirement to cast all pointers to clang::DeclContext.
Also moves all constructor calls to use this function instead which is
NFC (beside the change in DWARFASTParserClangTests.cpp).
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
The file was modifiedlldb/unittests/Symbol/TestClangASTContext.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
The file was modifiedlldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
Commit 6df6edfd0a0b50195d56124b9e43bb7c29843b7f by Raphael Isemann
[lldb][NFC] Document CompilerDeclContext constructors
The file was modifiedlldb/include/lldb/Symbol/CompilerDeclContext.h
Commit 70fa4c4f88609044dd0cd9671139d02d578d0df9 by shengchen.kan
[NFC] Style cleanups
1. Remove duplicate function for class name at the beginning of the
comment. 2. Use auto where the type is already obvious from the context.
The file was modifiedllvm/lib/MC/MCFragment.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
The file was modifiedllvm/include/llvm/MC/MCFragment.h
Commit 5dca0596a959217a1c18858a62ed35245a4c42b4 by Raphael Isemann
[lldb] Add a SubsystemRAII that takes care of calling Initialize and
Terminate in the unit tests
Summary: Many of our tests need to initialize certain subsystems/plugins
of LLDB such as
`FileSystem` or `HostInfo` by calling their static `Initialize`
functions before the test starts and then calling `::Terminate` after
the test is done (in reverse order). This adds a lot of error-prone
boilerplate code to our testing code.
This patch adds a RAII called SubsystemRAII that ensures that we always
call
::Initialize and then call ::Terminate after the test is done (and that
the Terminate calls are always in the reverse order of the ::Initialize
calls). It also gets rid of all of the boilerplate that we had for these
calls.
Per-fixture initialization is still not very nice with this approach as
it would require some kind of static unique_ptr that gets manually
assigned/reseted from the gtest SetUpTestCase/TearDownTestCase
functions. Because of that I changed all per-fixture setup to now do
per-test setup which can be done by just having the SubsystemRAII as a
member of the test fixture. This change doesn't influence our normal
test runtime as LIT anyway runs each test case separately
(and the Initialize/Terminate calls are anyway not very expensive). It
will however make running all tests in a single executable slightly
slower.
Reviewers: labath, JDevlieghere, martong, espindola, shafik
Reviewed By: labath
Subscribers: mgorny, rnkovacs, emaste, MaskRay, abidh, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D71630
The file was modifiedlldb/unittests/Symbol/TestDWARFCallFrameInfo.cpp
The file was modifiedlldb/unittests/ObjectFile/PECOFF/TestPECallFrameInfo.cpp
The file was modifiedlldb/unittests/Symbol/TestClangASTImporter.cpp
The file was modifiedlldb/unittests/Symbol/TestLineEntry.cpp
The file was modifiedlldb/unittests/Core/MangledTest.cpp
The file was modifiedlldb/unittests/Expression/ClangParserTest.cpp
The file was modifiedlldb/unittests/Host/SocketTest.cpp
The file was modifiedlldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
The file was addedlldb/unittests/Utility/SubsystemRAIITest.cpp
The file was modifiedlldb/unittests/Target/ModuleCacheTest.cpp
The file was modifiedlldb/unittests/Host/ConnectionFileDescriptorTest.cpp
The file was modifiedlldb/unittests/Symbol/LocateSymbolFileTest.cpp
The file was modifiedlldb/unittests/Process/minidump/MinidumpParserTest.cpp
The file was modifiedlldb/unittests/Utility/CMakeLists.txt
The file was modifiedlldb/unittests/Host/SocketAddressTest.cpp
The file was modifiedlldb/unittests/Expression/CppModuleConfigurationTest.cpp
The file was modifiedlldb/unittests/Editline/EditlineTest.cpp
The file was modifiedlldb/unittests/Expression/ClangExpressionDeclMapTest.cpp
The file was modifiedlldb/unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
The file was modifiedlldb/unittests/Language/Highlighting/HighlighterTest.cpp
The file was modifiedlldb/unittests/ObjectFile/ELF/TestObjectFileELF.cpp
The file was modifiedlldb/unittests/Symbol/TestClangASTContext.cpp
The file was modifiedlldb/unittests/Host/MainLoopTest.cpp
The file was modifiedlldb/unittests/Expression/DWARFExpressionTest.cpp
The file was modifiedlldb/unittests/Interpreter/TestCompletion.cpp
The file was addedlldb/unittests/TestingSupport/SubsystemRAII.h
The file was modifiedlldb/unittests/Host/HostInfoTest.cpp
Commit fecb122cca254f565050559b349c8ff309194554 by Raphael Isemann
[lldb][NFC] Simplify ClangASTContext::GetTranslationUnitDecl
These two functions are just calling their equivalent function in
ASTContext and implicitly convert the result to a DeclContext* (a parent
class of TranslationUnitDecl). This leads to the absurd situation that
we had to cast the result of GetTranslationUnitDecl to a
TranslationUnitDecl*. The only reason we did this implicit conversion to
the parent class was that the void* conversion for the
CompilerDeclContext constructor was sound (which otherwise would receive
a Decl* pointer when called with a TranslationUnitDecl*).
Now that the CompilerDeclContext constructor is type safe we can
properly implement these functions by actually returning the right type.
Also deletes the static inconvenience method that was not used anywhere.
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
Commit 12a3d97cf68389a025b8a75b8ea660b11401a3c8 by pavel
[lldb/lua] Fix bindings.test for lua-5.1
string.format("%s", true) only works since lua-5.2. Make the print
statement more portable.
The file was modifiedlldb/test/Shell/ScriptInterpreter/Lua/bindings.test
Commit fbccef6b2553a3e6a7183e259f5a911885d0ddea by pavel
[lldb] Fix a -Wreturn-type gcc warning in ScriptInterpreter.cpp
The file was modifiedlldb/source/Interpreter/ScriptInterpreter.cpp
Commit cc522bc4e3e5e3c46ef34c94c64980957880f738 by grimar
[llvm-readobj][test] - Stop using Inputs/trivial.obj.elf-x86-64.
This rewrites a few tests to stop using the trivial.obj.elf-x86-64
precompiled object and removes it.
Differential revision: https://reviews.llvm.org/D71662
The file was removedllvm/test/tools/llvm-readobj/ELF/Inputs/trivial.obj.elf-x86-64
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hex-dump.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-section-mapping-no-phdrs.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/thin-archive-paths.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-file-headers.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/Inputs/trivial.ll
Commit 86c9831bb40d2c50c36b748b08a75860c4640875 by martin
[ItaniumCXXABI] Don't mark an extern_weak init function as dso_local on
windows
Since 6bf108d77a3c, we try to not mark extern_weak symbols as dso_local,
to allow using COFF stubs for references to those symbols
(as the symbol may be missing, resolving to an absolute address zero,
outside of the current DSO).
Differential Revision: https://reviews.llvm.org/D71716
The file was addedclang/test/CodeGenCXX/mingw-thread-local.cpp
The file was modifiedclang/lib/CodeGen/ItaniumCXXABI.cpp
Commit b774aa1011a031b225624277178382bb2db7e26a by martin
[ARM] [Windows] Use COFF stubs for calls to extern_weak functions
As the extern_weak target might be missing, resolving to the absolute
address zero, we can't use the normal direct PC-relative branch
instructions (as that would result in relocations out of range).
Instead check the shouldAssumeDSOLocal method and load the address from
a COFF stub.
This matches what was done for X86 in 6bf108d77a3c.
Differential Revision: https://reviews.llvm.org/D71720
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/ARM/tail-call-weak.ll
Commit 5a751e747dbf2c267e944aa961e21de7a815e7eb by martin
[AArch64] [Windows] Use COFF stubs for calls to extern_weak functions
As the extern_weak target might be missing, resolving to the absolute
address zero, we can't use the normal direct PC-relative branch
instructions (as that would result in relocations out of range).
Improve the classifyGlobalFunctionReference method to set
MO_DLLIMPORT/MO_COFFSTUB, and simplify the existing code in
AArch64TargetLowering::LowerCall to use the return value from
classifyGlobalFunctionReference for these cases.
Add code in both AArch64FastISel and GlobalISel/IRTranslator to bail out
for function calls to extern weak functions on windows, to let
SelectionDAG handle them.
This matches what was done for X86 in 6bf108d77a3c.
Differential Revision: https://reviews.llvm.org/D71721
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/call-translator-tail-call.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/call-translator-tail-call-weak.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FastISel.cpp
The file was addedllvm/test/CodeGen/AArch64/windows-extern-weak.ll
Commit 2cebc1a7170fc6c0ff3d15e677a59582450eb81d by grimar
[yaml2obj] - Add testing for OSABI field.
We have no such testing. This makes impossible to add support for new
ELFOSABI_* tags.
Differential revision: https://reviews.llvm.org/D71763
The file was addedllvm/test/tools/yaml2obj/ELF/header-osabi.yaml
Commit 3cfb6677b2aa20f782d9bb0f7958e61f5a976c16 by pavel
[lldb] Don't process symlinks deep inside DWARFUnit
Summary: This code is handling debug info paths starting with
/proc/self/cwd, which is one of the mechanisms people use to obtain
"relocatable" debug info (the idea being that one starts the debugger
with an appropriate cwd and things "just work").
Instead of resolving the symlinks inside DWARFUnit, we can do the same
thing more elegantly by hooking into the existing Module path remapping
code. Since llvm::DWARFUnit does not support any similar functionality,
doing things this way is also a step towards unifying llvm and lldb
dwarf parsers.
Reviewers: JDevlieghere, aprantl, clayborg, jdoerfert
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D71770
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
Commit 1f985775566dbb7f7b05b923445c50a0e65daece by grimar
[yaml2obj] - Add support for ELFOSABI_LINUX.
ELFOSABI_LINUX is an alias for ELFOSABI_GNU. It is not that obvious
probably.
Differential revision: https://reviews.llvm.org/D71764
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/test/tools/yaml2obj/ELF/header-osabi.yaml
Commit f027e1a68dacfb692b4f3e30abfda529d020d472 by grimar
[yaml2obj] - Allow using an arbitrary value for OSABI.
There was no way to set an unsupported or unknown OS ABI. With this
patch it is possible to use any numeric value.
Differential revision: https://reviews.llvm.org/D71765
The file was modifiedllvm/test/tools/yaml2obj/ELF/header-osabi.yaml
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
Commit 73951a11c64b4e748bbd1291d5021aef6aa400a5 by Raphael Isemann
[lldb] Add sanity check to CreateDeclContext and fixed illformed
CompilerContext in ClangExpressionDeclMap.
This adds a check that the ClangASTContext actually fits to the
DeclContext that we want to create a CompilerDeclContext for. If the
ClangASTContext (and its associated ASTContext) does not fit to the
DeclContext (that is, the DeclContext wasn't created by the ASTContext),
all computations using this malformed CompilerDeclContext will yield
unpredictable results.
Also fixes the only place that actually hits this assert which is the
construction of a CompilerDeclContext in ClangExpressionDeclMap where we
pass an unrelated ASTContext instead of the ASTContext of the current
expression.
I had to revert my previous change to DWARFASTParserClangTests.cpp back
to using the unsafe direct construction of CompilerDeclContext as this
assert won't work if the DeclContext we pass isn't a valid DeclContext
in the first place.
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
Commit 76d294cb8744b8b15a72d5adb2d435d2265ea9d7 by Raphael Isemann
[lldb][NFC] Delete all 'else return ...' in CompilerDeclContext.cpp
The file was modifiedlldb/source/Symbol/CompilerDeclContext.cpp
Commit a175c6a6f6bd98a5afc3bb90b41362e812134309 by Raphael Isemann
[lldb][NFC] Remove wrong and unused ClangASTContext::CopyDecl method
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit b6c29d9de027692cfe93a4f701cf49f1d5f99574 by Raphael Isemann
[lldb][NFC] Remove unused 'type' parameter in
ClangExpressionDeclMap::FindGlobalVariable
We never pass something else than a nullptr as the 'type' so the related
code in this function is never reached.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 5bd9eee53d124d00885395f6f2d6a8c64deca188 by kristof.beyls
[find_interesting_reviews.py] Add git blame output cache
The majority of the running time of this script tends to be spent in
running git blame on source files touched by patches under review.
By introducing a git blame output cache, some of the git blame commands
don't have to re-run, and the blame information can be retrieved from a
cache.
I've observed that in a typical run matching patches available for
review with potential reviewers, this speeds up the script's running
time by a factor of about 2.5x.
The file was modifiedllvm/utils/Reviewing/find_interesting_reviews.py
Commit 40bd809b6d5cfe69ffcb567245bc521b971a80eb by Raphael Isemann
[lldb][NFC] Simplify ClangExternalASTSourceCallbacks
This class is only used by the ClangASTContext so we might as well
simplify this whole logic by just passing a ClangASTContext instead of a
list of callbacks and a void* pointer. If we ever need this to support
other classes then we can define some interface that ClangASTContext
implements but for now this isn't needed.
I also removed any code for m_callback_find_by_name as this was always a
nullptr in LLDB and removed all overriden implementations that just
redefined the default no-op implementation that the ExternalASTSource
provides.
Also removed the assert.h workarounds.
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Symbol/ClangExternalASTSourceCallbacks.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
Commit b714583fd09683458be9eb03a9faef656a8ccf49 by sven.vanhaastregt
[OpenCL] Add atomic builtin functions
Add atomic builtin functions from the OpenCL C specification.
Patch by Pierre Gondois and Sven van Haastregt.
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
Commit 982a9e3d46bbecc9407c9d5df06634f03d21c6cd by Raphael Isemann
[lldb][NFC] Remove unused callback functionality from ClangASTContext
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
Commit 109e4e3851e29e0d3357cd1a6a38155928c07d8a by flo
[Matrix] Add forward shape propagation and first shape aware lowerings.
This patch adds infrastructure for forward shape propagation to
LowerMatrixIntrinsics. It also updates the pass to make use of the shape
information to break up larger vector operations and to eliminate
unnecessary conversion operations between columnwise matrixes and
flattened vectors: if shape information is available for an instruction,
lower the operation to a set of instructions operating on columns. For
example, a store of a matrix is broken down into separate stores for
each column. For users that do not have shape information (e.g. because
they do not yet support shape information aware lowering), we pack the
result columns into a flat vector and update those users.
It also adds shape aware lowering for the first non-intrinsic
instruction: vector stores.
Example:
For
%c  = call <4 x double> @llvm.matrix.transpose(<4 x double> %a, i32 2,
i32 2)
store <4 x double> %c, <4 x double>* %Ptr
We generate the code below without shape propagation. Note %9 which
combines the columns of the transposed matrix into a flat vector.
  %split = shufflevector <4 x double> %a, <4 x double> undef, <2 x i32>
<i32 0, i32 1>
%split1 = shufflevector <4 x double> %a, <4 x double> undef, <2 x i32>
<i32 2, i32 3>
%1 = extractelement <2 x double> %split, i64 0
%2 = insertelement <2 x double> undef, double %1, i64 0
%3 = extractelement <2 x double> %split1, i64 0
%4 = insertelement <2 x double> %2, double %3, i64 1
%5 = extractelement <2 x double> %split, i64 1
%6 = insertelement <2 x double> undef, double %5, i64 0
%7 = extractelement <2 x double> %split1, i64 1
%8 = insertelement <2 x double> %6, double %7, i64 1
%9 = shufflevector <2 x double> %4, <2 x double> %8, <4 x i32> <i32 0,
i32 1, i32 2, i32 3>
store <4 x double> %9, <4 x double>* %Ptr
With this patch, we propagate the 2x2 shape information from the
transpose to the store and we generate the code below. Note that we
store the columns directly and do not need an extra shuffle.
  %9 = bitcast <4 x double>* %Ptr to double*
%10 = bitcast double* %9 to <2 x double>*
store <2 x double> %4, <2 x double>* %10, align 8
%11 = getelementptr double, double* %9, i32 2
%12 = bitcast double* %11 to <2 x double>*
store <2 x double> %8, <2 x double>* %12, align 8
Reviewers: anemet, Gerolf, reames, hfinkel, andrew.w.kaylor
Reviewed By: anemet
Differential Revision: https://reviews.llvm.org/D70897
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/bigger-expressions-double.ll
The file was modifiedllvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/propagate-forward.ll
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/propagate-mixed-users.ll
Commit eca40066ebb5759aa44d21833c7a1fd7dd2361af by Yaxun.Liu
[NFC] Move OptionUtils from Basic to Driver
Differential Revision: https://reviews.llvm.org/D71802
The file was modifiedclang/lib/Basic/CMakeLists.txt
The file was removedclang/lib/Basic/OptionUtils.cpp
The file was modifiedclang/lib/Driver/CMakeLists.txt
The file was modifiedclang/include/clang/Frontend/Utils.h
The file was addedclang/include/clang/Driver/OptionUtils.h
The file was addedclang/lib/Driver/OptionUtils.cpp
The file was removedclang/include/clang/Basic/OptionUtils.h
Commit 8d6f59b78a83489d3dacdd4db0dbf1d4213c92b7 by flo
[Matrix] Use fmuladd  for matrix.multiply if allowed.
If the matrix.multiply calls have the contract fast math flag, we can
use fmuladd. This als adds a command line option to force fmuladd
generation. We can retire this option once there is a clang-level
option.
Reviewers: anemet, Gerolf, hfinkel, andrew.w.kaylor
Reviewed By: anemet
Differential Revision: https://reviews.llvm.org/D70951
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-contraction.ll
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/multiply-float-contraction.ll
The file was modifiedllvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-contraction-fmf.ll
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/multiply-float-contraction-fmf.ll
Commit 46f02fc922e053006e34d860e9efaf29c88d8ba3 by pavel
[lldb/DWARF] Fix hostname-stripping logic
This bit of code is trying to strip everything up to the first colon
from all debug info paths, as dwarf2 recommends this syntax for storing
the compilation host name. However, this code was too eager, and it
ended up stripping the entire compilation directory, if it did not
contain a forward slash (or a "x:\").
Normally this does not matter, as all absolute paths will contain one of
these patterns, but this does not have to be the case in case the debug
info is produced by "clang -fdebug-compilation-dir", which can end up
producing a relative compilation directory with no slashes (this is one
of the techniques for producing "relocatable" debug info).
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
The file was addedlldb/test/Shell/SymbolFile/DWARF/debug_line-relative_path.s
Commit d105ea26e87de604d0d070114c3588d591feac7e by llvmgnsyncbot
[gn build] Port eca40066ebb
The file was modifiedllvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
Commit e40ac74dacda99ff6330945f0f105252b7c28c9c by pavel
[lldb] Remove DWARFUnit::AppendDIEsWithTag
This function is not very useful, as it's forcing a materialization of
the returned DIEs, and calling it is not substantially simpler than just
iterating over the DIEs manually. Delete it, and rewrite the single
caller.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
Commit 0860db966a7d2ab61b26e41426a55189986924b4 by a.bataev
[OPENMP50]Codegen for nontemporal clause.
Summary: Basic codegen for the declarations marked as nontemporal. Also,
if the base declaration in the member expression is marked as
nontemporal, lvalue for member decl access inherits nonteporal flag from
the base lvalue.
Reviewers: rjmccall, hfinkel, jdoerfert
Subscribers: guansong, arphaman, caomhin, kkwli0, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71708
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.h
The file was modifiedclang/include/clang/AST/OpenMPClause.h
The file was modifiedclang/test/OpenMP/target_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_simd_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/distribute_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/test/OpenMP/simd_codegen.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/test/OpenMP/for_simd_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_simd_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/lib/AST/StmtProfile.cpp
Commit 8cefc37be5aba4948936c7beb97cde7a68449f1f by spatel
[DAGCombine] visitEXTRACT_SUBVECTOR - 'little to big'
extract_subvector(bitcast()) support
This moves the X86 specific transform from rL364407 into DAGCombiner to
generically handle 'little to big' cases
(for example: extract_subvector(v2i64 bitcast(v16i8))). This allows us
to remove both the x86 implementation and the aarch64
bitcast(extract_subvector(bitcast())) combine.
Earlier patches that dealt with regressions initially exposed by this
patch: rG5e5e99c041e4 rG0b38af89e2c0
Patch by: @RKSimon (Simon Pilgrim)
Differential Revision: https://reviews.llvm.org/D63815
The file was modifiedllvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/madd.ll
The file was modifiedllvm/test/CodeGen/X86/avg-mask.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/AArch64/merge-store.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
The file was modifiedllvm/test/CodeGen/ARM/combine-vmovdrr.ll
Commit 79b3325be0b016fdc1a2c55bce65ec9f1e5f4eb6 by czhengsz
[PowerPC] NFC - fix the testcase bug of folding rlwinm
The file was modifiedllvm/test/CodeGen/PowerPC/fold-rlwinm.mir
Commit 5b1d0dc6bf0618690057bea749830036f70b0491 by luismarques
[RISCV][NFC] Fix use of missing attribute groups in tests
The file was modifiedllvm/test/CodeGen/RISCV/remat.ll
The file was modifiedllvm/test/CodeGen/RISCV/frame-info.ll
The file was modifiedllvm/test/CodeGen/RISCV/frame.ll
Commit c7c05b0c8a046c9bef46b4e4c7a35c262d1d880a by jay.foad
[AMDGPU] Don't create MachinePointerInfos with an UndefValue pointer
Summary: The only useful information the UndefValue conveys is the
address space, which MachinePointerInfo can represent directly without
referring to an IR value.
Reviewers: arsenm, rampitec
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr,
t-tye, hiraditya, Petar.Avramovic, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71838
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
The file was modifiedllvm/lib/Target/AMDGPU/R600ISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_kernel.ll
Commit 261b7b4a6b06dd32bea46383f8fef1e56e68c88a by maskray
[ELF] Don't suggest an alternative spelling for a symbol in a discarded
section
For undef-not-suggest.test, we currently make redundant alternative
spelling suggestions:
``` ld.lld: error: relocation refers to a discarded section: .text.foo
>>> defined in a.o
>>> section group signature: foo
>>> prevailing definition is in a.o
>>> referenced by a.o:(.rodata+0x0)
>>> did you mean:
>>> defined in: a.o
ld.lld: error: relocation refers to a symbol in a discarded section: foo
>>> defined in a.o
>>> section group signature: foo
>>> prevailing definition is in a.o
>>> referenced by a.o:(.rodata+0x8)
>>> did you mean: for
>>> defined in: a.o
```
Reviewed By: grimar, ruiu
Differential Revision: https://reviews.llvm.org/D71735
The file was addedlld/test/ELF/undef-not-suggest.test
The file was modifiedlld/ELF/Relocations.cpp
Commit d2c9c9157b0528436d3b9f5e22c872f0ee6509a2 by sledru
Move from a long list of checkers to tables
Summary: Currently, the list isn't very useful. This change adds two
tables.
* The checkers
* The aliases
For each checkers, we provide extract info:
* the severity. Taken from codechecker -
https://github.com/Ericsson/codechecker/blob/master/config/checker_severity_map.json
* if the checker has an autofix or not
I used the cvs format for the table because:
* it is easy
* the data could be reused by other tools (we could move that into a
separated / generated file at some point)
Reviewers: alexfh, jdoerfert, jfb, lebedev.ri, Eugene.Zelenko
Subscribers: dexonsmith, wuzish, nemanjai, kbarton, arphaman,
lebedev.ri, whisperity, Eugene.Zelenko, JonasToth, JDevlieghere,
xazax.hun, cfe-commits, #clang-tools-extra
Tags: #clang
Differential Revision: https://reviews.llvm.org/D36051
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/list.rst
Commit e7d5131d3b122cdae5442b02f60e8527423c40c3 by Jonas Devlieghere
[lldb/Test] Disable TestSynchronous.test on Windows.
The test was being skipped on the Windwos bot because it requires Python
which was silently disabled because of a configuration issue. Now that
the test runs, this fails as expected.
The file was modifiedlldb/test/Shell/Reproducer/TestSynchronous.test
Commit a9fdfe63ce023b5aff0fb160375dd28eabf525df by rnk
Fix LLVM tool --version build mode printing for MSVC
LLVM tools such as llc print "DEBUG build" or "Optimized build" when
passed --version. Before this change, this was implemented by checking
for the __OPTIMIZE__ GCC macro. MSVC does not define this macro. For
MSVC, control this behavior with _DEBUG instead. It doesn't have
precisely the same meaning, but in most configurations, it will do the
right thing.
Fixes PR17752
Reviewed by: MaskRay
Differential Revision: https://reviews.llvm.org/D71817
The file was modifiedllvm/lib/Support/CommandLine.cpp
Commit e028cee66a23da568ba62c6323c6a29f4c7f63ae by dblaikie
MC: Ensure test only reads from the Inputs directory
The file was modifiedllvm/test/MC/X86/align-branch-64-1b.s
The file was modifiedllvm/test/MC/X86/align-branch-64-1d.s
The file was addedllvm/test/MC/X86/Inputs/align-branch-64-1.s
The file was addedllvm/test/MC/X86/Inputs/align-branch-64-2.s
The file was modifiedllvm/test/MC/X86/align-branch-64-1c.s
The file was modifiedllvm/test/MC/X86/align-branch-64-1a.s
The file was modifiedllvm/test/MC/X86/align-branch-64-2c.s
The file was modifiedllvm/test/MC/X86/align-branch-64-2a.s
The file was modifiedllvm/test/MC/X86/align-branch-64-2b.s
Commit d35bcbbb5dab0e29b21a586505f5b274377cc41b by craig.topper
[Sema][X86] Consider target attribute into the checks in
validateOutputSize and validateInputSize.
The validateOutputSize and validateInputSize need to check whether AVX
or AVX512 are enabled. But this can be affected by the target attribute
so we need to factor that in.
This patch moves some of the code from CodeGen to create an appropriate
feature map that we can pass to the function.
Differential Revision: https://reviews.llvm.org/D68627
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was modifiedclang/test/CodeGen/x86_32-inline-asm.c
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
The file was modifiedclang/lib/Basic/Targets/X86.h
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedclang/include/clang/Basic/TargetInfo.h
Commit 7a9ebe95125ea87a494d0c18f44f10bd70e12188 by eugenis
[msan] Intercept qsort, qsort_r.
Summary: This fixes qsort-related false positives with glibc-2.27. I'm
not entirely sure why they did not show up with the earlier versions;
the code seems similar enough.
Reviewers: vitalybuka
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D71740
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
The file was addedcompiler-rt/test/msan/qsort.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
Commit caa48a6b88aeed8ae80e6ddb1eae8c6a7cbe260b by eugenis
[msan] Check qsort input.
Summary: Qsort interceptor suppresses all checks by unpoisoning the data
in the wrapper of a comparator function, and then unpoisoning the output
array as well.
This change adds an explicit run of the comparator on all elements of
the input array to catch any sanitizer bugs.
Reviewers: vitalybuka
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D71780
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
The file was modifiedcompiler-rt/test/msan/qsort.cpp
Commit 0d3f782e413c1b13d407f67afbb6330b1091fef0 by ulrich.weigand
[FPEnv][X86] More strict int <-> FP conversion fixes
Fix several several additional problems with the int <-> FP conversion
logic both in common code and in the X86 target. In particular:
- The STRICT_FP_TO_UINT expansion emits a floating-point compare. This
compare can raise exceptions and therefore needs to be a strict
compare.
I've made it signaling (even though quiet would also be correct) as
signaling is the more usual default for an LT. This code exists both
in common code and in the X86 target.
- The STRICT_UINT_TO_FP expansion algorithm was incorrect for strict
mode:
it emitted two STRICT_SINT_TO_FP nodes and then used a select to choose
one
of the results. This can cause spurious exceptions by the
STRICT_SINT_TO_FP
that ends up not chosen. I've fixed the algorithm to use only a single
STRICT_SINT_TO_FP instead.
- The !isStrictFPEnabled logic in DoInstructionSelection would sometimes
do
the wrong thing because it calls getOperationAction using the result
VT.
But for some opcodes, incuding [SU]INT_TO_FP, getOperationAction needs
to
be called using the operand VT.
- Remove some (obsolete) code in X86DAGToDAGISel::Select that would
mutate
STRICT_FP_TO_[SU]INT to non-strict versions unnecessarily.
Reviewed by: craig.topper
Differential Revision: https://reviews.llvm.org/D71840
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-conv-12.ll
The file was modifiedllvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-512.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
The file was modifiedllvm/test/CodeGen/X86/fp-strict-scalar-fptoint.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/X86/fp80-strict-scalar.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-conv-10.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics-flags.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
Commit 4b64e034612017fcc97b64d6031319cf18dbbb88 by maskray
ASTContext: fix declaration of ParsedTargetAttr [-Wmismatched-tags]
after D68627
The file was modifiedclang/include/clang/AST/ASTContext.h