From cacde7df6dc9d8c94401b7e26714dbd7383bcc15 Mon Sep 17 00:00:00 2001 From: Todd Fiala Date: Sat, 27 Sep 2014 16:54:22 +0000 Subject: [PATCH] Enable llgs to build against experimental Android AOSP lldb/llvm/clang/compiler-rt repos. See http://reviews.llvm.org/D5495 for more details. These are changes that are part of an effort to support building llgs, within the AOSP source tree, using the Android.mk build system, when using the llvm/clang/lldb git repos from AOSP replaced with the experimental ones currently in github.com/tfiala/aosp-{llvm,clang,lldb,compiler-rt}. llvm-svn: 218568 --- lldb/include/lldb/Core/IOHandler.h | 4 ++ lldb/include/lldb/Host/linux/Config.h | 2 + lldb/source/Core/IOHandler.cpp | 48 +++++++++++++++++-- lldb/source/Host/common/Host.cpp | 32 ++++++++++++- lldb/source/Host/common/Socket.cpp | 7 +++ lldb/source/Host/linux/Host.cpp | 6 +++ lldb/source/Host/posix/HostInfoPosix.cpp | 4 ++ lldb/source/Host/posix/HostThreadPosix.cpp | 4 ++ .../source/Interpreter/CommandInterpreter.cpp | 2 + .../Plugins/Process/Linux/LinuxThread.h | 2 +- .../Process/Linux/NativeProcessLinux.cpp | 9 +++- .../Linux/NativeRegisterContextLinux_x86_64.h | 4 +- .../Plugins/Process/Linux/ProcessLinux.cpp | 2 +- .../Plugins/Process/Linux/ProcessLinux.h | 4 +- .../Plugins/Process/Linux/ProcessMonitor.cpp | 11 ++++- .../Plugins/Process/POSIX/POSIXThread.cpp | 17 ++++--- .../Plugins/Process/POSIX/POSIXThread.h | 2 +- .../Plugins/Process/POSIX/ProcessPOSIX.cpp | 2 +- ...gisterContextPOSIXProcessMonitor_arm64.cpp | 4 +- ...isterContextPOSIXProcessMonitor_mips64.cpp | 4 +- ...RegisterContextPOSIXProcessMonitor_x86.cpp | 5 +- .../Process/Utility/RegisterInfos_arm64.h | 4 +- .../RegisterContextPOSIXCore_mips64.cpp | 2 +- .../RegisterContextPOSIXCore_x86_64.cpp | 2 +- .../Process/elf-core/ThreadElfCore.cpp | 8 ++-- .../Process/gdb-remote/ProcessGDBRemote.cpp | 1 - lldb/source/Target/ProcessLaunchInfo.cpp | 4 -- lldb/source/Target/Thread.cpp | 2 +- lldb/tools/lldb-gdbserver/lldb-gdbserver.cpp | 2 - 29 files changed, 153 insertions(+), 47 deletions(-) diff --git a/lldb/include/lldb/Core/IOHandler.h b/lldb/include/lldb/Core/IOHandler.h index f477ebd48007..3b1628d83c51 100644 --- a/lldb/include/lldb/Core/IOHandler.h +++ b/lldb/include/lldb/Core/IOHandler.h @@ -457,6 +457,7 @@ namespace lldb_private { SetBaseLineNumber (uint32_t line); private: +#ifndef LLDB_DISABLE_LIBEDIT static LineStatus LineCompletedCallback (Editline *editline, StringList &lines, @@ -471,9 +472,12 @@ namespace lldb_private { int max_matches, StringList &matches, void *baton); +#endif protected: +#ifndef LLDB_DISABLE_LIBEDIT std::unique_ptr m_editline_ap; +#endif IOHandlerDelegate &m_delegate; std::string m_prompt; uint32_t m_base_line_number; // If non-zero, then show line numbers in prompt diff --git a/lldb/include/lldb/Host/linux/Config.h b/lldb/include/lldb/Host/linux/Config.h index 49d97dd5793c..a72bd271db64 100644 --- a/lldb/include/lldb/Host/linux/Config.h +++ b/lldb/include/lldb/Host/linux/Config.h @@ -19,7 +19,9 @@ #define LLDB_CONFIG_TERMIOS_SUPPORTED 1 +#ifndef __ANDROID__ #define LLDB_CONFIG_TILDE_RESOLVES_TO_USER 1 +#endif //#define LLDB_CONFIG_DLOPEN_RTLD_FIRST_SUPPORTED 1 diff --git a/lldb/source/Core/IOHandler.cpp b/lldb/source/Core/IOHandler.cpp index add3ad8c5ba3..76e56641bf89 100644 --- a/lldb/source/Core/IOHandler.cpp +++ b/lldb/source/Core/IOHandler.cpp @@ -19,7 +19,9 @@ #include "lldb/Core/State.h" #include "lldb/Core/StreamFile.h" #include "lldb/Core/ValueObjectRegister.h" +#ifndef LLDB_DISABLE_LIBEDIT #include "lldb/Host/Editline.h" +#endif #include "lldb/Interpreter/CommandCompletions.h" #include "lldb/Interpreter/CommandInterpreter.h" #include "lldb/Symbol/Block.h" @@ -339,7 +341,9 @@ IOHandlerEditline::IOHandlerEditline (Debugger &debugger, uint32_t line_number_start, IOHandlerDelegate &delegate) : IOHandler (debugger, input_sp, output_sp, error_sp, flags), +#ifndef LLDB_DISABLE_LIBEDIT m_editline_ap (), +#endif m_delegate (delegate), m_prompt (), m_base_line_number (line_number_start), @@ -347,6 +351,7 @@ IOHandlerEditline::IOHandlerEditline (Debugger &debugger, { SetPrompt(prompt); +#ifndef LLDB_DISABLE_LIBEDIT bool use_editline = false; #ifndef _MSC_VER @@ -369,24 +374,28 @@ IOHandlerEditline::IOHandlerEditline (Debugger &debugger, m_editline_ap->SetLineCompleteCallback (LineCompletedCallback, this); m_editline_ap->SetAutoCompleteCallback (AutoCompleteCallback, this); } - +#endif } IOHandlerEditline::~IOHandlerEditline () { +#ifndef LLDB_DISABLE_LIBEDIT m_editline_ap.reset(); +#endif } bool IOHandlerEditline::GetLine (std::string &line, bool &interrupted) { +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) { return m_editline_ap->GetLine(line, interrupted).Success(); } else { +#endif line.clear(); FILE *in = GetInputFILE(); @@ -452,10 +461,13 @@ IOHandlerEditline::GetLine (std::string &line, bool &interrupted) SetIsDone(true); } return false; +#ifndef LLDB_DISABLE_LIBEDIT } +#endif } +#ifndef LLDB_DISABLE_LIBEDIT LineStatus IOHandlerEditline::LineCompletedCallback (Editline *editline, StringList &lines, @@ -487,14 +499,24 @@ IOHandlerEditline::AutoCompleteCallback (const char *current_line, matches); return 0; } +#endif const char * IOHandlerEditline::GetPrompt () { +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) + { return m_editline_ap->GetPrompt (); - else if (m_prompt.empty()) - return NULL; + } + else + { +#endif + if (m_prompt.empty()) + return NULL; +#ifndef LLDB_DISABLE_LIBEDIT + } +#endif return m_prompt.c_str(); } @@ -505,8 +527,10 @@ IOHandlerEditline::SetPrompt (const char *p) m_prompt = p; else m_prompt.clear(); +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) m_editline_ap->SetPrompt (m_prompt.empty() ? NULL : m_prompt.c_str()); +#endif return true; } @@ -514,14 +538,17 @@ void IOHandlerEditline::SetBaseLineNumber (uint32_t line) { m_base_line_number = line; +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) m_editline_ap->ShowLineNumbers (true, line); +#endif } bool IOHandlerEditline::GetLines (StringList &lines, bool &interrupted) { bool success = false; +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) { std::string end_token; @@ -529,6 +556,7 @@ IOHandlerEditline::GetLines (StringList &lines, bool &interrupted) } else { +#endif LineStatus lines_status = LineStatus::Success; Error error; @@ -567,7 +595,9 @@ IOHandlerEditline::GetLines (StringList &lines, bool &interrupted) m_delegate.IOHandlerLinesUpdated(*this, lines, UINT32_MAX, error); success = lines.GetSize() > 0; +#ifndef LLDB_DISABLE_LIBEDIT } +#endif return success; } @@ -619,20 +649,24 @@ IOHandlerEditline::Run () void IOHandlerEditline::Hide () { +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) m_editline_ap->Hide(); +#endif } void IOHandlerEditline::Refresh () { +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) { m_editline_ap->Refresh(); } else { +#endif const char *prompt = GetPrompt(); if (prompt && prompt[0]) { @@ -643,14 +677,18 @@ IOHandlerEditline::Refresh () ::fflush(out); } } +#ifndef LLDB_DISABLE_LIBEDIT } +#endif } void IOHandlerEditline::Cancel () { +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) m_editline_ap->Interrupt (); +#endif } bool @@ -660,16 +698,20 @@ IOHandlerEditline::Interrupt () if (m_delegate.IOHandlerInterrupt(*this)) return true; +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) return m_editline_ap->Interrupt(); +#endif return false; } void IOHandlerEditline::GotEOF() { +#ifndef LLDB_DISABLE_LIBEDIT if (m_editline_ap) m_editline_ap->Interrupt(); +#endif } // we may want curses to be disabled for some builds diff --git a/lldb/source/Host/common/Host.cpp b/lldb/source/Host/common/Host.cpp index 828a5b7d34ba..09376d2d4430 100644 --- a/lldb/source/Host/common/Host.cpp +++ b/lldb/source/Host/common/Host.cpp @@ -27,8 +27,8 @@ #include #endif -#if !defined (__GNU__) && !defined (_WIN32) -// Does not exist under GNU/HURD or Windows +#if !defined (__GNU__) && !defined (_WIN32) && !defined (__ANDROID__) +// Does not exist under GNU/HURD, or Windows, or Android #include #endif @@ -39,7 +39,9 @@ #endif #if defined (__linux__) || defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined (__APPLE__) || defined(__NetBSD__) +#ifndef __ANDROID__ #include +#endif #include #include #endif @@ -127,6 +129,7 @@ Host::StartMonitoringChildProcess(Host::MonitorChildProcessCallback callback, vo return ThreadLauncher::LaunchThread(thread_name, MonitorChildProcessThreadFunction, info_ptr, NULL); } +#ifndef __ANDROID__ //------------------------------------------------------------------ // Scoped class that will disable thread canceling when it is // constructed, and exception safely restore the previous value it @@ -154,6 +157,7 @@ public: private: int m_old_state; // Save the old cancelability state. }; +#endif static thread_result_t MonitorChildProcessThreadFunction (void *arg) @@ -187,10 +191,14 @@ MonitorChildProcessThreadFunction (void *arg) log->Printf("%s ::wait_pid (pid = %" PRIi32 ", &status, options = %i)...", function, pid, options); // Wait for all child processes +#ifndef __ANDROID__ ::pthread_testcancel (); +#endif // Get signals from all children with same process group of pid const ::pid_t wait_pid = ::waitpid (pid, &status, options); +#ifndef __ANDROID__ ::pthread_testcancel (); +#endif if (wait_pid == -1) { @@ -236,7 +244,9 @@ MonitorChildProcessThreadFunction (void *arg) // Scope for pthread_cancel_disabler { +#ifndef __ANDROID__ ScopedPThreadCancelDisabler pthread_cancel_disabler; +#endif log = lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_PROCESS); if (log) @@ -464,12 +474,16 @@ FileSpec Host::GetModuleFileSpecForHostAddress (const void *host_addr) { FileSpec module_filespec; +#ifndef __ANDROID__ Dl_info info; if (::dladdr (host_addr, &info)) { if (info.dli_fname) module_filespec.SetFile(info.dli_fname, true); } +#else + assert(false && "dladdr() not supported on Android"); +#endif return module_filespec; } @@ -705,6 +719,7 @@ Host::RunShellCommand (const char *command, short Host::GetPosixspawnFlags (ProcessLaunchInfo &launch_info) { +#ifndef __ANDROID__ short flags = POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK; #if defined (__APPLE__) @@ -747,12 +762,17 @@ Host::GetPosixspawnFlags (ProcessLaunchInfo &launch_info) #endif #endif // #if defined (__APPLE__) return flags; +#else + assert(false *&& "Host::GetPosixspawnFlags() not supported on Android"); + return 0; +#endif } Error Host::LaunchProcessPosixSpawn (const char *exe_path, ProcessLaunchInfo &launch_info, ::pid_t &pid) { Error error; +#ifndef __ANDROID__ Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_HOST | LIBLLDB_LOG_PROCESS)); posix_spawnattr_t attr; @@ -955,6 +975,9 @@ Host::LaunchProcessPosixSpawn (const char *exe_path, ProcessLaunchInfo &launch_i } #endif } +#else + error.SetErrorString("Host::LaunchProcessPosixSpawn() not supported on Android"); +#endif return error; } @@ -962,6 +985,7 @@ Host::LaunchProcessPosixSpawn (const char *exe_path, ProcessLaunchInfo &launch_i bool Host::AddPosixSpawnFileAction(void *_file_actions, const FileAction *info, Log *log, Error &error) { +#ifndef __ANDROID__ if (info == NULL) return false; @@ -1024,6 +1048,10 @@ Host::AddPosixSpawnFileAction(void *_file_actions, const FileAction *info, Log * break; } return error.Success(); +#else + error.SetErrorString("Host::AddPosixSpawnFileAction() not supported on Android"); + return false; +#endif } #endif // LaunchProcedssPosixSpawn: Apple, Linux, FreeBSD and other GLIBC systems diff --git a/lldb/source/Host/common/Socket.cpp b/lldb/source/Host/common/Socket.cpp index 31e3228497ec..e0c36942a04a 100644 --- a/lldb/source/Host/common/Socket.cpp +++ b/lldb/source/Host/common/Socket.cpp @@ -40,6 +40,13 @@ typedef void * get_socket_option_arg_type; const NativeSocket Socket::kInvalidSocketValue = -1; #endif // #if defined(_WIN32) +#ifdef __ANDROID__ +// Android does not have SUN_LEN +#ifndef SUN_LEN +#define SUN_LEN(ptr) ((size_t) (((struct sockaddr_un *) 0)->sun_path) + strlen((ptr)->sun_path)) +#endif +#endif // #ifdef __ANDROID__ + Socket::Socket(NativeSocket socket, SocketProtocol protocol, bool should_close) : IOObject(eFDTypeSocket, should_close) , m_protocol(protocol) diff --git a/lldb/source/Host/linux/Host.cpp b/lldb/source/Host/linux/Host.cpp index 3d90fbb16c5c..175624dd3e50 100644 --- a/lldb/source/Host/linux/Host.cpp +++ b/lldb/source/Host/linux/Host.cpp @@ -14,7 +14,9 @@ #include #include #include +#ifndef __ANDROID__ #include +#endif // C++ Includes // Other libraries and framework includes @@ -375,6 +377,7 @@ Host::GetProcessInfo (lldb::pid_t pid, ProcessInstanceInfo &process_info) void Host::Backtrace (Stream &strm, uint32_t max_frames) { +#ifndef __ANDROID__ if (max_frames > 0) { std::vector frame_buffer (max_frames, NULL); @@ -388,6 +391,9 @@ Host::Backtrace (Stream &strm, uint32_t max_frames) ::free (strs); } } +#else + assert(false && "::backtrace() not supported on Android"); +#endif } size_t diff --git a/lldb/source/Host/posix/HostInfoPosix.cpp b/lldb/source/Host/posix/HostInfoPosix.cpp index dbbfa47f156f..849171370cb9 100644 --- a/lldb/source/Host/posix/HostInfoPosix.cpp +++ b/lldb/source/Host/posix/HostInfoPosix.cpp @@ -69,6 +69,7 @@ HostInfoPosix::LookupUserName(uint32_t uid, std::string &user_name) const char * HostInfoPosix::LookupGroupName(uint32_t gid, std::string &group_name) { +#ifndef __ANDROID__ char group_buffer[PATH_MAX]; size_t group_buffer_size = sizeof(group_buffer); struct group group_info; @@ -94,6 +95,9 @@ HostInfoPosix::LookupGroupName(uint32_t gid, std::string &group_name) } } group_name.clear(); +#else + assert(false && "getgrgid_r() not supported on Android"); +#endif return NULL; } diff --git a/lldb/source/Host/posix/HostThreadPosix.cpp b/lldb/source/Host/posix/HostThreadPosix.cpp index 4cf0c34a2676..6b1b88bb05d0 100644 --- a/lldb/source/Host/posix/HostThreadPosix.cpp +++ b/lldb/source/Host/posix/HostThreadPosix.cpp @@ -50,8 +50,12 @@ Error HostThreadPosix::Cancel() { Error error; +#ifndef __ANDROID__ int err = ::pthread_cancel(m_thread); error.SetError(err, eErrorTypePOSIX); +#else + error.SetErrorString("HostThreadPosix::Cancel() not supported on Android"); +#endif return error; } diff --git a/lldb/source/Interpreter/CommandInterpreter.cpp b/lldb/source/Interpreter/CommandInterpreter.cpp index 76261ade3b3e..b828f4037974 100644 --- a/lldb/source/Interpreter/CommandInterpreter.cpp +++ b/lldb/source/Interpreter/CommandInterpreter.cpp @@ -49,7 +49,9 @@ #include "lldb/Core/StreamFile.h" #include "lldb/Core/Timer.h" +#ifndef LLDB_DISABLE_LIBEDIT #include "lldb/Host/Editline.h" +#endif #include "lldb/Host/Host.h" #include "lldb/Host/HostInfo.h" diff --git a/lldb/source/Plugins/Process/Linux/LinuxThread.h b/lldb/source/Plugins/Process/Linux/LinuxThread.h index bcb2cfd02217..b896092b427c 100644 --- a/lldb/source/Plugins/Process/Linux/LinuxThread.h +++ b/lldb/source/Plugins/Process/Linux/LinuxThread.h @@ -11,7 +11,7 @@ #define liblldb_LinuxThread_H_ // Other libraries and framework includes -#include "POSIXThread.h" +#include "Plugins/Process/POSIX/POSIXThread.h" //------------------------------------------------------------------------------ // @class LinuxThread diff --git a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp index 20ac736e424b..c7d99b0290e4 100644 --- a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp +++ b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp @@ -19,7 +19,9 @@ #include #include #include +#ifndef __ANDROID__ #include +#endif #include #include #include @@ -58,7 +60,12 @@ #include "Plugins/Process/Utility/LinuxSignals.h" #include "NativeThreadLinux.h" #include "ProcFileReader.h" -#include "ProcessPOSIXLog.h" +#include "Plugins/Process/POSIX/ProcessPOSIXLog.h" + +#ifdef __ANDROID__ +#define __ptrace_request int +#define PT_DETACH PTRACE_DETACH +#endif #define DEBUG_PTRACE_MAXBYTES 20 diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.h b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.h index d7353c08ef42..ab47f0c287d6 100644 --- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.h +++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.h @@ -12,8 +12,8 @@ #define lldb_NativeRegisterContextLinux_x86_64_h #include "lldb/Target/NativeRegisterContextRegisterInfo.h" -#include "RegisterContext_x86.h" -#include "lldb-x86-register-enums.h" +#include "Plugins/Process/Utility/RegisterContext_x86.h" +#include "Plugins/Process/Utility/lldb-x86-register-enums.h" namespace lldb_private { diff --git a/lldb/source/Plugins/Process/Linux/ProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/ProcessLinux.cpp index 81151b682d43..5b051dff0a87 100644 --- a/lldb/source/Plugins/Process/Linux/ProcessLinux.cpp +++ b/lldb/source/Plugins/Process/Linux/ProcessLinux.cpp @@ -20,7 +20,7 @@ #include "lldb/Target/Target.h" #include "ProcessLinux.h" -#include "ProcessPOSIXLog.h" +#include "Plugins/Process/POSIX/ProcessPOSIXLog.h" #include "Plugins/Process/Utility/InferiorCallPOSIX.h" #include "Plugins/Process/Utility/LinuxSignals.h" #include "ProcessMonitor.h" diff --git a/lldb/source/Plugins/Process/Linux/ProcessLinux.h b/lldb/source/Plugins/Process/Linux/ProcessLinux.h index 8618bcc1ef8c..e46a285ea468 100644 --- a/lldb/source/Plugins/Process/Linux/ProcessLinux.h +++ b/lldb/source/Plugins/Process/Linux/ProcessLinux.h @@ -17,8 +17,8 @@ // Other libraries and framework includes #include "lldb/Target/Process.h" -#include "ProcessMessage.h" -#include "ProcessPOSIX.h" +#include "Plugins/Process/POSIX/ProcessMessage.h" +#include "Plugins/Process/POSIX/ProcessPOSIX.h" class ProcessMonitor; diff --git a/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp b/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp index 8f626be05816..5bc8c51d74cc 100644 --- a/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp +++ b/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp @@ -17,7 +17,9 @@ #include #include #include +#ifndef __ANDROID__ #include +#endif #include #include #include @@ -39,11 +41,16 @@ #include "lldb/Target/RegisterContext.h" #include "lldb/Utility/PseudoTerminal.h" -#include "POSIXThread.h" +#include "Plugins/Process/POSIX/POSIXThread.h" #include "ProcessLinux.h" -#include "ProcessPOSIXLog.h" +#include "Plugins/Process/POSIX/ProcessPOSIXLog.h" #include "ProcessMonitor.h" +#ifdef __ANDROID__ +#define __ptrace_request int +#define PT_DETACH PTRACE_DETACH +#endif + #define DEBUG_PTRACE_MAXBYTES 20 // Support ptrace extensions even when compiled without required kernel support diff --git a/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp b/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp index c6c646915d5c..64c9de90800e 100644 --- a/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp +++ b/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp @@ -31,18 +31,17 @@ #include "POSIXThread.h" #include "ProcessPOSIX.h" #include "ProcessPOSIXLog.h" -#include "ProcessMonitor.h" +#include "Plugins/Process/Linux/ProcessMonitor.h" #include "RegisterContextPOSIXProcessMonitor_arm64.h" #include "RegisterContextPOSIXProcessMonitor_mips64.h" #include "RegisterContextPOSIXProcessMonitor_x86.h" -#include "RegisterContextLinux_arm64.h" -#include "RegisterContextLinux_i386.h" -#include "RegisterContextLinux_x86_64.h" -#include "RegisterContextFreeBSD_i386.h" -#include "RegisterContextFreeBSD_mips64.h" -#include "RegisterContextFreeBSD_x86_64.h" - -#include "UnwindLLDB.h" +#include "Plugins/Process/Utility/RegisterContextLinux_arm64.h" +#include "Plugins/Process/Utility/RegisterContextLinux_i386.h" +#include "Plugins/Process/Utility/RegisterContextLinux_x86_64.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_i386.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h" +#include "Plugins/Process/Utility/UnwindLLDB.h" using namespace lldb; using namespace lldb_private; diff --git a/lldb/source/Plugins/Process/POSIX/POSIXThread.h b/lldb/source/Plugins/Process/POSIX/POSIXThread.h index 51d6645f209d..56dcccbfb0f9 100644 --- a/lldb/source/Plugins/Process/POSIX/POSIXThread.h +++ b/lldb/source/Plugins/Process/POSIX/POSIXThread.h @@ -17,7 +17,7 @@ // Other libraries and framework includes #include "lldb/Target/Thread.h" -#include "RegisterContextPOSIX.h" +#include "Plugins/Process/Utility/RegisterContextPOSIX.h" class ProcessMessage; class ProcessMonitor; diff --git a/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp b/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp index d0cc9cd0a2e8..07a3972ce925 100644 --- a/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp +++ b/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp @@ -28,7 +28,7 @@ #include "ProcessPOSIX.h" #include "ProcessPOSIXLog.h" #include "Plugins/Process/Utility/InferiorCallPOSIX.h" -#include "ProcessMonitor.h" +#include "Plugins/Process/Linux/ProcessMonitor.h" #include "POSIXThread.h" using namespace lldb; diff --git a/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp b/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp index 9109cdb000ae..ec34d9e28161 100644 --- a/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp +++ b/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp @@ -10,10 +10,10 @@ #include "lldb/Target/Thread.h" #include "lldb/Core/RegisterValue.h" -#include "RegisterContextPOSIX_arm64.h" +#include "Plugins/Process/Utility/RegisterContextPOSIX_arm64.h" #include "ProcessPOSIX.h" #include "RegisterContextPOSIXProcessMonitor_arm64.h" -#include "ProcessMonitor.h" +#include "Plugins/Process/Linux/ProcessMonitor.h" #define REG_CONTEXT_SIZE (GetGPRSize()) diff --git a/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_mips64.cpp b/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_mips64.cpp index 9bfe236de139..6717d20da056 100644 --- a/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_mips64.cpp +++ b/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_mips64.cpp @@ -10,10 +10,10 @@ #include "lldb/Target/Thread.h" #include "lldb/Core/RegisterValue.h" -#include "RegisterContextPOSIX_mips64.h" +#include "Plugins/Process/Utility/RegisterContextPOSIX_mips64.h" #include "ProcessPOSIX.h" #include "RegisterContextPOSIXProcessMonitor_mips64.h" -#include "ProcessMonitor.h" +#include "Plugins/Process/Linux/ProcessMonitor.h" using namespace lldb_private; using namespace lldb; diff --git a/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.cpp b/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.cpp index e534f3b4f9d0..04a7f8176016 100644 --- a/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.cpp +++ b/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.cpp @@ -10,9 +10,9 @@ #include "lldb/Target/Thread.h" #include "lldb/Core/RegisterValue.h" -#include "ProcessPOSIX.h" +#include "Plugins/Process/POSIX/ProcessPOSIX.h" #include "RegisterContextPOSIXProcessMonitor_x86.h" -#include "ProcessMonitor.h" +#include "Plugins/Process/Linux/ProcessMonitor.h" using namespace lldb_private; using namespace lldb; @@ -48,6 +48,7 @@ size_and_rw_bits(size_t size, bool read, bool write) return (0x2 << 2) | rw; default: assert(0 && "invalid size, must be one of 1, 2, 4, or 8"); + return 0; // Unreachable. Just to silence compiler. } } diff --git a/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h b/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h index 1bb4e89c8f78..b687423622a4 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h +++ b/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h @@ -15,8 +15,8 @@ #include "lldb/lldb-defines.h" #include "lldb/lldb-enumerations.h" -#include "ARM64_GCC_Registers.h" -#include "ARM64_DWARF_Registers.h" +#include "Utility/ARM64_GCC_Registers.h" +#include "Utility/ARM64_DWARF_Registers.h" #ifndef GPR_OFFSET #error GPR_OFFSET must be defined before including this header file diff --git a/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp b/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp index fbf397b933cc..f0750a0cee18 100644 --- a/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp +++ b/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp @@ -10,7 +10,7 @@ #include "lldb/Core/DataExtractor.h" #include "lldb/Core/RegisterValue.h" #include "lldb/Target/Thread.h" -#include "RegisterContextPOSIX.h" +#include "Plugins/Process/Utility/RegisterContextPOSIX.h" #include "RegisterContextPOSIXCore_mips64.h" using namespace lldb_private; diff --git a/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp b/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp index 3e09c7bc2032..412c7ade8295 100644 --- a/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp +++ b/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp @@ -10,7 +10,7 @@ #include "lldb/Core/DataExtractor.h" #include "lldb/Core/RegisterValue.h" #include "lldb/Target/Thread.h" -#include "RegisterContextPOSIX.h" +#include "Plugins/Process/Utility/RegisterContextPOSIX.h" #include "RegisterContextPOSIXCore_x86_64.h" using namespace lldb_private; diff --git a/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp b/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp index d9f6cc04a343..4b611bf45a9f 100644 --- a/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp +++ b/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp @@ -16,10 +16,10 @@ #include "ThreadElfCore.h" #include "ProcessElfCore.h" -#include "RegisterContextLinux_x86_64.h" -#include "RegisterContextFreeBSD_i386.h" -#include "RegisterContextFreeBSD_mips64.h" -#include "RegisterContextFreeBSD_x86_64.h" +#include "Plugins/Process/Utility/RegisterContextLinux_x86_64.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_i386.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h" +#include "Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h" #include "RegisterContextPOSIXCore_mips64.h" #include "RegisterContextPOSIXCore_x86_64.h" diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp index 4a78f6dd1891..03c0a1d99a84 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -14,7 +14,6 @@ #include #include #ifndef LLDB_DISABLE_POSIX -#include #include #include // for mmap #endif diff --git a/lldb/source/Target/ProcessLaunchInfo.cpp b/lldb/source/Target/ProcessLaunchInfo.cpp index b6adea89b2fd..3af62f6ba555 100644 --- a/lldb/source/Target/ProcessLaunchInfo.cpp +++ b/lldb/source/Target/ProcessLaunchInfo.cpp @@ -9,10 +9,6 @@ #include "lldb/Host/Config.h" -#ifndef LLDB_DISABLE_POSIX -#include -#endif - #include "lldb/Target/ProcessLaunchInfo.h" #include "lldb/Target/FileAction.h" #include "lldb/Target/Target.h" diff --git a/lldb/source/Target/Thread.cpp b/lldb/source/Target/Thread.cpp index a445517da6a8..f8ea250639b0 100644 --- a/lldb/source/Target/Thread.cpp +++ b/lldb/source/Target/Thread.cpp @@ -43,7 +43,7 @@ #include "lldb/Target/ThreadSpec.h" #include "lldb/Target/Unwind.h" #include "Plugins/Process/Utility/UnwindLLDB.h" -#include "UnwindMacOSXFrameBackchain.h" +#include "Plugins/Process/Utility/UnwindMacOSXFrameBackchain.h" using namespace lldb; diff --git a/lldb/tools/lldb-gdbserver/lldb-gdbserver.cpp b/lldb/tools/lldb-gdbserver/lldb-gdbserver.cpp index 6fd679ca0f0f..b0720b6857b9 100644 --- a/lldb/tools/lldb-gdbserver/lldb-gdbserver.cpp +++ b/lldb/tools/lldb-gdbserver/lldb-gdbserver.cpp @@ -7,8 +7,6 @@ // //===----------------------------------------------------------------------===// -#include "lldb/lldb-python.h" - // C Includes #include #include