@@ -9,56 +9,48 @@ use std::intrinsics::{
9
9
10
10
#[ no_mangle]
11
11
pub fn check_prefetch_read_data ( data : & [ i8 ] ) {
12
- unsafe {
13
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 0, i32 1)
14
- prefetch_read_data ( data. as_ptr ( ) , 0 ) ;
15
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 1, i32 1)
16
- prefetch_read_data ( data. as_ptr ( ) , 1 ) ;
17
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 2, i32 1)
18
- prefetch_read_data ( data. as_ptr ( ) , 2 ) ;
19
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 3, i32 1)
20
- prefetch_read_data ( data. as_ptr ( ) , 3 ) ;
21
- }
12
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 0, i32 1)
13
+ prefetch_read_data :: < _ , 0 > ( data. as_ptr ( ) ) ;
14
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 1, i32 1)
15
+ prefetch_read_data :: < _ , 1 > ( data. as_ptr ( ) ) ;
16
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 2, i32 1)
17
+ prefetch_read_data :: < _ , 2 > ( data. as_ptr ( ) ) ;
18
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 3, i32 1)
19
+ prefetch_read_data :: < _ , 3 > ( data. as_ptr ( ) ) ;
22
20
}
23
21
24
22
#[ no_mangle]
25
23
pub fn check_prefetch_write_data ( data : & [ i8 ] ) {
26
- unsafe {
27
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 0, i32 1)
28
- prefetch_write_data ( data. as_ptr ( ) , 0 ) ;
29
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 1, i32 1)
30
- prefetch_write_data ( data. as_ptr ( ) , 1 ) ;
31
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 2, i32 1)
32
- prefetch_write_data ( data. as_ptr ( ) , 2 ) ;
33
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 3, i32 1)
34
- prefetch_write_data ( data. as_ptr ( ) , 3 ) ;
35
- }
24
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 0, i32 1)
25
+ prefetch_write_data :: < _ , 0 > ( data. as_ptr ( ) ) ;
26
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 1, i32 1)
27
+ prefetch_write_data :: < _ , 1 > ( data. as_ptr ( ) ) ;
28
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 2, i32 1)
29
+ prefetch_write_data :: < _ , 2 > ( data. as_ptr ( ) ) ;
30
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 3, i32 1)
31
+ prefetch_write_data :: < _ , 3 > ( data. as_ptr ( ) ) ;
36
32
}
37
33
38
34
#[ no_mangle]
39
35
pub fn check_prefetch_read_instruction ( data : & [ i8 ] ) {
40
- unsafe {
41
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 0, i32 0)
42
- prefetch_read_instruction ( data. as_ptr ( ) , 0 ) ;
43
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 1, i32 0)
44
- prefetch_read_instruction ( data. as_ptr ( ) , 1 ) ;
45
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 2, i32 0)
46
- prefetch_read_instruction ( data. as_ptr ( ) , 2 ) ;
47
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 3, i32 0)
48
- prefetch_read_instruction ( data. as_ptr ( ) , 3 ) ;
49
- }
36
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 0, i32 0)
37
+ prefetch_read_instruction :: < _ , 0 > ( data. as_ptr ( ) ) ;
38
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 1, i32 0)
39
+ prefetch_read_instruction :: < _ , 1 > ( data. as_ptr ( ) ) ;
40
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 2, i32 0)
41
+ prefetch_read_instruction :: < _ , 2 > ( data. as_ptr ( ) ) ;
42
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 0, i32 3, i32 0)
43
+ prefetch_read_instruction :: < _ , 3 > ( data. as_ptr ( ) ) ;
50
44
}
51
45
52
46
#[ no_mangle]
53
47
pub fn check_prefetch_write_instruction ( data : & [ i8 ] ) {
54
- unsafe {
55
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 0, i32 0)
56
- prefetch_write_instruction ( data. as_ptr ( ) , 0 ) ;
57
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 1, i32 0)
58
- prefetch_write_instruction ( data. as_ptr ( ) , 1 ) ;
59
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 2, i32 0)
60
- prefetch_write_instruction ( data. as_ptr ( ) , 2 ) ;
61
- // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 3, i32 0)
62
- prefetch_write_instruction ( data. as_ptr ( ) , 3 ) ;
63
- }
48
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 0, i32 0)
49
+ prefetch_write_instruction :: < _ , 0 > ( data. as_ptr ( ) ) ;
50
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 1, i32 0)
51
+ prefetch_write_instruction :: < _ , 1 > ( data. as_ptr ( ) ) ;
52
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 2, i32 0)
53
+ prefetch_write_instruction :: < _ , 2 > ( data. as_ptr ( ) ) ;
54
+ // CHECK: call void @llvm.prefetch{{.*}}({{.*}}, i32 1, i32 3, i32 0)
55
+ prefetch_write_instruction :: < _ , 3 > ( data. as_ptr ( ) ) ;
64
56
}
0 commit comments