[svn] / trunk / xvidcore / src / dct / ia64_asm / idct_init.s Repository:
ViewVC logotype

Annotation of /trunk/xvidcore/src/dct/ia64_asm/idct_init.s

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1855 - (view) (download)

1 : Isibaar 1855 // ****************************************************************************
2 :     // *
3 :     // * XVID MPEG-4 VIDEO CODEC
4 :     // * - IA64 inverse discrete cosine transform -
5 :     // *
6 :     // * Copyright(C) 2002 Christian Schwarz, Haiko Gaisser, Sebastian Hack
7 :     // *
8 :     // * This program is free software; you can redistribute it and/or modify it
9 :     // * under the terms of the GNU General Public License as published by
10 :     // * the Free Software Foundation; either version 2 of the License, or
11 :     // * (at your option) any later version.
12 :     // *
13 :     // * This program is distributed in the hope that it will be useful,
14 :     // * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 :     // * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 :     // * GNU General Public License for more details.
17 :     // *
18 :     // * You should have received a copy of the GNU General Public License
19 :     // * along with this program; if not, write to the Free Software
20 :     // * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 :     // *
22 :     // * $Id: idct_init.s,v 1.2 2009-02-19 17:07:29 Isibaar Exp $
23 :     // *
24 :     // ***************************************************************************/
25 :     //
26 :     // ****************************************************************************
27 :     // *
28 :     // * idct_init.s, IA-64 optimized inverse DCT
29 :     // *
30 :     // * This version was implemented during an IA-64 practical training at
31 :     // * the University of Karlsruhe (http://i44w3.info.uni-karlsruhe.de/)
32 :     // *
33 :     // ****************************************************************************
34 :     //
35 : ia64p 281
36 :     addreg3 = r20
37 :     addreg4 = r21
38 :     addreg5 = r22
39 :     addreg6 = r23
40 :    
41 :     one = f30
42 :     alloc r16 = ar.pfs, 1, 71, 0, 0
43 :     addl addreg1 = @gprel(.data_c0#), gp
44 :     addl addreg2 = @gprel(.data_c2#), gp
45 :     ;;
46 :     add addreg3 = 32, addreg1
47 :     add addreg4 = 32, addreg2
48 :     add addreg5 = 64, addreg1
49 :     add addreg6 = 64, addreg2
50 :     ;;
51 :     ldfp8 c0, c1 = [addreg1]
52 :     ldfp8 c2, c3 = [addreg2]
53 :     ;;
54 :     ldfp8 c4, c5 = [addreg3], 16
55 :     ldfp8 c6, c7 = [addreg4], 16
56 :     add addreg1 = 96, addreg1
57 :     add addreg2 = 96, addreg2
58 :     ;;
59 :     ldfp8 c8, c9 = [addreg5], 16
60 :     ldfp8 c10, c11 = [addreg6], 16
61 :     ;;
62 :     ldfp8 c12, c13 = [addreg1]
63 :     ldfp8 c14, c15 = [addreg2]
64 :     ;;
65 :     mov addreg1 = in0
66 :     fpack one = f1, f1
67 :     add addreg2 = 2, in0
68 :     ;;

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4