-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprefetch.old.t3e
61 lines (54 loc) · 1.15 KB
/
prefetch.old.t3e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
; prefetch.t3e: put objects into cache
; assuming 8 byte alinment, 32 byte cache line
; need to go from address to (address+size-8)
#include <mpp/asdef.h>
CRI_REGISTER_NAMES
.ident sub$c
;.psect kernel@data,data,cache
;.endp
.psect kernel@code,code,cache
; ENTER prefetch_vector,zero,user
prefetch_vector:: ; su3_vector
ldq zero,0(a0)
ldq zero,16(a0)
ret zero,(ra)
.endp
.psect kernel@code,code,cache
; ENTER prefetch_4_vectors,zero,user
prefetch_4_vectors:: ; su3_vector
ldq zero,0(a0)
ldq zero,16(a0)
ldq zero,0(a1)
ldq zero,16(a1)
ldq zero,0(a2)
ldq zero,16(a2)
ldq zero,0(a3)
ldq zero,16(a3)
ret zero,(ra)
.endp
.psect kernel@code,code,cache
; ENTER prefetch_wvec,zero,user
prefetch_wvec:: ; wilson_vector
ldq zero,0(a0)
ldq zero,32(a0)
ldq zero,64(a0)
ldq zero,88(a0)
ret zero,(ra)
.endp
.psect kernel@code,code,cache
; ENTER prefetch_hwvec,zero,user
prefetch_hwvec:: ; half_wilson_vector
ldq zero,0(a0)
ldq zero,32(a0)
ldq zero,40(a0)
ret zero,(ra)
.endp
.psect kernel@code,code,cache
; ENTER prefetch_matrix,zero,user
prefetch_matrix:: ; su3_matrix
ldq zero,0(a0)
ldq zero,32(a0)
ldq zero,64(a0)
ret zero,(ra)
.endp
.end