Commit Graph

56 Commits

Author SHA1 Message Date
igor@mir2.org
3d870e0a9e Bug 413744: JS_GCMETER requires to recompile just js/src, not the whole browser. r,a=brendan 2008-01-29 14:17:25 -08:00
brendan@mozilla.org
a4625d2c2b Revert last checkin (414452). 2008-01-29 00:45:14 -08:00
brendan@mozilla.org
f4f2be6738 Move guts of js_SetProtoOrParent to jsgc.c, unifying serialization and deadlock avoidance machinery (414452, r=igor). 2008-01-28 23:18:21 -08:00
igor@mir2.org
d43d9f85f7 Bug 413565: GC now put all free cells to free lists. r,a=brendan 2008-01-23 05:05:48 -08:00
brendan@mozilla.org
d56e272e19 * Menu of -D flags for enabling instrumentation, as a commented-out CFLAGS += setting for convenient testing. * js_FindProperty and js_LookupPropertyWithFlags return indexes into the scope and prototype chains, respectively, to support internal instrumentation, and to pave the way for the return of the property cache (bug 365851).. * jsutil.[ch] JSBasicStats struct and functions for computing mean/sigma/max and auto-scaling histogram. * JS_SCOPE_DEPTH_METER instrumentation for compile- and run-time scope chain length instrumentation: + At compile time, rt->hostenvScopeDepthStats and rt->lexicalScopeDepthStats meter scope chains passed into the compile and evaluate APIs. + At runtime, rt->protoLookupDepthStats and rt->scopeSearchDepthStats track steps along the prototype and scope chains until the sought-after property is found. * JS_ARENAMETER uses JSBasicStats now. * Added rt->liveScopePropsPreSweep to fix the property tree stats code that rotted when property tree sweeping moved to after the finalization phase. * Un-bitrotted some DEBUG_brendan code, turned some off for myself via XXX. * Mac OS X toolchain requires initialized data shared across dynamic library member files, outlaws common data, so initialize extern metering vars. * Old HASHMETER code in jshash.[ch] is now JS_HASHMETER-controlled and based on JSBasicStats. * DEBUG_scopemeters macro renamed JS_DUMP_SCOPE_METERS; uses JSBasicStats now. * Disentangle DEBUG and DUMP_SCOPE_STATS (now JS_DUMP_PROPTREE_STATS) and fix inconsistent thread safety for liveScopeProps (sometimes atomic-incremented, sometimes runtime-locked). * Compiler-modeled maxScopeDepth will propagate via JSScript to runtime for capability-based, interpreter-inlined cache hit qualifier bits, to bypass scope and prototype chain lookup by optimizing for common monomorphic get, set, and call site referencing a prototype property in a well-named object (no shadowing or mutation in 99.9% of the cases). 2008-01-12 16:31:31 -08:00
brendan@mozilla.org
4bef2e90ac 64-bit fixes for problems reported by edwin@cheatah.nl (many thanks to Edwin; 410941, r=igor). 2008-01-07 00:41:06 -08:00
brendan@mozilla.org
7d8fcab4dc Remove DUMP_CALL_TABLE (preliminary patch for 365851, r=igor). 2007-12-14 13:36:02 -08:00
igor@mir2.org
1831710dfa Bug 403678: GC thing callback is removed. r,a=brendan 2007-11-19 02:57:04 -08:00
peterv@propagandism.org
9989fb489f Fix for bug 375808 (Replacing GCX_PRIVATE by GCX_FUNCTION). r=igor, sr=jst, a=schrep. 2007-11-18 06:10:28 -08:00
reed@reedloden.com
4c5746dc93 relanding bug 400687 since it doesn't look to be the source of the Ts regression 2007-11-14 20:16:35 -08:00
gavin@gavinsharp.com
939757e2f4 Back out the patch for bug 400687 to see whether it caused the Ts regression, a=sicking 2007-11-14 16:17:28 -08:00
igor@mir2.org
ca808e133e Bug 400687: removal of dependency of xpconnect on internal JS GC thing types. r,a=brendan 2007-11-13 13:23:07 -08:00
igor@mir2.org
9bd984356d Bug 402087: fixing iteraction between gczeal mode and scripts. r,a=brendan, aM9=beltzner 2007-11-06 03:05:00 -08:00
benjamin@smedbergs.us
b4a8d79ecb Bug 396936 - FLAGP_TO_THING bustage from C++, r+a=brendan 2007-09-20 12:49:59 -07:00
igor@mir2.org
1dd9e7fca8 Bug 333236: merge sweep and free phases in GC. r=brendan 2007-09-19 15:04:47 -07:00
igor@mir2.org
cc6784b030 Bug 394551: no JS frames for fast native calls. r=brendan 2007-09-18 00:34:54 -07:00
igor@mir2.org
cd16ec9fa2 Bug 396049: the last ditch GC gcPoke checks are moved to js_NewGCThing. r=brendan 2007-09-18 00:22:07 -07:00
brendan@mozilla.org
19b6fcc0f0 Back-out due to test failure. 2007-09-17 18:22:20 -07:00
brendan@mozilla.org
2260fcfe2e Make GCF_SYSTEM immutable per object (396487, r=igor). 2007-09-17 17:47:42 -07:00
igor@mir2.org
aacdc13f0f Bug 394551: taking out the last patch as broke Windows build. 2007-09-17 12:28:14 -07:00
igor@mir2.org
065a93dd1c Bug 394551: no JS frames for fast native calls. r=brendan 2007-09-17 12:08:46 -07:00
igor@mir2.org
f058abee03 Bug 392263: using mmap/VirtualAlloc for GC arenas. r=brendan 2007-09-16 06:03:17 -07:00
igor@mir2.org
f3d30850c6 Bug 392263: taking out the patch due to bug 396299. 2007-09-16 05:02:56 -07:00
igor@mir2.org
5855f137e7 Bug 392263: using mmap/VirualAlloc for GC arenas. r=brendan 2007-09-15 10:19:32 -07:00
igor@mir2.org
9343ce4a2c Bug 392263: taking out the patch due to Mac build problems. 2007-09-15 08:26:30 -07:00
igor@mir2.org
43e3bb8cc3 Bug 392263: using mmap/VirualAlloc for GC arenas. r=brendan 2007-09-15 08:11:41 -07:00
igor@mir2.org
4606e8ce2b Bug 394709: fixing memory leak with watch handlers. r+a=brendan 2007-09-07 14:02:20 -07:00
igor@mir2.org
153df36a83 Bug 393184: js_NewGCThing no longer zeros the allocated thing. r=brendan 2007-08-22 13:56:08 -07:00
igor@mir2.org
4773ca1cae Bug 391290: mutability flag for strings is stored inside strings. r=brendan 2007-08-15 23:23:06 -07:00
igor@mir2.org
14e3457a58 Bug 386265: using double kashing for atoms. r=brendan 2007-08-11 13:25:16 -07:00
igor@mir2.org
dec81ea13e Bug 391033: no frame manipulation when reporting errors. r=brendan 2007-08-10 23:12:00 -07:00
igor@mir2.org
4d68066c7e Bug 387481, bug 389063: multithreading atom fixes and cleanups. r=brendan 2007-08-07 00:29:32 -07:00
dbaron@dbaron.org
b8ec995348 Fix leak of JSScript when a JSFunction is collected in a later GC than its function object. This changes GCX_PRIVATE to GCX_FUNCTION, and is essentially the same as the finalization part of the changes from bug 375808 (by igor). b=389757 r=igor a1.9=brendan 2007-08-04 00:00:43 -07:00
igor@mir2.org
ec402ee7a9 Bug 390078: Avoiding unnecessary GC-tracing of JSStackFrame members. r=brendan 2007-08-03 12:56:35 -07:00
brendan@mozilla.org
ba3ad2ce7a Fast (frame-less) native call optimizations (385393, r=igor). 2007-08-01 21:33:52 -07:00
brendan@mozilla.org
18e7692117 Backing out, see bug 389122 and orange or red tinderboxes. 2007-07-21 16:21:20 -07:00
brendan@mozilla.org
5f038f69ae Fast natives and related optimizations (385393, r=igor). 2007-07-21 14:39:42 -07:00
igor@mir2.org
79f3a28c2d Bug 380469: Calling close on unreachable generators from GC is no longer supported. r=brendan 2007-07-13 00:28:47 -07:00
mrbkap@gmail.com
f90fd387a3 Clear dormantNext when we're done using it. bug 387725, r=igor 2007-07-11 14:57:05 -07:00
igor@mir2.org
ab560f0cb7 Bug 385729: objects and regexps are stored in separated tables in JSScript. r=brendan,mrbkap 2007-07-08 02:03:34 -07:00
crowder@fiverocks.com
daa4556abc Bug 357016: spidermonkey should be buildable by a C++ compiler, patch by
crowder/Jason Orendorff, r=brendan
2007-07-05 13:37:47 -07:00
igor@mir2.org
9137bfaf4e Bug 349326: for-in loop now always closes iterator objects. r=brendan 2007-07-02 05:13:23 -07:00
igor@mir2.org
64f1c8053d Bug 384478: Patch from Mike Moening to fix warning when compiling with VC. r=me 2007-06-18 12:33:21 -07:00
peterv@propagandism.org
7e189d8549 Fix for bug 377884 (Switch nsXPConnect::Traverse to use tracing). r=jst/igor, sr=dbaron. 2007-05-25 01:42:08 -07:00
igor@mir2.org
e8eeb4f10c Bug 379758: SETSP is removed 2007-05-24 00:51:46 -07:00
crowder@fiverocks.com
c66619c8af Bug 308429: make tooMuchGC dynamic (runtime gczeal option), r=brendan 2007-05-15 16:27:20 -07:00
igor@mir2.org
6dca224ba8 Bug 379455: tracing API now let the tracer to know about the GC lock count. 2007-05-04 08:43:19 -07:00
igor@mir2.org
7f6e92e7d2 Bug 379146: New API to register application-specific GC roots. r=brendan 2007-05-01 03:09:46 -07:00
igor@mir2.org
68d7b74a96 Bug 378261: Replacing GC_MARK_DEBUG by DumpHeap. r=brendan 2007-04-25 06:43:18 -07:00
igor@mir2.org
d194d1ad7f Bug 378492: proper checks for null and jsval type when tracing, r=brendan 2007-04-24 16:11:02 -07:00