FailedChanges

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

Summary

  1. [LegalizeTypes] Remove the call to SplitVecRes_UnaryOp from (details)
  2. [LegalizeTypes] Remove ScalarizeVecRes_STRICT_FP_ROUND in favor of just (details)
  3. [LegalizeTypes] Pre-size the SmallVectors in ScalarizeVecRes_StrictFPOp (details)
  4. [lldb] Fix unused variable warning in ThreadPlanStepRange.cpp (details)
  5. [MachO] Fix detecting malformed DWARF. (details)
  6. [sanitizer] Construct InternalMmapVector without memory allocation. (details)
  7. [ELF] Add IpltSection (details)
  8. [MinGW] Implicitly add .exe suffix if not provided (details)
  9. [lit] [windows] Make sure to convert all path separators to backslashes (details)
  10. [lldb][NFC] Make clang-format happy by removing trailing space in (details)
  11. [ELF] Rename .plt to .iplt and decrease EM_PPC{,64} alignment of .glink (details)
  12. [ObjC][DWARF] Emit DW_AT_APPLE_objc_direct for methods marked as (details)
  13. [Support] Fix time trace multi threaded support with (details)
  14. Revert "[Support] Fix time trace multi threaded support with (details)
  15. Resubmit "[Alignment][NFC] Deprecate CreateMemCpy/CreateMemMove" (details)
  16. [lldb] Add support for calling objc_direct methods from LLDB's (details)
  17. [lldb][NFC] Remove implementation of GetOriginalDecl and just call (details)
  18. [lldb-vscode] Centrally skip debug info variants for vscode tests (details)
  19. [lldb][NFC] Remove all unnecessary includes for ClangASTSourceCommon.h (details)
  20. [lit] Remove lit's REQUIRES-ANY directive (details)
  21. Fix assertion failure in getMemOperandWithOffsetWidth (details)
  22. [OpenCL] Add ExtVectorElementExpr constant evaluation (PR42387) (details)
  23. [lldb] Remove modern-type-lookup (details)
  24. [RISCV][NFC] Trivial cleanup (details)
  25. [libcxx] Fix include paths in fuzzing/partial_sort.pass.cpp (details)
  26. [DebugInfo] Only print a single blank line after an empty line table (details)
  27. [libomptarget][nfc] Move omp locks under target_impl (details)
  28. PostRA Machine Sink should take care of COPY defining register that is a (details)
  29. [lldb][NFC] Allow creating ClangExpressionDeclMap and ClangASTSource (details)
  30. [ASTImporter] Friend class decl should not be visible in its context (details)
  31. [lldb][NFC] Rename ClangASTImporter::InsertRecordDecl to SetRecordLayout (details)
  32. Reland [NFC-I] Remove hack for fp-classification builtins (details)
  33. This adds constrained intrinsics for the signed and unsigned conversions (details)
  34. [lldb][NFC] Use StringRef in CreateRecordType and CreateObjCClass (details)
  35. [gicombiner] Add the MatchDag structure and parse instruction DAG's from (details)
  36. gn build: Merge 390c8baa544 (details)
  37. [clangd][NFC] Make use of TagDecl inside type for hover on auto (details)
  38. [clangd] Fix handling of inline/anon namespaces and names of deduced (details)
  39. Revert "Honor  -fuse-init-array when os is not specified on x86" (details)
  40. [AArch64] add tests for fcvtl2; NFC (details)
  41. [lit] Fix internal diff newlines for -w/-b (details)
  42. [AMDGPU] Update autogenerated checks (details)
  43. [ MC ] Match labels to existing fragments even when switching sections. (details)
  44. [InstCombine][AMDGPU] Trim more components of *buffer_load (details)
  45. [gicombiner] Process the MatchDag such that every node is reachable from (details)
  46. [SystemZ][FPEnv] Back-end support for STRICT_[SU]INT_TO_FP (details)
  47. [DAGCombiner] Add node back in the worklist in topological order in (details)
  48. [FPEnv] IRBuilder support for constrained sitofp/uitofp. (details)
  49. [RISCV] Add subtargets initialized with target feature (details)
  50. [libomptarget][nfc] Move three files under common, build them for amdgcn (details)
  51. [driver][darwin] Pass -platform_version flag to the linker instead of (details)
Commit c4d2bb1ede04985a9b1a57b75a6a0d773fb78fd9 by craig.topper
[LegalizeTypes] Remove the call to SplitVecRes_UnaryOp from
SplitVecRes_StrictFPOp. NFCI
It doesn't seem to do anything that SplitVecRes_StrictFPOp can't do.
SplitVecRes_StrictFPOp already handles nodes with a variable number of
arguments and a mix of scalar and vector arguments.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Commit c738ebc1f57e6e1e3c1c798cb9f3385d67d34f8a by craig.topper
[LegalizeTypes] Remove ScalarizeVecRes_STRICT_FP_ROUND in favor of just
using ScalarizeVecRes_StrictFPOp. NFCI
It looks like ScalarizeVecRes_StrictFPOp can handle a variable number of
arguments with scalar and vector types so it should be sufficient.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Commit 13ce7c1291b95eaadef2c66e372a070b45e207bc by craig.topper
[LegalizeTypes] Pre-size the SmallVectors in ScalarizeVecRes_StrictFPOp
and SplitVecRes_StrictFPOp so we don't have to call push_back. NFCI
This avoids grow checking/handling in each iteration of the loop.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Commit 3c6554be2e3c1500f825df5f7c186f2e58d6a33a by Raphael Isemann
[lldb] Fix unused variable warning in ThreadPlanStepRange.cpp
This was added in 434905b97d961531286d4b49c7ee1969f7cbea0e. Remove it to
fix the compiler warnings for this.
The file was modifiedlldb/source/Target/ThreadPlanStepRange.cpp
Commit 5279f96577af1457a973c071ec5ee3554c9f6cbe by ikudrin
[MachO] Fix detecting malformed DWARF.
This fixes an invalid constant used to detect the reserved range when
reading the compilation unit header. See also: D64622 and D65039.
Differential Revision: https://reviews.llvm.org/D71546
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
Commit a57adc7a0b0dac5484f19f9061eba432d0db19e8 by ikudrin
[sanitizer] Construct InternalMmapVector without memory allocation.
Construction of InternalMmapVector is often followed by a call to
reserve(), which may result in immediate reallocation of the memory for
the internal storage. This patch delays that allocation until it is
really needed.
Differential Revision: https://reviews.llvm.org/D71342
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common.h
The file was modifiedcompiler-rt/lib/sanitizer_common/tests/sanitizer_common_test.cpp
Commit 891a8655ab563055e21c1f8a3907f9c43fe5c583 by maskray
[ELF] Add IpltSection
PltSection is used by both PLT and IPLT. The PLT section may have a
header while the IPLT section does not. Split off IpltSection from
PltSection to be clearer.
Unlike other targets, PPC64 cannot use the same code sequence for PLT
and IPLT. This helps make a future PPC64 patch (D71509) more isolated.
On EM_386 and EM_X86_64, when PLT is empty while IPLT is not, currently
we are inconsistent whether the PLT header is conceptually attached to
in.plt or in.iplt .  Consistently attach the header to in.plt can make
the -z retpolineplt logic simpler. It also makes `jmp` point to an
aesthetically better place for non-retpolineplt cases.
Reviewed By: grimar, ruiu
Differential Revision: https://reviews.llvm.org/D71519
The file was modifiedlld/test/ELF/gnu-ifunc-plt-i386.s
The file was modifiedlld/ELF/Arch/PPC.cpp
The file was modifiedlld/ELF/Arch/ARM.cpp
The file was modifiedlld/ELF/Arch/RISCV.cpp
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/ELF/Arch/X86.cpp
The file was modifiedlld/ELF/SyntheticSections.h
The file was modifiedlld/test/ELF/gnu-ifunc-plt.s
The file was modifiedlld/test/ELF/gnu-ifunc-i386.s
The file was modifiedlld/ELF/Relocations.cpp
The file was modifiedlld/test/ELF/gnu-ifunc-shared.s
The file was modifiedlld/ELF/Writer.cpp
The file was modifiedlld/ELF/Arch/PPC64.cpp
The file was modifiedlld/ELF/Arch/X86_64.cpp
The file was modifiedlld/ELF/Symbols.cpp
The file was modifiedlld/ELF/Arch/AArch64.cpp
The file was modifiedlld/ELF/Target.h
The file was modifiedlld/test/ELF/gnu-ifunc.s
Commit ee0a3b5c776cac769ae68dce369728eaae286671 by martin
[MinGW] Implicitly add .exe suffix if not provided
GCC implicitly adds an .exe suffix if it is given an output file name,
but the file name doesn't contain a suffix, and there are certain users
of GCC that rely on this behaviour (and run into issues when trying to
use Clang instead of GCC). And MSVC's cl.exe also does the same (but not
link.exe).
However, GCC only does this when actually running on windows, not when
operating as a cross compiler.
As GCC doesn't have this behaviour when cross compiling, we definitely
shouldn't introduce the behaviour in such cases (as it would break at
least as many cases as this fixes).
Differential Revision: https://reviews.llvm.org/D71400
The file was addedclang/test/Driver/mingw-implicit-extension-cross.c
The file was modifiedclang/lib/Driver/ToolChains/MinGW.cpp
The file was addedclang/test/Driver/mingw-implicit-extension-windows.c
Commit d39510ec1cda7c7808c1ecadb1364382f92c1af3 by martin
[lit] [windows] Make sure to convert all path separators to backslashes
in NT style \\?\... paths
E.g. the mingw python distributed in msys2 (the mingw one, which is a
normal win32 application and doesn't use the msys2 runtime itself),
despite being a normal win32 python, still uses forward slashes. This
works fine for other cases (many, but not all), but when constructing a
raw NT path, all path separators must be backslashes.
Differential Revision: https://reviews.llvm.org/D71490
The file was modifiedllvm/utils/lit/lit/util.py
Commit ba6f25d7d3671f8ff1d072a43a292950dbbf899e by Raphael Isemann
[lldb][NFC] Make clang-format happy by removing trailing space in
ArchSpec.cpp
The file was modifiedlldb/source/Utility/ArchSpec.cpp
Commit 345f59667d846c4b77258e72c902f4aaf8add166 by maskray
[ELF] Rename .plt to .iplt and decrease EM_PPC{,64} alignment of .glink
to 4
GNU ld creates the synthetic section .iplt, and has a built-in linker
script that assigns .iplt to the output section .plt . There is no
output section named .iplt .
Making .iplt an output section actually has a benefit that makes the
tricky toolchain feature stand out. Symbolizers don't have to deal with
mixed PLT entries (e.g. llvm-objdump -d incorrectly annotates such jump
targets).
On EM_PPC{,64}, .glink contains a PLT resolver and a series of jump
instructions. The 4-byte entry size makes it unnecessary to have an
alignment of 16.
Mark ppc32-gnu-ifunc.s and ppc32-gnu-ifunc-nonpreemptable.s as `XFAIL:
*`. They test IPLT on EM_PPC, which never works.
Reviewed By: peter.smith
Differential Revision: https://reviews.llvm.org/D71520
The file was modifiedlld/test/ELF/ppc64-dtprel.s
The file was modifiedlld/test/ELF/ppc64-toc-relax-ifunc.s
The file was modifiedlld/test/ELF/ppc32-tls-gd.s
The file was modifiedlld/test/ELF/gnu-ifunc-plt-i386.s
The file was modifiedlld/test/ELF/arm-gnu-ifunc.s
The file was modifiedlld/test/ELF/ppc32-gnu-ifunc-nonpreemptable.s
The file was modifiedlld/test/ELF/aarch64-gnu-ifunc2.s
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/test/ELF/aarch64-gnu-ifunc-nonpreemptable.s
The file was modifiedlld/test/ELF/linkerscript/orphan-report.s
The file was modifiedlld/test/ELF/gnu-ifunc-i386.s
The file was modifiedlld/test/ELF/ppc32-gnu-ifunc.s
The file was modifiedlld/test/ELF/gnu-ifunc.s
The file was modifiedlld/test/ELF/gnu-ifunc-shared.s
The file was modifiedlld/test/ELF/ppc32-call-stub-pic.s
The file was modifiedlld/test/ELF/aarch64-gnu-ifunc.s
The file was modifiedlld/test/ELF/ppc32-tls-ld.s
The file was modifiedlld/test/ELF/aarch64-gnu-ifunc-plt.s
The file was modifiedlld/test/ELF/aarch64-ifunc-bti.s
The file was modifiedlld/test/ELF/gnu-ifunc-canon.s
The file was modifiedlld/test/ELF/gnu-ifunc-plt.s
Commit ccfab8e4596e59c8eea6b3610cd163c5d0312193 by Raphael Isemann
[ObjC][DWARF] Emit DW_AT_APPLE_objc_direct for methods marked as
__attribute__((objc_direct))
Summary: With DWARF5 it is no longer possible to distinguish normal
methods and methods with `__attribute__((objc_direct))` by just looking
at the debug information as they are both now children of the of the
DW_TAG_structure_type that defines them (before only the
`__attribute__((objc_direct))` methods were children).
This means that in LLDB we are no longer able to create a correct Clang
AST of a module by just looking at the debug information. Instead we
would need to call the Objective-C runtime to see which of the methods
have a `__attribute__((objc_direct))` and then add the attribute to our
own Clang AST depending on what the runtime returns. This would mean
that we either let the module AST be dependent on the Objective-C
runtime (which doesn't seem right) or we retroactively add the missing
attribute to the imported AST in our expressions.
A third option is to annotate methods with
`__attribute__((objc_direct))` as `DW_AT_APPLE_objc_direct` which is
what this patch implements. This way LLDB doesn't have to call the
runtime for any `__attribute__((objc_direct))` method and the AST in our
module will already be correct when we create it.
Reviewers: aprantl, SouraVX
Reviewed By: aprantl
Subscribers: hiraditya, cfe-commits, llvm-commits
Tags: #clang, #llvm, #debug-info
Differential Revision: https://reviews.llvm.org/D71201
The file was addedllvm/test/DebugInfo/X86/objc_direct.ll
The file was modifiedclang/test/CodeGenObjC/debug-info-direct-method.m
The file was modifiedllvm/include/llvm/BinaryFormat/Dwarf.def
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedllvm/include/llvm/IR/DebugInfoFlags.def
Commit 2bbcf156acc157377e814fbb1828a9fe89367ea2 by russell.gallop
[Support] Fix time trace multi threaded support with
LLVM_ENABLE_THREADS=OFF
Following on from 8ddcd1dc26ba, which added the support. As pointed out
on D71059 this does not build on some systems with
LLVM_ENABLE_THREADS=OFF.
Differential Revision: https://reviews.llvm.org/D71548
The file was modifiedllvm/lib/Support/TimeProfiler.cpp
The file was modifiedllvm/include/llvm/Support/TimeProfiler.h
Commit 531c71118f2910edcdc7b215dbb4ee429c623631 by russell.gallop
Revert "[Support] Fix time trace multi threaded support with
LLVM_ENABLE_THREADS=OFF"
This reverts commit 2bbcf156acc157377e814fbb1828a9fe89367ea2.
This was failing on systems which use __thread such as
http://lab.llvm.org:8011/builders/clang-atom-d525-fedora-rel/builds/30851
The file was modifiedllvm/include/llvm/Support/TimeProfiler.h
The file was modifiedllvm/lib/Support/TimeProfiler.cpp
Commit 531c1161b9758aa7eae1a4dd8ecf11fdf4417b29 by gchatelet
Resubmit "[Alignment][NFC] Deprecate CreateMemCpy/CreateMemMove"
Summary: This is a resubmit of D71473.
This patch introduces a set of functions to enable deprecation of
IRBuilder functions without breaking out of tree clients. Functions will
be deprecated one by one and as in tree code is cleaned up.
This is patch is part of a series to introduce an Alignment type. See
this thread for context:
http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this
patch for the introduction of the type: https://reviews.llvm.org/D64790
Reviewers: aaron.ballman, courbet
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71547
The file was modifiedllvm/include/llvm/IR/Function.h
The file was modifiedllvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
The file was modifiedllvm/include/llvm/IR/Argument.h
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/lib/IR/Core.cpp
The file was modifiedllvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
The file was modifiedllvm/lib/IR/Function.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
The file was modifiedllvm/include/llvm/IR/InstrTypes.h
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/CodeGen/SafeStack.cpp
Commit d5b54bbfaf19a8527ebf70fbf23cb8d2937f15ef by Raphael Isemann
[lldb] Add support for calling objc_direct methods from LLDB's
expression evaluator.
Summary: D69991 introduced `__attribute__((objc_direct))` that allows
directly calling methods without message passing. This patch adds
support for calling methods with this attribute to LLDB's expression
evaluator.
The patch can be summarised in that LLDB just adds the same attribute to
our module AST when we find a method with `__attribute__((objc_direct))`
in our debug information.
Reviewers: aprantl, shafik
Reviewed By: shafik
Subscribers: JDevlieghere, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D71196
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was addedlldb/packages/Python/lldbsuite/test/lang/objc/objc_direct-methods/Makefile
The file was addedlldb/packages/Python/lldbsuite/test/lang/objc/objc_direct-methods/main.m
The file was addedlldb/packages/Python/lldbsuite/test/lang/objc/objc_direct-methods/TestObjCDirectMethods.py
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
Commit 6e1fe4966c402d17a253b38192cfd5e8b919ab8e by Raphael Isemann
[lldb][NFC] Remove implementation of GetOriginalDecl and just call
GetDeclOrigin instead
Those functions have the same semantics beside some small optimization
of not creating a new empty ASTContextMetadataSP value in the metadata
map. We never actually hit this optimization according to test coverage
so let's just call GetDeclOrigin instead.
The file was modifiedlldb/source/Symbol/ClangASTImporter.cpp
Commit dcd14324dced7d91aa8bf78a607055ca093b27bf by pavel
[lldb-vscode] Centrally skip debug info variants for vscode tests
Previously each test was annotated manually. This does the same thing.
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/stackTrace/TestVSCode_stackTrace.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/breakpoint/TestVSCode_setBreakpoints.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/variables/TestVSCode_variables.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/step/TestVSCode_step.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/breakpoint/TestVSCode_setFunctionBreakpoints.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/launch/TestVSCode_launch.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/attach/TestVSCode_attach.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/breakpoint/TestVSCode_setExceptionBreakpoints.py
Commit d9ca412a8a75ab64af33a9e95d1319c4dd2004d2 by Raphael Isemann
[lldb][NFC] Remove all unnecessary includes for ClangASTSourceCommon.h
These files only need the definition of ClangASTMetadata (which was
previously in the ClangASTSourceCommon.h) or don't need the include at
all.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
Commit ddd0bb8dba2a367c6aa8a25e98915509847745ce by thomasp
[lit] Remove lit's REQUIRES-ANY directive
Summary: Remove REQUIRES-ANY alias lit directive since it is hardly used
and can be easily implemented using an OR expression using REQUIRES.
Fixup remaining testcases still using REQUIRES-ANY.
Reviewers: probinson, jdenny, gparker42
Reviewed By: gparker42
Subscribers: eugenis, asb, rbar, johnrusso, simoncook, sabuasal, niosHD,
delcypher, jrtc27, zzheng, edward-jones, rogfer01, MartinMosbeck,
brucehoult, the_o, PkmX, jocewei, lenary, s.egerton, pzheng,
sameer.abuasal, apazos, luismarques, cfe-commits, #sanitizers,
llvm-commits
Tags: #llvm, #clang, #sanitizers
Differential Revision: https://reviews.llvm.org/D71408
The file was modifiedclang/test/Driver/XRay/xray-instrumentation-bundles-flags.cpp
The file was modifiedcompiler-rt/test/builtins/Unit/riscv/mulsi3_test.c
The file was modifiedclang/test/Driver/XRay/xray-nolinkdeps.cpp
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cfcmple_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_frsub_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cdcmpeq_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c
The file was removedllvm/utils/lit/tests/Inputs/shtest-format/requires-any-missing.txt
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_drsub_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c
The file was removedllvm/utils/lit/tests/Inputs/shtest-format/requires-any-present.txt
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cdcmple_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/arm/aeabi_cfcmpeq_test.c
The file was modifiedclang/test/Driver/XRay/xray-instrument-macos.c
The file was modifiedclang/test/Driver/XRay/xray-instrument-os.c
The file was modifiedllvm/utils/lit/lit/TestRunner.py
The file was modifiedclang/test/Driver/XRay/xray-mode-flags.cpp
Commit 870f39d310d6a575fb5d303f4027e988bec9e78e by kristof.beyls
Fix assertion failure in getMemOperandWithOffsetWidth
This fixes an assertion failure that triggers inside
getMemOperandWithOffset when Machine Sinking calls it on a MachineInstr
that is not a memory operation.
Different backends implement getMemOperandWithOffset differently: some
return false on non-memory MachineInstrs, others assert.
The Machine Sinking pass in at least SinkingPreventsImplicitNullCheck
relies on getMemOperandWithOffset to return false on non-memory
MachineInstrs, instead of asserting.
This patch updates the documentation on getMemOperandWithOffset that it
should return false on any MachineInstr it cannot handle, instead of
asserting. It also adapts the in-tree backends accordingly where
necessary.
Differential Revision: https://reviews.llvm.org/D71359
The file was modifiedllvm/include/llvm/CodeGen/TargetInstrInfo.h
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was addedllvm/test/CodeGen/AArch64/machine-sink-getmemoperandwithoffset.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiInstrInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
Commit df5a905aa8a868bdb700d88e427491ee56243e30 by sven.vanhaastregt
[OpenCL] Add ExtVectorElementExpr constant evaluation (PR42387)
Add constexpr evaluation for ExtVectorElementExpr nodes by evaluating
the underlying vector expression.  Add basic folding for the case that
Evaluate does not return an LValue.
Differential Revision: https://reviews.llvm.org/D71133
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/CodeGenOpenCLCXX/constexpr.cl
Commit ff0102b32cfe506dfc16a86e38e70b0940697aa2 by Raphael Isemann
[lldb] Remove modern-type-lookup
Summary: As discussed on the mailing list [1] we have to make a decision
for how to proceed with the modern-type-lookup.
This patch removes modern-type-lookup from LLDB. This just removes all
the code behind the modern-type-lookup setting but it does *not* remove
any code from Clang (i.e., the ExternalASTMerger and the
clang-import-test stay around for now).
The motivation for this is that I don't think that the current approach
of implementing modern-type-lookup will work out. Especially creating a
completely new lookup system behind some setting that is never turned on
by anyone and then one day make one big switch to the new system seems
wrong. It doesn't fit into the way LLVM is developed and has so far made
the transition work much more complicated than it has to be.
A lot of the benefits that were supposed to come with the
modern-type-lookup are related to having a better organization in the
way types move across LLDB and having less dependencies on unrelated
LLDB code. By just looking at the current code (mostly the
ClangASTImporter) I think we can reach the same goals by just
incrementally cleaning up, documenting, refactoring and actually testing
the existing code we have.
[1] http://lists.llvm.org/pipermail/lldb-dev/2019-December/015831.html
Reviewers: shafik, martong
Subscribers: rnkovacs, christof, arphaman, JDevlieghere, usaxena95,
lldb-commits, friss
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D71562
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/objc-modules/main.m
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.h
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/basic-objc/TestBasicObjcModernTypeLookup.py
The file was modifiedlldb/source/Target/TargetProperties.td
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/basic/main.cpp
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/objc-modules/TestObjModulesModernTypeLookup.py
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/basic-objc/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/libcxx/TestLibCxxModernTypeLookup.py
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/libcxx/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/libcxx/main.cpp
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/basic/Makefile
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangDeclVendor.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/basic-objc/main.m
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/objc-modules/Makefile
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
The file was modifiedlldb/source/Target/Target.cpp
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/modern-type-lookup/basic/TestBasicModernTypeLookup.py
The file was modifiedlldb/include/lldb/Target/Target.h
Commit e332a09619359471969abfac7ff08b36d29dbf31 by luismarques
[RISCV][NFC] Trivial cleanup
Fix a typo. Remove two seemingly out-of-date TODO comments.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.td
The file was modifiedllvm/test/MC/RISCV/fixups.s
Commit 67ce7f51a50f5fb4633fcdc0e80038d1f63a40f3 by mikhail.maltsev
[libcxx] Fix include paths in fuzzing/partial_sort.pass.cpp
Summary: When testing an installed (out-of-tree) version of libc++, the
"libcxx/fuzzing/partial_sort.pass.cpp" test fails because of missing
include files "../fuzzing/fuzzing.{h,cpp}". This happens because in the
source tree "../fuzzing" can be accessed as
"libcxx/include/../fuzzing", but with the installed library this does
not work.
This patch fixes the issue by changing the path to be relative from the
`libcxx/test/fuzzing" directory.
Reviewers: mclow.lists, EricWF, christof, michaelplatings
Reviewed By: michaelplatings
Subscribers: merge_guards_bot, ldionne, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D71459
The file was modifiedlibcxx/test/libcxx/fuzzing/partial_sort.pass.cpp
Commit 5666b70fd0748765ecaa69950a4868cf23a16cc9 by jh7370
[DebugInfo] Only print a single blank line after an empty line table
Commit 84a9756 added an extra blank line at the end of any line table.
However, a blank line is also printed after the line table header, which
meant that two blank lines in a row were being printed after a header,
if there were no rows. This patch defers the post-header blank line
printing until it has been determined that there are rows to print.
Reviewed by: dblaikie
Differential Revision: https://reviews.llvm.org/D71540
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/debug-line.s
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
Commit 3d3e4076cd65007007ca639d4f99c0fa671c9f8e by jonathanchesterfield
[libomptarget][nfc] Move omp locks under target_impl
Summary:
[libomptarget][nfc] Move omp locks under target_impl
These are likely to be target specific, even down to the lock_t which is
correspondingly moved out of interface.h. The alternative is to include
interface.h in target_impl which substantiatially increases the scope of
those symbols.
The current nvptx implementation deadlocks on amdgcn. The preferred
implementation for that arch is still under discussion - this change
leaves declarations in target_impl.
The functions could be inline for nvptx. I'd prefer to keep the
internals hidden in the target_impl translation unit, but will add the
(possibly renamed) macros to target_impl.h if preferred.
Reviewers: ABataev, jdoerfert, grokos
Reviewed By: jdoerfert
Subscribers: jvesely, mgorny, jfb, openmp-commits
Tags: #openmp
Differential Revision: https://reviews.llvm.org/D71574
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/CMakeLists.txt
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h
The file was modifiedopenmp/libomptarget/deviceRTLs/amdgcn/src/amdgcn_interface.h
The file was modifiedopenmp/libomptarget/deviceRTLs/interface.h
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/libcall.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/nvptx_interface.h
The file was addedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.h
Commit e7f585ed6109b1f20131b91af87e3c2ae1e59616 by alex-t
PostRA Machine Sink should take care of COPY defining register that is a
sub-register by another COPY source operand
Differential Revision: https://reviews.llvm.org/D71132
The file was modifiedllvm/test/CodeGen/AArch64/bisect-post-ra-machine-sink.mir
The file was modifiedllvm/lib/CodeGen/MachineSink.cpp
The file was addedllvm/test/CodeGen/AMDGPU/postra-machine-sink.mir
The file was modifiedllvm/test/CodeGen/AArch64/post-ra-machine-sink.mir
Commit 4aee81c4f73359230e358108bc428e3b0cc59566 by Raphael Isemann
[lldb][NFC] Allow creating ClangExpressionDeclMap and ClangASTSource
without a Target and add basic unit test
The ClangExpressionDeclMap should be testable from a unit test. This is
currently impossible as they have both dependencies on
Target/ExecutionContext from their constructor. This patch allows
constructing these classes without an active Target and adds the missing
tests for running without a target that we can do at least a basic
lookup test without crashing.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h
The file was modifiedlldb/unittests/Expression/CMakeLists.txt
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
The file was addedlldb/unittests/Expression/ClangExpressionDeclMapTest.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit 4becf68c6f17fe143539ceac954b21175914e1c1 by gabor.marton
[ASTImporter] Friend class decl should not be visible in its context
Summary: In the past we had to use DeclContext::makeDeclVisibleInContext
to make friend declarations available for subsequent lookup calls and
this way we could chain (redecl) the structurally equivalent decls. By
doing this we created an AST that improperly made declarations visible
in some contexts, so the AST was malformed. Since we use the importer
specific lookup this is no longer necessary, because with that we can
find every previous nodes.
Reviewers: balazske, a_sidorin, a.sidorin, shafik
Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, teemperor,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71020
The file was modifiedclang/unittests/AST/ASTImporterTest.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
Commit b852b3c982d2e8ad3f13c626b3e3655e5b3c399e by Raphael Isemann
[lldb][NFC] Rename ClangASTImporter::InsertRecordDecl to SetRecordLayout
and document it
This function is just setting the layout for the given RecordDecl so the
current name is not very descriptive. Also add some documentation for
it.
The file was modifiedlldb/source/Symbol/ClangASTImporter.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/unittests/Symbol/TestClangASTImporter.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTImporter.h
Commit 1ed832e42446ef8c4afe08f980db2e54ac316bf3 by erich.keane
Reland [NFC-I] Remove hack for fp-classification builtins
The FP-classification builtins (__builtin_isfinite, etc) use variadic
packs in the definition file to mean an overload set.  Because of that,
floats were converted to doubles, which is incorrect. There WAS a patch
to remove the cast after the fact.
THis patch switches these builtins to just be custom type checking,
calls the implicit conversions for the integer members, and makes sure
the correct L->R casts are put into place, then does type checking like
normal.
A future direction (that wouldn't be NFC) would consider making
conversions for the floating point parameter legal.
Note: The initial patch for this missed that certain systems need to
still convert half to float, since they dont' support that type.
The file was modifiedclang/test/Sema/crash-invalid-builtin.c
The file was modifiedclang/include/clang/Basic/Builtins.def
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/CodeGen/builtin_float.c
The file was addedclang/test/Sema/builtin-fpclassification.c
Commit b1d8576b0a9fa1f6a1173c0b5c2f379389e01e3f by kevin.neal
This adds constrained intrinsics for the signed and unsigned conversions
of integers to floating point.
This includes some of Craig Topper's changes for promotion support from
D71130.
Differential Revision: https://reviews.llvm.org/D69275
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
The file was modifiedllvm/test/Feature/fp-intrinsics.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/include/llvm/CodeGen/ISDOpcodes.h
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/include/llvm/IR/ConstrainedOps.def
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Commit 268f37df6e45c4b0603bd4d964483a0d84da44c1 by Raphael Isemann
[lldb][NFC] Use StringRef in CreateRecordType and CreateObjCClass
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was modifiedlldb/unittests/Symbol/TestClangASTImporter.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
Commit 390c8baa5440dda8907688d9ef860f6982bd925f by daniel_l_sanders
[gicombiner] Add the MatchDag structure and parse instruction DAG's from
the input
Summary: The MatchDag structure is a representation of the checks that
need to be performed and the dependencies that limit when they can
happen.
There are two kinds of node in the MatchDag:
* Instrs - Represent a MachineInstr
* Predicates - Represent a check that needs to be performed (i.e.
opcode, is register, same machine operand, etc.) and two kinds of edges:
* (Traversal) Edges - Represent a register that can be traversed to find
one instr from another
* Predicate Dependency Edges - Indicate that a predicate requires a
piece of information to be tested.
For example, the matcher:
(match (MOV $t, $s),
       (MOV $d, $t)) with MOV declared as an instruction of the form:
%dst = MOV %src1 becomes the following MatchDag with the following
instruction nodes:
__anon0_0 // $t=getOperand(0), $s=getOperand(1)
__anon0_1 // $d=getOperand(0), $t=getOperand(1) traversal edges:
__anon0_1[src1] --[t]--> __anon0_0[dst] predicate nodes:
<<$mi.getOpcode() == MOV>>:$__anonpred0_2
<<$mi.getOpcode() == MOV>>:$__anonpred0_3 and predicate dependencies:
__anon0_0 ==> __anonpred0_2[mi]
__anon0_0 ==> __anonpred0_3[mi]
The result of this parse is currently unused but can be tested using
-gicombiner-stop-after-parse as done in parse-match-pattern.td. The dump
for testing includes a graphviz format dump to allow the rule to be
viewed visually.
Later on, these MatchDag's will be used to generate code and to build an
efficient decision tree.
Reviewers: volkan, bogner
Reviewed By: volkan
Subscribers: arsenm, mgorny, mgrang, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69077
The file was modifiedllvm/test/TableGen/GICombinerEmitter/match-invalid.td
The file was addedllvm/test/TableGen/GICombinerEmitter/parse-match-pattern.td
The file was modifiedllvm/utils/TableGen/GlobalISel/CMakeLists.txt
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagPredicateDependencyEdge.h
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagPredicate.h
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagInstr.cpp
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDag.h
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagEdge.cpp
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagInstr.h
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagPredicate.cpp
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagPredicateDependencyEdge.cpp
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDag.cpp
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagEdge.h
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagOperands.h
The file was modifiedllvm/utils/TableGen/GICombinerEmitter.cpp
The file was addedllvm/utils/TableGen/GlobalISel/GIMatchDagOperands.cpp
Commit 0a1ba7c536af91e63da8cde62e9cac60547a2c97 by llvmgnsyncbot
gn build: Merge 390c8baa544
The file was modifiedllvm/utils/gn/secondary/llvm/utils/TableGen/GlobalISel/BUILD.gn
Commit 3d15605358ebadcbd7740a61c92b4fea4d6241e5 by kadircet
[clangd][NFC] Make use of TagDecl inside type for hover on auto
Summary: We were traversing AST twice to get the Decl in case of sugared
types(auto, decltype). They seem to be same in practice, so this patch
gets rid of the second traversal and makes use of TagDecl inside
QualType instead.
Reviewers: ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71597
The file was modifiedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
Commit 9ab15f303efdfc841f475918535ab4e13960491b by kadircet
[clangd] Fix handling of inline/anon namespaces and names of deduced
types in hover
Summary: Clangd normally skips inline and anon namespaces while printing
nested name specifiers. It also drops any tag specifiers since we make
use of `HoverInfo::Kind` instead of some text in `HoverInfo::Name`
There was a bug causing us to print innermost inline/anon namespace,
this patch fixes that by skipping those. Also changes printing and kind
detection of deduced types to be similar to decl case.
Also improves printing for lambdas, currently clangd prints lambdas as
`(anonymous class)`, we can improve it by at least printing `(lambda)`
instead.
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71543
The file was modifiedclang-tools-extra/clangd/AST.cpp
The file was modifiedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
Commit 2423774cc2a040d34d32aacaf261805cb195ebd2 by 31459023+hctim
Revert "Honor  -fuse-init-array when os is not specified on x86"
This reverts commit aa5ee8f244441a8ea103a7e0ed8b6f3e74454516.
This change broke the sanitizer buildbots. See comments at the patchset
(https://reviews.llvm.org/D71360) for more information.
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/Mips/MipsTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetMachine.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetObjectFile.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
The file was modifiedllvm/test/CodeGen/X86/init-priority.ll
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetObjectFile.cpp
The file was modifiedllvm/test/CodeGen/X86/constructor.ll
Commit fbaf835c5c515bf00dccd880b8afe0b2e0a10e06 by spatel
[AArch64] add tests for fcvtl2; NFC
The file was modifiedllvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
Commit 9658e77e27fa2a93667f840d230086d783fed6dc by jdenny.ornl
[lit] Fix internal diff newlines for -w/-b
For example, without this patch:
```
$ python $LIT_BUILTINS/diff.py -b foo.txt bar.txt
*** /tmp/foo.txt
--- /tmp/bar.txt
***************
*** 1,2 ****
1! 2--- 1,2 ----
1! 20
```
With this patch:
```
$ python $LIT_BUILTINS/diff.py -b foo.txt bar.txt
*** /tmp/foo.txt
--- /tmp/bar.txt
***************
*** 1,2 ****
1
! 2
--- 1,2 ----
1
! 20
```
Reviewed By: rnk
Differential Revision: https://reviews.llvm.org/D71577
The file was addedllvm/utils/lit/tests/Inputs/shtest-shell/diff-b.txt
The file was addedllvm/utils/lit/tests/Inputs/shtest-shell/diff-w.txt
The file was modifiedllvm/utils/lit/lit/builtin_commands/diff.py
The file was modifiedllvm/utils/lit/tests/max-failures.py
The file was modifiedllvm/utils/lit/tests/shtest-shell.py
Commit ad622af07990ed0d332513cf2244b4c45b476ac7 by jay.foad
[AMDGPU] Update autogenerated checks
The file was modifiedllvm/test/CodeGen/AMDGPU/computeNumSignBits-mul.ll
Commit 4272372c571cd33edc77a8844b0a224ad7339138 by mtrent
[ MC ] Match labels to existing fragments even when switching sections.
Summary: This commit builds upon Derek Schuff's 2014 commit for
attaching labels to existing fragments ( Diff Revision:
http://reviews.llvm.org/D5915 )
When temporary labels appear ahead of a fragment, MCObjectStreamer will
track the temporary label symbol in a "Pending Labels" list. Labels are
associated with fragments when a real fragment arrives; otherwise, an
empty data fragment will be created if the streamer's section changes or
if the stream finishes.
This commit moves the "Pending Labels" list into each MCStream, so that
this label-fragment matching process is resilient to section changes. If
the streamer emits a label in a new section, switches to another section
to do other work, then switches back to the first section and emits a
fragment, that initial label will be associated with this new fragment.
Labels will only receive empty data fragments in the case where no other
fragment exists for that section.
The downstream effects of this can be seen in Mach-O relocations. The
previous approach could produce local section relocations and external
symbol relocations for the same data in an object file, and this mix of
relocation types resulted in problems in the ld64 Mach-O linker. This
commit ensures relocations triggered by temporary labels are consistent.
Reviewers: pete, ab, dschuff
Reviewed By: pete, dschuff
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71368
The file was modifiedllvm/include/llvm/MC/MCObjectStreamer.h
The file was modifiedllvm/lib/MC/MCObjectStreamer.cpp
The file was addedllvm/test/MC/MachO/pending-labels.s
The file was modifiedllvm/include/llvm/MC/MCSection.h
The file was modifiedllvm/lib/MC/MCSection.cpp
Commit 65f94b33808d7d69539961a6f5a2168f0a1eef41 by Piotr Sobczak
[InstCombine][AMDGPU] Trim more components of *buffer_load
Summary: Add trimming of unused components of s_buffer_load.
Extend trimming of *buffer_load to also include unused components at the
beginning of vectors and update offset.
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr,
t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70315
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
The file was modifiedllvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts.ll
Commit 520e3d66e7257c77f1226185504bbe1cb90afcfa by daniel_l_sanders
[gicombiner] Process the MatchDag such that every node is reachable from
the roots
Summary: When we build the walk across these DAG's we need to be able to
reach every node from the roots. Flip and traversal edges (so that
use->def becomes def->uses) that make nodes unreachable. Note that early
on we'll just error out on these flipped edges as def->uses edges are
more complicated to match due to their one->many nature.
Depends on D69077
Reviewers: volkan, bogner
Subscribers: llvm-commits
The file was modifiedllvm/utils/TableGen/GlobalISel/GIMatchDag.h
The file was modifiedllvm/include/llvm/ADT/iterator.h
The file was modifiedllvm/utils/TableGen/GlobalISel/GIMatchDagEdge.h
The file was modifiedllvm/test/TableGen/GICombinerEmitter/parse-match-pattern.td
The file was modifiedllvm/utils/TableGen/GlobalISel/GIMatchDagEdge.cpp
The file was modifiedllvm/utils/TableGen/GICombinerEmitter.cpp
Commit d1c0f14be8a7d1337712ff1cf0bcdd33e2f78316 by ulrich.weigand
[SystemZ][FPEnv] Back-end support for STRICT_[SU]INT_TO_FP
As of b1d8576 there is middle-end support for STRICT_[SU]INT_TO_FP, so
this patch adds SystemZ back-end support as well.
The patch is SystemZ target specific except for adding SD patterns
strict_[su]int_to_fp and any_[su]int_to_fp to TargetSelectionDAG.td as
usual.
The file was modifiedllvm/test/CodeGen/SystemZ/vec-strict-conv-03.ll
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-conv-16.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-strict-conv-01.ll
The file was addedllvm/test/CodeGen/SystemZ/fp-strict-conv-05.ll
The file was addedllvm/test/CodeGen/SystemZ/fp-strict-conv-08.ll
The file was addedllvm/test/CodeGen/SystemZ/fp-strict-conv-07.ll
The file was addedllvm/test/CodeGen/SystemZ/fp-strict-conv-06.ll
The file was addedllvm/test/CodeGen/SystemZ/fp-strict-conv-13.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrFP.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrVector.td
Commit ff6567cc7720655de9d8731fb3005d1aaccec96a by deadalnix
[DAGCombiner] Add node back in the worklist in topological order in
CommitTargetLoweringOpt
Summary: Right now, DAGCombiner process the nodes in an iplementation
defined order. This tends to be fragile as optimisation may or may not
kick in depending on the traversal order.
This is part of a larger effort to get the DAGCombiner to process its
node in topological order.
Reviewers: craig.topper, efriedma, RKSimon, lebedev.ri
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70921
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 2f40f5681d0d896e592d1b6738d1df17228c68a8 by kevin.neal
[FPEnv] IRBuilder support for constrained sitofp/uitofp.
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
Commit 2c8e22d25c2091764ccde67812a3f707277052b2 by zakk.chen
[RISCV] Add subtargets initialized with target feature
expected failed test (RV32IF-ILP32F) will be fixed in a subsequent
patch.
Reviewers: efriedma, lenary, asb
Reviewed By: efriedma, lenary
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70116
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetMachine.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetMachine.h
The file was addedllvm/test/CodeGen/RISCV/subtarget-features-std-ext.ll
Commit 0c83f8ccc745522d2a25bcef2067bde295be9f75 by jonathanchesterfield
[libomptarget][nfc] Move three files under common, build them for amdgcn
Summary:
[libomptarget][nfc] Move three files under common, build them for amdgcn
Change to reduction.cu to remove two dead includes, otherwise no code
change.
Reviewers: jdoerfert, ABataev, grokos
Reviewed By: jdoerfert
Subscribers: jvesely, mgorny, openmp-commits
Tags: #openmp
Differential Revision: https://reviews.llvm.org/D71601
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/CMakeLists.txt
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/libcall.cu
The file was addedopenmp/libomptarget/deviceRTLs/common/src/reduction.cu
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/omp_data.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/reduction.cu
The file was addedopenmp/libomptarget/deviceRTLs/common/src/libcall.cu
The file was addedopenmp/libomptarget/deviceRTLs/common/src/omp_data.cu
Commit 25ce33a6e4f3b13732c0f851e68390dc2acb9123 by Alex Lorenz
[driver][darwin] Pass -platform_version flag to the linker instead of
the -<platform>_version_min flag
In Xcode 11, ld added a new flag called -platform_version that can be
used instead of the old -<platform>_version_min flags. The new flag
allows Clang to pass the SDK version from the driver to the linker. This
patch adopts the new -platform_version flag in Clang, and starts using
it by default, unless a linker version < 520 is passed to the driver.
Differential Revision: https://reviews.llvm.org/D71579
The file was modifiedclang/test/Driver/target-triple-deployment.c
The file was addedclang/test/Driver/darwin-ld-platform-version-watchos.c
The file was modifiedclang/test/Driver/darwin-ld.c
The file was modifiedclang/test/Driver/darwin-infer-simulator-sdkroot.c
The file was addedclang/test/Driver/darwin-ld-platform-version-macos.c
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedclang/test/Driver/darwin-sdkroot.c
The file was addedclang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
The file was addedclang/test/Driver/darwin-ld-platform-version-tvos.c
The file was addedclang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
The file was addedclang/test/Driver/darwin-ld-platform-version-ios.c
The file was modifiedllvm/include/llvm/Support/VersionTuple.h
The file was modifiedclang/lib/Driver/ToolChains/Darwin.h