| // #[bench] is a Rust feature to run benchmarks on performance-critical |
| // code, which previously experienced a runtime panic bug in #103794. |
| // In order to ensure future breakages of this feature are detected, this |
| // smoke test was created, using the benchmarking feature with various |
| // runtime flags. |
| // See https://github.com/rust-lang/rust/issues/103794 |
| |
| //@ ignore-cross-compile |
| // Reason: the compiled binary is executed |
| //@ needs-unwind |
| // Reason: #[bench] and -Zpanic-abort-tests can't be combined |
| |
| use run_make_support::{run, run_with_args, rustc}; |
| |
| fn main() { |
| // Smoke-test that #[bench] isn't entirely broken. |
| rustc().arg("--test").input("smokebench.rs").opt().run(); |
| run_with_args("smokebench", &["--bench"]); |
| run_with_args("smokebench", &["--bench", "noiter"]); |
| run_with_args("smokebench", &["--bench", "yesiter"]); |
| run("smokebench"); |
| } |