summaryrefslogtreecommitdiffstats
path: root/generic/tclHash.c
Commit message (Collapse)AuthorAgeFilesLines
* [Bug 3388350] mingw64 compiler warningsjan.nijtmans2011-08-161-2/+2
|\
| * Silence unused variable warningdgp2011-04-201-2/+1
| |
| * gcc warning: unused variable "key"jan.nijtmans2011-03-281-2/+1
| |
| * [Bug 3007895]: Tcl_(Find|Create)HashEntryjan2011-03-251-2/+30
| | | | | | | | | | | | | | stub entries can never be called. They still cannot be called (no change in functionality), but at least they now do exactly the same as the Tcl_(Find|Create)HashEntry macro's, so the confusion addressed in this Bug report is gone. Merged --cherrypick from Tcl8.5 (2010-12-31,e75735ef76)
* | Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-021-2/+0
|\ \ | |/ | | more harm than good. Purged them.
| * Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-011-2/+0
| | | | | | more harm than good. Purged them.
| * [Bug 3129448]: Possible over-allocation on 64-bit platforms, part 2,nijtmans2011-01-251-17/+17
| | | | | | | | backported strcpy->memcpy change but not change in any struct.
| * * generic/tclListObj.c (Tcl_ListObjReplace): use memmove() insteaddas2004-11-111-5/+8
| | | | | | | | | | | | | | | | | | | | | | of manual copy loop to shift list elements. Decreases time spent in Tcl_ListObjReplace() from 5.2% to 1.7% of overall runtime of tclbench on a ppc 7455 (i.e. 200% speed increase). [Patch 1064243] * generic/tclHash.c: hoisted some constant pointer dereferences out of loops to eliminate redundant loads that the gcc optimizer didn't deal with. Decreases time spend in Tcl_FindHashEntry() by 10% over a full run of the tcl testuite on a ppc 7455. [Patch 1064243]
* | [Bug 3129448]: Possible over-allocation on 64-bit platforms, part 2,nijtmans2011-01-251-7/+7
| | | | | | | | backported strcpy->memcpy change but not change in any struct.
* | [Bug 3007895]: Tcl_(Find|Create)HashEntry stub entries can never be called.nijtmans2010-12-311-4/+25
| | | | | | | | | | | | They still cannot be called (no change in functionality), but at least they now do exactly the same as the Tcl_(Find|Create)HashEntry macro's, so the confusion addressed in this Bug report is gone. (Backported from Tcl 8.6)
* | fix [Bug 2308236] signature of Tcl_HashStats() wrongnijtmans2008-11-181-2/+2
| |
* | merge stable branch onto HEADdgp2007-12-131-1/+1
| |
* | VarReform [Patch 1750051]Miguel Sofer2007-07-311-3/+4
| | | | | | | | *** POTENTIAL INCOMPATIBILITY *** (tclInt.h and tclCompile.h)
* | * generic/tcl.h: Removed TCL_PRESERVE_BINARY_COMPATIBILITY anddgp2007-07-021-74/+3
| | | | | | | | | | | | | | | | * generic/tclHash.c: any code enabled when it is set to 0. We will * generic/tclStubInit.c: always want to preserve binary compat of the structs that appear in the interface through the 8.* series of releases, so it's pointless to drag around this never-enabled alternative.
* | Simplify string hashing a little. [FRQ 951168]dkf2007-07-021-14/+2
| |
* | Eliminate use of (VOID*) casts when calling memset or memcpy.dkf2007-04-171-10/+13
| |
* | various "const" additions, in line with TIP #27nijtmans2007-02-201-21/+21
| |
* | * generic/tclCompExpr.c: fix gcc warnings about 'cast to/fromdas2006-11-131-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclEncoding.c: pointer from/to integer of different * generic/tclEvent.c: size' on 64-bit platforms by casting to * generic/tclExecute.c: intermediate types intptr_t/uintptr_t * generic/tclHash.c: via new PTR2INT(), INT2PTR(), * generic/tclIO.c: PTR2UINT() and UINT2PTR() macros. * generic/tclInt.h: [Patch 1592791] * generic/tclProc.c: * generic/tclTest.c: * generic/tclThreadStorage.c: * generic/tclTimer.c: * generic/tclUtil.c: * unix/configure.in: * unix/tclUnixChan.c: * unix/tclUnixPipe.c: * unix/tclUnixPort.h: * unix/tclUnixTest.c: * unix/tclUnixThrd.c: * unix/configure: autoconf-2.59 * unix/tclConfig.h.in: autoheader-2.59
* | * generic/tcl.h:Miguel Sofer2006-10-221-70/+11
| | | | | | | | | | | | | | | | * generic/tclHash.c: Tcl_FindHashEntry() now calls Tcl_CreateHashEntry() with a newPtr set to NULL: this would have caused a segfault previously and eliminates duplicated code. A macro has been added to tcl.h (only used when TCL_PRESERVE_BINARY_COMPATABALITY is not set - ie, not by default).
* | Various minor object file size efficiency fixes. [Bug 1530474]dkf2006-08-101-7/+7
| |
* | Convert to using ANSI decls/definitions and using the (ANSI) assumption that ↵dkf2005-10-311-93/+86
| | | | | | | | | | | | NULL can be cast to any pointer type transparently.
* | Systematizing the formattingdkf2005-07-211-123/+126
| |
* | * generic/tclListObj.c (Tcl_ListObjReplace): use memmove() insteaddas2004-11-111-5/+8
| | | | | | | | | | | | | | | | | | | | | | of manual copy loop to shift list elements. Decreases time spent in Tcl_ListObjReplace() from 5.2% to 1.7% of overall runtime of tclbench on a ppc 7455 (i.e. 200% speed increase). [Patch 1064243] * generic/tclHash.c: hoisted some constant pointer dereferences out of loops to eliminate redundant loads that the gcc optimizer didn't deal with. Decreases time spend in Tcl_FindHashEntry() by 10% over a full run of the tcl testuite on a ppc 7455. [Patch 1064243]
* | Style guide fixesdkf2004-10-061-24/+20
| |
* | Fix variable usage warning. [Bug 969068]dkf2004-06-081-5/+3
| |
* | Made compiling with -Wstrict-prototypes -Wmissing-prototypes much cleaner.dkf2004-05-271-2/+6
| | | | | | | | Also added support for [FRQ 951168] but left that switched off by default.
* | Patch 922727 committed. Implements three changes:dgp2004-04-061-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclInt.h: Reworked the Tcl header files into a clean * unix/tclUnixPort.h: hierarchy where tcl.h < tclPort.h < tclInt.h * win/tclWinInt.h: and every C source file should #include * win/tclWinPort.h: at most one of those files to satisfy its declaration needs. tclWinInt.h and tclWinPort.h also better organized so that tclWinPort.h includes the Windows implementation of cross-platform declarations, while tclWinInt.h makes declarations that are available on Windows only. * generic/tclBinary.c (TCL_NO_MATH): Deleted the generic/tclMath.h * generic/tclMath.h (removed): header file. The internal Tcl * macosx/Makefile (PRIVATE_HEADERS): header, tclInt.h, has a * win/tcl.dsp: #include <math.h> directly, and file external to Tcl needing libm should do the same. * win/Makefile.in (WIN_OBJS): Deleted the win/tclWinMtherr.c file. * win/makefile.bc (TCLOBJS): It's a vestige from matherr() days * win/makefile.vc (TCLOBJS): gone by. * win/tcl.dsp: * win/tclWinMtherr.c (removed):
* | More hash function cleaning up.dkf2004-03-301-7/+3
| |
* | All uses of 'panic' (the macro) changeddavygrvy2003-12-241-6/+6
| | | | | | | | | | | | | | to 'Tcl_Panic' (the function). The #define of panic in tcl.h clearly states it is deprecated in the comments. [Patch 865264]
* | Whitespace fixesdkf2003-11-151-15/+15
| |
* | TIP#138 implementation plus extra test stuff [Patch 731356]dkf2003-11-141-17/+54
| |
* | No more div-by-zero errors. [Bug 759749]dkf2003-06-241-2/+4
|/
* * generic/tclHash.c (HashStringKey): move string++ lower to savehobbs2002-11-121-2/+2
| | | | an instruction.
* * generic/tclHash.c (AllocArrayEntry, AllocStringEntry):hobbs2002-02-261-5/+11
| | | | | | | | Before invoking ckalloc when creating a Tcl_HashEntry, check that the amount of memory being allocated is at least as large as sizeof(Tcl_HashEntry). The previous code was allocating memory regions that were one or two bytes short. [Bug #521950] (dejong)
* * [Patch 505630] Updated interfaces of generic/tclBasic.cc (TIP 27).dgp2002-01-251-2/+2
| | | | | | | * [Patch 506818] Updated interfaces of generic/tclHash.c (TIP 27). * [Patch 506807] Updated interfaces of generic/tclObj.c (TIP 27). * [Patch 507304] Updated interfaces of win/tclWin32.c (TIP 27). * Update all callers.
* 2000-01-18 Andreas Kupries <a.kupries@westend.com>andreas_kupries2001-01-181-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | * Everything below belongs together, it fixes bug #123153. * generic/tcl.h (line 342): A bit more explanation about the default value for TCL_PRESERVE_BINARY_COMPATABILITY. * generic/tcl.h (line 1208): Removed the macro 'Tcl_InitHashTable' as it kills binary compatibility to 8.3 and earlier versions. This is the main part of the patch/change. * generic/tcl.decls (line 1469): * generic/tclHash.c (Tcl_InitHashTable): * generic/tclHash.c (Tcl_InitHashTableEx): * generic/tclObj.c (Tcl_InitObjHashTable): Changed 'Tcl_InitHashTableEx' to 'Tcl_InitCustomHashTable'. This change is more of an estethical nature, replacing the ubiquitous 'Ex' suffix with a more meaningful name. The introduced binary incompatibility is deemed acceptable as it is between alpha versions. Updated callers. * doc/Hash.3: * unix/mkLinks: Changed 'Tcl_InitHashTableEx' to 'Tcl_InitCustomHashTable'.
* * generic/tclHash.c: fixed pedantic warning of incorrectly placedhobbs2000-09-061-3/+3
| | | | #endif
* * generic/tclStubInit.c:ericm2000-07-221-595/+621
| | | | | | | | | | | * generic/tclObj.c: * generic/tclInt.h: * generic/tclHash.c: * generic/tclDecls.h: * generic/tcl.h: * generic/tcl.decls: * doc/Hash.3: Reapplied patch from Paul Duffin to extend hash tables to allow custom key types, such as Tcl_Obj *'s, and others.
* * generic/tclStubInit.c:ericm2000-07-201-621/+595
| | | | | | | | | | | | * generic/tclObj.c: * generic/tclInt.h: * generic/tclHash.c: * generic/tclDecls.h: * generic/tcl.h: * generic/tcl.decls: * doc/Hash.3: Reverted patch from Paul Duffin to extend hash tables to allow custom key types, such as Tcl_Obj *'s, and others; it seems to break Tk.
* * generic/tclStubInit.c:ericm2000-07-191-595/+621
| | | | | | | | | | | * generic/tclObj.c: * generic/tclInt.h: * generic/tclHash.c: * generic/tclDecls.h: * generic/tcl.h: * generic/tcl.decls: * doc/Hash.3: Applied patch from Paul Duffin to extend hash tables to allow custom key types, such as Tcl_Obj *'s, and others.
* * doc/Hash.3: Added documentation patch for Tcl_Obj *'s as keys inericm2000-06-241-3/+248
| | | | | | | | Tcl hash tables [RFE: 5934]. * generic/tcl.h: * generic/tclHash.c: Applied patch from [RFE: 5934], which extends Tcl hash tables to allow Tcl_Obj *'s as the key.
* merged tcl 8.1 branch back into the main trunkstanton1999-04-161-1/+6
|
* Replaced SCCS strings, fixed binary filescore_8_0_3stanton1998-09-141-1/+1
|
* Initial revisionrjohnson1998-03-261-0/+921