diff options
author | Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> | 2002-02-10 13:11:13 +0000 |
---|---|---|
committer | Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org> | 2002-02-10 13:11:13 +0000 |
commit | 6c9544e7f0b73c26ca4aa88d4bfa06d0cb3b7009 (patch) | |
tree | 484eba262fec2c1cbc2ec24de05b4f6c231ce3c5 /multimedia | |
parent | Update to the 2002-02-04 snapshot. (diff) |
Apply asm patch to work around bug exposed in Athlon + gcc (2.9x).
Also happens in other systems
Submitted by: Matthew Reimer <mreimer@vpop.net>
Obtained from: Quasar DV Codec Project
Notes
Notes:
svn path=/head/; revision=54485
Diffstat (limited to 'multimedia')
-rw-r--r-- | multimedia/libdv/files/patch-libdv:mmx.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/multimedia/libdv/files/patch-libdv:mmx.h b/multimedia/libdv/files/patch-libdv:mmx.h new file mode 100644 index 000000000000..7033e5772aa0 --- /dev/null +++ b/multimedia/libdv/files/patch-libdv:mmx.h @@ -0,0 +1,25 @@ +--- libdv/mmx.h.orig Thu Apr 26 16:08:25 2001 ++++ libdv/mmx.h Sun Feb 10 11:03:54 2002 +@@ -72,6 +72,9 @@ + __asm__ __volatile__ ( + /* See if CPUID instruction is supported ... */ + /* ... Get copies of EFLAGS into eax and ecx */ ++ "pushl %%ebx\n\t" ++ "pushl %%ecx\n\t" ++ "pushl %%edx\n\t" + "pushf\n\t" + "popl %%eax\n\t" + "movl %%eax, %%ecx\n\t" +@@ -207,9 +210,11 @@ + "movl $0, %0\n\n\t" + + "Return:\n\t" ++ "popl %%edx\n\t" ++ "popl %%ecx\n\t" ++ "popl %%ebx\n\t" + : "=a" (rval) + : /* no input */ +- : "ebx", "ecx", "edx" + ); + + /* Return */ |