Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | new version of cpuid, which doesn't use the edi register any more. Hopefully that works better on some Darwin. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core-8-5-branch |
Files: | files | file ages | folders |
SHA1: |
8750be345cbbf7368d94c5729002ac22 |
User & Date: | jan.nijtmans 2013-01-24 22:01:38 |
Context
2013-01-26
| ||
16:53 | [Bug 3601804]: platformCPUID segmentation fault on Darwin check-in: 2be066838a user: jan.nijtmans tags: core-8-5-branch | |
2013-01-24
| ||
22:02 | new version of cpuid, which doesn't use the edi register any more. Hopefully that works better on so... check-in: 08080f56f1 user: jan.nijtmans tags: trunk | |
22:01 | new version of cpuid, which doesn't use the edi register any more. Hopefully that works better on so... check-in: 8750be345c user: jan.nijtmans tags: core-8-5-branch | |
22:00 | new version of cpuid, which doesn't use the edi register any more. Hopefully that works better on so... check-in: 2153733cd7 user: jan.nijtmans tags: core-8-4-branch | |
21:29 | revert [f3509c3d35]: it doesn't work on i386 check-in: 5aa72128a9 user: jan.nijtmans tags: core-8-5-branch | |
Changes
Changes to unix/tclUnixCompat.c.
︙ | ︙ | |||
983 984 985 986 987 988 989 | unsigned int index, /* Which CPUID value to retrieve. */ unsigned int *regsPtr) /* Registers after the CPUID. */ { int status = TCL_ERROR; /* See: <http://en.wikipedia.org/wiki/CPUID> */ #if defined(HAVE_CPUID) | | < | | | 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 | unsigned int index, /* Which CPUID value to retrieve. */ unsigned int *regsPtr) /* Registers after the CPUID. */ { int status = TCL_ERROR; /* See: <http://en.wikipedia.org/wiki/CPUID> */ #if defined(HAVE_CPUID) __asm__ __volatile__("mov %%ebx, %%esi \n\t" /* save %ebx */ "cpuid \n\t" "xchg %%esi, %%ebx \n\t" /* restore the old %ebx */ : "=a"(regsPtr[0]), "=S"(regsPtr[1]), "=c"(regsPtr[2]), "=d"(regsPtr[3]) : "a"(index)); status = TCL_OK; #endif return status; } /* * Local Variables: |
︙ | ︙ |