root / tests / tcg / xtensa / test_pipeline.S @ c09015dd
History | View | Annotate | Download (2.4 kB)
1 | 7d890b40 | Max Filippov | .include "macros.inc" |
---|---|---|---|
2 | 7d890b40 | Max Filippov | |
3 | 7d890b40 | Max Filippov | .purgem test |
4 | 7d890b40 | Max Filippov | .macro test name |
5 | 7d890b40 | Max Filippov | movi a2, 1f |
6 | 7d890b40 | Max Filippov | movi a3, 99f |
7 | 7d890b40 | Max Filippov | 0: |
8 | 7d890b40 | Max Filippov | ipf a2, 0 |
9 | 7d890b40 | Max Filippov | ipf a2, 4 |
10 | 7d890b40 | Max Filippov | ipf a2, 8 |
11 | 7d890b40 | Max Filippov | ipf a2, 12 |
12 | 7d890b40 | Max Filippov | addi a2, a2, 16 |
13 | 7d890b40 | Max Filippov | blt a2, a3, 0b |
14 | 7d890b40 | Max Filippov | j 1f |
15 | 7d890b40 | Max Filippov | .align 4 |
16 | 7d890b40 | Max Filippov | 1: |
17 | 7d890b40 | Max Filippov | .endm |
18 | 7d890b40 | Max Filippov | |
19 | 7d890b40 | Max Filippov | test_suite pipeline |
20 | 7d890b40 | Max Filippov | |
21 | 7d890b40 | Max Filippov | test register_no_stall |
22 | 7d890b40 | Max Filippov | rsr a3, ccount |
23 | 7d890b40 | Max Filippov | add a5, a6, a6 |
24 | 7d890b40 | Max Filippov | add a6, a5, a5 |
25 | 7d890b40 | Max Filippov | rsr a4, ccount |
26 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
27 | 7d890b40 | Max Filippov | assert eqi, a3, 3 |
28 | 7d890b40 | Max Filippov | test_end |
29 | 7d890b40 | Max Filippov | |
30 | 7d890b40 | Max Filippov | test register_stall |
31 | 7d890b40 | Max Filippov | l32i a5, a1, 0 /* data cache preload */ |
32 | 7d890b40 | Max Filippov | nop |
33 | 7d890b40 | Max Filippov | rsr a3, ccount |
34 | 7d890b40 | Max Filippov | l32i a5, a1, 0 |
35 | 7d890b40 | Max Filippov | add a6, a5, a5 /* M-to-E interlock */ |
36 | 7d890b40 | Max Filippov | rsr a4, ccount |
37 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
38 | 7d890b40 | Max Filippov | assert eqi, a3, 4 |
39 | 7d890b40 | Max Filippov | test_end |
40 | 7d890b40 | Max Filippov | |
41 | 7d890b40 | Max Filippov | test j0_stall |
42 | 7d890b40 | Max Filippov | rsr a3, ccount |
43 | 7d890b40 | Max Filippov | j 1f /* E + 2-cycle penalty */ |
44 | 7d890b40 | Max Filippov | 1: |
45 | 7d890b40 | Max Filippov | rsr a4, ccount /* E */ |
46 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
47 | 7d890b40 | Max Filippov | assert eqi, a3, 4 |
48 | 7d890b40 | Max Filippov | test_end |
49 | 7d890b40 | Max Filippov | |
50 | 7d890b40 | Max Filippov | test j1_stall |
51 | 7d890b40 | Max Filippov | rsr a3, ccount |
52 | 7d890b40 | Max Filippov | j 1f |
53 | 7d890b40 | Max Filippov | nop |
54 | 7d890b40 | Max Filippov | 1: |
55 | 7d890b40 | Max Filippov | rsr a4, ccount |
56 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
57 | 7d890b40 | Max Filippov | assert eqi, a3, 4 |
58 | 7d890b40 | Max Filippov | test_end |
59 | 7d890b40 | Max Filippov | |
60 | 7d890b40 | Max Filippov | test j5_stall |
61 | 7d890b40 | Max Filippov | rsr a3, ccount |
62 | 7d890b40 | Max Filippov | j 1f |
63 | 7d890b40 | Max Filippov | nop |
64 | 7d890b40 | Max Filippov | nop |
65 | 7d890b40 | Max Filippov | nop |
66 | 7d890b40 | Max Filippov | nop |
67 | 7d890b40 | Max Filippov | nop |
68 | 7d890b40 | Max Filippov | 1: |
69 | 7d890b40 | Max Filippov | rsr a4, ccount |
70 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
71 | 7d890b40 | Max Filippov | assert eqi, a3, 4 |
72 | 7d890b40 | Max Filippov | test_end |
73 | 7d890b40 | Max Filippov | |
74 | 7d890b40 | Max Filippov | test b_no_stall |
75 | 7d890b40 | Max Filippov | movi a5, 1 |
76 | 7d890b40 | Max Filippov | rsr a3, ccount |
77 | 7d890b40 | Max Filippov | beqi a5, 2, 1f |
78 | 7d890b40 | Max Filippov | rsr a4, ccount |
79 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
80 | 7d890b40 | Max Filippov | assert eqi, a3, 2 |
81 | 7d890b40 | Max Filippov | 1: |
82 | 7d890b40 | Max Filippov | test_end |
83 | 7d890b40 | Max Filippov | |
84 | 7d890b40 | Max Filippov | test b1_stall |
85 | 7d890b40 | Max Filippov | movi a5, 1 |
86 | 7d890b40 | Max Filippov | rsr a3, ccount |
87 | 7d890b40 | Max Filippov | beqi a5, 1, 1f |
88 | 7d890b40 | Max Filippov | nop |
89 | 7d890b40 | Max Filippov | 1: |
90 | 7d890b40 | Max Filippov | rsr a4, ccount |
91 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
92 | 7d890b40 | Max Filippov | assert eqi, a3, 4 |
93 | 7d890b40 | Max Filippov | test_end |
94 | 7d890b40 | Max Filippov | |
95 | 7d890b40 | Max Filippov | test b5_stall |
96 | 7d890b40 | Max Filippov | movi a5, 1 |
97 | 7d890b40 | Max Filippov | rsr a3, ccount |
98 | 7d890b40 | Max Filippov | beqi a5, 1, 1f |
99 | 7d890b40 | Max Filippov | nop |
100 | 7d890b40 | Max Filippov | nop |
101 | 7d890b40 | Max Filippov | nop |
102 | 7d890b40 | Max Filippov | nop |
103 | 7d890b40 | Max Filippov | nop |
104 | 7d890b40 | Max Filippov | 1: |
105 | 7d890b40 | Max Filippov | rsr a4, ccount |
106 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
107 | 7d890b40 | Max Filippov | assert eqi, a3, 4 |
108 | 7d890b40 | Max Filippov | test_end |
109 | 7d890b40 | Max Filippov | |
110 | 7d890b40 | Max Filippov | /* PS *SYNC */ |
111 | 7d890b40 | Max Filippov | |
112 | 7d890b40 | Max Filippov | test ps_dsync |
113 | 7d890b40 | Max Filippov | rsr a5, ps |
114 | 7d890b40 | Max Filippov | isync |
115 | 7d890b40 | Max Filippov | rsr a3, ccount |
116 | 7d890b40 | Max Filippov | wsr a5, ps |
117 | 7d890b40 | Max Filippov | dsync |
118 | 7d890b40 | Max Filippov | rsr a4, ccount |
119 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
120 | 7d890b40 | Max Filippov | assert eqi, a3, 5 |
121 | 7d890b40 | Max Filippov | test_end |
122 | 7d890b40 | Max Filippov | |
123 | 7d890b40 | Max Filippov | test ps_esync |
124 | 7d890b40 | Max Filippov | rsr a5, ps |
125 | 7d890b40 | Max Filippov | isync |
126 | 7d890b40 | Max Filippov | rsr a3, ccount |
127 | 7d890b40 | Max Filippov | wsr a5, ps |
128 | 7d890b40 | Max Filippov | esync |
129 | 7d890b40 | Max Filippov | rsr a4, ccount |
130 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
131 | 7d890b40 | Max Filippov | assert eqi, a3, 5 |
132 | 7d890b40 | Max Filippov | test_end |
133 | 7d890b40 | Max Filippov | |
134 | 7d890b40 | Max Filippov | test ps_rsync |
135 | 7d890b40 | Max Filippov | rsr a5, ps |
136 | 7d890b40 | Max Filippov | isync |
137 | 7d890b40 | Max Filippov | rsr a3, ccount |
138 | 7d890b40 | Max Filippov | wsr a5, ps |
139 | 7d890b40 | Max Filippov | rsync |
140 | 7d890b40 | Max Filippov | rsr a4, ccount |
141 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
142 | 7d890b40 | Max Filippov | assert eqi, a3, 5 |
143 | 7d890b40 | Max Filippov | test_end |
144 | 7d890b40 | Max Filippov | |
145 | 7d890b40 | Max Filippov | test ps_isync |
146 | 7d890b40 | Max Filippov | rsr a5, ps |
147 | 7d890b40 | Max Filippov | isync |
148 | 7d890b40 | Max Filippov | rsr a3, ccount |
149 | 7d890b40 | Max Filippov | wsr a5, ps |
150 | 7d890b40 | Max Filippov | isync |
151 | 7d890b40 | Max Filippov | rsr a4, ccount |
152 | 7d890b40 | Max Filippov | sub a3, a4, a3 |
153 | 7d890b40 | Max Filippov | movi a4, 9 |
154 | 7d890b40 | Max Filippov | assert eq, a3, a4 |
155 | 7d890b40 | Max Filippov | test_end |
156 | 7d890b40 | Max Filippov | |
157 | 7d890b40 | Max Filippov | test_suite_end |