diff options
author | Mans Rullgard <mans@mansr.com> | 2011-05-27 21:59:46 +0100 |
---|---|---|
committer | Mans Rullgard <mans@mansr.com> | 2011-05-28 15:00:17 +0100 |
commit | 5726ec171bf7cb833f8445d9a294f23fc047a549 (patch) | |
tree | acf32c906947551969ec5a71e984d6553c1a9a70 | |
parent | a84f82560e3fa6aa41de64b0a5b75d1d607599aa (diff) | |
download | ffmpeg-5726ec171bf7cb833f8445d9a294f23fc047a549.tar.gz |
ARM: add "cc" clobbers to inline asm where needed
Signed-off-by: Mans Rullgard <mans@mansr.com>
-rw-r--r-- | libavcodec/arm/aac.h | 2 | ||||
-rw-r--r-- | libavcodec/arm/mathops.h | 3 | ||||
-rw-r--r-- | libavcodec/arm/vp56_arith.h | 6 |
3 files changed, 7 insertions, 4 deletions
diff --git a/libavcodec/arm/aac.h b/libavcodec/arm/aac.h index e907c9ea25..8355e9c193 100644 --- a/libavcodec/arm/aac.h +++ b/libavcodec/arm/aac.h @@ -128,7 +128,7 @@ static inline float *VMUL4S(float *dst, const float *v, unsigned idx, : "=&r"(v0), "=&r"(v1), "=&r"(v2), "=&r"(v3), "+r"(dst), "+r"(sign), "=r"(nz) : "r"(v), "r"(idx), "r"(scale) - : "d0", "d1", "d2", "d3", "d4", "d5"); + : "cc", "d0", "d1", "d2", "d3", "d4", "d5"); return dst; } diff --git a/libavcodec/arm/mathops.h b/libavcodec/arm/mathops.h index 1fce8e3267..858e73d677 100644 --- a/libavcodec/arm/mathops.h +++ b/libavcodec/arm/mathops.h @@ -107,7 +107,8 @@ static inline av_const int mid_pred(int a, int b, int c) "cmp %0, %1 \n\t" "movgt %0, %1 \n\t" : "=&r"(m), "+r"(a) - : "r"(b), "r"(c)); + : "r"(b), "r"(c) + : "cc"); return m; } diff --git a/libavcodec/arm/vp56_arith.h b/libavcodec/arm/vp56_arith.h index 0591d614a9..8785a77860 100644 --- a/libavcodec/arm/vp56_arith.h +++ b/libavcodec/arm/vp56_arith.h @@ -48,7 +48,8 @@ static inline int vp56_rac_get_prob_armv6(VP56RangeCoder *c, int pr) : "=&r"(c->high), "=&r"(c->code_word), "=&r"(bit), "+&r"(c->bits), "+&r"(c->buffer) : "r"(high), "r"(pr), "r"(c->end - 1), - "0"(shift), "1"(code_word)); + "0"(shift), "1"(code_word) + : "cc"); return bit; } @@ -74,7 +75,8 @@ static inline int vp56_rac_get_prob_branchy_armv6(VP56RangeCoder *c, int pr) "lsl %2, %0, #16 \n" : "=&r"(low), "+&r"(code_word), "=&r"(tmp), "+&r"(c->bits), "+&r"(c->buffer) - : "r"(high), "r"(pr), "r"(c->end - 1), "0"(shift)); + : "r"(high), "r"(pr), "r"(c->end - 1), "0"(shift) + : "cc"); if (code_word >= tmp) { c->high = high - low; |