summaryrefslogtreecommitdiff
path: root/libavcodec/ps2/mmi.h
diff options
context:
space:
mode:
authorLeon van Stuivenberg <leonvs@iae.nl>2002-10-03 20:57:19 +0000
committerMichael Niedermayer <michaelni@gmx.at>2002-10-03 20:57:19 +0000
commit5917d17cb79af27681209a745492bdccc37d2f76 (patch)
treefc485a567406369162ff76ef6b14bf769a1177aa /libavcodec/ps2/mmi.h
parenta46a3ce416ce058c9553fb4fd6865fbf623fa64b (diff)
ps2 optimizations update patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
Originally committed as revision 996 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/ps2/mmi.h')
-rw-r--r--libavcodec/ps2/mmi.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/libavcodec/ps2/mmi.h b/libavcodec/ps2/mmi.h
index 04e606c9fb..de9af1d595 100644
--- a/libavcodec/ps2/mmi.h
+++ b/libavcodec/ps2/mmi.h
@@ -49,6 +49,20 @@
__asm__ __volatile__ ("sq " #reg ", %0("#base ")" : : "i" (off) )
/*
+#define ld(base, off, reg) \
+ __asm__ __volatile__ ("ld " #reg ", " #off "("#base ")")
+*/
+
+#define ld3(base, off, reg) \
+ __asm__ __volatile__ (".word %0" : : "i" ( 0xdc000000 | (base<<21) | (reg<<16) | (off)))
+
+#define ldr3(base, off, reg) \
+ __asm__ __volatile__ (".word %0" : : "i" ( 0x6c000000 | (base<<21) | (reg<<16) | (off)))
+
+#define ldl3(base, off, reg) \
+ __asm__ __volatile__ (".word %0" : : "i" ( 0x68000000 | (base<<21) | (reg<<16) | (off)))
+
+/*
#define sd(reg, off, base) \
__asm__ __volatile__ ("sd " #reg ", " #off "("#base ")")
*/
@@ -116,5 +130,23 @@
#define pminh(rs, rt, rd) \
__asm__ __volatile__ ("pminh " #rd ", " #rs ", " #rt )
+#define pinteh(rs, rt, rd) \
+ __asm__ __volatile__ ("pinteh " #rd ", " #rs ", " #rt )
+
+#define paddh(rs, rt, rd) \
+ __asm__ __volatile__ ("paddh " #rd ", " #rs ", " #rt )
+
+#define psubh(rs, rt, rd) \
+ __asm__ __volatile__ ("psubh " #rd ", " #rs ", " #rt )
+
+#define psrah(rt, sa, rd) \
+ __asm__ __volatile__ ("psrah " #rd ", " #rt ", %0" : : "i"(sa) )
+
+#define pmfhl_uw(rd) \
+ __asm__ __volatile__ ("pmfhl.uw " #rd)
+
+#define pextlb(rs, rt, rd) \
+ __asm__ __volatile__ ("pextlb " #rd ", " #rs ", " #rt )
#endif
+