Skip to content

Commit 51542a9

Browse files
committed
seperate and move miscellaneous benchmarks to librustc
1 parent 5eebab2 commit 51542a9

File tree

3 files changed

+54
-25
lines changed

3 files changed

+54
-25
lines changed

src/libcore/benches/mem.rs renamed to src/librustc/benches/dispatch.rs

-25
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010

1111
use test::Bencher;
1212

13-
// Completely miscellaneous language-construct benchmarks.
1413
// Static/dynamic method dispatch
1514

1615
struct Struct {
@@ -43,27 +42,3 @@ fn trait_static_method_call(b: &mut Bencher) {
4342
s.method()
4443
});
4544
}
46-
47-
// Overhead of various match forms
48-
49-
#[bench]
50-
fn match_option_some(b: &mut Bencher) {
51-
let x = Some(10);
52-
b.iter(|| {
53-
match x {
54-
Some(y) => y,
55-
None => 11
56-
}
57-
});
58-
}
59-
60-
#[bench]
61-
fn match_vec_pattern(b: &mut Bencher) {
62-
let x = [1,2,3,4,5,6];
63-
b.iter(|| {
64-
match x {
65-
[1,2,3,..] => 10,
66-
_ => 11,
67-
}
68-
});
69-
}

src/librustc/benches/lib.rs

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2+
// file at the top-level directory of this distribution and at
3+
// http://rust-lang.org/COPYRIGHT.
4+
//
5+
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+
// option. This file may not be copied, modified, or distributed
9+
// except according to those terms.
10+
11+
#![deny(warnings)]
12+
13+
#![feature(slice_patterns)]
14+
#![feature(test)]
15+
16+
extern crate test;
17+
18+
mod dispatch;
19+
mod match;

src/librustc/benches/match.rs

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2+
// file at the top-level directory of this distribution and at
3+
// http://rust-lang.org/COPYRIGHT.
4+
//
5+
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+
// option. This file may not be copied, modified, or distributed
9+
// except according to those terms.
10+
11+
use test::Bencher;
12+
13+
// Overhead of various match forms
14+
15+
#[bench]
16+
fn option_some(b: &mut Bencher) {
17+
let x = Some(10);
18+
b.iter(|| {
19+
match x {
20+
Some(y) => y,
21+
None => 11
22+
}
23+
});
24+
}
25+
26+
#[bench]
27+
fn vec_pattern(b: &mut Bencher) {
28+
let x = [1,2,3,4,5,6];
29+
b.iter(|| {
30+
match x {
31+
[1,2,3,..] => 10,
32+
_ => 11,
33+
}
34+
});
35+
}

0 commit comments

Comments
 (0)