summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Labath <pavel@labath.sk>2019-05-03 07:11:43 +0000
committerPavel Labath <pavel@labath.sk>2019-05-03 07:11:43 +0000
commit759ab93e042d648b431d07f4b9677812f1c3ddc2 (patch)
treed18bb8322820bbdf4951919fd3021a8ace136852
parentd2c82e8ad0afc4862e5f60856bea07d17965ae83 (diff)
downloadbcm5719-llvm-759ab93e042d648b431d07f4b9677812f1c3ddc2.tar.gz
bcm5719-llvm-759ab93e042d648b431d07f4b9677812f1c3ddc2.zip
Revert "Initialization: move InstructionEmulation to full initialization"
This change is bogus. lldb-server definitely uses instruction emulation on some architectures. llvm-svn: 359862
-rw-r--r--lldb/source/API/SystemInitializerFull.cpp13
-rw-r--r--lldb/source/Initialization/CMakeLists.txt3
-rw-r--r--lldb/source/Initialization/SystemInitializerCommon.cpp11
3 files changed, 14 insertions, 13 deletions
diff --git a/lldb/source/API/SystemInitializerFull.cpp b/lldb/source/API/SystemInitializerFull.cpp
index 913227c3f64..8e5e1a865ed 100644
--- a/lldb/source/API/SystemInitializerFull.cpp
+++ b/lldb/source/API/SystemInitializerFull.cpp
@@ -43,10 +43,7 @@
#include "Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h"
#include "Plugins/DynamicLoader/Static/DynamicLoaderStatic.h"
#include "Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.h"
-#include "Plugins/Instruction/ARM/EmulateInstructionARM.h"
#include "Plugins/Instruction/ARM64/EmulateInstructionARM64.h"
-#include "Plugins/Instruction/MIPS/EmulateInstructionMIPS.h"
-#include "Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h"
#include "Plugins/Instruction/PPC64/EmulateInstructionPPC64.h"
#include "Plugins/InstrumentationRuntime/ASan/ASanRuntime.h"
#include "Plugins/InstrumentationRuntime/MainThreadChecker/MainThreadCheckerRuntime.h"
@@ -205,13 +202,8 @@ llvm::Error SystemInitializerFull::Initialize() {
SymbolFileSymtab::Initialize();
UnwindAssemblyInstEmulation::Initialize();
UnwindAssembly_x86::Initialize();
-
- EmulateInstructionARM::Initialize();
EmulateInstructionARM64::Initialize();
- EmulateInstructionMIPS::Initialize();
- EmulateInstructionMIPS64::Initialize();
EmulateInstructionPPC64::Initialize();
-
SymbolFileDWARFDebugMap::Initialize();
ItaniumABILanguageRuntime::Initialize();
AppleObjCRuntimeV2::Initialize();
@@ -312,13 +304,8 @@ void SystemInitializerFull::Terminate() {
SymbolFileSymtab::Terminate();
UnwindAssembly_x86::Terminate();
UnwindAssemblyInstEmulation::Terminate();
-
- EmulateInstructionARM::Terminate();
EmulateInstructionARM64::Terminate();
- EmulateInstructionMIPS::Terminate();
- EmulateInstructionMIPS64::Terminate();
EmulateInstructionPPC64::Terminate();
-
SymbolFileDWARFDebugMap::Terminate();
ItaniumABILanguageRuntime::Terminate();
AppleObjCRuntimeV2::Terminate();
diff --git a/lldb/source/Initialization/CMakeLists.txt b/lldb/source/Initialization/CMakeLists.txt
index c1a167826f7..7e8e26834aa 100644
--- a/lldb/source/Initialization/CMakeLists.txt
+++ b/lldb/source/Initialization/CMakeLists.txt
@@ -14,6 +14,9 @@ add_lldb_library(lldbInitialization
LINK_LIBS
lldbCore
lldbHost
+ lldbPluginInstructionARM
+ lldbPluginInstructionMIPS
+ lldbPluginInstructionMIPS64
lldbPluginProcessGDBRemote
${EXTRA_PLUGINS}
${LLDB_SYSTEM_LIBS}
diff --git a/lldb/source/Initialization/SystemInitializerCommon.cpp b/lldb/source/Initialization/SystemInitializerCommon.cpp
index 75679560441..6fcdad88485 100644
--- a/lldb/source/Initialization/SystemInitializerCommon.cpp
+++ b/lldb/source/Initialization/SystemInitializerCommon.cpp
@@ -8,6 +8,9 @@
#include "lldb/Initialization/SystemInitializerCommon.h"
+#include "Plugins/Instruction/ARM/EmulateInstructionARM.h"
+#include "Plugins/Instruction/MIPS/EmulateInstructionMIPS.h"
+#include "Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h"
#include "Plugins/Process/gdb-remote/ProcessGDBRemoteLog.h"
#include "lldb/Host/FileSystem.h"
#include "lldb/Host/Host.h"
@@ -96,6 +99,10 @@ llvm::Error SystemInitializerCommon::Initialize() {
process_gdb_remote::ProcessGDBRemoteLog::Initialize();
+ EmulateInstructionARM::Initialize();
+ EmulateInstructionMIPS::Initialize();
+ EmulateInstructionMIPS64::Initialize();
+
#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__)
ProcessPOSIXLog::Initialize();
#endif
@@ -110,6 +117,10 @@ void SystemInitializerCommon::Terminate() {
static Timer::Category func_cat(LLVM_PRETTY_FUNCTION);
Timer scoped_timer(func_cat, LLVM_PRETTY_FUNCTION);
+ EmulateInstructionARM::Terminate();
+ EmulateInstructionMIPS::Terminate();
+ EmulateInstructionMIPS64::Terminate();
+
#if defined(_WIN32)
ProcessWindowsLog::Terminate();
#endif
OpenPOWER on IntegriCloud