gst/gstcpu.c: Fix problem when using

Original commit message from CVS:
* gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
-fomit-frame-pointer.  Appears to generate correct code in
other cases as well.
This commit is contained in:
David Schleef 2004-06-14 18:15:23 +00:00
parent 5c28fc6fce
commit 4a26e6f2c7
2 changed files with 10 additions and 4 deletions

View file

@ -1,3 +1,9 @@
2004-06-14 David Schleef <ds@schleef.org>
* gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
-fomit-frame-pointer. Appears to generate correct code in
other cases as well.
2004-06-14 Johan Dahlin <johan@gnome.org> 2004-06-14 Johan Dahlin <johan@gnome.org>
* tools/gst-inspect.c (main): Add two new command line options: -a * tools/gst-inspect.c (main): Add two new command line options: -a

View file

@ -72,11 +72,11 @@ gst_cpuid_i386 (int x, unsigned long *eax, unsigned long *ebx,
asm ( asm (
/* GCC-3.2 (and possibly others) don't clobber ebx properly, /* GCC-3.2 (and possibly others) don't clobber ebx properly,
* so we save/restore it directly. */ * so we save/restore it directly. */
" pushl %%ebx\n" " cpuid\n" " movl %%eax, %0\n" " movl %%ebx, %1\n" " movl %%ecx, %2\n" " movl %%edx, %3\n" " popl %%ebx\n":"=o" (regs[0]), " movl %%ebx, %%esi\n" " cpuid\n" " movl %%eax, %0\n" " movl %%ebx, %1\n" " movl %%ecx, %2\n" " movl %%edx, %3\n" " movl %%esi, %%ebx\n":"=o" (regs[0]), "=o" (regs[1]), "=o" (regs[2]),
"=o" (regs[1]), "=o" (regs
"=o" (regs[2]), "=o" (regs[3]) [3])
: "a" (x) : "a" (x)
: "ecx", "edx"); : "ecx", "edx", "esi");
*eax = regs[0]; *eax = regs[0];
*ebx = regs[1]; *ebx = regs[1];