]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/i386/mmx.h
associate to each AVProgram the indexes of the AVStreams contained in it
[ffmpeg] / libavcodec / i386 / mmx.h
index df1791823be4e9da40fdc8359afdf556c5f6c8e9..102abd23121c41319c91b9d77c7fa83ac356a5a8 100644 (file)
@@ -1,27 +1,25 @@
 /*
  * mmx.h
  * Copyright (C) 1997-2001 H. Dietz and R. Fisher
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#ifndef AVCODEC_I386MMX_H
-#define AVCODEC_I386MMX_H
-
-#ifdef ARCH_X86_64
-#  define REG_a "rax"
-#  define REG_b "rbx"
-#  define REG_c "rcx"
-#  define REG_d "rdx"
-#  define REG_D "rdi"
-#  define REG_S "rsi"
-#  define PTR_SIZE "8"
-#else
-#  define REG_a "eax"
-#  define REG_b "ebx"
-#  define REG_c "ecx"
-#  define REG_d "edx"
-#  define REG_D "edi"
-#  define REG_S "esi"
-#  define PTR_SIZE "4"
-#endif
+#ifndef FFMPEG_MMX_H
+#define FFMPEG_MMX_H
 
 /*
  * The type of an value that fits in an MMX register (note that long
@@ -202,16 +200,16 @@ typedef        union {
 #define         mmx_m2ri(op,mem,reg,imm) \
         __asm__ __volatile__ (#op " %1, %0, %%" #reg \
                               : /* nothing */ \
-                              : "X" (mem), "X" (imm))
+                              : "m" (mem), "i" (imm))
 #define         mmx_r2ri(op,regs,regd,imm) \
         __asm__ __volatile__ (#op " %0, %%" #regs ", %%" #regd \
                               : /* nothing */ \
-                              : "X" (imm) )
+                              : "i" (imm) )
 
 #define         mmx_fetch(mem,hint) \
         __asm__ __volatile__ ("prefetch" #hint " %0" \
                               : /* nothing */ \
-                              : "X" (mem))
+                              : "m" (mem))
 
 
 #define         maskmovq(regs,maskreg)      mmx_r2ri (maskmovq, regs, maskreg)
@@ -282,4 +280,4 @@ typedef        union {
 #define         punpckhqdq_r2r(regs,regd)   mmx_r2r (punpckhqdq, regs, regd)
 
 
-#endif /* AVCODEC_I386MMX_H */
+#endif /* FFMPEG_MMX_H */