55 const char *arch_name;
61 const char *triple_cstr =
62 arch ? arch->
GetTriple().getTriple().c_str() :
"<null>";
64 LLDB_LOGF(log,
"PlatformRemoteAppleXR::%s(force=%s, arch={%s,%s})",
65 __FUNCTION__, force ?
"true" :
"false", arch_name, triple_cstr);
69 if (!create && arch && arch->
IsValid()) {
71 case llvm::Triple::arm:
72 case llvm::Triple::aarch64:
73 case llvm::Triple::aarch64_32:
74 case llvm::Triple::thumb: {
75 const llvm::Triple &triple = arch->
GetTriple();
76 llvm::Triple::VendorType vendor = triple.getVendor();
78 case llvm::Triple::Apple:
86 case llvm::Triple::UnknownVendor:
95 switch (triple.getOS()) {
96 case llvm::Triple::XROS:
111#if defined(TARGET_OS_XR) && TARGET_OS_XR == 1
113 if (force ==
false) {
119 LLDB_LOGF(log,
"PlatformRemoteAppleXR::%s() creating platform",
125 LLDB_LOGF(log,
"PlatformRemoteAppleXR::%s() aborting creation of platform",
132 return "remote-xros";
136 return "Remote Apple XR platform plug-in.";
142std::vector<lldb_private::ArchSpec>
144 const ArchSpec &process_host_arch) {
145 std::vector<ArchSpec> result;
146 result.push_back(
ArchSpec(
"arm64-apple-xros"));
147 result.push_back(
ArchSpec(
"arm64-apple-xros"));
152 return "XROS DeviceSupport";
156 return "XROS.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