SuccessChanges

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

Summary

  1. [MC] Add parameter `Address` to MCInstrPrinter::printInstruction (details)
  2. Let PassBuilder Expose PassInstrumentationCallbacks (details)
  3. [libc] Add __attribute__((always_inline)) to x86_64 syscall functions. (details)
  4. [OpenMP] NFC: Fix trivial typos in comments (details)
  5. [libc] Move implementations of strcat and strcpy to the string (details)
  6. [APFloat] Fix fusedMultiplyAdd when `this` equals to `Addend` (details)
  7. [lldb] Fix LLDB build after API change to printInst (D72172) (details)
  8. Fix compiler extension example cmake integration (details)
  9. [APFloat] Fix out of scope usage of a pointer to local variable (details)
  10. [SystemZ] Fix python failure in test case (details)
  11. [NFC] Use isX86() instead of getArch() (details)
  12. [lldb][NFC] Take a llvm::Triple in ClangASTContext constructor (details)
  13. [LLD][ELF][AArch64] Do not use thunk for undefined weak symbol. (details)
  14. [DebugInfo] Fix infinite loop caused by reading past debug_line end (details)
  15. Fix "use of uninitialized variable" static analyzer warnings. NFCI. (details)
  16. Fix "use of uninitialized variable" static analyzer warnings. NFCI. (details)
  17. Fix Wdocumentation warnings. NFCI. (details)
  18. [RISCV][Docs] Add RISC-V asm template argument modifiers (details)
  19. [clangd] Add path mappings functionality (details)
  20. [gn build] Port c69ae835d0e (details)
  21. [SystemZ] Extend fp-strict-alias test case (details)
  22. [lldb][NFC] Use static_cast instead of reinterpret_cast where possible (details)
  23. Fix "use of uninitialized variable" static analyzer warning. NFCI. (details)
  24. [ARM] Improve codegen of volatile load/store of i64 (details)
  25. Fix "pointer is null" static analyzer warning. NFCI. (details)
  26. [X86] Standardize shuffle match/lowering function names. NFC. (details)
  27. [ARM][MVE] VPT Blocks: findVCMPToFoldIntoVPS (details)
  28. [clangd] Introduce bulletlists (details)
  29. [OPENMP]Do not diagnose references to non-integral types for ref in (details)
  30. [DAGCombiner] reduce shuffle of concat of same vector (details)
  31. [TypePromotion] Use SetVectors instead of PtrSets (details)
  32. [docs] NFC: Fix typos in documents (details)
  33. AMDGPU/GlobalISel: Partially fix llvm.amdgcn.kill pattern import (details)
  34. llc: Change behavior of -mcpu with existing attribute (details)
  35. OpaquePtr: print byval types containing anonymous types correctly. (details)
  36. AMDGPU/GlobalISel: Select llvm.amdgcn.wqm.vote (details)
  37. AMDGPU/GlobalISel: Fix import of s_abs_i32 pattern (details)
  38. [InstCombine] try to pull 'not' of select into compare operands (details)
  39. Remove extraneous spaces (details)
  40. AMDGPU/GlobalISel: Fix readfirstlane pattern import (details)
Commit 3d87d0b925713effb108a387924562211ecbf2be by maskray
[MC] Add parameter `Address` to MCInstrPrinter::printInstruction
Follow-up of D72172.
Reviewed By: jhenderson, rnk
Differential Revision: https://reviews.llvm.org/D72180
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86IntelInstPrinter.h
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
The file was modifiedllvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp
The file was modifiedllvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
The file was modifiedllvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
The file was modifiedllvm/lib/Target/MSP430/MCTargetDesc/MSP430InstPrinter.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.h
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZInstPrinter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsInstPrinter.h
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRInstPrinter.cpp
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRInstPrinter.h
The file was modifiedllvm/lib/Target/Lanai/MCTargetDesc/LanaiInstPrinter.h
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZInstPrinter.h
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.h
The file was modifiedllvm/lib/Target/MSP430/MCTargetDesc/MSP430InstPrinter.h
The file was modifiedllvm/lib/Target/BPF/MCTargetDesc/BPFInstPrinter.h
The file was modifiedllvm/lib/Target/XCore/MCTargetDesc/XCoreInstPrinter.cpp
The file was modifiedllvm/utils/TableGen/AsmWriterEmitter.cpp
The file was modifiedllvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86IntelInstPrinter.cpp
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.h
The file was modifiedllvm/lib/Target/ARC/MCTargetDesc/ARCInstPrinter.cpp
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsInstPrinter.cpp
The file was modifiedllvm/lib/Target/Lanai/MCTargetDesc/LanaiInstPrinter.cpp
The file was modifiedllvm/lib/Target/XCore/MCTargetDesc/XCoreInstPrinter.h
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.h
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.h
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.h
The file was modifiedllvm/lib/Target/BPF/MCTargetDesc/BPFInstPrinter.cpp
The file was modifiedllvm/lib/Target/ARC/MCTargetDesc/ARCInstPrinter.h
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp
Commit ff554a9179032167953595ca885a8fd12ac61036 by aqjune
Let PassBuilder Expose PassInstrumentationCallbacks
Summary: This is an effort to allowing external libraries register their
own pass instrumentation during their llvmGetPassPluginInfo() calls.
By exposing this through the added getPIC(), now a pass writer can do
something like this:
``` extern "C" ::llvm::PassPluginLibraryInfo LLVM_ATTRIBUTE_WEAK
llvmGetPassPluginInfo() {
return {
   ..,
   [](llvm::PassBuilder &PB) {
     PB.getPIC()->registerAfterPassCallback(move(f));
   }
};
}
```
Reviewers: chandlerc, philip.pfaffe, fedor.sergeev
Reviewed By: fedor.sergeev
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71086
The file was modifiedllvm/include/llvm/Passes/PassBuilder.h
The file was modifiedllvm/unittests/IR/PassBuilderCallbacksTest.cpp
Commit 6598af4a54b0f67cdaf14ca1b6809e6f109679e8 by sivachandra
[libc] Add __attribute__((always_inline)) to x86_64 syscall functions.
Summary: Some syscalls like SYS_clone do not tolerate a return
instruction after the syscall instruction. Marking the syscall functions
with the
`always_inline` attribute accommodates such syscalls as inlining
eliminates the return instruction.
Reviewers: abrachet, phosek
Subscribers: MaskRay, tschuett, libc-commits
Tags: #libc-project
Differential Revision: https://reviews.llvm.org/D72102
The file was modifiedlibc/config/linux/x86_64/syscall.h.inc
Commit 4c6a098ad52fc2844f7733bc051cd7a729500f04 by tclin914
[OpenMP] NFC: Fix trivial typos in comments
Reviewers: jdoerfert, Jim
Reviewed By: Jim
Subscribers: Jim, mgorny, guansong, jfb, openmp-commits
Tags: #openmp
Differential Revision: https://reviews.llvm.org/D72285
The file was modifiedopenmp/libomptarget/plugins/cuda/src/rtl.cpp
The file was modifiedopenmp/runtime/src/extractExternal.cpp
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/legacy/ittnotify.h
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify.h
The file was modifiedopenmp/runtime/src/include/omp_lib.f.var
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/libcall.cu
The file was modifiedopenmp/runtime/tools/generate-def.pl
The file was modifiedopenmp/runtime/src/kmp_settings.cpp
The file was modifiedopenmp/runtime/src/kmp_affinity.cpp
The file was modifiedopenmp/runtime/test/ompt/synchronization/nest_lock.c
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/task.cu
The file was modifiedopenmp/runtime/src/kmp_itt.inl
The file was modifiedopenmp/runtime/src/kmp_stats.cpp
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/test/parallel/level.c
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/src/kmp_taskdeps.cpp
The file was modifiedopenmp/runtime/src/kmp_tasking.cpp
The file was modifiedopenmp/runtime/src/kmp_wrapper_malloc.h
The file was modifiedopenmp/runtime/test/ompt/synchronization/lock.c
The file was modifiedopenmp/runtime/tools/lib/tools.pm
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/test/threadprivate/omp_threadprivate.c
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
The file was modifiedopenmp/libomptarget/deviceRTLs/common/omptarget.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/parallel.cu
The file was modifiedopenmp/runtime/src/kmp_dispatch.cpp
The file was modifiedopenmp/runtime/tools/lib/Uname.pm
The file was modifiedopenmp/tools/archer/tests/races/task-dependency.c
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/omptarget.cu
The file was modifiedopenmp/runtime/cmake/LibompMicroTests.cmake
The file was modifiedopenmp/runtime/tools/check-depends.pl
The file was modifiedopenmp/runtime/src/i18n/en_US.txt
The file was modifiedopenmp/runtime/src/kmp_lock.h
The file was modifiedopenmp/libomptarget/src/private.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/debug.h
The file was modifiedopenmp/runtime/src/kmp_atomic.cpp
The file was modifiedopenmp/runtime/tools/message-converter.pl
Commit 188f72ab20d9523d6ffde8ad8361ecf17bb75946 by sivachandra
[libc] Move implementations of strcat and strcpy to the string
directory.
Summary: Now that tests live in separate top-level directory, keeping
the implementations of individual functions in a directory of their own
is not meaningful. Hence, this change moves them into the higher level
string directory.
NFC intended.
Reviewers: MaskRay
Subscribers: mgorny, tschuett, libc-commits
Tags: #libc-project
Differential Revision: https://reviews.llvm.org/D72295
The file was addedlibc/src/string/strcat.cpp
The file was modifiedlibc/test/src/string/strcpy_test.cpp
The file was removedlibc/src/string/strcat/CMakeLists.txt
The file was removedlibc/src/string/strcat/strcat.h
The file was addedlibc/src/string/strcpy.h
The file was removedlibc/src/string/strcpy/strcpy.h
The file was removedlibc/src/string/strcat/strcat.cpp
The file was addedlibc/src/string/strcat.h
The file was removedlibc/src/string/strcpy/strcpy.cpp
The file was addedlibc/src/string/strcpy.cpp
The file was removedlibc/src/string/strcpy/CMakeLists.txt
The file was modifiedlibc/src/string/CMakeLists.txt
The file was modifiedlibc/test/src/string/strcat_test.cpp
Commit 08de551f4f1087c4dd3220fee8ec328fa168168c by ehudkatz
[APFloat] Fix fusedMultiplyAdd when `this` equals to `Addend`
Up until now, the arguments to `fusedMultiplyAdd` are passed by
reference. We must save the `Addend` value on the beginning of the
function, before we modify `this`, as they may be the same reference.
To fix this, we now pass the `addend` parameter of `multiplySignificand`
by value (instead of by-ref), and have a default value of zero.
Fix PR44051.
Differential Revision: https://reviews.llvm.org/D70422
The file was modifiedllvm/include/llvm/ADT/APFloat.h
The file was modifiedllvm/lib/Support/APFloat.cpp
The file was modifiedllvm/unittests/ADT/APFloatTest.cpp
Commit 9890cc2ef08576cc16e32aff4288e7a7821a25f7 by Raphael Isemann
[lldb] Fix LLDB build after API change to printInst (D72172)
It seems in D72172 we always pass a 0 as the new default argument so
let's do the same in LLDB to get the build bot running.
The file was modifiedlldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
Commit 5a9c24b5721b9becd642a6801eb46f1205e54ca0 by sguelton
Fix compiler extension example cmake integration
- Do not add it to the Export file
- Update install target
Differential Revision: https://reviews.llvm.org/D72255
The file was modifiedllvm/examples/Bye/CMakeLists.txt
Commit 63a222e504c2f6f1e4f60f8d2acfb5870cac9c66 by ehudkatz
[APFloat] Fix out of scope usage of a pointer to local variable
The file was modifiedllvm/lib/Support/APFloat.cpp
Commit 4814b68b7ad2a4b0425d31a93ed2583cc1634445 by ulrich.weigand
[SystemZ] Fix python failure in test case
With recent Python the Large/spill-02.py test failed with an error:
TypeError: can't multiply sequence by non-int of type 'float'
The file was modifiedllvm/test/CodeGen/SystemZ/Large/spill-02.py
Commit ab1bcda851d95aeec03ffc1218bf9cae261a9280 by tclin914
[NFC] Use isX86() instead of getArch()
Summary: This is a clean up for https://reviews.llvm.org/D72247.
Reviewers: MaskRay, craig.topper, jhenderson
Reviewed By: MaskRay
Subscribers: hiraditya, rupprecht, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D72320
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedllvm/lib/MC/MCObjectFileInfo.cpp
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
The file was modifiedclang/include/clang/Basic/TargetInfo.h
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedclang/lib/AST/Mangle.cpp
The file was modifiedclang/lib/Driver/ToolChains/Arch/X86.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
Commit d364815351a887cbcd4579bc41995f8b2eb185ff by Raphael Isemann
[lldb][NFC] Take a llvm::Triple in ClangASTContext constructor
This constructor is supposed to take a string representing an
llvm::Triple. We might as well take a llvm::Triple here which saves us
all the string conversions in the call sites and we make this more type
safe.
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/unittests/Symbol/TestClangASTContext.cpp
The file was modifiedlldb/source/Host/common/HostInfoBase.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
The file was modifiedlldb/include/lldb/Host/HostInfoBase.h
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
Commit 051c4d5b7bcfb0c1feb69f4701086ac725322527 by peter.smith
[LLD][ELF][AArch64] Do not use thunk for undefined weak symbol.
In AArch64 a branch to an undefined weak symbol that does not have a PLT
entry should resolve to the next instruction. The thunk generation code
can prevent this from happening as a range extension thunk can be
generated if the branch is sufficiently far away from 0, the value of an
undefined weak symbol.
The fix is taken from the Arm implementation of needsThunk(), we prevent
a thunk from being generated to an undefined weak symbol.
fixes pr44451
Differential Revision: https://reviews.llvm.org/D72267
The file was modifiedlld/test/ELF/aarch64-undefined-weak.s
The file was modifiedlld/test/ELF/arm-undefined-weak.s
The file was modifiedlld/ELF/Arch/AArch64.cpp
Commit 216796f234c757b832898adec28d5d523c80dce2 by jh7370
[DebugInfo] Fix infinite loop caused by reading past debug_line end
If the claimed unit length of a debug line program is such that the line
table would finish past the end of the .debug_line section, an infinite
loop occurs because the data extractor will continue to "read" zeroes
without changing the offset. This previously didn't hit an error because
the line table program handles a series of zeroes as a bad extended
opcode.
This patch fixes the inifinite loop and adds a warning if the program
doesn't fit in the available data.
Reviewed by: JDevlieghere
Differential Revision: https://reviews.llvm.org/D72279
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
Commit bd1dc6a3eb801b0b6eadb569557a8bba6f7a4b9c by llvm-dev
Fix "use of uninitialized variable" static analyzer warnings. NFCI.
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Commit bcb47bbd7214b2795eb114df22ef745850abccb2 by llvm-dev
Fix "use of uninitialized variable" static analyzer warnings. NFCI.
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp
Commit c758e4692317350313ec5426d488621ab2d3ff42 by llvm-dev
Fix Wdocumentation warnings. NFCI.
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
Commit 27e6b171e0be0bca1ba4fb934f52816f24487b6f by luismarques
[RISCV][Docs] Add RISC-V asm template argument modifiers
Adds the RISC-V asm template argument modifiers currently supported by
LLVM. Additional ones supported by GCC will be added to the
documentation when we start supporting them.
The file was modifiedllvm/docs/LangRef.rst
Commit c69ae835d0e0dc493eb09e75f0687a1390525440 by sam.mccall
[clangd] Add path mappings functionality
Summary: Add path mappings to clangd which translate file URIs on
inbound and outbound LSP messages. This mapping allows clangd to run in
a remote environment (e.g. docker), where the source files and
dependencies may be at different locations than the host. See
http://lists.llvm.org/pipermail/clangd-dev/2019-January/000231.htm for
more.
Patch by William Wagner!
Reviewers: sammccall, ilya-biryukov
Reviewed By: sammccall
Subscribers: usaxena95, ormris, mgorny, MaskRay, jkorous, arphaman,
kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64305
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was addedclang-tools-extra/clangd/PathMapping.cpp
The file was addedclang-tools-extra/clangd/test/path-mappings.test
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
The file was addedclang-tools-extra/clangd/test/Inputs/path-mappings/server/foo.h
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
The file was addedclang-tools-extra/clangd/unittests/PathMappingTests.cpp
The file was addedclang-tools-extra/clangd/PathMapping.h
Commit cf4b9164ffd8b2d3632b178fef5963759d13fe1c by llvmgnsyncbot
[gn build] Port c69ae835d0e
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
Commit 14cd4a5b32478f76b9fa58825b7c92ba0dd5bc2b by ulrich.weigand
[SystemZ] Extend fp-strict-alias test case
Explicitly add test for fpexcept.maytrap intrinsics.
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-alias.ll
Commit 65fdb34219f33b2871a532a38814ac4ebea10abc by Raphael Isemann
[lldb][NFC] Use static_cast instead of reinterpret_cast where possible
Summary: There are a few places in LLDB where we do a `reinterpret_cast`
for conversions that we could also do with `static_cast`. This patch
moves all this code to `static_cast`.
Reviewers: shafik, JDevlieghere, labath
Reviewed By: labath
Subscribers: arphaman, usaxena95, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D72161
The file was modifiedlldb/source/Utility/Scalar.cpp
The file was modifiedlldb/source/Core/Debugger.cpp
The file was modifiedlldb/tools/debugserver/source/MacOSX/MachThread.cpp
The file was modifiedlldb/source/API/SBEvent.cpp
The file was modifiedlldb/source/Target/Target.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
The file was modifiedlldb/tools/debugserver/source/MacOSX/DarwinLog/DarwinLogCollector.cpp
The file was modifiedlldb/source/Host/macosx/objcxx/Host.mm
The file was modifiedlldb/source/Utility/Environment.cpp
The file was modifiedlldb/source/Utility/DataExtractor.cpp
The file was modifiedlldb/source/Host/posix/PipePosix.cpp
The file was modifiedlldb/tools/debugserver/source/MacOSX/MachProcess.mm
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangDeclVendor.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp
The file was modifiedlldb/source/Host/common/NativeProcessProtocol.cpp
The file was modifiedlldb/source/Utility/StreamString.cpp
Commit 6ff1ea3244c543ad24fc99c7f4979db2f2078593 by llvm-dev
Fix "use of uninitialized variable" static analyzer warning. NFCI.
The file was modifiedllvm/lib/Target/AMDGPU/R600InstrInfo.cpp
Commit 60e0120c913dd1d4bfe33769e1f000a076249a42 by victor.campos
[ARM] Improve codegen of volatile load/store of i64
Summary: Instead of generating two i32 instructions for each load or
store of a volatile i64 value (two LDRs or STRs), now emit LDRD/STRD.
These improvements cover architectures implementing ARMv5TE or Thumb-2.
Reviewers: dmgreen, efriedma, john.brawn, nickdesaulniers
Reviewed By: efriedma, nickdesaulniers
Subscribers: nickdesaulniers, vvereschaka, kristof.beyls, hiraditya,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70072
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was addedllvm/test/CodeGen/ARM/i64_volatile_load_store.ll
Commit 3b417b7cf73b6b5a2953ad4c8178b4394ea4f20e by llvm-dev
Fix "pointer is null" static analyzer warning. NFCI.
The file was modifiedclang/lib/AST/Comment.cpp
Commit c0365aaaa4f20dd92d6f887c4539d1360dbb8c8e by llvm-dev
[X86] Standardize shuffle match/lowering function names. NFC.
We mainly use lowerShuffle*/matchShuffle* - replace the (few)
lowerVectorShuffle*/matchVectorShuffle* cases to be consistent.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e34801c8e6df11b802f58b202f2ce6598734f040 by sjoerd.meijer
[ARM][MVE] VPT Blocks: findVCMPToFoldIntoVPS
This is a recommit of D71330, but with a few things fixed and changed:
1) ReachingDefAnalysis: this was not running with optnone as it was
checking skipFunction(), which other analysis passes don't do. I guess
this is a copy-paste from a codegen pass. 2) VPTBlockPass: here I've
added skipFunction(), because like most/all optimisations, we don't want
to run this with optnone.
This fixes the issues with the initial/previous commit: the VPTBlockPass
was running with optnone, but ReachingDefAnalysis wasn't, and so
VPTBlockPass was crashing querying ReachingDefAnalysis.
I've added test case mve-vpt-block-optnone.mir to check that we don't
run VPTBlock with optnone.
Differential Revision: https://reviews.llvm.org/D71470
The file was addedllvm/test/CodeGen/Thumb2/mve-vpt-block-optnone.mir
The file was addedllvm/test/CodeGen/Thumb2/mve-vpt-block-fold-vcmp.mir
The file was modifiedllvm/lib/Target/ARM/MVEVPTBlockPass.cpp
The file was modifiedllvm/test/CodeGen/ARM/O3-pipeline.ll
The file was modifiedllvm/lib/CodeGen/ReachingDefAnalysis.cpp
Commit a000f2e53f5c3433608f6097c3f4096e313b5f56 by kadircet
[clangd] Introduce bulletlists
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71422
The file was modifiedclang-tools-extra/clangd/FormattedString.cpp
The file was modifiedclang-tools-extra/clangd/FormattedString.h
The file was modifiedclang-tools-extra/clangd/unittests/FormattedStringTests.cpp
Commit 3f2e3dc44b42fab2e991222e74248b7006f1091e by a.bataev
[OPENMP]Do not diagnose references to non-integral types for ref in
declare simd.
According to the standard, a list-item that appears in a linear clause
without the ref modifier must be of integral or pointer type, or must be
a reference to an integral or pointer type. Added check that this
restriction is applied only to non-ref items.
The file was modifiedclang/test/OpenMP/declare_simd_messages.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
Commit 58e2e92a57fcc3c628fd03ae33698fcc9aabedb9 by spatel
[DAGCombiner] reduce shuffle of concat of same vector
This is possibly a small part towards solving PR42024:
https://bugs.llvm.org/show_bug.cgi?id=42024
The vectorizer is creating shuffles of concat like this:
%63 = shufflevector <4 x i64> %x, <4 x i64> undef, <8 x i32> <i32 0, i32
1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%64 = shufflevector <8 x i64> %63, <8 x i64> undef, <8 x i32> <i32 0,
i32 4, i32 1, i32 5, i32 2, i32 6, i32 3, i32 7>
That might be fixable in the vectorizers, but we're not allowed to fold
that into a single shuffle in instcombine, so we should have a backend
backstop to convert that into the likely simpler form:
%64 = shufflevector <4 x i64> %x, <4 x i64> undef, <8 x i32> <i32 0, i32
0, i32 1, i32 1, i32 2, i32 2, i32 3, i32 3>
Differential Revision: https://reviews.llvm.org/D72300
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 3c7f740f284274636db72fb84e563bd5b55c8eb8 by sam.parker
[TypePromotion] Use SetVectors instead of PtrSets
Remove the chance of non-deterministic insertion of zexts of the sources
by using a SetVector instead of SmallPtrSet. Do the same for sinks for
consistency and to negate the small issue from possibly happening. The
SafeWrap instructions are now also stored in a SmallVector. The
IRPromoter members of these structures have been changed to references.
Differential Revision: https://reviews.llvm.org/D72322
The file was modifiedllvm/lib/CodeGen/TypePromotion.cpp
Commit e334a3a60f1161e11191ddcc1ba2b16b08db03bd by hans
[docs] NFC: Fix typos in documents
"the the" -> "the"
"an" -> "a"
Patch by Kazuaki Ishizaki <ishizaki@jp.ibm.com>!
Differential revision: https://reviews.llvm.org/D72091
The file was modifiedllvm/docs/AMDGPUUsage.rst
The file was modifiedllvm/docs/Passes.rst
The file was modifiedllvm/docs/GlobalISel/GenericOpcode.rst
The file was modifiedllvm/docs/ORCv2.rst
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/docs/Atomics.rst
The file was modifiedllvm/docs/HowToBuildWithPGO.rst
The file was modifiedllvm/docs/SourceLevelDebugging.rst
The file was modifiedllvm/docs/Frontend/PerformanceTips.rst
Commit a428386d4a805f94299e5013805ddd4a2114f5f5 by arsenm2
AMDGPU/GlobalISel: Partially fix llvm.amdgcn.kill pattern import
Tests deferred since the existing DAG test depends on some other
operations, but isn't far from working as-is.
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
Commit f26ed6e47cb8b080c236d11c4942a12265180084 by arsenm2
llc: Change behavior of -mcpu with existing attribute
Don't overwrite existing target-cpu attributes.
I've often found the replacement behavior annoying, and this is
inconsistent with how the fast math command line flags interact with the
function attributes.
Does not yet change target-features, since I think that should behave as
a concatenation.
The file was modifiedllvm/include/llvm/CodeGen/CommandFlags.inc
The file was modifiedllvm/test/CodeGen/MIR/AMDGPU/llc-target-cpu-attr-from-cmdline-ir.mir
The file was modifiedllvm/test/DebugInfo/COFF/inlining-files.ll
The file was modifiedllvm/test/CodeGen/X86/avoid-sfb-overlaps.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/tail_folding_and_assume_safety.ll
The file was modifiedllvm/test/tools/llvm-objdump/AMDGPU/source-lines.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-atomic-insert-end.mir
The file was modifiedllvm/test/DebugInfo/COFF/inlining-header.ll
The file was modifiedllvm/test/CodeGen/X86/avoid-sfb.ll
The file was modifiedllvm/test/Other/opt-override-mcpu-mattr.ll
The file was modifiedllvm/test/CodeGen/X86/llc-override-mcpu-mattr.ll
Commit e130eef58814d12b0490033fbedcf75db8a4f148 by Tim Northover
OpaquePtr: print byval types containing anonymous types correctly.
Attribute::getAsString doesn't have enough information to print
anonymous Module-level types correctly, so they come back as "%type
0xabcd". This results in broken IR when printing as text.
Instead, print type-attributes (currently just byval) using the
TypePrinting infrastructure available in AsmWriter. This only applies to
function argument attributes.
The file was modifiedllvm/lib/IR/AsmWriter.cpp
The file was modifiedllvm/test/Assembler/byval-type-attr.ll
Commit 9150d6bd738a3d68ee1597751a874913e04b49d8 by arsenm2
AMDGPU/GlobalISel: Select llvm.amdgcn.wqm.vote
The file was modifiedllvm/lib/Target/AMDGPU/SOPInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.vote.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.wqm.vote.ll
Commit e699c03c9be4839f03dcc3a7fa86a44594e80dcf by arsenm2
AMDGPU/GlobalISel: Fix import of s_abs_i32 pattern
The file was modifiedllvm/lib/Target/AMDGPU/SOPInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-abs.mir
Commit f8962571f70ad955d2da40b470a7cd246f19db23 by spatel
[InstCombine] try to pull 'not' of select into compare operands
not (select ?, (cmp TPred, ?, ?), (cmp FPred, ?, ?) -->
    select ?, (cmp TPred', ?, ?), (cmp FPred', ?, ?)
If both sides of the select are cmps, we can remove an instruction. The
case where only side is a cmp is deferred to a possible follow-on patch.
We have a more general 'isFreeToInvert' analysis, but I'm not seeing a
way to use that more widely without inducing infinite looping
(opposing transforms). Here, we flip the compare predicates directly, so
we should not have any danger by creating extra intermediate 'not' ops.
Alive proofs: https://rise4fun.com/Alive/jKa
Name: both select values are compares - invert predicates
%tcmp = icmp sle i32 %x, %y
%fcmp = icmp ugt i32 %z, %w
%sel = select i1 %cond, i1 %tcmp, i1 %fcmp
%not = xor i1 %sel, true
=>
%tcmp_not = icmp sgt i32 %x, %y
%fcmp_not = icmp ule i32 %z, %w
%not = select i1 %cond, i1 %tcmp_not, i1 %fcmp_not
Name: false val is compare - invert/not
%fcmp = icmp ugt i32 %z, %w
%sel = select i1 %cond, i1 %tcmp, i1 %fcmp
%not = xor i1 %sel, true
=>
%tcmp_not = xor i1 %tcmp, -1
%fcmp_not = icmp ule i32 %z, %w
%not = select i1 %cond, i1 %tcmp_not, i1 %fcmp_not
Differential Revision: https://reviews.llvm.org/D72007
The file was modifiedllvm/test/Transforms/InstCombine/not.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit 9daa44c9935053508b38d0203ac47130c8156b02 by medismail.bennani
Remove extraneous spaces
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
Commit 78b30a54c97882740d5b12a85247bf1d2e86f0e2 by arsenm2
AMDGPU/GlobalISel: Fix readfirstlane pattern import
The imm folding optimization pattern failed to import. The instruction
pattern was already working, but failing to fail on SGPR inputs.
The file was modifiedllvm/lib/Target/AMDGPU/VOP1Instructions.td
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.readfirstlane.mir