Parent Directory | Revision Log
Revision 1.4 - (view) (download)
1 : | ia64p | 1.4 | .file "quant_h263_ia64.s" |
2 : | ia64p | 1.3 | .pred.safe_across_calls p1-p5,p16-p63 |
3 : | .section .rodata | ||
4 : | .align 4 | ||
5 : | .type multipliers#,@object | ||
6 : | .size multipliers#,128 | ||
7 : | multipliers: | ||
8 : | data4 0 | ||
9 : | data4 32769 | ||
10 : | data4 16385 | ||
11 : | data4 10923 | ||
12 : | data4 8193 | ||
13 : | data4 6554 | ||
14 : | data4 5462 | ||
15 : | data4 4682 | ||
16 : | data4 4097 | ||
17 : | data4 3641 | ||
18 : | data4 3277 | ||
19 : | data4 2979 | ||
20 : | data4 2731 | ||
21 : | data4 2521 | ||
22 : | data4 2341 | ||
23 : | data4 2185 | ||
24 : | data4 2049 | ||
25 : | data4 1928 | ||
26 : | data4 1821 | ||
27 : | data4 1725 | ||
28 : | data4 1639 | ||
29 : | data4 1561 | ||
30 : | data4 1490 | ||
31 : | data4 1425 | ||
32 : | data4 1366 | ||
33 : | data4 1311 | ||
34 : | data4 1261 | ||
35 : | data4 1214 | ||
36 : | data4 1171 | ||
37 : | data4 1130 | ||
38 : | data4 1093 | ||
39 : | data4 1058 | ||
40 : | .global __divdi3# | ||
41 : | .text | ||
42 : | .align 16 | ||
43 : | .global quant_intra_ia64# | ||
44 : | .proc quant_intra_ia64# | ||
45 : | quant_intra_ia64: | ||
46 : | ia64p | 1.4 | .prologue |
47 : | ia64p | 1.3 | .save ar.pfs, r38 |
48 : | alloc r38 = ar.pfs, 4, 3, 2, 0 | ||
49 : | adds r16 = -8, r12 | ||
50 : | .fframe 32 | ||
51 : | adds r12 = -32, r12 | ||
52 : | mov r17 = ar.lc | ||
53 : | addl r14 = @ltoff(multipliers#), gp | ||
54 : | ld2 r15 = [r33] | ||
55 : | ;; | ||
56 : | .savesp ar.lc, 24 | ||
57 : | st8 [r16] = r17, 8 | ||
58 : | ld8 r14 = [r14] | ||
59 : | sxt2 r15 = r15 | ||
60 : | ;; | ||
61 : | .save.f 0x1 | ||
62 : | stf.spill [r16] = f2 | ||
63 : | .save rp, r37 | ||
64 : | mov r37 = b0 | ||
65 : | .body | ||
66 : | dep.z r36 = r34, 1, 15 | ||
67 : | dep.z r16 = r34, 2, 32 | ||
68 : | cmp4.ge p6, p7 = 0, r15 | ||
69 : | ;; | ||
70 : | add r16 = r16, r14 | ||
71 : | ;; | ||
72 : | ld4 r16 = [r16] | ||
73 : | ;; | ||
74 : | setf.sig f2 = r16 | ||
75 : | (p6) br.cond.dptk .L8 | ||
76 : | extr r39 = r35, 1, 31 | ||
77 : | sxt4 r40 = r35 | ||
78 : | ;; | ||
79 : | add r39 = r39, r15 | ||
80 : | br .L21 | ||
81 : | ;; | ||
82 : | .L8: | ||
83 : | extr r39 = r35, 1, 31 | ||
84 : | sxt4 r40 = r35 | ||
85 : | ;; | ||
86 : | sub r39 = r15, r39 | ||
87 : | ;; | ||
88 : | .L21: | ||
89 : | sxt4 r39 = r39 | ||
90 : | br.call.sptk.many b0 = __divdi3# | ||
91 : | ;; | ||
92 : | addl r14 = 62, r0 | ||
93 : | st2 [r32] = r8 | ||
94 : | addl r19 = 1, r0 | ||
95 : | ;; | ||
96 : | mov ar.lc = r14 | ||
97 : | ;; | ||
98 : | .L20: | ||
99 : | dep.z r17 = r19, 1, 32 | ||
100 : | ;; | ||
101 : | add r15 = r17, r33 | ||
102 : | adds r19 = 1, r19 | ||
103 : | ;; | ||
104 : | ld2 r14 = [r15] | ||
105 : | ;; | ||
106 : | sxt2 r14 = r14 | ||
107 : | ;; | ||
108 : | mov r16 = r14 | ||
109 : | mov r18 = r14 | ||
110 : | ;; | ||
111 : | sub r15 = r0, r16 | ||
112 : | cmp4.le p8, p9 = r36, r16 | ||
113 : | cmp4.le p6, p7 = r0, r16 | ||
114 : | ;; | ||
115 : | sxt2 r14 = r15 | ||
116 : | (p6) br.cond.dptk .L14 | ||
117 : | ;; | ||
118 : | mov r16 = r14 | ||
119 : | add r18 = r17, r32 | ||
120 : | ;; | ||
121 : | setf.sig f6 = r16 | ||
122 : | cmp4.le p6, p7 = r36, r16 | ||
123 : | mov r15 = r18 | ||
124 : | ;; | ||
125 : | xma.l f6 = f6, f2, f0 | ||
126 : | (p7) st2 [r18] = r0 | ||
127 : | ;; | ||
128 : | getf.sig r14 = f6 | ||
129 : | ;; | ||
130 : | extr r14 = r14, 16, 16 | ||
131 : | ;; | ||
132 : | sub r14 = r0, r14 | ||
133 : | ;; | ||
134 : | (p6) st2 [r15] = r14 | ||
135 : | br .L12 | ||
136 : | .L14: | ||
137 : | ia64p | 1.4 | .pred.rel "mutex", p8, p9 |
138 : | ia64p | 1.3 | setf.sig f6 = r18 |
139 : | add r16 = r17, r32 | ||
140 : | ;; | ||
141 : | xma.l f6 = f6, f2, f0 | ||
142 : | mov r15 = r16 | ||
143 : | (p9) st2 [r16] = r0 | ||
144 : | ;; | ||
145 : | getf.sig r14 = f6 | ||
146 : | ;; | ||
147 : | extr r14 = r14, 16, 16 | ||
148 : | ;; | ||
149 : | (p8) st2 [r15] = r14 | ||
150 : | .L12: | ||
151 : | br.cloop.sptk.few .L20 | ||
152 : | adds r18 = 24, r12 | ||
153 : | ;; | ||
154 : | ld8 r19 = [r18], 8 | ||
155 : | mov ar.pfs = r38 | ||
156 : | mov b0 = r37 | ||
157 : | ;; | ||
158 : | mov ar.lc = r19 | ||
159 : | ldf.fill f2 = [r18] | ||
160 : | .restore sp | ||
161 : | adds r12 = 32, r12 | ||
162 : | br.ret.sptk.many b0 | ||
163 : | .endp quant_intra_ia64# | ||
164 : | .common quant_intra#,8,8 | ||
165 : | .common dequant_intra#,8,8 | ||
166 : | .align 16 | ||
167 : | .global dequant_intra_ia64# | ||
168 : | .proc dequant_intra_ia64# | ||
169 : | dequant_intra_ia64: | ||
170 : | .prologue | ||
171 : | ld2 r14 = [r33] | ||
172 : | andcm r15 = 1, r34 | ||
173 : | setf.sig f8 = r35 | ||
174 : | ;; | ||
175 : | sxt2 r14 = r14 | ||
176 : | sub r15 = r34, r15 | ||
177 : | addl r16 = -2048, r0 | ||
178 : | ;; | ||
179 : | setf.sig f6 = r14 | ||
180 : | setf.sig f7 = r15 | ||
181 : | shladd r34 = r34, 1, r0 | ||
182 : | ;; | ||
183 : | xma.l f8 = f6, f8, f0 | ||
184 : | .save ar.lc, r2 | ||
185 : | mov r2 = ar.lc | ||
186 : | ;; | ||
187 : | .body | ||
188 : | getf.sig r14 = f8 | ||
189 : | setf.sig f6 = r34 | ||
190 : | ;; | ||
191 : | sxt2 r15 = r14 | ||
192 : | st2 [r32] = r14 | ||
193 : | ;; | ||
194 : | cmp4.le p6, p7 = r16, r15 | ||
195 : | ;; | ||
196 : | (p7) st2 [r32] = r16 | ||
197 : | (p7) br.cond.dptk .L32 | ||
198 : | addl r14 = 2047, r0 | ||
199 : | ;; | ||
200 : | cmp4.ge p6, p7 = r14, r15 | ||
201 : | ;; | ||
202 : | (p7) st2 [r32] = r14 | ||
203 : | .L32: | ||
204 : | addl r14 = 62, r0 | ||
205 : | addl r19 = 1, r0 | ||
206 : | addl r22 = 2048, r0 | ||
207 : | addl r21 = -2048, r0 | ||
208 : | addl r20 = 2047, r0 | ||
209 : | ;; | ||
210 : | mov ar.lc = r14 | ||
211 : | ;; | ||
212 : | .L56: | ||
213 : | dep.z r16 = r19, 1, 32 | ||
214 : | ;; | ||
215 : | add r14 = r16, r33 | ||
216 : | add r17 = r16, r32 | ||
217 : | adds r19 = 1, r19 | ||
218 : | ;; | ||
219 : | ld2 r15 = [r14] | ||
220 : | ;; | ||
221 : | sxt2 r15 = r15 | ||
222 : | ;; | ||
223 : | cmp4.ne p6, p7 = 0, r15 | ||
224 : | cmp4.le p8, p9 = r0, r15 | ||
225 : | ;; | ||
226 : | (p7) st2 [r17] = r0 | ||
227 : | (p7) br.cond.dpnt .L36 | ||
228 : | add r18 = r16, r32 | ||
229 : | sub r17 = r0, r15 | ||
230 : | ;; | ||
231 : | mov r14 = r18 | ||
232 : | (p8) br.cond.dptk .L40 | ||
233 : | setf.sig f8 = r17 | ||
234 : | ;; | ||
235 : | xma.l f8 = f6, f8, f7 | ||
236 : | ;; | ||
237 : | getf.sig r15 = f8 | ||
238 : | ;; | ||
239 : | cmp4.lt p6, p7 = r22, r15 | ||
240 : | sub r16 = r0, r15 | ||
241 : | ;; | ||
242 : | (p7) st2 [r14] = r16 | ||
243 : | (p6) st2 [r14] = r21 | ||
244 : | br .L36 | ||
245 : | .L40: | ||
246 : | setf.sig f8 = r15 | ||
247 : | ;; | ||
248 : | xma.l f8 = f6, f8, f7 | ||
249 : | ;; | ||
250 : | getf.sig r15 = f8 | ||
251 : | ;; | ||
252 : | cmp4.le p6, p7 = r20, r15 | ||
253 : | ;; | ||
254 : | (p6) mov r14 = r20 | ||
255 : | (p7) mov r14 = r15 | ||
256 : | ;; | ||
257 : | st2 [r18] = r14 | ||
258 : | .L36: | ||
259 : | br.cloop.sptk.few .L56 | ||
260 : | ;; | ||
261 : | mov ar.lc = r2 | ||
262 : | br.ret.sptk.many b0 | ||
263 : | .endp dequant_intra_ia64# | ||
264 : | |||
265 : | |||
266 : | |||
267 : | //uint32_t quant_inter_ia64(int16_t *coeff, const int16_t *data, const uint32_t quant) | ||
268 : | |||
269 : | |||
270 : | |||
271 : | .common quant_inter#,8,8 | ||
272 : | .align 16 | ||
273 : | .global quant_inter_ia64# | ||
274 : | .proc quant_inter_ia64# | ||
275 : | quant_inter_ia64: | ||
276 : | |||
277 : | |||
278 : | ia64p | 1.4 | //******************************************************* |
279 : | //* * | ||
280 : | //* const uint32_t mult = multipliers[quant]; * | ||
281 : | //* const uint16_t quant_m_2 = quant << 1; * | ||
282 : | //* const uint16_t quant_d_2 = quant >> 1; * | ||
283 : | //* int sum = 0; * | ||
284 : | //* uint32_t i; * | ||
285 : | //* int16_t acLevel,acL; * | ||
286 : | //* * | ||
287 : | //*******************************************************/ | ||
288 : | ia64p | 1.3 | |
289 : | |||
290 : | |||
291 : | LL=3 // LL = load latency | ||
292 : | ia64p | 1.4 | //if LL is changed, you'll also have to change the .pred.rel... parts below! |
293 : | ia64p | 1.3 | .prologue |
294 : | addl r14 = @ltoff(multipliers#), gp | ||
295 : | dep.z r15 = r34, 2, 32 | ||
296 : | .save ar.lc, r2 | ||
297 : | mov r2 = ar.lc | ||
298 : | ;; | ||
299 : | .body | ||
300 : | alloc r9=ar.pfs,0,24,0,24 | ||
301 : | mov r17 = ar.ec | ||
302 : | mov r10 = pr | ||
303 : | ld8 r14 = [r14] | ||
304 : | extr.u r16 = r34, 1, 16 //r16 = quant_d_2 | ||
305 : | dep.z r20 = r34, 1, 15 //r20 = quant_m_2 | ||
306 : | ;; | ||
307 : | add r15 = r15, r14 | ||
308 : | mov r21 = r16 //r21 = quant_d_2 | ||
309 : | mov r8 = r0 //r8 = sum = 0 | ||
310 : | mov pr.rot = 0 //p16-p63 = 0 | ||
311 : | ;; | ||
312 : | ld4 r15 = [r15] | ||
313 : | addl r14 = 63, r0 | ||
314 : | mov pr.rot = 1 << 16 //p16=1 | ||
315 : | ;; | ||
316 : | mov ar.lc = r14 | ||
317 : | mov ar.ec = LL+9 | ||
318 : | mov r29 = r15 | ||
319 : | ;; | ||
320 : | mov r15 = r33 //r15 = data | ||
321 : | mov r18 = r32 //r18 = coeff | ||
322 : | ;; | ||
323 : | |||
324 : | |||
325 : | .rotr ac1[LL+3], ac2[8], ac3[2] | ||
326 : | .rotp p[LL+9], cmp1[8], cmp1neg[8],cmp2[5], cmp2neg[2] | ||
327 : | |||
328 : | |||
329 : | |||
330 : | ia64p | 1.4 | //******************************************************************************* |
331 : | //* * | ||
332 : | //* for (i = 0; i < 64; i++) { * | ||
333 : | //* acL=acLevel = data[i]; * | ||
334 : | //* acLevel = ((acLevel < 0)?-acLevel:acLevel) - quant_d_2; * | ||
335 : | //* if (acLevel < quant_m_2){ * | ||
336 : | //* acLevel = 0; * | ||
337 : | //* } * | ||
338 : | //* acLevel = (acLevel * mult) >> SCALEBITS; * | ||
339 : | //* sum += acLevel; * | ||
340 : | //* coeff[i] = ((acL < 0)?-acLevel:acLevel); * | ||
341 : | //* } * | ||
342 : | //* * | ||
343 : | //*******************************************************************************/ | ||
344 : | ia64p | 1.3 | |
345 : | |||
346 : | |||
347 : | .explicit | ||
348 : | .L58: | ||
349 : | ia64p | 1.4 | .pred.rel "clear", p29, p37 |
350 : | .pred.rel "mutex", p29, p37 | ||
351 : | |||
352 : | ia64p | 1.3 | //pipeline stage |
353 : | {.mmi | ||
354 : | (p[0]) ld2 ac1[0] = [r15],2 // 0 acL=acLevel = data[i]; | ||
355 : | (p[LL+1]) sub ac2[0] = r0, ac1[LL+1] // LL+1 ac2=-acLevel | ||
356 : | (p[LL]) sxt2 ac1[LL] = ac1[LL] // LL | ||
357 : | } | ||
358 : | {.mmi | ||
359 : | (p[LL+1]) cmp4.le cmp1[0], cmp1neg[0] = r0, ac1[LL+1] // LL+1 cmp1 = (0<=acLevel) ; cmp1neg = !(0<=acLevel) | ||
360 : | (p[LL+4]) cmp4.le cmp2[0], cmp2neg[0] = r20, ac2[3] // LL+4 cmp2 = (quant_m_2 < acLevel) ; cmp2neg = !(quant_m_2 < acLevel) | ||
361 : | (cmp1[1]) sub ac2[1] = ac1[LL+2], r21 // LL+2 acLevel = acLevel - quant_d_2; | ||
362 : | } | ||
363 : | {.mmi | ||
364 : | (cmp2neg[1]) mov ac2[4] = r0 // LL+5 if (acLevel < quant_m_2) acLevel=0; | ||
365 : | (cmp1neg[1]) sub ac2[1] = ac2[1], r21 // LL+2 acLevel = ac2 - quant_d_2; | ||
366 : | (p[LL+3]) sxt2 ac2[2] = ac2[2] // LL+3 | ||
367 : | } | ||
368 : | {.mmi | ||
369 : | ia64p | 1.4 | .pred.rel "mutex", p34, p42 |
370 : | ia64p | 1.3 | (cmp1[6]) mov ac3[0] = ac2[6] // LL+7 ac3 = acLevel; |
371 : | (cmp1neg[6]) sub ac3[0] = r0, ac2[6] // LL+7 ac3 = -acLevel; | ||
372 : | (p[LL+6]) pmpyshr2.u ac2[5] = r29, ac2[5], 16 // LL+6 acLevel = (acLevel * mult) >> SCALEBITS; | ||
373 : | } | ||
374 : | {.mib | ||
375 : | (p[LL+8]) st2 [r18] = ac3[1] , 2 // LL+8 coeff[i] = ac3; | ||
376 : | (cmp2[4]) add r8 = r8, ac2[7] // LL+8 sum += acLevel; | ||
377 : | br.ctop.sptk.few .L58 | ||
378 : | ;; | ||
379 : | } | ||
380 : | ia64p | 1.4 | |
381 : | .pred.rel "clear", p29, p37 | ||
382 : | ia64p | 1.3 | .default |
383 : | mov ar.ec = r17 | ||
384 : | ;; | ||
385 : | mov ar.lc = r2 | ||
386 : | mov pr = r10, -1 | ||
387 : | mov ar.pfs = r9 | ||
388 : | br.ret.sptk.many b0 | ||
389 : | .endp quant_inter_ia64# | ||
390 : | |||
391 : | |||
392 : | |||
393 : | |||
394 : | |||
395 : | |||
396 : | |||
397 : | // void dequant_inter_ia64(int16_t *data, const int16_t *coeff, const uint32_t quant) | ||
398 : | |||
399 : | .common dequant_inter#,8,8 | ||
400 : | .align 16 | ||
401 : | .global dequant_inter_ia64# | ||
402 : | .proc dequant_inter_ia64# | ||
403 : | dequant_inter_ia64: | ||
404 : | |||
405 : | //*********************************************************************** | ||
406 : | ia64p | 1.4 | //* * |
407 : | //* const uint16_t quant_m_2 = quant << 1; * | ||
408 : | //* const uint16_t quant_add = (quant & 1 ? quant : quant - 1); * | ||
409 : | //* uint32_t i; * | ||
410 : | //* * | ||
411 : | //*********************************************************************** | ||
412 : | ia64p | 1.3 | |
413 : | |||
414 : | |||
415 : | |||
416 : | .prologue | ||
417 : | andcm r14 = 1, r34 | ||
418 : | dep.z r29 = r34, 1, 15 | ||
419 : | alloc r9=ar.pfs,0,32,0,32 | ||
420 : | .save ar.lc, r2 | ||
421 : | mov r2 = ar.lc | ||
422 : | ;; | ||
423 : | .body | ||
424 : | sub r15 = r34, r14 // r15 = quant | ||
425 : | addl r14 = 63, r0 | ||
426 : | addl r21 = -2048, r0 | ||
427 : | addl r20 = 2047, r0 | ||
428 : | mov r16 = ar.ec | ||
429 : | mov r17 = pr | ||
430 : | ;; | ||
431 : | zxt2 r15 = r15 | ||
432 : | mov ar.lc = r14 | ||
433 : | mov pr.rot = 0 | ||
434 : | ;; | ||
435 : | adds r14 = 0, r33 // r14 = coeff | ||
436 : | mov r18 = r32 // r18 = data | ||
437 : | mov ar.ec = LL+10 | ||
438 : | mov pr.rot = 1 << 16 | ||
439 : | ;; | ||
440 : | |||
441 : | ia64p | 1.4 | //******************************************************************************* |
442 : | //* * | ||
443 : | //*for (i = 0; i < 64; i++) { * | ||
444 : | //* int16_t acLevel = coeff[i]; * | ||
445 : | //* * | ||
446 : | //* if (acLevel == 0) * | ||
447 : | //* { * | ||
448 : | //* data[i] = 0; * | ||
449 : | //* } * | ||
450 : | //* else if (acLevel < 0) * | ||
451 : | //* { * | ||
452 : | //* acLevel = acLevel * quant_m_2 - quant_add; * | ||
453 : | //* data[i] = (acLevel >= -2048 ? acLevel : -2048); * | ||
454 : | //* } * | ||
455 : | //* else // if (acLevel > 0) * | ||
456 : | //* { * | ||
457 : | //* acLevel = acLevel * quant_m_2 + quant_add; * | ||
458 : | //* data[i] = (acLevel <= 2047 ? acLevel : 2047); * | ||
459 : | //* } * | ||
460 : | //* } * | ||
461 : | //* * | ||
462 : | //*******************************************************************************/ | ||
463 : | ia64p | 1.3 | |
464 : | |||
465 : | |||
466 : | LL=2 // LL := load latency | ||
467 : | ia64p | 1.4 | //if LL is changed, you'll also have to change the .pred.rel... parts below! |
468 : | ia64p | 1.3 | |
469 : | |||
470 : | .rotr ac1[LL+10], x[5], y1[3], y2[3] | ||
471 : | .rotp p[LL+10] , cmp1neg[8], cmp2[5], cmp2neg[5],cmp3[2], cmp3neg[2] | ||
472 : | |||
473 : | .explicit | ||
474 : | //pipeline stage | ||
475 : | |||
476 : | .L60: | ||
477 : | ia64p | 1.4 | .pred.rel "clear", p36 |
478 : | .pred.rel "mutex", p47, p49 | ||
479 : | .pred.rel "mutex", p46, p48 | ||
480 : | .pred.rel "mutex", p40, p45 | ||
481 : | .pred.rel "mutex", p39, p44 | ||
482 : | .pred.rel "mutex", p38, p43 | ||
483 : | .pred.rel "mutex", p37, p42 | ||
484 : | .pred.rel "mutex", p36, p41 | ||
485 : | ia64p | 1.3 | {.mmi |
486 : | (p[0])ld2 ac1[0] = [r14] ,2 // 0 acLevel = coeff[i]; | ||
487 : | (p[LL+1])cmp4.ne p6, cmp1neg[0] = 0, ac1[LL+1] // LL+1 | ||
488 : | (p[LL])sxt2 ac1[LL] = ac1[LL] // LL | ||
489 : | |||
490 : | } | ||
491 : | {.mmi | ||
492 : | (p[LL+1])cmp4.le cmp2[0], cmp2neg[0] = r0, ac1[LL+1] // LL+1 | ||
493 : | (cmp2[1]) mov x[0] = r20 // LL+2 | ||
494 : | (p[LL+2])pmpyshr2.u ac1[LL+2] = r29, ac1[LL+2], 0 // LL+2 | ||
495 : | } | ||
496 : | {.mmi | ||
497 : | (cmp2neg[1]) mov x[0] = r21 // LL+2 | ||
498 : | (cmp2[2]) add ac1[LL+3] = ac1[LL+3], r15 // LL+3 | ||
499 : | (cmp2neg[2]) sub ac1[LL+3] = ac1[LL+3], r15 // LL+3 | ||
500 : | |||
501 : | } | ||
502 : | {.mmi | ||
503 : | (cmp2neg[4]) mov y1[0] = ac1[LL+5] // LL+5 | ||
504 : | (cmp2neg[4]) mov y2[0] = x[3] // LL+5 | ||
505 : | (p[LL+4])sxt2 ac1[LL+4] = ac1[LL+4] // LL+4 | ||
506 : | } | ||
507 : | {.mmi | ||
508 : | ia64p | 1.4 | (cmp2[4]) mov y1[0] = x[3] // LL+5 |
509 : | (cmp2[4]) mov y2[0] = ac1[LL+5] // LL+5 | ||
510 : | ia64p | 1.3 | (p[LL+6])cmp4.le cmp3[0], cmp3neg[0] = x[4], ac1[LL+6] // LL+6 |
511 : | } | ||
512 : | {.mmi | ||
513 : | (cmp3[1]) mov ac1[LL+7] = y1[2] // LL+7 | ||
514 : | (cmp3neg[1]) mov ac1[LL+7] = y2[2] // LL+7 | ||
515 : | (cmp1neg[7]) mov ac1[LL+8] = r0 // LL+8 | ||
516 : | } | ||
517 : | {.mbb | ||
518 : | (p[LL+9])st2 [r18] = ac1[LL+9] ,2 // LL+9 | ||
519 : | nop.b 0x0 | ||
520 : | br.ctop.sptk.few .L60 | ||
521 : | ;; | ||
522 : | } | ||
523 : | ia64p | 1.4 | .pred.rel "clear", p36 |
524 : | ia64p | 1.3 | .default |
525 : | mov ar.lc = r2 | ||
526 : | mov ar.pfs = r9 | ||
527 : | mov ar.ec = r16 | ||
528 : | mov pr = r17, -1 | ||
529 : | ;; | ||
530 : | mov ar.lc = r2 | ||
531 : | br.ret.sptk.many b0 | ||
532 : | .endp dequant_inter_ia64# | ||
533 : | .ident "GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.1 2.96-85)" |
No admin address has been configured | ViewVC Help |
Powered by ViewVC 1.0.4 |