summaryrefslogtreecommitdiffstats
path: root/src/test/run-make/test-benches
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/run-make/test-benches')
-rw-r--r--src/test/run-make/test-benches/Makefile11
-rw-r--r--src/test/run-make/test-benches/smokebench.rs14
2 files changed, 25 insertions, 0 deletions
diff --git a/src/test/run-make/test-benches/Makefile b/src/test/run-make/test-benches/Makefile
new file mode 100644
index 000000000..8fc122515
--- /dev/null
+++ b/src/test/run-make/test-benches/Makefile
@@ -0,0 +1,11 @@
+include ../../run-make-fulldeps/tools.mk
+
+# ignore-cross-compile
+
+all:
+ # Smoke-test that `#[bench]` isn't entirely broken.
+ $(RUSTC) --test smokebench.rs -O
+ $(call RUN,smokebench --bench)
+ $(call RUN,smokebench --bench noiter)
+ $(call RUN,smokebench --bench yesiter)
+ $(call RUN,smokebench)
diff --git a/src/test/run-make/test-benches/smokebench.rs b/src/test/run-make/test-benches/smokebench.rs
new file mode 100644
index 000000000..ef5e5a620
--- /dev/null
+++ b/src/test/run-make/test-benches/smokebench.rs
@@ -0,0 +1,14 @@
+#![feature(test)]
+extern crate test;
+
+#[bench]
+fn smoke_yesiter(b: &mut test::Bencher) {
+ let mut i = 0usize;
+ b.iter(|| {
+ i = i.wrapping_add(1);
+ i
+ })
+}
+
+#[bench]
+fn smoke_noiter(_: &mut test::Bencher) {}