__arm64__ and __aarch64__ #ifdef adjustments
authorTodd Fiala <todd.fiala@gmail.com>
Wed, 9 Jul 2014 01:29:05 +0000 (01:29 +0000)
committerTodd Fiala <todd.fiala@gmail.com>
Wed, 9 Jul 2014 01:29:05 +0000 (01:29 +0000)
Change by Paul Osmialowski

See http://reviews.llvm.org/D4379 for details.

llvm-svn: 212583

22 files changed:
lldb/source/Core/Error.cpp
lldb/source/Host/common/Host.cpp
lldb/source/Host/macosx/Host.mm
lldb/source/Host/macosx/Symbols.cpp
lldb/source/Interpreter/CommandInterpreter.cpp
lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp
lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp
lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
lldb/test/functionalities/data-formatter/data-formatter-objc/main.m
lldb/tools/debugserver/source/DNB.cpp
lldb/tools/debugserver/source/DNBDefs.h
lldb/tools/debugserver/source/MacOSX/MachThreadList.cpp
lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.cpp
lldb/tools/debugserver/source/MacOSX/arm/DNBArchImpl.h
lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp
lldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.h
lldb/tools/debugserver/source/RNBDefs.h
lldb/tools/debugserver/source/RNBRemote.cpp

index 8929568..03cfd41 100644 (file)
@@ -21,7 +21,7 @@
 #include <cerrno>
 #include <cstdarg>
 
-#if (defined (__arm__) || defined (__arm64__)) && defined (__APPLE__)
+#if (defined (__arm__) || defined (__arm64__) || defined (__aarch64__)) && defined (__APPLE__)
 #include <SpringBoardServices/SpringBoardServer.h>
 #endif
 
index 2daa29c..fa3d3bc 100644 (file)
@@ -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
index a9a1dc8..69b65fb 100644 (file)
@@ -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");
index 39f326a..e0602e7 100644 (file)
@@ -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;
 }
index 959b90f..59b779f 100644 (file)
@@ -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);
index c95d67b..4b3e2c0 100644 (file)
@@ -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 <dlfcn.h>
 #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)
index 94e1836..4e2dbdb 100644 (file)
@@ -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);
index b305189..58b76db 100644 (file)
@@ -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);
index 4e5e1e9..50bbf74 100644 (file)
@@ -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)
index 444f3f5..e246e71 100644 (file)
@@ -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))
             {
index a1708ee..719ba02 100644 (file)
@@ -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))
index f9b2277..6913815 100644 (file)
@@ -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 ();
index 6c6cbd4..6eb7e02 100644 (file)
@@ -10,7 +10,7 @@
 #import <Foundation/Foundation.h>
 
 #if defined(__APPLE__)
-#if defined(__arm__) || defined(__arm64__)
+#if defined(__arm__) || defined(__arm64__) || defined(__aarch64__)
 #define IOS
 #endif
 #endif
index 4114aac..abd1661 100644 (file)
@@ -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);
index ad87c0f..a8c5fd9 100644 (file)
@@ -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
index 68b272a..d3c9a87 100644 (file)
@@ -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
index 2cfdd64..da948e8 100644 (file)
@@ -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
index 4d46091..0f7a466 100644 (file)
@@ -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,
index e8a486f..04a51dc 100644 (file)
@@ -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__)
index 0d2a998..8f09659 100644 (file)
@@ -11,7 +11,7 @@
 #ifndef __DNBArchImplARM64_h__
 #define __DNBArchImplARM64_h__
 
-#if defined (__arm__) || defined (__arm64__)
+#if defined (__arm__) || defined (__arm64__) || defined (__aarch64__)
 
 #include <map>
 #include <mach/thread_status.h>
index 0d94004..984b911 100644 (file)
@@ -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"
 
index 407f2e7..c731fbe 100644 (file)
@@ -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;