aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rwxr-xr-xconfigure15
-rw-r--r--libmpcodecs/vf_yadif.c8
2 files changed, 17 insertions, 6 deletions
diff --git a/configure b/configure
index fdd819753d..b1acf18c60 100755
--- a/configure
+++ b/configure
@@ -1536,6 +1536,18 @@ int main(void) { return 0; }
EOF
cc_check -pipe && _pipe="-pipe" && echores "yes" || echores "no"
+
+echocheck "compiler support of named assembler arguments"
+_named_asm_args=yes
+_def_named_asm_args="#define NAMED_ASM_ARGS 1"
+if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \
+ -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then
+ _named_asm_args=no
+ _def_named_asm_args="#undef NAMED_ASM_ARGS"
+fi
+echores $_named_asm_args
+
+
# Checking for CFLAGS
_stripbinaries=yes
if test "$_profile" != "" || test "$_debug" != "" ; then
@@ -7641,6 +7653,9 @@ $_def_builtin_expect
# define attribute_used
#endif
+/* compiler support for named assembler arguments */
+$_def_named_asm_args
+
#define PREFIX "$_prefix"
#define USE_OSD 1
diff --git a/libmpcodecs/vf_yadif.c b/libmpcodecs/vf_yadif.c
index f58c7718d6..c2567e8ddb 100644
--- a/libmpcodecs/vf_yadif.c
+++ b/libmpcodecs/vf_yadif.c
@@ -71,11 +71,7 @@ static void store_ref(struct vf_priv_s *p, uint8_t *src[3], int src_stride[3], i
}
}
-#if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ == 0)
-#undef HAVE_MMX
-#endif
-
-#ifdef HAVE_MMX
+#if defined(HAVE_MMX) && defined(NAMED_ASM_ARGS)
#define LOAD4(mem,dst) \
"movd "mem", "#dst" \n\t"\
@@ -288,7 +284,7 @@ static void filter_line_mmx2(struct vf_priv_s *p, uint8_t *dst, uint8_t *prev, u
#undef CHECK2
#undef FILTER
-#endif // HAVE_MMX
+#endif /* defined(HAVE_MMX) && defined(NAMED_ASM_ARGS) */
static void filter_line_c(struct vf_priv_s *p, uint8_t *dst, uint8_t *prev, uint8_t *cur, uint8_t *next, int w, int refs, int parity){
int x;