[all-commits] [llvm/llvm-project] e21b39: [lldb] Group ABI plugins
plabath via All-commits
all-commits at lists.llvm.org
Fri Feb 7 09:58:52 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: e21b39a86dd6e8d1a5a5fe7e0286f8570732834d
https://github.com/llvm/llvm-project/commit/e21b39a86dd6e8d1a5a5fe7e0286f8570732834d
Author: Pavel Labath <labath at google.com>
Date: 2020-02-07 (Fri, 07 Feb 2020)
Changed paths:
M lldb/source/API/SystemInitializerFull.cpp
A lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
A lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.h
A lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.cpp
A lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.h
A lldb/source/Plugins/ABI/AArch64/CMakeLists.txt
A lldb/source/Plugins/ABI/ARC/ABISysV_arc.cpp
A lldb/source/Plugins/ABI/ARC/ABISysV_arc.h
A lldb/source/Plugins/ABI/ARC/CMakeLists.txt
A lldb/source/Plugins/ABI/ARM/ABIMacOSX_arm.cpp
A lldb/source/Plugins/ABI/ARM/ABIMacOSX_arm.h
A lldb/source/Plugins/ABI/ARM/ABISysV_arm.cpp
A lldb/source/Plugins/ABI/ARM/ABISysV_arm.h
A lldb/source/Plugins/ABI/ARM/CMakeLists.txt
M lldb/source/Plugins/ABI/CMakeLists.txt
A lldb/source/Plugins/ABI/Hexagon/ABISysV_hexagon.cpp
A lldb/source/Plugins/ABI/Hexagon/ABISysV_hexagon.h
A lldb/source/Plugins/ABI/Hexagon/CMakeLists.txt
R lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp
R lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h
R lldb/source/Plugins/ABI/MacOSX-arm/CMakeLists.txt
R lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp
R lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h
R lldb/source/Plugins/ABI/MacOSX-arm64/CMakeLists.txt
R lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp
R lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h
R lldb/source/Plugins/ABI/MacOSX-i386/CMakeLists.txt
A lldb/source/Plugins/ABI/Mips/ABISysV_mips.cpp
A lldb/source/Plugins/ABI/Mips/ABISysV_mips.h
A lldb/source/Plugins/ABI/Mips/ABISysV_mips64.cpp
A lldb/source/Plugins/ABI/Mips/ABISysV_mips64.h
A lldb/source/Plugins/ABI/Mips/CMakeLists.txt
A lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc.cpp
A lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc.h
A lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
A lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.h
A lldb/source/Plugins/ABI/PowerPC/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-arc/ABISysV_arc.cpp
R lldb/source/Plugins/ABI/SysV-arc/ABISysV_arc.h
R lldb/source/Plugins/ABI/SysV-arc/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp
R lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h
R lldb/source/Plugins/ABI/SysV-arm/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp
R lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h
R lldb/source/Plugins/ABI/SysV-arm64/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.cpp
R lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h
R lldb/source/Plugins/ABI/SysV-hexagon/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp
R lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.h
R lldb/source/Plugins/ABI/SysV-i386/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.cpp
R lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.h
R lldb/source/Plugins/ABI/SysV-mips/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp
R lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h
R lldb/source/Plugins/ABI/SysV-mips64/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp
R lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h
R lldb/source/Plugins/ABI/SysV-ppc/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp
R lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h
R lldb/source/Plugins/ABI/SysV-ppc64/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.cpp
R lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.h
R lldb/source/Plugins/ABI/SysV-s390x/CMakeLists.txt
R lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp
R lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h
R lldb/source/Plugins/ABI/SysV-x86_64/CMakeLists.txt
A lldb/source/Plugins/ABI/SystemZ/ABISysV_s390x.cpp
A lldb/source/Plugins/ABI/SystemZ/ABISysV_s390x.h
A lldb/source/Plugins/ABI/SystemZ/CMakeLists.txt
R lldb/source/Plugins/ABI/Windows-x86_64/ABIWindows_x86_64.cpp
R lldb/source/Plugins/ABI/Windows-x86_64/ABIWindows_x86_64.h
R lldb/source/Plugins/ABI/Windows-x86_64/CMakeLists.txt
A lldb/source/Plugins/ABI/X86/ABIMacOSX_i386.cpp
A lldb/source/Plugins/ABI/X86/ABIMacOSX_i386.h
A lldb/source/Plugins/ABI/X86/ABISysV_i386.cpp
A lldb/source/Plugins/ABI/X86/ABISysV_i386.h
A lldb/source/Plugins/ABI/X86/ABISysV_x86_64.cpp
A lldb/source/Plugins/ABI/X86/ABISysV_x86_64.h
A lldb/source/Plugins/ABI/X86/ABIWindows_x86_64.cpp
A lldb/source/Plugins/ABI/X86/ABIWindows_x86_64.h
A lldb/source/Plugins/ABI/X86/CMakeLists.txt
M lldb/tools/lldb-test/SystemInitializerTest.cpp
Log Message:
-----------
[lldb] Group ABI plugins
Summary:
There's a fair amount of code duplication between the different ABI plugins for
the same architecture (e.g. ABIMacOSX_arm & ABISysV_arm). Deduplicating this
code is not very easy at the moment because there is no good place where to put
the common code.
Instead of creating more plugins, this patch reduces their number by grouping
similar plugins into a single folder/plugin. This makes it easy to extract
common code to a (e.g.) base class, which can then live in the same folder.
The grouping is done based on the underlying llvm target for that architecture,
because the plugins already require this for their operation.
Reviewers: JDevlieghere, jasonmolenda, jfb
Subscribers: sdardis, nemanjai, mgorny, kristof.beyls, fedor.sergeev, kbarton, jrtc27, atanasyan, jsji, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74138
More information about the All-commits
mailing list