Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | [Bug 3601804]: platformCPUID segmentation fault on Darwin |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core-8-5-branch |
Files: | files | file ages | folders |
SHA1: |
2be066838a0ae15ffbb2ed4bdf3d882b |
User & Date: | jan.nijtmans 2013-01-26 16:53:59 |
Context
2013-01-30
| ||
16:27 | For tcltest, selected modernizations and style improvements from Patrick Fradin. check-in: 1209ebb68f user: dgp tags: core-8-5-branch | |
2013-01-29
| ||
10:46 | Change core to use repr->twoPtrValue.ptr1 in stead of repr->otherValuePtr (which is exactly the same... check-in: 4918a10d3d user: jan.nijtmans tags: no-shimmer-string-length | |
2013-01-26
| ||
16:55 | [Bug 3601804]: platformCPUID segmentation fault on Darwin check-in: e6f01c28bd user: jan.nijtmans tags: trunk | |
16:53 | [Bug 3601804]: platformCPUID segmentation fault on Darwin check-in: 2be066838a user: jan.nijtmans tags: core-8-5-branch | |
16:50 | [Bug 3601804]: platformCPUID segmentation fault on Darwin check-in: 794facf36b user: jan.nijtmans tags: core-8-4-branch | |
2013-01-24
| ||
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 | |
Changes
Changes to ChangeLog.
1 2 3 4 5 6 7 | 2013-01-23 Donal K. Fellows <[email protected]> * library/http/http.tcl (http::geturl): [Bug 2911139]: Do not do vwait for connect to avoid reentrancy problems (except when operating without a -command option). Internally, this means that all sockets created by the http package will always be operated in asynchronous mode. | > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 | 2013-01-26 Jan Nijtmans <[email protected]> * unix/tclUnixCompat.c: [Bug 3601804]: platformCPUID segmentation fault on Darwin. 2013-01-23 Donal K. Fellows <[email protected]> * library/http/http.tcl (http::geturl): [Bug 2911139]: Do not do vwait for connect to avoid reentrancy problems (except when operating without a -command option). Internally, this means that all sockets created by the http package will always be operated in asynchronous mode. |
︙ | ︙ |
Changes to unix/tclUnixCompat.c.
︙ | ︙ | |||
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: | > > > > > > > > | 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 | 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) #if defined(__x86_64__) || defined(_M_AMD64) || defined (_M_X64) __asm__ __volatile__("movq %%rbx, %%rsi \n\t" /* save %rbx */ "cpuid \n\t" "xchgq %%rsi, %%rbx \n\t" /* restore the old %rbx */ : "=a"(regsPtr[0]), "=S"(regsPtr[1]), "=c"(regsPtr[2]), "=d"(regsPtr[3]) : "a"(index)); #else __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)); #endif status = TCL_OK; #endif return status; } /* * Local Variables: |
︙ | ︙ |