changeset 19888:2ce14efa8917

Replace preprocessor hacks to work around compilers not supporting named assembler arguments with a proper configure check.
author diego
date Mon, 18 Sep 2006 16:48:50 +0000
parents 1259d6add8e6
children d4bb39d65f87
files configure libmpcodecs/vf_yadif.c
diffstat 2 files changed, 17 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/configure	Mon Sep 18 16:29:27 2006 +0000
+++ b/configure	Mon Sep 18 16:48:50 2006 +0000
@@ -1536,6 +1536,18 @@
 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 @@
 # define attribute_used
 #endif
 
+/* compiler support for named assembler arguments */
+$_def_named_asm_args
+
 #define PREFIX "$_prefix"
 
 #define USE_OSD 1
--- a/libmpcodecs/vf_yadif.c	Mon Sep 18 16:29:27 2006 +0000
+++ b/libmpcodecs/vf_yadif.c	Mon Sep 18 16:48:50 2006 +0000
@@ -71,11 +71,7 @@
     }
 }
 
-#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 @@
 #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;