[Lldb-commits] [lldb] r367414 - [ProcessWindows] Choose a register context file by preprocessor

Hans Wennborg via lldb-commits lldb-commits at lists.llvm.org
Thu Aug 1 01:21:04 PDT 2019


Merged to release_90 in r367523.

On Wed, Jul 31, 2019 at 1:59 PM Tatyana Krasnukha via lldb-commits
<lldb-commits at lists.llvm.org> wrote:
>
> Author: tkrasnukha
> Date: Wed Jul 31 05:00:30 2019
> New Revision: 367414
>
> URL: http://llvm.org/viewvc/llvm-project?rev=367414&view=rev
> Log:
> [ProcessWindows] Choose a register context file by preprocessor
>
> Replaced Cmake option based check with the preprocessor macro as CMAKE_SYSTEM_PROCESSOR doesn't work as expected on Windows.
>
> Fixes llvm.org/pr42724
>
> Differential Revision: https://reviews.llvm.org/D65409
>
> Modified:
>     lldb/trunk/source/Plugins/Process/Windows/Common/CMakeLists.txt
>     lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp
>     lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.h
>     lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp
>     lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.h
>
> Modified: lldb/trunk/source/Plugins/Process/Windows/Common/CMakeLists.txt
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Windows/Common/CMakeLists.txt?rev=367414&r1=367413&r2=367414&view=diff
> ==============================================================================
> --- lldb/trunk/source/Plugins/Process/Windows/Common/CMakeLists.txt (original)
> +++ lldb/trunk/source/Plugins/Process/Windows/Common/CMakeLists.txt Wed Jul 31 05:00:30 2019
> @@ -7,6 +7,9 @@ add_lldb_library(lldbPluginProcessWindow
>    ProcessWindowsLog.cpp
>    RegisterContextWindows.cpp
>    TargetThreadWindows.cpp
> +  x64/RegisterContextWindows_x64.cpp
> +  x86/RegisterContextWindows_x86.cpp
> +  # TODO add support for ARM (NT) and ARM64
>
>    LINK_LIBS
>      lldbCore
> @@ -20,13 +23,3 @@ add_lldb_library(lldbPluginProcessWindow
>    LINK_COMPONENTS
>      Support
>    )
> -
> -# TODO add support for ARM (NT) and ARM64
> -# TODO build these unconditionally as we cannot do cross-debugging or WoW
> -if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64")
> -  target_sources(lldbPluginProcessWindowsCommon PRIVATE
> -    x64/RegisterContextWindows_x64.cpp)
> -elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "i?86|X86")
> -  target_sources(lldbPluginProcessWindowsCommon PRIVATE
> -    x86/RegisterContextWindows_x86.cpp)
> -endif()
>
> Modified: lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp?rev=367414&r1=367413&r2=367414&view=diff
> ==============================================================================
> --- lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp (original)
> +++ lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp Wed Jul 31 05:00:30 2019
> @@ -6,6 +6,8 @@
>  //
>  //===----------------------------------------------------------------------===//
>
> +#if defined(__x86_64__) || defined(__amd64__) || defined(_M_X64) || defined(_M_AMD64)
> +
>  #include "lldb/Host/windows/HostThreadWindows.h"
>  #include "lldb/Host/windows/windows.h"
>  #include "lldb/Utility/RegisterValue.h"
> @@ -534,3 +536,5 @@ bool RegisterContextWindows_x64::WriteRe
>    return ::SetThreadContext(
>        wthread.GetHostThread().GetNativeThread().GetSystemHandle(), &m_context);
>  }
> +
> +#endif // defined(__x86_64__) || defined(__amd64__) || defined(_M_X64) || defined(_M_AMD64)
>
> Modified: lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.h
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.h?rev=367414&r1=367413&r2=367414&view=diff
> ==============================================================================
> --- lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.h (original)
> +++ lldb/trunk/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.h Wed Jul 31 05:00:30 2019
> @@ -9,6 +9,8 @@
>  #ifndef liblldb_RegisterContextWindows_x64_H_
>  #define liblldb_RegisterContextWindows_x64_H_
>
> +#if defined(__x86_64__) || defined(__amd64__) || defined(_M_X64) || defined(_M_AMD64)
> +
>  #include "RegisterContextWindows.h"
>  #include "lldb/lldb-forward.h"
>
> @@ -40,4 +42,6 @@ public:
>  };
>  }
>
> +#endif // defined(__x86_64__) || defined(__amd64__) || defined(_M_X64) || defined(_M_AMD64)
> +
>  #endif // #ifndef liblldb_RegisterContextWindows_x64_H_
>
> Modified: lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp?rev=367414&r1=367413&r2=367414&view=diff
> ==============================================================================
> --- lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp (original)
> +++ lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp Wed Jul 31 05:00:30 2019
> @@ -6,6 +6,8 @@
>  //
>  //===----------------------------------------------------------------------===//
>
> +#if defined(__i386__) || defined(_M_IX86)
> +
>  #include "lldb/Host/windows/HostThreadWindows.h"
>  #include "lldb/Host/windows/windows.h"
>  #include "lldb/Utility/RegisterValue.h"
> @@ -282,3 +284,5 @@ bool RegisterContextWindows_x86::ReadReg
>    reg_value.SetUInt32(value);
>    return true;
>  }
> +
> +#endif // defined(__i386__) || defined(_M_IX86)
>
> Modified: lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.h
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.h?rev=367414&r1=367413&r2=367414&view=diff
> ==============================================================================
> --- lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.h (original)
> +++ lldb/trunk/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.h Wed Jul 31 05:00:30 2019
> @@ -9,6 +9,8 @@
>  #ifndef liblldb_RegisterContextWindows_x86_H_
>  #define liblldb_RegisterContextWindows_x86_H_
>
> +#if defined(__i386__) || defined(_M_IX86)
> +
>  #include "RegisterContextWindows.h"
>  #include "lldb/lldb-forward.h"
>
> @@ -44,4 +46,6 @@ private:
>  };
>  }
>
> +#endif // defined(__i386__) || defined(_M_IX86)
> +
>  #endif // #ifndef liblldb_RegisterContextWindows_x86_H_
>
>
> _______________________________________________
> lldb-commits mailing list
> lldb-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


More information about the lldb-commits mailing list