AbortedChanges

Summary

  1. [X86] Teach lower1BitShuffle to match KSHIFTR that doesn't use Zeroable (details)
  2. [X86] Fix the lower1BitShuffle code added in r369215 to correctly pass (details)
  3. [clangd] Update features table in the docs with links to LSP extension (details)
  4. [llvm-objcopy][MachO] Support load commands used in executables/shared (details)
  5. [llvm-objcopy][MachO] Implement a layout algorithm for executables (details)
  6. [X86] Teach lower1BitShuffle to match right shifts with upper zero (details)
  7. [MC] Don't emit .symver redirected symbols to the symbol table (details)
  8. Revert r369230 and r369231 (details)
  9. [lldb] Remove unused inheritance in RegularExpression (details)
  10. Revert [Attributor] Fix: Do not partially resolve returned calls. (details)
  11. [lldb][NFC] Address review comments to StringList for-loop support (details)
Commit 269c6b1c15a7d105aa39de728e293614de18f973 by craig.topper
[X86] Teach lower1BitShuffle to match KSHIFTR that doesn't use Zeroable
and only relies on undef.
This allows us to widen the type when the KSHIFTR instruction doesn't
exist for the type. If we need to shift in zeroes into the upper
elements we would need more work to guarantee zeroes when widening.
llvm-svn: 369227
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/kshift.ll (diff)
Commit e47437a6effcbfce191f6a37f6e421624426201e by craig.topper
[X86] Fix the lower1BitShuffle code added in r369215 to correctly pass
the widened vector to the KSHIFT node.
Not sure how to test this as we have tests that exercise this code, but
nothing failed for the types not matching. Since all the k-registers use
equivalent register classes everything just ends up working.
llvm-svn: 369228
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
Commit dfe5f3eb0a0055244d019ede9214e7df8b7a9cca by zeratul976
[clangd] Update features table in the docs with links to LSP extension
proposals
Also update the semantic coloring entry to reflect it being supported in
clangd now.
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65373
llvm-svn: 369229
The file was modifiedclang-tools-extra/docs/clangd/Features.rst (diff)
Commit 4a198a7f990812f6a64ecb2d20d3503c66b5dea2 by nuta
[llvm-objcopy][MachO] Support load commands used in executables/shared
libraries
Summary: This patch implements copying some load commands that appear in
executables/shared libraries such as the indirect symbol table.
I don't add tests intentionally because this patch is incomplete: we
need a layout algorithm for executables/shared libraries. I'll submit it
as a separate patch with tests.
Reviewers: alexshap, rupprecht, jhenderson, compnerd
Reviewed By: alexshap
Subscribers: abrachet, mgorny, mgrang, MaskRay, mtrent, jakehehrlich,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63395
llvm-svn: 369230
The file was addedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.h (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.h (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp (diff)
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt (diff)
The file was addedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
Commit dee9546b8f8386223769e96becc2e24ddcc39de7 by nuta
[llvm-objcopy][MachO] Implement a layout algorithm for executables
Summary: The layout algorithm for relocatable objects and for executable
are somewhat different. This patch implements the latter one based on
the algorithm in LLD (MachOFileLayout).
Reviewers: alexshap, rupprecht, jhenderson
Reviewed By: alexshap
Subscribers: jakehehrlich, abrachet, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65539
llvm-svn: 369231
The file was addedllvm/test/tools/llvm-objcopy/MachO/basic-executable-copy.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp (diff)
Commit ebb7ddc6330b28b8c7e53d4c68d3684c127a41c1 by craig.topper
[X86] Teach lower1BitShuffle to match right shifts with upper zero
elements on types that don't natively support KSHIFT.
We can support these by widening to a supported type, then shifting all
the way to the left and then back to the right to ensure that we shift
in zeroes.
llvm-svn: 369232
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/kshift.ll (diff)
Commit 38426c114f6e50f8638bdd656f2f423151bc8eca by maskray
[MC] Don't emit .symver redirected symbols to the symbol table
GNU as keeps the original symbol in the symbol table for defined @ and
@@, but suppresses it in other cases (@@@ or undefined). The original
symbol is usually undesired: In a shared object, the original symbol can
be localized with a version script, but it is hard to remove/localize in
an archive:
1) a post-processing step removes the undesired original symbol 2)
consumers (executable) of the archive are built with the
  version script
Moreover, it can cause linker issues like binutils PR/18703 if the
original symbol name and the base name of the versioned symbol is the
same (both ld.bfd and gold have some code to work around defined @ and
@@). In lld, if it sees f and f@v1:
  --version-script =(printf 'v1 {};') => f and f@v1
--version-script =(printf 'v1 { f; };') => f@v1 and f@@v1
It can be argued that @@@ added on 2000-11-13 corrected the @ and @@
mistake.
This patch catches some more multiple version errors (defined @ and @@),
and consistently suppress the original symbol. This addresses all the
problems listed above.
If the user wants other aliases to the versioned symbol, they can copy
the original symbol to other symbol names with .set directive, e.g.
    .symver f, f@v1  # emit f@v1 but not f into .symtab
   .set f_impl, f   # emit f_impl into .symtab
llvm-svn: 369233
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp (diff)
The file was modifiedllvm/test/MC/ARM/arm-elf-symver.s (diff)
The file was modifiedllvm/test/LTO/X86/symver-asm.ll (diff)
The file was removedllvm/test/MC/ELF/multiple-different-symver.s
The file was modifiedllvm/test/LTO/X86/symver-asm2.ll (diff)
The file was modifiedllvm/test/MC/ELF/symver.s (diff)
The file was addedllvm/test/MC/ELF/symver-multiple-version.s
The file was modifiedllvm/test/MC/PowerPC/ppc64-localentry-symbols.s (diff)
Commit 1e335611adc863201a3522705d30b989e76d2b66 by nuta
Revert r369230 and r369231
Looks these commits break CI builds:
-
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-gn/builds/4159
This commit reverts r369230 and r369231 (git coommit: 4a198a7 and
dee9546).
llvm-svn: 369234
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.h (diff)
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt (diff)
The file was removedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
The file was removedllvm/test/tools/llvm-objcopy/MachO/basic-executable-copy.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h (diff)
The file was removedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp (diff)
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.h (diff)
Commit 0697bcd1276111e2917b090cde8535ee2f61fbe0 by jan.kratochvil
[lldb] Remove unused inheritance in RegularExpression
D66174 left inherited llvm::Regex which is now a member variable there.
Approved as a part of: https://reviews.llvm.org/D66392#1634575
llvm-svn: 369235
The file was modifiedlldb/include/lldb/Utility/RegularExpression.h (diff)
Commit b1752f670f3d6393306dd5d37546b6e23384d8a2 by dlj
Revert [Attributor] Fix: Do not partially resolve returned calls.
This reverts r369160 (git commit
f72d9b1c97b41fff48ad1eecbba59a29c171bff4)
r369160 caused some tests to fail under UBSAN. See thread on
llvm-commits.
llvm-svn: 369236
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp (diff)
Commit 21599876be328ff6b5c6cf09544ade7e337cb48d by Raphael Isemann
[lldb][NFC] Address review comments to StringList for-loop support
llvm-svn: 369237
The file was modifiedlldb/include/lldb/Utility/StringList.h (diff)
The file was modifiedlldb/source/Utility/StringList.cpp (diff)
The file was modifiedlldb/unittests/Utility/StringListTest.cpp (diff)
The file was modifiedlldb/source/Commands/CommandObjectType.cpp (diff)