Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 47148 Details for
Bug 73342
xine-lib-1_rc7 fails: mmx.h:74: error: PIC register `ebx' clobbered in `asm'
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch: fix PIC register `ebx' clobbered in `asm' compile failure
xine-lib-1.0-ebx-pix.patch (text/plain), 2.50 KB, created by
Allen Ibara
on 2004-12-29 12:43:07 UTC
(
hide
)
Description:
Patch: fix PIC register `ebx' clobbered in `asm' compile failure
Filename:
MIME Type:
Creator:
Allen Ibara
Created:
2004-12-29 12:43:07 UTC
Size:
2.50 KB
patch
obsolete
>diff -ur xine-lib-1.0.orig/src/post/goom/mmx.h xine-lib-1.0/src/post/goom/mmx.h >--- xine-lib-1.0.orig/src/post/goom/mmx.h 2004-08-19 03:39:03.000000000 -0700 >+++ xine-lib-1.0/src/post/goom/mmx.h 2004-12-29 11:49:35.857981505 -0800 >@@ -72,6 +72,9 @@ > register int rval = 0; > > __asm__ __volatile__ ( >+ /* CPUID clobbers ebx, but gcc needs it for PIC so >+ * it needs to be saved */ >+ "pushl %%ebx\n\t" > /* See if CPUID instruction is supported ... */ > /* ... Get copies of EFLAGS into eax and ecx */ > "pushf\n\t" >@@ -214,9 +217,10 @@ > "movl $0, %0\n\n\t" > > "Return:\n\t" >+ "popl %%ebx\n\t" > : "=X" (rval) > : /* no input */ >- : "eax", "ebx", "ecx", "edx" >+ : "eax", "ecx", "edx" > ); > > /* Return */ >diff -ur xine-lib-1.0.orig/src/post/goom/xmmx.c xine-lib-1.0/src/post/goom/xmmx.c >--- xine-lib-1.0.orig/src/post/goom/xmmx.c 2004-08-19 03:39:03.000000000 -0700 >+++ xine-lib-1.0/src/post/goom/xmmx.c 2004-12-29 11:50:36.720037932 -0800 >@@ -112,23 +112,23 @@ > * post : mm3 & mm4 : coefs for this position > * mm1 : X vector [0|X] > * >- * modif : eax,ebx >+ * modif : eax,edx > */ > __asm__ __volatile__ ( >- "movd %%mm0,%%ebx\n" >+ "movd %%mm0,%%edx\n" > "movq %%mm0,%%mm1\n" > >- "andl $15,%%ebx\n" >+ "andl $15,%%edx\n" > "psrlq $32,%%mm1\n" > >- "shll $6,%%ebx\n" >+ "shll $6,%%edx\n" > "movd %%mm1,%%eax\n" > >- "addl %0,%%ebx\n" >+ "addl %0,%%edx\n" > "andl $15,%%eax\n" > >- "movd (%%ebx,%%eax,4),%%mm3\n" >- ::"g"(precalCoef):"eax","ebx"); >+ "movd (%%edx,%%eax,4),%%mm3\n" >+ ::"g"(precalCoef):"eax","edx"); > > /* > * extraction des coefficients... >@@ -158,7 +158,7 @@ > * post : mm0 : expix1[position] > * mm2 : expix1[position+largeur] > * >- * modif : eax,ebx >+ * modif : eax,edx > */ > psrld_i2r (PERTEDEC,mm0); > psrld_i2r (PERTEDEC,mm1); >@@ -167,23 +167,23 @@ > /*^*/ "movq %%mm3,%%mm5\n" /*^*/ > > "mull %1\n" >- "movd %%mm0,%%ebx\n" >+ "movd %%mm0,%%edx\n" > /*^*/ "punpcklbw %%mm5, %%mm3\n" /*^*/ > >- "addl %%ebx,%%eax\n" >+ "addl %%edx,%%eax\n" > /*^*/ "movq %%mm3,%%mm4\n" /*^*/ > /*^*/ "movq %%mm3,%%mm5\n" /*^*/ > >- "movl %0,%%ebx\n" >+ "movl %0,%%edx\n" > /*^*/ "punpcklbw %%mm5,%%mm3\n" /*^*/ > >- "movq (%%ebx,%%eax,4),%%mm0\n" >+ "movq (%%edx,%%eax,4),%%mm0\n" > /*^*/ "punpckhbw %%mm5,%%mm4\n" /*^*/ > > "addl %1,%%eax\n" >- "movq (%%ebx,%%eax,4),%%mm2\n" >+ "movq (%%edx,%%eax,4),%%mm2\n" > >- : : "X"(expix1), "X"(prevX):"eax","ebx" >+ : : "X"(expix1), "X"(prevX):"eax","edx" > ); > > /*
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 73342
: 47148 |
47150