1
Fork 0

Add arm64e-apple-ios target

This commit is contained in:
Artyom Tetyukhin 2023-11-15 14:55:18 +04:00
parent 698fcc8219
commit f5e3492194
No known key found for this signature in database
GPG key ID: B81F597D2FF3DD24
10 changed files with 112 additions and 18 deletions

View file

@ -226,6 +226,10 @@ pub(crate) fn create_object_file(sess: &Session) -> Option<write::Object<'static
let mut file = write::Object::new(binary_format, architecture, endianness);
if sess.target.is_like_osx {
if macho_is_arm64e(&sess.target) {
file.set_macho_cpu_subtype(object::macho::CPU_SUBTYPE_ARM64E);
}
file.set_macho_build_version(macho_object_build_version_for_target(&sess.target))
}
if binary_format == BinaryFormat::Coff {
@ -385,6 +389,11 @@ fn macho_object_build_version_for_target(target: &Target) -> object::write::Mach
build_version
}
/// Is Apple's CPU subtype `arm64e`s
fn macho_is_arm64e(target: &Target) -> bool {
return target.llvm_target.starts_with("arm64e");
}
pub enum MetadataPosition {
First,
Last,