Index: ChangeLog =================================================================== RCS file: /cvs/cairo/cairo/pixman/ChangeLog,v retrieving revision 1.116 diff -u -p -r1.116 ChangeLog --- ChangeLog 28 Aug 2005 02:32:57 -0000 1.116 +++ ChangeLog 28 Aug 2005 19:51:13 -0000 @@ -1,3 +1,9 @@ +2005-08-28 Owen Taylor + + * src/fbmmx.c (detectCPUFeatures): Use local labels rather than + global labels in the assembly, to be robust if the code is inlined + in multiple places. (#4283, Reported by Marco Manfredini) + 2005-08-27 Billy Biggs Some fixes for warnings from sparse (Part of bug #4208, Index: src/fbmmx.c =================================================================== RCS file: /cvs/cairo/cairo/pixman/src/fbmmx.c,v retrieving revision 1.4 diff -u -p -r1.4 fbmmx.c --- src/fbmmx.c 28 Aug 2005 01:36:09 -0000 1.4 +++ src/fbmmx.c 28 Aug 2005 19:51:13 -0000 @@ -2505,7 +2505,7 @@ static unsigned int detectCPUFeatures(vo "pop %%eax\n" "mov $0x0, %%edx\n" "xor %%ecx, %%eax\n" - "jz skip\n" + "jz 1f\n" "mov $0x00000000, %%eax\n" "push %%ebx\n" @@ -2519,7 +2519,7 @@ static unsigned int detectCPUFeatures(vo "push %%ebx\n" "cpuid\n" "pop %%ebx\n" - "skip:\n" + "1:\n" "mov %%edx, %0\n" : "=r" (result), "=m" (vendor[0]), @@ -2549,10 +2549,10 @@ static unsigned int detectCPUFeatures(vo "cpuid\n" "xor %%edx, %%edx\n" "cmp $0x1, %%eax\n" - "jge skip2\n" + "jge 1f\n" "mov $0x80000001, %%eax\n" "cpuid\n" - "skip2:\n" + "1:\n" "pop %%ebx\n" "mov %%edx, %0\n" : "=r" (result)