]> git.lizzy.rs Git - rust.git/blob - example/mod_bench.rs
Rustup to rustc 1.45.0-nightly (56daaf669 2020-06-03)
[rust.git] / example / mod_bench.rs
1 #![feature(start, box_syntax, core_intrinsics, lang_items)]
2 #![no_std]
3
4 #[link(name = "c")]
5 extern {}
6
7 #[panic_handler]
8 fn panic_handler(_: &core::panic::PanicInfo) -> ! {
9     core::intrinsics::abort();
10 }
11
12 #[lang="eh_personality"]
13 fn eh_personality(){}
14
15 // Required for rustc_codegen_llvm
16 #[no_mangle]
17 unsafe extern "C" fn _Unwind_Resume() {
18     core::intrinsics::unreachable();
19 }
20
21 #[start]
22 fn main(_argc: isize, _argv: *const *const u8) -> isize {
23     for i in 2..100_000_000 {
24         black_box((i + 1) % i);
25     }
26
27     0
28 }
29
30 #[inline(never)]
31 fn black_box(i: u32) {
32     if i != 1 {
33         core::intrinsics::abort();
34     }
35 }