23 Commits

Author SHA1 Message Date
mkaply%us.ibm.com
d924b7872b This stuff doesn't work on OS/2 and is causing thousands of warnings errors
git-svn-id: svn://10.0.0.236/trunk@159688 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-22 20:27:48 +00:00
dbaron%dbaron.org
6ba6a78f8e Only use __attribute__ on gcc 3 or higher. Fixing bustage. b=249652
git-svn-id: svn://10.0.0.236/trunk@159221 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-15 00:00:43 +00:00
bryner%brianryner.com
e372b2e9a3 Add a NS_FASTCALL macro that specifies regparm(3) and stdcall on gcc/x86 to improve performance (passing up to 3 arguments in registers instead of on the stack, and having the caller pop any stack arguments). Apply NS_FASTCALL to our most frequently called non-public methods and functions. Also add NS_CDECL to explicitly specify the default calling convention and make it part of NS_IMETHOD, since xptcall can't deal with NS_FASTCALL. Bug 249652, r=darin, sr=dbaron.
git-svn-id: svn://10.0.0.236/trunk@159199 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-14 22:14:34 +00:00
gerv%gerv.net
210853d71e Bug 236613: change to MPL/LGPL/GPL tri-license.
git-svn-id: svn://10.0.0.236/trunk@155067 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 14:21:17 +00:00
brendan%mozilla.org
95220b5330 Add shared DHashTableOps for [const] char *key use-cases, clean up dhash API abusages (214839, r=dougt, sr=dbaron).
git-svn-id: svn://10.0.0.236/trunk@145624 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-05 20:09:21 +00:00
dougt%meer.net
580beb95bb this shouldn't have been checked in
git-svn-id: svn://10.0.0.236/trunk@145593 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-05 06:34:54 +00:00
dougt%meer.net
6dfc67684a Fix for 205023. Adds nsTraceRefcnt stubs that access a global to allow tracing refcnt to work with the GRE/xpcom glue builds. r=dbaron
git-svn-id: svn://10.0.0.236/trunk@145587 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-05 05:29:10 +00:00
brendan%mozilla.org
57ba9e9ac5 Disable DEBUG_brendan stuff.
git-svn-id: svn://10.0.0.236/trunk@143118 18797224-902f-48f8-a5cc-f745e15eee43
2003-05-30 20:25:42 +00:00
brendan%mozilla.org
e35c8b596b Constipation of (JS|PL)DHashTableOps (195298, r/sr=shaver/alecf).
git-svn-id: svn://10.0.0.236/trunk@138697 18797224-902f-48f8-a5cc-f745e15eee43
2003-02-28 07:17:59 +00:00
brendan%mozilla.org
d6a719baa7 Relax comments restricting Operate calls from enumerator to allow lookups (no bug, comment change only).
git-svn-id: svn://10.0.0.236/trunk@134429 18797224-902f-48f8-a5cc-f745e15eee43
2002-11-26 00:32:07 +00:00
brendan%mozilla.org
1a91c38fee Make enumeration const unless PL_DHASH_REMOVE is returned by the etor callback; improve several comments (174859, r=waterson, sr=beard).
git-svn-id: svn://10.0.0.236/trunk@133733 18797224-902f-48f8-a5cc-f745e15eee43
2002-11-13 04:35:37 +00:00
brendan%mozilla.org
3e1fb18591 Comment improvements motivated by bug 173797, no code changes.
git-svn-id: svn://10.0.0.236/trunk@131921 18797224-902f-48f8-a5cc-f745e15eee43
2002-10-13 19:08:07 +00:00
brendan%mozilla.org
9abeb299b8 Fix a macro name (LIMIT, not MAX -- fencepost, not maximum value; r=lumpy, sr=jack).
git-svn-id: svn://10.0.0.236/trunk@126682 18797224-902f-48f8-a5cc-f745e15eee43
2002-08-07 20:22:38 +00:00
brendan%mozilla.org
1dd9667d80 Sync these mirrored sources with their primaries at js/src/jsdhash.[ch] (see bug 62164, r=shaver, sr=jband).
git-svn-id: svn://10.0.0.236/trunk@115275 18797224-902f-48f8-a5cc-f745e15eee43
2002-02-23 10:04:29 +00:00
jst%netscape.com
2337395ba4 Fixing part of bug 118933. Speeding up the global resolve hook in the DOM JS helpers by eliminating the use of nsHashtable and nsStringKey in favor of pldhash. Adding global HashString(const nsA[C]String&) functions that calculate a hash code from a nsA[C]String, code by dbaron@fas.harward.edu. Also checking in brendan@mozilla.org's fix for a type error in the jsdhash/pldhash API found while working on this. sr=brendan@mozilla.org, r=peterv@netscape.com
git-svn-id: svn://10.0.0.236/trunk@112375 18797224-902f-48f8-a5cc-f745e15eee43
2002-01-17 04:08:14 +00:00
brendan%mozilla.org
040a610072 Add SetAlphaBounds, TABLE_SIZE, and MIN_ALPHA APIs (103990, r=dbaron, sr=waterson).
git-svn-id: svn://10.0.0.236/trunk@105470 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-16 05:40:27 +00:00
gerv%gerv.net
13afb6d0f9 Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089.
git-svn-id: svn://10.0.0.236/trunk@104119 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-28 20:14:13 +00:00
brendan%mozilla.org
9457b2de04 1. Fix jsdhash/pldhash.[ch] so that add/remove cycles for a given k do not
create a long chain of removed sentinels.  Also, when adding k to a table
    where k is not mapped, but where k hashes to a chain that includes removed
    sentinels, recycle the first removed sentinel in the chain for k's entry.
2.  Cache cx->resolving till js_DestroyContext, to avoid high JSDHashTable
    new/destroy overhead in js_LookupProperty.
3.  Add NS_TraceStack to nsTraceMalloc.[ch] and clean the .c file up a bit.


git-svn-id: svn://10.0.0.236/trunk@102796 18797224-902f-48f8-a5cc-f745e15eee43
2001-09-12 06:39:31 +00:00
brendan%mozilla.org
bf20b1ca3d - Add a generation number to JSDHashTable that counts entryStore changes due
to grows, shrinks, and compresses.  This helps JS_DHashTableOperate callers
  who hold returned entry pointers to validate those pointers and avoid having
  to re-lookup an entry by its key.
- Balance that addition by removing JSDHashTable.sizeMask, which is induced by
  JSDHashTable.sizeLog2 at the cost of two typically single-cycle instructions.
- Use JSDHashTable.generation in jsobj.c to avoid unsafely dereferencing an
  entry pointer held across calls to JSClass.resolve from js_LookupProperty,
  which may recur and add entries to cx->resolving, growing that table and
  invalidating entry pointers held by earlier js_LookupProperty activations.
(bug 78121, r=jst@netscape.com, sr=jband@netscape.com, a=asa@mozilla.org)


git-svn-id: svn://10.0.0.236/trunk@95896 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-25 03:05:38 +00:00
brendan%mozilla.org
d5037366b0 Add optional JSDHashTableOps.initEntry hook, spruce up comments (74883, r=waterson, sr=shaver).
git-svn-id: svn://10.0.0.236/trunk@95050 18797224-902f-48f8-a5cc-f745e15eee43
2001-05-15 21:07:10 +00:00
mkaply%us.ibm.com
e324a073a6 #73191
r=beard, sr=brendan
Remove CRT_CALL - change to PR_CALLBACK or JS_DLL_CALLBACK appropriately


git-svn-id: svn://10.0.0.236/trunk@90446 18797224-902f-48f8-a5cc-f745e15eee43
2001-03-26 23:21:53 +00:00
brendan%mozilla.org
47c8105e26 Fix bug 69271, r=waterson, sr=shaver:
- Don't ape java.lang.String's bogo-sampling hash function for "long" (>=16
  char) strings.
- Theory and practice comment in pldhash.h helps analyze when to use double
  hashing (most of the time) vs. when to use chaining.
- Subroutine ChangeTable from PL_DHashTableOperate so it can be called from
  PL_DHashTableEnumerate, if the latter finds that enough entries have been
  removed to be worth a shrink or compress cycle.


git-svn-id: svn://10.0.0.236/trunk@89639 18797224-902f-48f8-a5cc-f745e15eee43
2001-03-14 07:48:07 +00:00
brendan%mozilla.org
60a4bf738f Add pldhash.[ch], sed-translated from js/src/jsdhash.[ch].
git-svn-id: svn://10.0.0.236/trunk@77631 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-30 19:32:03 +00:00