annotate mp3lib/dct36_k7.c @ 24132:9f234010c4be

Add separate event input type for terminal+vo Add an input/input.c fd type whose read function takes no arguments and returns no value. If such a function reads key or command events it'll add them to the queues itself. Use this type for terminal input which was special-cased before. The event function for X11-based VOs will use the same type later.
author uau
date Sat, 25 Aug 2007 04:28:14 +0000
parents 9163bdb578a6
children 7c7885350d89
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10322
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
1 /*
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
2 * dct36_k7.c - 3DNowEx(DSP)! optimized dct36()
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
3 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
4 * This code based 'dct36_3dnow.s' by Syuuhei Kashiyama
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
5 * <squash@mb.kcom.ne.jp>, only two types of changes have been made:
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
6 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
7 * - added new opcode PSWAPD
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
8 * - removed PREFETCH instruction for speedup
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
9 * - changed function name for support 3DNowEx! automatic detection
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
10 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
11 * note: because K7 processors are an aggresive out-of-order three-way
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
12 * superscalar ones instruction order is not significand for them.
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
13 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
14 * You can find Kashiyama's original 3dnow! support patch
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
15 * (for mpg123-0.59o) at
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
16 * http://user.ecc.u-tokyo.ac.jp/~g810370/linux-simd/ (Japanese).
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
17 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
18 * by KIMURA Takuhiro <kim@hannah.ipc.miyakyo-u.ac.jp> - until 31.Mar.1999
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
19 * <kim@comtec.co.jp> - after 1.Apr.1999
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
20 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
21 * Original disclaimer:
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
22 * The author of this program disclaim whole expressed or implied
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
23 * warranties with regard to this program, and in no event shall the
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
24 * author of this program liable to whatever resulted from the use of
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
25 * this program. Use it at your own risk.
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
26 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
27 * Modified by Nick Kurshev <nickols_k@mail.ru>
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
28 *
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
29 * 2003/06/21: Moved to GCC inline assembly - Alex Beregszaszi
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
30 */
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
31
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
32 #define __DCT36_OPTIMIZE_FOR_K7
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
33
9163bdb578a6 moved 3dnow and 3dnowex dct36 optimisations into gcc inline assembly
alex
parents:
diff changeset
34 #include "dct36_3dnow.c"