diff options
| author | Nilstrieb <48135649+Nilstrieb@users.noreply.github.com> | 2022-09-25 18:35:43 +0200 |
|---|---|---|
| committer | Nilstrieb <48135649+Nilstrieb@users.noreply.github.com> | 2022-09-25 18:35:43 +0200 |
| commit | ddf79827418eea02baf6652eac5bbcf60c061dbb (patch) | |
| tree | 54e1c6b1a6852438b99b59ac9f9b1e1ee3afde0c | |
| parent | 6f6010b08bd5e5dd0d03d4abf35a3acc4d2433a2 (diff) | |
| download | rust-ddf79827418eea02baf6652eac5bbcf60c061dbb.tar.gz rust-ddf79827418eea02baf6652eac5bbcf60c061dbb.zip | |
Remove benches from `rustc_middle`
These benches benchmark rust langauge features and not the compiler, so they seem to be in the wrong place here. They also all take <1ns, making them pretty useless. Looking at their git history, they just seem to have been carried around for many, many years. This commit ends their journey.
| -rw-r--r-- | compiler/rustc_middle/benches/lib.rs | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/compiler/rustc_middle/benches/lib.rs b/compiler/rustc_middle/benches/lib.rs deleted file mode 100644 index 237751bcbd7..00000000000 --- a/compiler/rustc_middle/benches/lib.rs +++ /dev/null @@ -1,54 +0,0 @@ -#![feature(test)] - -extern crate test; - -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, - }); -} |
