Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
iOS: preliminary 64-bit archs support
- Loading branch information
Showing
8 changed files
with
161 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# aarch64-apple-ios configuration | ||
CFG_SDK_NAME_aarch64-apple-ios := iphoneos | ||
CFG_SDK_ARCHS_aarch64-apple-ios := arm64 | ||
ifneq ($(findstring darwin,$(CFG_OSTYPE)),) | ||
CFG_IOS_SDK_aarch64-apple-ios := $(shell xcrun --show-sdk-path -sdk iphoneos 2>/dev/null) | ||
CFG_IOS_SDK_FLAGS_aarch64-apple-ios := -target aarch64-apple-darwin -isysroot $(CFG_IOS_SDK_aarch64-apple-ios) -mios-version-min=7.0 -arch arm64 | ||
CC_aarch64-apple-ios = $(shell xcrun -find -sdk iphoneos clang) | ||
CXX_aarch64-apple-ios = $(shell xcrun -find -sdk iphoneos clang++) | ||
CPP_aarch64-apple-ios = $(shell xcrun -find -sdk iphoneos clang++) | ||
AR_aarch64-apple-ios = $(shell xcrun -find -sdk iphoneos ar) | ||
endif | ||
CFG_LIB_NAME_aarch64-apple-ios = lib$(1).a | ||
CFG_LIB_GLOB_aarch64-apple-ios = lib$(1)-*.a | ||
CFG_LIB_SKIP_INSTALL_aarch64-apple-ios = 1 #lib$(1)-*.a | ||
CFG_STATIC_LIB_NAME_aarch64-apple-ios=lib$(1).a | ||
CFG_LIB_DSYM_GLOB_aarch64-apple-ios = lib$(1)-*.a.dSYM | ||
CFG_CFLAGS_aarch64-apple-ios := $(CFG_IOS_SDK_FLAGS_aarch64-apple-ios) | ||
CFG_JEMALLOC_CFLAGS_aarch64-apple-ios := $(CFG_IOS_SDK_FLAGS_aarch64-apple-ios) | ||
CFG_GCCISH_CFLAGS_aarch64-apple-ios := -Wall -Werror -fPIC $(CFG_IOS_SDK_FLAGS_aarch64-apple-ios) | ||
CFG_GCCISH_CXXFLAGS_aarch64-apple-ios := -fno-rtti $(CFG_IOS_SDK_FLAGS_aarch64-apple-ios) -I$(CFG_IOS_SDK_aarch64-apple-ios)/usr/include/c++/4.2.1 | ||
CFG_GCCISH_LINK_FLAGS_aarch64-apple-ios := -lpthread -syslibroot $(CFG_IOS_SDK_aarch64-apple-ios) -Wl,-no_compact_unwind | ||
CFG_GCCISH_DEF_FLAG_aarch64-apple-ios := -Wl,-exported_symbols_list, | ||
CFG_GCCISH_PRE_LIB_FLAGS_aarch64-apple-ios := | ||
CFG_GCCISH_POST_LIB_FLAGS_aarch64-apple-ios := | ||
CFG_DEF_SUFFIX_aarch64-apple-ios := .darwin.def | ||
CFG_LLC_FLAGS_aarch64-apple-ios := -mattr=+neon,+cyclone,+fp-armv8 | ||
CFG_INSTALL_NAME_aarch64-apple-ios = -Wl,-install_name,@rpath/$(1) | ||
CFG_LIBUV_LINK_FLAGS_aarch64-apple-ios = | ||
CFG_EXE_SUFFIX_aarch64-apple-ios := | ||
CFG_WINDOWSY_aarch64-apple-ios := | ||
CFG_UNIXY_aarch64-apple-ios := 1 | ||
CFG_PATH_MUNGE_aarch64-apple-ios := true | ||
CFG_LDPATH_aarch64-apple-ios := | ||
CFG_RUN_aarch64-apple-ios = $(2) | ||
CFG_RUN_TARG_aarch64-apple-ios = $(call CFG_RUN_aarch64-apple-ios,,$(2)) | ||
CFG_GNU_TRIPLE_aarch64-apple-ios := aarch64-apple-ios |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# x86_64-apple-ios configuration | ||
CFG_SDK_NAME_x86_64-apple-ios := iphonesimulator | ||
CFG_SDK_ARCHS_x86_64-apple-ios := x86_64 | ||
ifneq ($(findstring darwin,$(CFG_OSTYPE)),) | ||
CFG_IOSSIM_SDK_x86_64-apple-ios := $(shell xcrun --show-sdk-path -sdk iphonesimulator 2>/dev/null) | ||
CFG_IOSSIM_FLAGS_x86_64-apple-ios := -m64 -target x86_64-apple-ios -isysroot $(CFG_IOSSIM_SDK_x86_64-apple-ios) -mios-simulator-version-min=7.0 | ||
CC_x86_64-apple-ios = $(shell xcrun -find -sdk iphonesimulator clang) | ||
CXX_x86_64-apple-ios = $(shell xcrun -find -sdk iphonesimulator clang++) | ||
CPP_x86_64-apple-ios = $(shell xcrun -find -sdk iphonesimulator clang++) | ||
AR_x86_64-apple-ios = $(shell xcrun -find -sdk iphonesimulator ar) | ||
endif | ||
CFG_LIB_NAME_x86_64-apple-ios = lib$(1).a | ||
CFG_LIB_GLOB_x86_64-apple-ios = lib$(1)-*.a | ||
CFG_LIB_SKIP_INSTALL_x86_64-apple-ios = 1 #lib$(1)-*.a | ||
CFG_STATIC_LIB_NAME_x86_64-apple-ios=lib$(1).a | ||
CFG_LIB_DSYM_GLOB_x86_64-apple-ios = lib$(1)-*.a.dSYM | ||
CFG_CFLAGS_x86_64-apple-ios := $(CFG_IOSSIM_FLAGS_x86_64-apple-ios) | ||
CFG_JEMALLOC_CFLAGS_x86_64-apple-ios := $(CFG_IOSSIM_FLAGS_x86_64-apple-ios) | ||
CFG_GCCISH_CFLAGS_x86_64-apple-ios := -Wall -Werror -fPIC $(CFG_IOSSIM_FLAGS_x86_64-apple-ios) | ||
CFG_GCCISH_CXXFLAGS_x86_64-apple-ios := -fno-rtti $(CFG_IOSSIM_FLAGS_x86_64-apple-ios) -I$(CFG_IOSSIM_SDK_x86_64-apple-ios)/usr/include/c++/4.2.1 | ||
CFG_GCCISH_LINK_FLAGS_x86_64-apple-ios := -lpthread -Wl,-no_compact_unwind -m64 -Wl,-syslibroot $(CFG_IOSSIM_SDK_x86_64-apple-ios) | ||
CFG_GCCISH_DEF_FLAG_x86_64-apple-ios := -Wl,-exported_symbols_list, | ||
CFG_GCCISH_PRE_LIB_FLAGS_x86_64-apple-ios := | ||
CFG_GCCISH_POST_LIB_FLAGS_x86_64-apple-ios := | ||
CFG_DEF_SUFFIX_x86_64-apple-ios := .darwin.def | ||
CFG_LLC_FLAGS_x86_64-apple-ios := | ||
CFG_INSTALL_NAME_x86_64-apple-ios = -Wl,-install_name,@rpath/$(1) | ||
CFG_LIBUV_LINK_FLAGS_x86_64-apple-ios := | ||
CFG_EXE_SUFFIX_x86_64-apple-ios := | ||
CFG_WINDOWSY_x86_64-apple-ios := | ||
CFG_UNIXY_x86_64-apple-ios := 1 | ||
CFG_PATH_MUNGE_x86_64-apple-ios := true | ||
CFG_LDPATH_x86_64-apple-ios := | ||
CFG_RUN_x86_64-apple-ios = $(2) | ||
CFG_RUN_TARG_x86_64-apple-ios = $(call CFG_RUN_x86_64-apple-ios,,$(2)) | ||
CFG_GNU_TRIPLE_i386-apple-ios := x86_64-apple-ios |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT | ||
// file at the top-level directory of this distribution and at | ||
// http://rust-lang.org/COPYRIGHT. | ||
// | ||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or | ||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license | ||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your | ||
// option. This file may not be copied, modified, or distributed | ||
// except according to those terms. | ||
|
||
use target::{Target, TargetOptions}; | ||
use super::apple_ios_base::{opts, Arch}; | ||
|
||
pub fn target() -> Target { | ||
Target { | ||
// reference layout: e-m:o-i64:64-i128:128-n32:64-S128 | ||
data_layout: "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-\ | ||
i128:128-f32:32:32-f64:64:64-v64:64:64-v128:128:128-\ | ||
a:0:64-n32:64-S128".to_string(), | ||
llvm_target: "arm64-apple-ios".to_string(), | ||
target_endian: "little".to_string(), | ||
target_pointer_width: "64".to_string(), | ||
arch: "aarch64".to_string(), | ||
target_os: "ios".to_string(), | ||
options: TargetOptions { | ||
features: "+neon,+fp-armv8,+cyclone".to_string(), | ||
eliminate_frame_pointer: false, | ||
.. opts(Arch::Arm64) | ||
}, | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT | ||
// file at the top-level directory of this distribution and at | ||
// http://rust-lang.org/COPYRIGHT. | ||
// | ||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or | ||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license | ||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your | ||
// option. This file may not be copied, modified, or distributed | ||
// except according to those terms. | ||
|
||
use target::Target; | ||
use super::apple_ios_base::{opts, Arch}; | ||
|
||
pub fn target() -> Target { | ||
Target { | ||
data_layout: "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-\ | ||
f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-\ | ||
s0:64:64-f80:128:128-n8:16:32:64".to_string(), | ||
llvm_target: "x86_64-apple-ios".to_string(), | ||
target_endian: "little".to_string(), | ||
target_pointer_width: "64".to_string(), | ||
arch: "x86_64".to_string(), | ||
target_os: "ios".to_string(), | ||
options: opts(Arch::X86_64) | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
saw approval from alexcrichton
at vhbit@577d0db
577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
merging 4 batched pull requests into batch
577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
status: {"merge_sha": "b5571ed71a5879c0495a982506258d5d267744ed", "rollup_pulls": [[20699, "577d0dbcb88a53e45e5c24c3a9a2e1c22acd31aa"], [20793, "38a1bb13cd9e46cdca7bd061820e5e990ff06e69"], [20799, "2730075ad48623c77c722790389821523d7d4526"], [20800, "2d2159f5b0269ecc50e546d265bb9fdb98c6be36"]]}
577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Testing rollup candidate = b5571ed
Successful merges:
[_; N]
syntax instead of[_, ..N]
#20793 Make rustdoc use the[_; N]
syntax instead of[_, ..N]
(ktossell/rustdoc-fixedvector-syntax = 38a1bb1)where
clause not honored in traitimpl
body #20414 (jroesch/add-regression-for-issue-20414 = 2d2159f)577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all tests pass:
success: http://buildbot.rust-lang.org/builders/auto-mac-32-opt/builds/3085
success: http://buildbot.rust-lang.org/builders/auto-mac-64-opt/builds/3078
success: http://buildbot.rust-lang.org/builders/auto-mac-64-nopt-t/builds/3079
success: http://buildbot.rust-lang.org/builders/auto-linux-32-opt/builds/3070
success: http://buildbot.rust-lang.org/builders/auto-linux-32-nopt-t/builds/3070
success: http://buildbot.rust-lang.org/builders/auto-linux-64-opt/builds/3073
success: http://buildbot.rust-lang.org/builders/auto-linux-64-nopt-t/builds/3066
success: http://buildbot.rust-lang.org/builders/auto-linux-64-x-android-t/builds/3061
success: http://buildbot.rust-lang.org/builders/auto-win-32-opt/builds/2738
success: http://buildbot.rust-lang.org/builders/auto-win-32-nopt-t/builds/2736
success: http://buildbot.rust-lang.org/builders/auto-win-64-opt/builds/1574
success: http://buildbot.rust-lang.org/builders/auto-win-64-nopt-t/builds/1566
577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fast-forwarding master to auto = b5571ed
577d0db
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fast-forwarding master to auto = b5571ed