SuccessChanges

Summary

  1. libDebugInfoDWARF: Don't try to parse loclist[.dwo] headers when parsing debug_info[.dwo] (details)
  2. [LoopExtract][NewPM] Port -loop-extract to NPM (details)
  3. [test][NewPM] Pin -mergereturn tests to legacy PM (details)
  4. [AMDGPU] Cleanup memory legalizer interfaces (details)
  5. Revert "[clang] Improve handling of physical registers in inline assembly operands." (details)
  6. [lldb] Unconditionally strip the `.py(c)` extension when loading a module (details)
  7. [lldb] Remove lexical block and fix formatting LoadScriptingModule (NFC) (details)
  8. [ARM.td] Make instruction definitions visible to sched models (details)
  9. [libcxxabi,libunwind] support running tests in standalone mode (details)
  10. [test][lld] Mark TLS tests as REQUIRES: x86. (details)
Commit 9670a45c980c371c5ece8047a00b8b2abec73823 by dblaikie
libDebugInfoDWARF: Don't try to parse loclist[.dwo] headers when parsing debug_info[.dwo]

There's no way to know whether there's a loclist contribution to parse
if there's no loclistx encoding - and if there is one, there's no need
to walk back from the loclist_base (or, uin the case of
info.dwo/loclist.dwo - starting at 0 in the contribution) to parse the
header, instead rely on the DWARF32/64 and address size in the CU
that's already available.

This would come up in split DWARF (non-split wouldn't try to read a
loclist header in the absence of a loclist_base) when one unit had
location lists and another does not (because the loclists.dwo section
would be non-empty in that case - in the case where it's empty the
parsing would silently skip).

Simplify the testing a bit, rather than needing a whole dwp, etc - by
creating a malformed loclists.dwo section (and use single file Split
DWARF) that would trip up any attempt to parse it - but no attempt
should be made.
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was addedllvm/test/tools/llvm-dwarfdump/X86/debug_loclists_unused_invalid.s
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
Commit 518ec05a104a237b6ccae20e1e84c2b462fc3ca1 by aeubanks
[LoopExtract][NewPM] Port -loop-extract to NPM

-loop-extract-single is just -loop-extract on one loop.

-loop-extract depended on -break-crit-edges and -loop-simplify in the
legacy PM, but the NPM doesn't allow specifying pass dependencies like
that, so manually add those passes to the RUN lines where necessary.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D89016
The file was modifiedllvm/test/Transforms/CodeExtractor/2004-03-14-NoSwitchSupport.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/2004-03-18-InvokeHandling.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/2004-03-13-LoopExtractorCrash.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/LoopExtractor.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/2004-03-14-DominanceProblem.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/BlockAddressSelfReference.ll
The file was addedllvm/include/llvm/Transforms/IPO/LoopExtractor.h
The file was modifiedllvm/test/Transforms/CodeExtractor/LoopExtractor_min_wrapper.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Transforms/IPO/LoopExtractor.cpp
The file was modifiedllvm/test/Transforms/CodeExtractor/BlockAddressReference.ll
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/test/Transforms/CodeExtractor/LoopExtractor_crash.ll
The file was modifiedllvm/test/Transforms/CodeExtractor/2004-03-17-MissedLiveIns.ll
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Transforms/IPO/IPO.cpp
The file was modifiedllvm/test/Transforms/CodeExtractor/2004-03-17-UpdatePHIsOutsideRegion.ll
Commit 4b6e3ad9b40111852aa717fee2768f964b6d70a7 by aeubanks
[test][NewPM] Pin -mergereturn tests to legacy PM

Looks like this pass isn't really used and hasn't been worked on in a
loooong time.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D89010
The file was modifiedllvm/test/Transforms/CodeExtractor/LoopExtractor_infinite.ll
The file was modifiedllvm/test/Transforms/UnifyFunctionExitNodes/unreachable-blocks-status.ll
Commit 907d799070c351b3da0b0f4b9669f230d46e6d8d by Tony.Tye
[AMDGPU] Cleanup memory legalizer interfaces

- Rename interfaces to be in terms of acquire and release.
- Improve comments.

Differential Revision: https://reviews.llvm.org/D89355
The file was modifiedllvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
Commit 625fa47617022b2d1ed7b940f9621162874175ee by paulsson
Revert "[clang] Improve handling of physical registers in inline assembly operands."

This reverts commit c78da037783bda0f27f4d82060149166e6f0c796.

Temporarily reverted due to https://bugs.llvm.org/show_bug.cgi?id=47837.
The file was modifiedclang/test/CodeGen/systemz-inline-asm.c
The file was modifiedclang/lib/CodeGen/CGStmt.cpp
The file was removedclang/test/CodeGen/systemz-inline-asm-02.c
Commit 1197ee35b84e1fe1c1884b3228b95351719fbb09 by Jonas Devlieghere
[lldb] Unconditionally strip the `.py(c)` extension when loading a module

Currently we only strip the Python extension when the file exists on
disk because we assumed that if it didn't exist it was a module.
However, with the change from D89334 this is no longer the case as we
want to be able to import a relative path to a .py as a module. Since we
always import a scripting module as a "python module" we should always
strip the extension if present.

Differential revision: https://reviews.llvm.org/D89352
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Commit 3b33b41604784f903c7c5c38665d75da93dbf805 by Jonas Devlieghere
[lldb] Remove lexical block and fix formatting LoadScriptingModule (NFC)
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Commit 2ad82b0ed1b4ad9e6ac462d6fe9b1247186861e5 by eleviant
[ARM.td] Make instruction definitions visible to sched models

Differential revision: https://reviews.llvm.org/D89308
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
The file was modifiedllvm/lib/Target/ARM/ARM.td
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA9.td
Commit 8c03fdf34a659925a3f09c8f54016e47ea1c7519 by dominik.montada
[libcxxabi,libunwind] support running tests in standalone mode

Remove check for standalone and shared library mode in libcxxabi to
allow including tests in said mode. This check prevented running the
tests in standalone mode with static libraries, which is the case for
baremetal targets.

Fix check-unwind target trying to use a non-existent llvm-lit executable
in standalone mode. Copy the HandleOutOfTreeLLVM logic from libcxxabi to
libunwind in order to make the tests work in standalone mode.

Reviewed By: ldionne, #libc_abi, #libc

Differential Revision: https://reviews.llvm.org/D86540
The file was modifiedlibcxx/CMakeLists.txt
The file was removedlibcxxabi/cmake/Modules/HandleOutOfTreeLLVM.cmake
The file was modifiedlibunwind/test/CMakeLists.txt
The file was modifiedlibcxxabi/CMakeLists.txt
The file was modifiedlibcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake
The file was modifiedlibunwind/CMakeLists.txt
Commit dc128e5968ccc632f7875ece639b0d2c94b170a6 by me
[test][lld] Mark TLS tests as REQUIRES: x86.

Fixes http://lab.llvm.org:8011/#/builders/119/builds/92
The file was modifiedlld/test/COFF/tls-alignment-64.ll
The file was modifiedlld/test/COFF/tls-alignment-32.ll