aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/rust/execute/torture/prefetch_data.rs
blob: 2a847fbcb3978b6fe409fe3e10d57b4c8b5db5d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#![feature(intrinsics)]

#[lang = "sized"]
pub trait Sized {}

extern "rust-intrinsic" {
    fn prefetch_read_data<T>(addr: *const T, locality: i32);
    fn prefetch_write_data<T>(addr: *const T, locality: i32);
}

fn main() -> i32 {
    let a = [1, 2, 3, 4];

    unsafe {
        prefetch_read_data(&a, 3);
        prefetch_write_data(&a[0], 3);
    }

    0
}