about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMazdak Farrokhzad <twingoow@gmail.com>2019-11-24 03:17:03 +0100
committerGitHub <noreply@github.com>2019-11-24 03:17:03 +0100
commitd22bf91320cf3ba08326ca644e39de35592ce394 (patch)
tree7d1fb15021ff6320393277ab0aeb5ce5ac5a566c
parent980ccaa7339a367b4054ef8064d5b1a8004c6ccf (diff)
parent59257e6e88cc09697642cce889445d0fd6572ec1 (diff)
downloadrust-d22bf91320cf3ba08326ca644e39de35592ce394.tar.gz
rust-d22bf91320cf3ba08326ca644e39de35592ce394.zip
Rollup merge of #66659 - Centril:fix-bench, r=Mark-Simulacrum
make `./x.py bench` again

Fixes #54016
-rw-r--r--src/libcore/benches/num/mod.rs4
-rw-r--r--src/librustc/benches/dispatch.rs34
-rw-r--r--src/librustc/benches/lib.rs61
-rw-r--r--src/librustc/benches/pattern.rs25
-rw-r--r--src/librustc_codegen_ssa/back/rpath/tests.rs4
5 files changed, 63 insertions, 65 deletions
diff --git a/src/libcore/benches/num/mod.rs b/src/libcore/benches/num/mod.rs
index f5c49ea5bf0..2dcdf2b6fe9 100644
--- a/src/libcore/benches/num/mod.rs
+++ b/src/libcore/benches/num/mod.rs
@@ -35,7 +35,7 @@ macro_rules! from_str_bench {
                     .iter()
                     .cycle()
                     .take(5_000)
-                    .filter_map(|s| <($t)>::from_str(s).ok())
+                    .filter_map(|s| <$t>::from_str(s).ok())
                     .max()
             })
         }
@@ -51,7 +51,7 @@ macro_rules! from_str_radix_bench {
                     .iter()
                     .cycle()
                     .take(5_000)
-                    .filter_map(|s| <($t)>::from_str_radix(s, $radix).ok())
+                    .filter_map(|s| <$t>::from_str_radix(s, $radix).ok())
                     .max()
             })
         }
diff --git a/src/librustc/benches/dispatch.rs b/src/librustc/benches/dispatch.rs
deleted file mode 100644
index e3b36be5696..00000000000
--- a/src/librustc/benches/dispatch.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-use test::Bencher;
-
-// Static/dynamic method dispatch
-
-struct Struct {
-    field: isize
-}
-
-trait Trait {
-    fn method(&self) -> isize;
-}
-
-impl Trait for Struct {
-    fn method(&self) -> isize {
-        self.field
-    }
-}
-
-#[bench]
-fn trait_vtable_method_call(b: &mut Bencher) {
-    let s = Struct { field: 10 };
-    let t = &s as &Trait;
-    b.iter(|| {
-        t.method()
-    });
-}
-
-#[bench]
-fn trait_static_method_call(b: &mut Bencher) {
-    let s = Struct { field: 10 };
-    b.iter(|| {
-        s.method()
-    });
-}
diff --git a/src/librustc/benches/lib.rs b/src/librustc/benches/lib.rs
index 0f81586d3bd..6b624028896 100644
--- a/src/librustc/benches/lib.rs
+++ b/src/librustc/benches/lib.rs
@@ -1,6 +1,63 @@
+#![feature(slice_patterns)]
 #![feature(test)]
 
 extern crate test;
 
-mod dispatch;
-mod pattern;
+use test::Bencher;
+
+// Static/dynamic method dispatch
+
+struct Struct {
+    field: isize
+}
+
+trait Trait {
+    fn method(&self) -> isize;
+}
+
+impl Trait for Struct {
+    fn method(&self) -> isize {
+        self.field
+    }
+}
+
+#[bench]
+fn trait_vtable_method_call(b: &mut Bencher) {
+    let s = Struct { field: 10 };
+    let t = &s as &dyn Trait;
+    b.iter(|| {
+        t.method()
+    });
+}
+
+#[bench]
+fn trait_static_method_call(b: &mut Bencher) {
+    let s = Struct { field: 10 };
+    b.iter(|| {
+        s.method()
+    });
+}
+
+// Overhead of various match forms
+
+#[bench]
+fn option_some(b: &mut Bencher) {
+    let x = Some(10);
+    b.iter(|| {
+        match x {
+            Some(y) => y,
+            None => 11
+        }
+    });
+}
+
+#[bench]
+fn vec_pattern(b: &mut Bencher) {
+    let x = [1,2,3,4,5,6];
+    b.iter(|| {
+        match x {
+            [1,2,3,..] => 10,
+            _ => 11,
+        }
+    });
+}
diff --git a/src/librustc/benches/pattern.rs b/src/librustc/benches/pattern.rs
deleted file mode 100644
index fd8cc5b83fd..00000000000
--- a/src/librustc/benches/pattern.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-use test::Bencher;
-
-// Overhead of various match forms
-
-#[bench]
-fn option_some(b: &mut Bencher) {
-    let x = Some(10);
-    b.iter(|| {
-        match x {
-            Some(y) => y,
-            None => 11
-        }
-    });
-}
-
-#[bench]
-fn vec_pattern(b: &mut Bencher) {
-    let x = [1,2,3,4,5,6];
-    b.iter(|| {
-        match x {
-            [1,2,3,..] => 10,
-            _ => 11,
-        }
-    });
-}
diff --git a/src/librustc_codegen_ssa/back/rpath/tests.rs b/src/librustc_codegen_ssa/back/rpath/tests.rs
index e42a878d7e4..e8457fe0e19 100644
--- a/src/librustc_codegen_ssa/back/rpath/tests.rs
+++ b/src/librustc_codegen_ssa/back/rpath/tests.rs
@@ -52,7 +52,7 @@ fn test_minimize2() {
 fn test_rpath_relative() {
     if cfg!(target_os = "macos") {
         let config = &mut RPathConfig {
-            used_crates: Vec::new(),
+            used_crates: &[],
             has_rpath: true,
             is_like_osx: true,
             linker_is_gnu: false,
@@ -64,7 +64,7 @@ fn test_rpath_relative() {
         assert_eq!(res, "@loader_path/../lib");
     } else {
         let config = &mut RPathConfig {
-            used_crates: Vec::new(),
+            used_crates: &[],
             out_filename: PathBuf::from("bin/rustc"),
             get_install_prefix_lib_path: &mut || panic!(),
             has_rpath: true,