61 const char *arch_name;
67 const char *triple_cstr =
68 arch ? arch->
GetTriple().getTriple().c_str() :
"<null>";
70 LLDB_LOGF(log,
"PlatformRemoteAppleWatch::%s(force=%s, arch={%s,%s})",
71 __FUNCTION__, force ?
"true" :
"false", arch_name, triple_cstr);
75 if (!create && arch && arch->
IsValid()) {
77 case llvm::Triple::arm:
78 case llvm::Triple::aarch64:
79 case llvm::Triple::aarch64_32:
80 case llvm::Triple::thumb: {
81 const llvm::Triple &triple = arch->
GetTriple();
82 llvm::Triple::VendorType vendor = triple.getVendor();
84 case llvm::Triple::Apple:
92 case llvm::Triple::UnknownVendor:
101 switch (triple.getOS()) {
102 case llvm::Triple::WatchOS:
117#if defined(__APPLE__) && \
118 (defined(__arm__) || defined(__arm64__) || defined(__aarch64__))
121 if (force ==
false) {
127 LLDB_LOGF(log,
"PlatformRemoteAppleWatch::%s() creating platform",
133 LLDB_LOGF(log,
"PlatformRemoteAppleWatch::%s() aborting creation of platform",
140 return "Remote Apple Watch platform plug-in.";
152 switch (system_core) {
166 ArchSpec(
"arm64_32-apple-watchos")};
173 ArchSpec(
"arm64_32-apple-watchos")};
179 ArchSpec(
"arm64_32-apple-watchos")};
184 return "watchOS DeviceSupport";
188 return "WatchOS.platform";
#define LLDB_LOGF(log,...)
An architecture specification class.
bool IsValid() const
Tests if this ArchSpec is valid.
llvm::Triple & GetTriple()
Architecture triple accessor.
llvm::Triple::ArchType GetMachine() const
Returns a machine family for the current architecture.
bool TripleVendorWasSpecified() const
const char * GetArchitectureName() const
Returns a static string representing the current architecture.
static bool RegisterPlugin(llvm::StringRef name, llvm::StringRef description, ABICreateInstance create_callback)
static bool UnregisterPlugin(ABICreateInstance create_callback)
A class that represents a running process on the host machine.
Log * GetLog(Cat mask)
Retrieve the Log object for the channel associated with the given log enum.
std::shared_ptr< lldb_private::Platform > PlatformSP