[FFmpeg-cvslog] mips64: mark hi/lo registers clobbered in MAC64/MLS64 macros

Mans Rullgard git at videolan.org
Thu Oct 18 12:19:16 CEST 2012


ffmpeg | branch: master | Mans Rullgard <mans at mansr.com> | Wed Oct 17 19:45:54 2012 +0100| [b93e934aeea44f3e92f0acd960e5d10151f14379] | committer: Mans Rullgard

mips64: mark hi/lo registers clobbered in MAC64/MLS64 macros

Signed-off-by: Mans Rullgard <mans at mansr.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b93e934aeea44f3e92f0acd960e5d10151f14379
---

 libavcodec/mips/mathops.h |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/libavcodec/mips/mathops.h b/libavcodec/mips/mathops.h
index 573745b..dd80f68 100644
--- a/libavcodec/mips/mathops.h
+++ b/libavcodec/mips/mathops.h
@@ -57,7 +57,8 @@ static inline av_const int64_t MAC64(int64_t d, int a, int b)
     __asm__ ("dmult %2, %3     \n\t"
              "mflo  %1         \n\t"
              "daddu %0, %0, %1 \n\t"
-             : "+r"(d), "=&r"(m) : "r"(a), "r"(b));
+             : "+r"(d), "=&r"(m) : "r"(a), "r"(b)
+             : "hi", "lo");
     return d;
 }
 #define MAC64(d, a, b) ((d) = MAC64(d, a, b))
@@ -68,7 +69,8 @@ static inline av_const int64_t MLS64(int64_t d, int a, int b)
     __asm__ ("dmult %2, %3     \n\t"
              "mflo  %1         \n\t"
              "dsubu %0, %0, %1 \n\t"
-             : "+r"(d), "=&r"(m) : "r"(a), "r"(b));
+             : "+r"(d), "=&r"(m) : "r"(a), "r"(b)
+             : "hi", "lo");
     return d;
 }
 #define MLS64(d, a, b) ((d) = MLS64(d, a, b))



More information about the ffmpeg-cvslog mailing list