From 013434e547264f46db5a559b2fcdda5a791484ec Mon Sep 17 00:00:00 2001 From: Todd Fiala Date: Wed, 9 Jul 2014 01:29:05 +0000 Subject: [PATCH] __arm64__ and __aarch64__ #ifdef adjustments Change by Paul Osmialowski See http://reviews.llvm.org/D4379 for details. llvm-svn: 212583 --- lldb/source/Core/Error.cpp | 2 +- lldb/source/Host/common/Host.cpp | 2 +- lldb/source/Host/macosx/Host.mm | 12 ++++---- lldb/source/Host/macosx/Symbols.cpp | 6 ++-- .../source/Interpreter/CommandInterpreter.cpp | 2 +- .../ObjectFile/Mach-O/ObjectFileMachO.cpp | 8 +++--- .../Platform/MacOSX/PlatformDarwinKernel.cpp | 2 +- .../Platform/MacOSX/PlatformMacOSX.cpp | 2 +- .../Utility/RegisterContextDarwin_arm64.cpp | 2 +- .../RegisterContextMacOSXFrameBackchain.cpp | 2 +- .../GDBRemoteCommunicationServer.cpp | 6 ++-- .../Process/gdb-remote/ProcessGDBRemote.cpp | 4 +-- .../data-formatter/data-formatter-objc/main.m | 2 +- lldb/tools/debugserver/source/DNB.cpp | 4 +-- lldb/tools/debugserver/source/DNBDefs.h | 2 +- .../source/MacOSX/MachThreadList.cpp | 2 +- .../source/MacOSX/arm/DNBArchImpl.cpp | 14 +++++----- .../source/MacOSX/arm/DNBArchImpl.h | 6 ++-- .../source/MacOSX/arm64/DNBArchImplARM64.cpp | 28 +++++++++---------- .../source/MacOSX/arm64/DNBArchImplARM64.h | 2 +- lldb/tools/debugserver/source/RNBDefs.h | 2 +- lldb/tools/debugserver/source/RNBRemote.cpp | 4 +-- 22 files changed, 58 insertions(+), 58 deletions(-) diff --git a/lldb/source/Core/Error.cpp b/lldb/source/Core/Error.cpp index 8929568aa681..03cfd41b288d 100644 --- a/lldb/source/Core/Error.cpp +++ b/lldb/source/Core/Error.cpp @@ -21,7 +21,7 @@ #include #include -#if (defined (__arm__) || defined (__arm64__)) && defined (__APPLE__) +#if (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) && defined (__APPLE__) #include #endif diff --git a/lldb/source/Host/common/Host.cpp b/lldb/source/Host/common/Host.cpp index 2daa29caeb1e..fa3d3bc1aefa 100644 --- a/lldb/source/Host/common/Host.cpp +++ b/lldb/source/Host/common/Host.cpp @@ -1069,7 +1069,7 @@ Host::GetLLDBPath (PathType path_type, FileSpec &file_spec) if (framework_pos) { framework_pos += strlen("LLDB.framework"); -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) // Shallow bundle *framework_pos = '\0'; #else diff --git a/lldb/source/Host/macosx/Host.mm b/lldb/source/Host/macosx/Host.mm index a9a1dc8e09a8..69b65fbf2c6b 100644 --- a/lldb/source/Host/macosx/Host.mm +++ b/lldb/source/Host/macosx/Host.mm @@ -228,7 +228,7 @@ Host::ResolveExecutableInBundle (FileSpec &file) lldb::pid_t Host::LaunchApplication (const FileSpec &app_file_spec) { -#if defined (__arm__) || defined(__arm64__) +#if defined (__arm__) || defined(__arm64__) || defined(__aarch64__) return LLDB_INVALID_PROCESS_ID; #else char app_path[PATH_MAX]; @@ -321,7 +321,7 @@ WaitForProcessToSIGSTOP (const lldb::pid_t pid, const int timeout_in_seconds) } return false; } -#if !defined(__arm__) && !defined(__arm64__) +#if !defined(__arm__) && !defined(__arm64__) && !defined(__aarch64__) //static lldb::pid_t //LaunchInNewTerminalWithCommandFile @@ -669,7 +669,7 @@ LaunchInNewTerminalWithAppleScript (const char *exe_path, ProcessLaunchInfo &lau return error; } -#endif // #if !defined(__arm__) +#endif // #if !defined(__arm__) && !defined(__arm64__) && !defined(__aarch64__) // On MacOSX CrashReporter will display a string for each shared library if @@ -728,7 +728,7 @@ Host::SetCrashDescription (const char *cstr) bool Host::OpenFileInExternalEditor (const FileSpec &file_spec, uint32_t line_no) { -#if defined(__arm__) || defined(__arm64__) +#if defined(__arm__) || defined(__arm64__) || defined(__aarch64__) return false; #else // We attach this to an 'odoc' event to specify a particular selection @@ -837,7 +837,7 @@ Host::OpenFileInExternalEditor (const FileSpec &file_spec, uint32_t line_no) } return true; -#endif // #if !defined(__arm__) +#endif // #if !defined(__arm__) && !defined(__arm64__) && !defined(__aarch64__) } @@ -1507,7 +1507,7 @@ Host::LaunchProcess (ProcessLaunchInfo &launch_info) if (launch_info.GetFlags().Test (eLaunchFlagLaunchInTTY)) { -#if !defined(__arm__) && !defined(__arm64__) +#if !defined(__arm__) && !defined(__arm64__) && !defined(__aarch64__) return LaunchInNewTerminalWithAppleScript (exe_path, launch_info); #else error.SetErrorString ("launching a process in a new terminal is not supported on iOS devices"); diff --git a/lldb/source/Host/macosx/Symbols.cpp b/lldb/source/Host/macosx/Symbols.cpp index 39f326ad7097..e0602e7ef075 100644 --- a/lldb/source/Host/macosx/Symbols.cpp +++ b/lldb/source/Host/macosx/Symbols.cpp @@ -41,7 +41,7 @@ using namespace lldb; using namespace lldb_private; using namespace llvm::MachO; -#if !defined (__arm__) && !defined (__arm64__) // No DebugSymbols on the iOS devices +#if !defined (__arm__) && !defined (__arm64__) && !defined (__aarch64__) // No DebugSymbols on the iOS devices extern "C" { CFURLRef DBGCopyFullDSYMURLForUUID (CFUUIDRef uuid, CFURLRef exec_url); @@ -293,7 +293,7 @@ LocateMacOSXFilesUsingDebugSymbols if (out_dsym_fspec) out_dsym_fspec->Clear(); -#if !defined (__arm__) && !defined (__arm64__) // No DebugSymbols on the iOS devices +#if !defined (__arm__) && !defined (__arm64__) && !defined (__aarch64__) // No DebugSymbols on the iOS devices const UUID *uuid = module_spec.GetUUIDPtr(); const ArchSpec *arch = module_spec.GetArchitecturePtr(); @@ -461,7 +461,7 @@ LocateMacOSXFilesUsingDebugSymbols } } } -#endif // #if !defined (__arm__) +#endif // #if !defined (__arm__) && !defined (__arm64__) && !defined (__aarch64__) return items_found; } diff --git a/lldb/source/Interpreter/CommandInterpreter.cpp b/lldb/source/Interpreter/CommandInterpreter.cpp index 959b90fb8d24..59b779f29ac6 100644 --- a/lldb/source/Interpreter/CommandInterpreter.cpp +++ b/lldb/source/Interpreter/CommandInterpreter.cpp @@ -327,7 +327,7 @@ CommandInterpreter::Initialize () if (cmd_obj_sp) { alias_arguments_vector_sp.reset (new OptionArgVector); -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) ProcessAliasOptionsArgs (cmd_obj_sp, "--", alias_arguments_vector_sp); #else ProcessAliasOptionsArgs (cmd_obj_sp, "--shell=" LLDB_DEFAULT_SHELL " --", alias_arguments_vector_sp); diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp index c95d67be7d60..4b3e2c069d09 100644 --- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp +++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp @@ -45,7 +45,7 @@ #include "ObjectFileMachO.h" -#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__)) +#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) // GetLLDBSharedCacheUUID() needs to call dlsym() #include #endif @@ -2043,7 +2043,7 @@ ObjectFileMachO::ParseSymtab () bool data_was_read = false; -#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__)) +#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) if (m_header.flags & 0x80000000u && process->GetAddressByteSize() == sizeof (void*)) { // This mach-o memory file is in the dyld shared cache. If this @@ -2302,7 +2302,7 @@ ObjectFileMachO::ParseSymtab () } } -#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__)) +#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) // Some recent builds of the dyld_shared_cache (hereafter: DSC) have been optimized by moving LOCAL // symbols out of the memory mapped portion of the DSC. The symbol information has all been retained, @@ -4905,7 +4905,7 @@ UUID ObjectFileMachO::GetLLDBSharedCacheUUID () { UUID uuid; -#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__)) +#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) uint8_t *(*dyld_get_all_image_infos)(void); dyld_get_all_image_infos = (uint8_t*(*)()) dlsym (RTLD_DEFAULT, "_dyld_get_all_image_infos"); if (dyld_get_all_image_infos) diff --git a/lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp b/lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp index 94e18360f6a8..4e2dbdb4635c 100644 --- a/lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp +++ b/lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp @@ -650,7 +650,7 @@ PlatformDarwinKernel::ExamineKextForMatchingUUID (const FileSpec &kext_bundle_pa bool PlatformDarwinKernel::GetSupportedArchitectureAtIndex (uint32_t idx, ArchSpec &arch) { -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) return ARMGetSupportedArchitectureAtIndex (idx, arch); #else return x86GetSupportedArchitectureAtIndex (idx, arch); diff --git a/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp b/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp index b305189ffd89..58b76db769db 100644 --- a/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp +++ b/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp @@ -312,7 +312,7 @@ PlatformMacOSX::GetFileWithUUID (const lldb_private::FileSpec &platform_file, bool PlatformMacOSX::GetSupportedArchitectureAtIndex (uint32_t idx, ArchSpec &arch) { -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) return ARMGetSupportedArchitectureAtIndex (idx, arch); #else return x86GetSupportedArchitectureAtIndex (idx, arch); diff --git a/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp b/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp index 4e5e1e92428f..50bbf74534a2 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp +++ b/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp @@ -1113,7 +1113,7 @@ RegisterContextDarwin_arm64::ConvertRegisterKindToRegisterNumber (RegisterKind k uint32_t RegisterContextDarwin_arm64::NumSupportedHardwareWatchpoints () { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) // autodetect how many watchpoints are supported dynamically... static uint32_t g_num_supported_hw_watchpoints = UINT32_MAX; if (g_num_supported_hw_watchpoints == UINT32_MAX) diff --git a/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp b/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp index 444f3f5908a6..e246e715de86 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp +++ b/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp @@ -149,7 +149,7 @@ RegisterContextMacOSXFrameBackchain::ReadRegister (const RegisterInfo *reg_info, // TOOD: need a better way to detect when "long double" types are // the same bytes size as "double" -#if !defined(__arm__) && !defined(__arm64__) && !defined(_MSC_VER) && !defined(__mips__) +#if !defined(__arm__) && !defined(__arm64__) && !defined(__aarch64__) && !defined(_MSC_VER) && !defined(__mips__) case sizeof (long double): if (sizeof (long double) == sizeof(uint32_t)) { diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp index a1708ee6838d..719ba0275197 100644 --- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp @@ -1253,21 +1253,21 @@ GDBRemoteCommunicationServer::Handle_qHostInfo (StringExtractorGDBRemote &packet } #if defined(__APPLE__) -#if defined(__arm__) || defined(__arm64__) +#if defined(__arm__) || defined(__arm64__) || defined(__aarch64__) // For iOS devices, we are connected through a USB Mux so we never pretend // to actually have a hostname as far as the remote lldb that is connecting // to this lldb-platform is concerned response.PutCString ("hostname:"); response.PutCStringAsRawHex8("127.0.0.1"); response.PutChar(';'); -#else // #if defined(__arm__) || defined(__arm64__) +#else // #if defined(__arm__) || defined(__arm64__) || defined(__aarch64__) if (Host::GetHostname (s)) { response.PutCString ("hostname:"); response.PutCStringAsRawHex8(s.c_str()); response.PutChar(';'); } -#endif // #if defined(__arm__) || defined(__arm64__) +#endif // #if defined(__arm__) || defined(__arm64__) || defined(__aarch64__) #else // #if defined(__APPLE__) if (Host::GetHostname (s)) diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp index f9b2277fce0f..69138159c319 100644 --- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -181,7 +181,7 @@ namespace { #define HIGH_PORT (49151u) #endif -#if defined(__APPLE__) && (defined(__arm__) || defined(__arm64__)) +#if defined(__APPLE__) && (defined(__arm__) || defined(__arm64__) || defined(__aarch64__)) static bool rand_initialized = false; static inline uint16_t @@ -2701,7 +2701,7 @@ ProcessGDBRemote::LaunchAndConnectToDebugserver (const ProcessInfo &process_info debugserver_launch_info.SetMonitorProcessCallback (MonitorDebugserverProcess, this, false); debugserver_launch_info.SetUserID(process_info.GetUserID()); -#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__)) +#if defined (__APPLE__) && (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) // On iOS, still do a local connection using a random port const char *hostname = "127.0.0.1"; uint16_t port = get_random_port (); diff --git a/lldb/test/functionalities/data-formatter/data-formatter-objc/main.m b/lldb/test/functionalities/data-formatter/data-formatter-objc/main.m index 6c6cbd461657..6eb7e021f70b 100644 --- a/lldb/test/functionalities/data-formatter/data-formatter-objc/main.m +++ b/lldb/test/functionalities/data-formatter/data-formatter-objc/main.m @@ -10,7 +10,7 @@ #import #if defined(__APPLE__) -#if defined(__arm__) || defined(__arm64__) +#if defined(__arm__) || defined(__arm64__) || defined(__aarch64__) #define IOS #endif #endif diff --git a/lldb/tools/debugserver/source/DNB.cpp b/lldb/tools/debugserver/source/DNB.cpp index 4114aac4de28..abd1661af523 100644 --- a/lldb/tools/debugserver/source/DNB.cpp +++ b/lldb/tools/debugserver/source/DNB.cpp @@ -2309,7 +2309,7 @@ DNBInitialize() #if defined (__i386__) || defined (__x86_64__) DNBArchImplI386::Initialize(); DNBArchImplX86_64::Initialize(); -#elif defined (__arm__) || defined (__arm64__) +#elif defined (__arm__) || defined (__arm64__) || defined (__aarch64__) DNBArchMachARM::Initialize(); DNBArchMachARM64::Initialize(); #endif @@ -2329,7 +2329,7 @@ DNBSetArchitecture (const char *arch) return DNBArchProtocol::SetArchitecture (CPU_TYPE_I386); else if ((strcasecmp (arch, "x86_64") == 0) || (strcasecmp (arch, "x86_64h") == 0)) return DNBArchProtocol::SetArchitecture (CPU_TYPE_X86_64); - else if (strstr (arch, "arm64") == arch || strstr (arch, "armv8") == arch) + else if (strstr (arch, "arm64") == arch || strstr (arch, "armv8") == arch || strstr (arch, "aarch64") == arch) return DNBArchProtocol::SetArchitecture (CPU_TYPE_ARM64); else if (strstr (arch, "arm") == arch) return DNBArchProtocol::SetArchitecture (CPU_TYPE_ARM); diff --git a/lldb/tools/debugserver/source/DNBDefs.h b/lldb/tools/debugserver/source/DNBDefs.h index ad87c0f7438f..a8c5fd91842d 100644 --- a/lldb/tools/debugserver/source/DNBDefs.h +++ b/lldb/tools/debugserver/source/DNBDefs.h @@ -23,7 +23,7 @@ //---------------------------------------------------------------------- // Define nub_addr_t and the invalid address value from the architecture //---------------------------------------------------------------------- -#if defined (__x86_64__) || defined (__ppc64__) || defined (__arm64__) +#if defined (__x86_64__) || defined (__ppc64__) || defined (__arm64__) || defined (__aarch64__) //---------------------------------------------------------------------- // 64 bit address architectures diff --git a/lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp b/lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp index 68b272a6bd76..d3c9a87a89ae 100644 --- a/lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp +++ b/lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp @@ -323,7 +323,7 @@ MachThreadList::UpdateThreadList(MachProcess *process, bool update, MachThreadLi DNBArchProtocol::SetArchitecture(CPU_TYPE_X86_64); else DNBArchProtocol::SetArchitecture(CPU_TYPE_I386); -#elif defined (__arm__) || defined (__arm64__) +#elif defined (__arm__) || defined (__arm64__) || defined (__aarch64__) if (m_is_64_bit) DNBArchProtocol::SetArchitecture(CPU_TYPE_ARM64); else diff --git a/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp b/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp index 2cfdd648db15..da948e8a9fcd 100644 --- a/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp +++ b/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp @@ -11,7 +11,7 @@ // //===----------------------------------------------------------------------===// -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) #include "MacOSX/arm/DNBArchImpl.h" #include "MacOSX/MachProcess.h" @@ -286,7 +286,7 @@ DNBArchMachARM::GetDBGState(bool force) return KERN_SUCCESS; // Read the registers from our thread -#if defined (ARM_DEBUG_STATE32) && defined (__arm64__) +#if defined (ARM_DEBUG_STATE32) && (defined (__arm64__) || defined (__aarch64__)) mach_msg_type_number_t count = ARM_DEBUG_STATE32_COUNT; kern_return_t kret = ::thread_get_state(m_thread->MachPortNumber(), ARM_DEBUG_STATE32, (thread_state_t)&m_state.dbg, &count); #else @@ -332,7 +332,7 @@ kern_return_t DNBArchMachARM::SetDBGState(bool also_set_on_task) { int set = e_regSetDBG; -#if defined (ARM_DEBUG_STATE32) && defined (__arm64__) +#if defined (ARM_DEBUG_STATE32) && (defined (__arm64__) || defined (__aarch64__)) kern_return_t kret = ::thread_set_state (m_thread->MachPortNumber(), ARM_DEBUG_STATE32, (thread_state_t)&m_state.dbg, ARM_DEBUG_STATE32_COUNT); if (also_set_on_task) { @@ -549,7 +549,7 @@ DNBArchMachARM::EnableHardwareSingleStep (bool enable) // an armv8 device, regardless of whether it was built for arch arm or arch arm64, // it needs to use the MDSCR_EL1 SS bit to single instruction step. -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) if (enable) { DNBLogThreadedIf(LOG_STEP, "%s: Setting MDSCR_EL1 Single Step bit at pc 0x%llx", __FUNCTION__, (uint64_t) m_state.context.gpr.__pc); @@ -723,7 +723,7 @@ DNBArchMachARM::NumSupportedHardwareBreakpoints() } else { -#if !defined (__arm64__) +#if !defined (__arm64__) && !defined (__aarch64__) // Read the DBGDIDR to get the number of available hardware breakpoints // However, in some of our current armv7 processors, hardware // breakpoints/watchpoints were not properly connected. So detect those @@ -784,7 +784,7 @@ DNBArchMachARM::NumSupportedHardwareWatchpoints() } else { -#if !defined (__arm64__) +#if !defined (__arm64__) && !defined (__aarch64__) // Read the DBGDIDR to get the number of available hardware breakpoints // However, in some of our current armv7 processors, hardware // breakpoints/watchpoints were not properly connected. So detect those @@ -928,7 +928,7 @@ DNBArchMachARM::DisableHardwareBreakpoint (uint32_t hw_index) // armv8 device, armv7 processes can watch dwords. But on a genuine armv7 // device I tried, only word watchpoints are supported. -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) #define WATCHPOINTS_ARE_DWORD 1 #else #undef WATCHPOINTS_ARE_DWORD diff --git a/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.h b/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.h index 4d4609184e82..0f7a466fad1a 100644 --- a/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.h +++ b/lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.h @@ -14,7 +14,7 @@ #ifndef __DebugNubArchMachARM_h__ #define __DebugNubArchMachARM_h__ -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) #include "DNBArch.h" @@ -89,7 +89,7 @@ public: virtual bool StepNotComplete (); virtual uint32_t GetHardwareWatchpointHit(nub_addr_t &addr); -#if defined (ARM_DEBUG_STATE32) && defined (__arm64__) +#if defined (ARM_DEBUG_STATE32) && (defined (__arm64__) || defined (__aarch64__)) typedef arm_debug_state32_t DBG; #else typedef arm_debug_state_t DBG; @@ -115,7 +115,7 @@ protected: e_regSetGPR = ARM_THREAD_STATE, e_regSetVFP = ARM_VFP_STATE, e_regSetEXC = ARM_EXCEPTION_STATE, -#if defined (ARM_DEBUG_STATE32) && defined (__arm64__) +#if defined (ARM_DEBUG_STATE32) && (defined (__arm64__) || defined (__aarch64__)) e_regSetDBG = ARM_DEBUG_STATE32, #else e_regSetDBG = ARM_DEBUG_STATE, diff --git a/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp b/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp index e8a486fbeb21..04a51dce0e6b 100644 --- a/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp +++ b/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp @@ -11,7 +11,7 @@ // //===----------------------------------------------------------------------===// -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) #include "MacOSX/arm64/DNBArchImplARM64.h" @@ -233,7 +233,7 @@ DNBArchMachARM64::GetVFPState(bool force) kern_return_t kret = ::thread_get_state(m_thread->MachPortNumber(), ARM_NEON_STATE64, (thread_state_t)&m_state.context.vfp, &count); if (DNBLogEnabledForAny (LOG_THREAD)) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) DNBLogThreaded("thread_get_state(0x%4.4x, %u, &vfp, %u) => 0x%8.8x (count = %u) regs" "\n q0 = 0x%16.16llx%16.16llx" "\n q1 = 0x%16.16llx%16.16llx" @@ -1506,7 +1506,7 @@ const char *g_invalidate_v29[] {"v29", "d29", "s29", NULL }; const char *g_invalidate_v30[] {"v30", "d30", "s30", NULL }; const char *g_invalidate_v31[] {"v31", "d31", "s31", NULL }; -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) #define VFP_V_OFFSET_IDX(idx) (offsetof (DNBArchMachARM64::FPU, __v) + (idx * 16) + offsetof (DNBArchMachARM64::Context, vfp)) #else #define VFP_V_OFFSET_IDX(idx) (offsetof (DNBArchMachARM64::FPU, opaque) + (idx * 16) + offsetof (DNBArchMachARM64::Context, vfp)) @@ -1753,7 +1753,7 @@ DNBArchMachARM64::GetRegisterValue(int set, int reg, DNBRegisterValue *value) if (reg >= vfp_v0 && reg <= vfp_v31) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&value->value.v_uint8, &m_state.context.vfp.__v[reg - vfp_v0], 16); #else memcpy (&value->value.v_uint8, ((uint8_t *) &m_state.context.vfp.opaque) + ((reg - vfp_v0) * 16), 16); @@ -1762,7 +1762,7 @@ DNBArchMachARM64::GetRegisterValue(int set, int reg, DNBRegisterValue *value) } else if (reg == vfp_fpsr) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&value->value.uint32, &m_state.context.vfp.__fpsr, 4); #else memcpy (&value->value.uint32, ((uint8_t *) &m_state.context.vfp.opaque) + (32 * 16) + 0, 4); @@ -1771,7 +1771,7 @@ DNBArchMachARM64::GetRegisterValue(int set, int reg, DNBRegisterValue *value) } else if (reg == vfp_fpcr) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&value->value.uint32, &m_state.context.vfp.__fpcr, 4); #else memcpy (&value->value.uint32, ((uint8_t *) &m_state.context.vfp.opaque) + (32 * 16) + 4, 4); @@ -1780,7 +1780,7 @@ DNBArchMachARM64::GetRegisterValue(int set, int reg, DNBRegisterValue *value) } else if (reg >= vfp_s0 && reg <= vfp_s31) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&value->value.v_uint8, &m_state.context.vfp.__v[reg - vfp_s0], 4); #else memcpy (&value->value.v_uint8, ((uint8_t *) &m_state.context.vfp.opaque) + ((reg - vfp_s0) * 16), 4); @@ -1789,7 +1789,7 @@ DNBArchMachARM64::GetRegisterValue(int set, int reg, DNBRegisterValue *value) } else if (reg >= vfp_d0 && reg <= vfp_d31) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&value->value.v_uint8, &m_state.context.vfp.__v[reg - vfp_d0], 8); #else memcpy (&value->value.v_uint8, ((uint8_t *) &m_state.context.vfp.opaque) + ((reg - vfp_d0) * 16), 8); @@ -1851,7 +1851,7 @@ DNBArchMachARM64::SetRegisterValue(int set, int reg, const DNBRegisterValue *val case e_regSetVFP: if (reg >= vfp_v0 && reg <= vfp_v31) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&m_state.context.vfp.__v[reg - vfp_v0], &value->value.v_uint8, 16); #else memcpy (((uint8_t *) &m_state.context.vfp.opaque) + ((reg - vfp_v0) * 16), &value->value.v_uint8, 16); @@ -1860,7 +1860,7 @@ DNBArchMachARM64::SetRegisterValue(int set, int reg, const DNBRegisterValue *val } else if (reg == vfp_fpsr) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&m_state.context.vfp.__fpsr, &value->value.uint32, 4); #else memcpy (((uint8_t *) &m_state.context.vfp.opaque) + (32 * 16) + 0, &value->value.uint32, 4); @@ -1869,7 +1869,7 @@ DNBArchMachARM64::SetRegisterValue(int set, int reg, const DNBRegisterValue *val } else if (reg == vfp_fpcr) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&m_state.context.vfp.__fpcr, &value->value.uint32, 4); #else memcpy (((uint8_t *) m_state.context.vfp.opaque) + (32 * 16) + 4, &value->value.uint32, 4); @@ -1878,7 +1878,7 @@ DNBArchMachARM64::SetRegisterValue(int set, int reg, const DNBRegisterValue *val } else if (reg >= vfp_s0 && reg <= vfp_s31) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&m_state.context.vfp.__v[reg - vfp_s0], &value->value.v_uint8, 4); #else memcpy (((uint8_t *) &m_state.context.vfp.opaque) + ((reg - vfp_s0) * 16), &value->value.v_uint8, 4); @@ -1887,7 +1887,7 @@ DNBArchMachARM64::SetRegisterValue(int set, int reg, const DNBRegisterValue *val } else if (reg >= vfp_d0 && reg <= vfp_d31) { -#if defined (__arm64__) +#if defined (__arm64__) || defined (__aarch64__) memcpy (&m_state.context.vfp.__v[reg - vfp_d0], &value->value.v_uint8, 8); #else memcpy (((uint8_t *) &m_state.context.vfp.opaque) + ((reg - vfp_d0) * 16), &value->value.v_uint8, 8); @@ -2090,4 +2090,4 @@ DNBArchMachARM64::RestoreRegisterState (uint32_t save_id) #endif // #if defined (ARM_THREAD_STATE64_COUNT) -#endif // #if defined (__arm__) +#endif // #if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) diff --git a/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.h b/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.h index 0d2a998265ff..8f09659c8783 100644 --- a/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.h +++ b/lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.h @@ -11,7 +11,7 @@ #ifndef __DNBArchImplARM64_h__ #define __DNBArchImplARM64_h__ -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) #include #include diff --git a/lldb/tools/debugserver/source/RNBDefs.h b/lldb/tools/debugserver/source/RNBDefs.h index 0d94004ca1fe..984b91152415 100644 --- a/lldb/tools/debugserver/source/RNBDefs.h +++ b/lldb/tools/debugserver/source/RNBDefs.h @@ -45,7 +45,7 @@ extern "C" const double debugserverVersionNumber; #define RNB_ARCH "ppc" -#elif defined (__arm64__) +#elif defined (__arm64__) || defined (__aarch64__) #define RNB_ARCH "arm64" diff --git a/lldb/tools/debugserver/source/RNBRemote.cpp b/lldb/tools/debugserver/source/RNBRemote.cpp index 407f2e781e9a..c731fbea02b7 100644 --- a/lldb/tools/debugserver/source/RNBRemote.cpp +++ b/lldb/tools/debugserver/source/RNBRemote.cpp @@ -798,7 +798,7 @@ RNBRemote::ThreadFunctionReadRemoteData(void *arg) static cpu_type_t best_guess_cpu_type () { -#if defined (__arm__) || defined (__arm64__) +#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__) if (sizeof (char *) == 8) { return CPU_TYPE_ARM64; @@ -4488,7 +4488,7 @@ RNBRemote::HandlePacket_qProcessInfo (const char *p) } #elif defined (__arm__) rep << "ptrsize:4;"; -#elif defined (__arm64__) && defined (ARM_UNIFIED_THREAD_STATE) +#elif (defined (__arm64__) || defined (__aarch64__)) && defined (ARM_UNIFIED_THREAD_STATE) nub_thread_t thread = DNBProcessGetCurrentThreadMachPort (pid); kern_return_t kr; arm_unified_thread_state_t gp_regs;