aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCStreamer.cpp
diff options
context:
space:
mode:
authorCyndy Ishida <cyndy_ishida@apple.com>2024-01-17 10:35:20 -0800
committerGitHub <noreply@github.com>2024-01-17 10:35:20 -0800
commit735adbf1a80db3fe9ea8edaa172582ed2729a220 (patch)
tree71078ee99c589a6f211769aacbe1174861063ff2 /llvm/lib/MC/MCStreamer.cpp
parentc99da46fc182bd28b0661b1b1a6f0a4c1aef2392 (diff)
downloadllvm-735adbf1a80db3fe9ea8edaa172582ed2729a220.zip
llvm-735adbf1a80db3fe9ea8edaa172582ed2729a220.tar.gz
llvm-735adbf1a80db3fe9ea8edaa172582ed2729a220.tar.bz2
[llvm] Teach MachO about XROS (#78373)
Add support for XROS to encode in Mach-O file formats.
Diffstat (limited to 'llvm/lib/MC/MCStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCStreamer.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/MC/MCStreamer.cpp b/llvm/lib/MC/MCStreamer.cpp
index 0062d08..bc145ae 100644
--- a/llvm/lib/MC/MCStreamer.cpp
+++ b/llvm/lib/MC/MCStreamer.cpp
@@ -1313,6 +1313,9 @@ static VersionTuple getMachoBuildVersionSupportedOS(const Triple &Target) {
case Triple::DriverKit:
// DriverKit always uses the build version load command.
return VersionTuple();
+ case Triple::XROS:
+ // XROS always uses the build version load command.
+ return VersionTuple();
default:
break;
}
@@ -1339,6 +1342,9 @@ getMachoBuildVersionPlatformType(const Triple &Target) {
: MachO::PLATFORM_WATCHOS;
case Triple::DriverKit:
return MachO::PLATFORM_DRIVERKIT;
+ case Triple::XROS:
+ return Target.isSimulatorEnvironment() ? MachO::PLATFORM_XROS_SIMULATOR
+ : MachO::PLATFORM_XROS;
default:
break;
}
@@ -1371,6 +1377,9 @@ void MCStreamer::emitVersionForTarget(
case Triple::DriverKit:
Version = Target.getDriverKitVersion();
break;
+ case Triple::XROS:
+ Version = Target.getOSVersion();
+ break;
default:
llvm_unreachable("unexpected OS type");
}