about summary refs log tree commit diff
path: root/src/tools
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2016-05-08 09:13:19 -0700
committerbors <bors@rust-lang.org>2016-05-08 09:13:19 -0700
commitebe6da34ffc72a701f4189ef7be5ab2c1cb6e8c9 (patch)
tree0cdeaf3f9180cf5db5dde4489d2b7139f331d21f /src/tools
parentcae42a471c13eec8a6470d0845f46f1606d50742 (diff)
parentca03b81abb62b12853d9e0133765355dc6958c59 (diff)
downloadrust-ebe6da34ffc72a701f4189ef7be5ab2c1cb6e8c9.tar.gz
rust-ebe6da34ffc72a701f4189ef7be5ab2c1cb6e8c9.zip
Auto merge of #33414 - Nercury:master, r=alexcrichton
Add armv7-linux-androideabi target

This PR adds `armv7-linux-androideabi` target that matches `armeabi-v7a` Android ABI, ~~downscales `arm-linux-androideabi` target to match `armeabi` Android ABI~~ (TBD later if needed).

This should allow us to get the best performance from every [Android ABI level](http://developer.android.com/ndk/guides/abis.html).

Currently existing target `arm-linux-androideabi` started gaining features out of the supported range of [android `armeabi`](http://developer.android.com/ndk/guides/abis.html). While android compiler does not use a different target for later supported `armv7` architecture, it has distinct ABI name `armeabi-v7a`. We decided to add rust target `armv7-linux-androideabi` to match it.

Note that `NEON`, `VFPv3-D32`, and `ThumbEE` instruction sets are not added, because not all android devices are guaranteed to support all or some of these, and [their availability should be checked at runtime](http://developer.android.com/ndk/guides/abis.html#v7a).

~~This reduces performance of existing `arm-linux-androideabi` and may make it _much_ slower (we are talking more than order of magnitude in some random ad-hoc fp benchmark that I did).~~

Part of #33278.
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/compiletest/src/runtest.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/tools/compiletest/src/runtest.rs b/src/tools/compiletest/src/runtest.rs
index 74e4b81f555..aa1b9d2bafb 100644
--- a/src/tools/compiletest/src/runtest.rs
+++ b/src/tools/compiletest/src/runtest.rs
@@ -33,7 +33,7 @@ use std::process::{Command, Output, ExitStatus};
 pub fn run(config: Config, testpaths: &TestPaths) {
     match &*config.target {
 
-        "arm-linux-androideabi" | "aarch64-linux-android" => {
+        "arm-linux-androideabi" | "armv7-linux-androideabi" | "aarch64-linux-android" => {
             if !config.adb_device_status {
                 panic!("android device not available");
             }
@@ -424,7 +424,7 @@ actual:\n\
 
         let debugger_run_result;
         match &*self.config.target {
-            "arm-linux-androideabi" | "aarch64-linux-android" => {
+            "arm-linux-androideabi" | "armv7-linux-androideabi" | "aarch64-linux-android" => {
 
                 cmds = cmds.replace("run", "continue");
 
@@ -1132,7 +1132,7 @@ actual:\n\
 
         match &*self.config.target {
 
-            "arm-linux-androideabi" | "aarch64-linux-android" => {
+            "arm-linux-androideabi" | "armv7-linux-androideabi" | "aarch64-linux-android" => {
                 self._arm_exec_compiled_test(env)
             }
 
@@ -1230,7 +1230,7 @@ actual:\n\
             }
 
             match &*self.config.target {
-                "arm-linux-androideabi"  | "aarch64-linux-android" => {
+                "arm-linux-androideabi" | "armv7-linux-androideabi" | "aarch64-linux-android" => {
                     self._arm_push_aux_shared_library();
                 }
                 _ => {}