Commit Graph

181 Commits

Author SHA1 Message Date
Brendan Eich
d7abc9c150 Eliminate JSObject::freeslot via monotonic lastProp->freeslot (592556, r=jorendorff,dvander). 2010-09-02 14:50:44 -07:00
Brendan Eich
b15d952f7c Bug 535629 - Deleted properties' slots are not recycled (r=gal).
--HG--
extra : rebase_source : 04a8bbd6731e4e9b9d36a5d685c5ee0f87db064e
2010-08-18 11:34:13 -07:00
Brendan Eich
790ddc9e99 Merge JSScope into JSObject and JSScopeProperty (now js::Shape; bug 558451, r=jorendorff). 2010-08-29 11:57:08 -07:00
Brendan Eich
3705041036 Determine whether to shadow a property based on slotful *or* has JSPropertyOp setter (552432, r=jorendorff). 2010-12-13 18:10:39 -08:00
Nicholas Nethercote
1f1fbee591 Backed out changeset 0343557b0c7a due to orange. 2010-12-13 18:43:11 -08:00
Nicholas Nethercote
225d4f7e2d Bug 610070 - Large amount of heap allocation from js::PropertyTable::init. r=brendan. 2010-12-13 16:43:39 -08:00
Chris Leary
e0ace5bc86 Bug 564953: Port YARR! Lands macroassembler. (r=gal) 2010-08-11 13:30:07 -07:00
Robert Sayre
250c59eece Reland: Bug 577648 - arguments.callee.caller does not work in FF 4 under certain circumstances. 2010-08-01 09:58:03 -07:00
Robert Sayre
9bae5e1079 Backout changeset 80382d88b92c. (Bug 577648 - arguments.callee.caller does not work in FF 4 under certain circumstances). The patch is righteous, but MSVC's behavior with a mere 3GB of addressable memory is not. Will reland soon. 2010-07-31 14:01:26 -07:00
Igor Bukanov
b4a4d8d48e bug 579957 - parent as a field in JSObject (relanding after wixing bug 583404). r=lw 2010-07-31 11:54:01 +02:00
Robert Sayre
c7bd912564 Backed out changeset d8bbb2ef3038. (Igor Bukanov – bug 579957 - parent as a field in JSObject. r=lw) 2010-07-29 18:11:41 -07:00
Igor Bukanov
4eff9db05f bug 579957 - parent as a field in JSObject. r=lw 2010-07-29 19:11:27 +02:00
Igor Bukanov
2019c722fb bug 571789 - merging JSObjectOps and JSExtendedClass into JSClass. r=jorendorff 2010-06-12 18:29:04 +02:00
Andreas Gal
69df940a4e Back out bug 580803. 2010-07-28 11:20:19 -07:00
Igor Bukanov
181c2cdf3a Backed out changeset 7b2b90efe57d -- the patch was landed against a tree with a lot of orange. This will hinder the orange resolution. 2010-07-28 14:36:06 +02:00
Igor Bukanov
a69fd0a49f bug 571789 - merging JSObjectOps and JSExtendedClass into JSClass. r=jorendorff 2010-06-12 18:29:04 +02:00
Brendan Eich
794e678554 Arguments.callee.caller does not work in FF 4 under certain circumstances (577648, r=jwalden). 2010-07-23 14:41:56 -07:00
Andreas Gal
404cbee80f Don't lock the GC if its already locked (follow-up for 580803). 2010-07-23 20:02:13 -07:00
Brendan Eich
1813531fe8 Back out patch for bug 577648, need to fix a leak. 2010-07-23 14:21:50 -07:00
Brendan Eich
72e638d9ef arguments.callee.caller does not work in FF 4 under certain circumstances (577648, r=jwalden). 2010-07-10 11:48:00 -07:00
Luke Wagner
d4e0a53756 Bug 578044 - fix setterOrUndefined (r=waldo) 2010-07-20 19:33:51 -07:00
Luke Wagner
99411cc93d Bug 549143 - fatvals 2010-07-14 23:19:36 -07:00
Brendan Eich
e672f52623 Eliminate JSClass::reserveSlots and streamline new-object paths (535416, r=gal). 2010-06-18 17:43:02 -07:00
Brendan Eich
734c3a1ba9 Back out a81f2aed9c9b due to orange. 2010-06-18 17:39:22 -07:00
Brendan Eich
157c408713 Eliminate JSClass::reserveSlots and reserve fixed-per-class slots lazily (535416, r=gal). 2010-06-15 10:06:40 -07:00
Jason Orendorff
6472e34dba Bug 570169 - Part 1, preparation. Rearrange some code. r=gal. 2010-06-16 16:13:01 -05:00
Jason Orendorff
8da1998760 Bug 567152 - Assertion failure: !generic(). r=brendan.
--HG--
extra : rebase_source : 8a09f3c6b9570d764ebc404a2ff870625e156801
2010-06-02 16:45:23 -07:00
Jason Orendorff
635c071944 Back out changeset a72a9d72c028 (bug 559653, remove SetPropHit). Checking to see if this caused a 5% Dromaeo regression today.
--HG--
extra : rebase_source : 5b1726c8bc4f9504cb1d452d0d21d59d61091ee0
2010-06-02 16:01:36 -07:00
Jason Orendorff
bf6f2c259c Bug 559653 - Record assignment before the interpreter goes; avoid record_SetPropHit. r=brendan. 2010-06-01 21:18:49 -07:00
Brendan Eich
9c5f58d3ca Call instances uniquely shaped at birth due to lack of runtime-shared empty scope (569391, r=jorendorff). 2010-06-01 15:01:11 -07:00
Igor Bukanov
9d49b712de bug 566145 - reserving block and arguments shapes. r=jorendorff 2010-05-20 12:48:04 +02:00
Andreas Gal
efd9bd790e Implement ES Harmony Proxies (bug 546590, r=mrbkap). 2010-05-18 19:21:43 -07:00
Nicholas Nethercote
a5ad41af4f Bug 564581 - TM: avoid js_IdIsIndex() calls on trace. r=brendan. 2010-05-12 19:34:01 -07:00
Jason Orendorff
ab2c2c89d5 Bug 513065 - Part 1, avoid thisObject when unwrapping With objects. r=mrbkap.
--HG--
extra : rebase_source : 129c8592e7f14bb76cc648ba8ae930bfc73507cb
2010-05-12 08:11:46 -05:00
Brendan Eich
52ed1d8098 Fix getter/setter built-in vs. scripted type confusion: union getter/setter callable object pointer with raw JSPropertyOp pointer, fix watchpoint assertion/null-deref related to ES5's {get: undefined, set: undefined} new scripted getter/setter state encoding, clean up related code (560796, r=jwalden). 2010-04-30 16:03:37 -07:00
Jason Orendorff
89f72d0bce Backed out changeset 73f23528bed6 (bug 559653, again) 2010-04-30 15:12:13 -05:00
Jason Orendorff
d55c165fa7 Bug 559653 - Record assignment before the interpreter goes; avoid record_SetPropHit. r=brendan.
--HG--
extra : rebase_source : c6698a313d7d00cd0584e1968d96d4b67ab0373c
2010-04-28 11:12:19 -05:00
Jason Orendorff
aff223663e Bug 560998 - Assertion failure: entry->vword.toObject() == JSVAL_TO_OBJECT(v). r=brendan. 2010-04-30 08:29:04 -05:00
Jason Orendorff
fc386a2ca8 Backed out changeset ae857d818793 (bug 559653) due to test failures. 2010-04-28 13:41:24 -05:00
Jason Orendorff
63cfa9cafb Bug 559653 - TM: Record assignment before the interpreter goes; remove record_SetPropHit. r=brendan. 2010-04-28 11:12:19 -05:00
Jason Orendorff
8c46df6c46 Bug 557652 - Eliminate redundant guard that incProp/getProp operand is not the global object. r=brendan.
--HG--
extra : rebase_source : 8da6192aedb78f6096d83a161698b27e43d30c30
2010-04-12 08:27:16 -05:00
Luke Wagner
777b935aea Bug 558144 - un-macroize OBJ_SCOPE, OBJ_SHAPE, LOCKED_OBJ_SET_SLOT, LOCKED_OBJ_GET_SLOT (r=Waldo) 2010-04-08 11:22:04 -07:00
Nicholas Nethercote
684396fb91 Bug 555631 - Convert STOBJ_* macros to inline functions. r=gal. 2010-03-30 14:42:48 -07:00
Jason Orendorff
25153c3c13 Bug 500431 part 1 - Move property cache code to jspropertycache{.h,.cpp,inlines.h}. r=brendan.
--HG--
extra : rebase_source : f7a7bb63bc3cded9452807ecdd0b5b8e8f5b3ff6
2010-03-24 16:16:01 -05:00
Brendan Eich
139555cb66 Followup fix for 497789: work around apparent gcc 4.4 aliasing bug (r=dvander). 2010-03-22 16:26:28 -07:00
Brendan Eich
f819b36cf4 Use direct object shape instead of identity as key for deep property cache hits (497789, r=jorendorff). 2010-03-22 11:11:44 -07:00
Jeff Walden
ee34aa693a Bug 551007 - Make JSScopeProperty::attrs private, hide information behind accessor methods. r=jorendorff 2010-03-08 15:44:59 -07:00
Mike Moening
0373a2437d bug 549010 - fixing and silencing MSVC warnings. r=brendan,igor 2010-03-04 20:44:09 -08:00
Jason Orendorff
ad75218737 Bug 539170 - Encapsulate JSScopeProperty::{getter,setter} and move assertions to init-time. r=Waldo. 2010-02-24 17:40:28 -08:00
Andreas Gal
18afa9f743 Setters/getters can be callable objects (547912, r=brendan). 2010-02-22 22:25:09 -08:00
Jason Orendorff
095bd890ef Bug 539829 - Encapsulate JSScope::flags. r=Waldo.
--HG--
extra : rebase_source : ced4f057e715075d8e4eff343e824d8934152a7e
2010-02-05 18:11:13 -06:00
Igor Bukanov
f74b35769d bug 538463 - caching only single-threaded objects. r=jorendorff 2010-02-03 13:42:07 +03:00
Igor Bukanov
008691b6f9 Backed out changeset b9700adc3951 - the landing for the bug 538463 had wrong changes 2010-02-03 13:37:56 +03:00
Igor Bukanov
7aafadcc76 bug 538463 - caching only single-threaded objects. r=jorendorff 2010-02-03 12:46:10 +03:00
Igor Bukanov
836b8a84eb bug 540805 - using reference counting only for empty scopes. r=jorendorff 2010-01-27 09:50:17 +03:00
Igor Bukanov
450cf95e35 bug 538275 - ClaimTitle cleanup. r=brendan, jorendorff 2010-01-24 14:15:38 +03:00
Brendan Eich
983aa690e9 Analyze module pattern and private-statics pattern in order to despecialize from methods to slots/sprops (536564, r=jorendorff). 2010-01-14 09:33:14 -08:00
Brendan Eich
f22c353c9c Bug 533258 - "Assertion failure: hasMethodBarrier()" with ckeditor (r=jorendorff). 2010-01-07 10:01:01 -08:00
Brendan Eich
398f5f3b9b Bug 537204 - No more BOGUS_CX bogosities (r=jwalden). 2009-12-30 13:49:26 -08:00
Jeff Walden
285792a4b4 Bug 430133 - Implement ES3.1's Object.defineProperty and Object.defineProperties. r=jorendorff 2009-06-05 12:56:45 -07:00
Jeff Walden
e9d69cbf2e Bug 529404 - Assignments to a property that has a getter but not a setter should not throw a TypeError per ES5, except in strict mode. r=brendan 2009-12-08 17:00:42 -08:00
Robert Sayre
4ea539c658 Relanding: Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). Backed out changeset ee7bfc1923ad 2009-12-01 15:49:15 -05:00
Robert Sayre
8be5b171b9 Backed out changeset c03ebf340688. Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). 2009-12-01 09:56:16 -05:00
Brendan Eich
c731045c51 Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). 2009-11-20 16:14:42 -08:00
Brendan Eich
8655c42887 Test branded *and* hasMethodBarrier consistently, and with a combined helper (529837, r=jorendorff). 2009-11-20 14:05:16 -08:00
Jason Orendorff
cd32782f94 Bug 505523 - Property cache can skip JSClass::resolve or JSClass::addProperty hooks. r=graydon, r=brendan.
--HG--
extra : rebase_source : a77b0e81203010aabe07b92b639762dce83200c0
2009-11-18 14:29:58 -06:00
Brendan Eich
dd2281d2c9 Fix method barrier not to brand, period (branding without reshaping is worse, branding correctly is unnecessary; 524826, r=jorendorff). 2009-11-18 13:41:40 -08:00
Jeff Walden
e53d0c2e48 Backed out changeset 2fe1a3d6e672, enough philosophically-vexing orange that I'm unwilling to adjust all the tests without discussion (or, alternately, leave it in place until morning). 2009-11-12 00:57:18 -08:00
Jeff Walden
152d62d222 Bug 523846 - Assignments to a property that has a getter but not a setter should not throw a TypeError per ES5 (at least not until strict mode is supported). r=brendan
--HG--
extra : rebase_source : 7d47eb44d21f17bfa11aeadca2ff980336315eca
2009-11-10 18:03:41 -08:00
Brendan Eich
02c0dc3df2 Factor jsscopeinlines.h out, clean up #include order (524267, r=gal/jorendorff). 2009-10-26 13:39:39 -07:00
Jason Orendorff
326aa1d148 Bug 522590 - FF 3.7 crash on startup with chromebug. r=brendan. 2009-10-21 15:27:35 -05:00
David Mandelin
99fb23d064 Bug 511695: Fix JS warnings in MSVC8, r=brendan 2009-09-23 11:16:30 -07:00
Jeff Walden
d47fa5ba16 Bug 517594 - Add assertions to verify that sprops being used don't have an id == JSVAL_NULL, to attempt to catch such bugs as early as possible. r=jorendorff
--HG--
extra : rebase_source : 0018d627c98d37dae8b008fba7681d63747e18f1
2009-09-18 15:39:09 -07:00
Brendan Eich
eaabbf253c Bug 516075 - Move shape into JSObjectMap from JSScope, const-ipate and use LIR_ldc* to get to it (r=jorendorff). 2009-09-14 20:29:46 -04:00
Jason Orendorff
e170e4b573 Bug 511728 - Misc. cleanup from bug 503080. r=igor.
--HG--
extra : rebase_source : f4b7b385bbece2316912ce67c77a49ac8fca6e5c
2009-09-09 15:53:37 -05:00
Brendan Eich
cce4dce512 Join lambdas assigned or initialized as methods to the compiler-created function object if we can, with a read barrier to clone on method value extractions other than call expressions (471214, r=jorendorff). 2009-09-03 14:41:19 -07:00
Jason Orendorff
d41212b7a6 Bug 514222 - js_GetMutableScope gives the scope a unique shape. r=brendan. 2009-09-02 17:58:25 -05:00
Brendan Eich
b063d31520 Back out changeset aff171a8c4f0 (bug 471214). 2009-08-26 09:34:41 -07:00
Brendan Eich
bd8f55c0ad Join function objects where possible (471214, r=igor). 2009-08-25 23:42:37 -07:00
Robert Sayre
99a0962393 Backed out changeset e09130fcb013 2009-07-28 18:51:35 -04:00
Brendan Eich
8d27b07ec5 Bug 471214 - Join function objects transparently, clone via read barrier to satisfy de-facto standard (r=igor). 2009-07-28 13:20:14 -07:00
Jason Orendorff
eb14203c0c Bug 506786 - JSScope::trace method. r=brendan. 2009-07-28 04:00:35 -05:00
Jason Orendorff
a22e8a6032 Bug 505932 - Shape regeneration does not touch most empty scopes. r=brendan. 2009-07-27 16:29:02 -05:00
Brendan Eich
b4a10de944 Bug 488731 - Avoid shape regeneration and property cache purge during the GC (r=mrbkap). 2009-07-24 06:55:28 -07:00
Robert Sayre
d71c6818a0 Backed out changeset 047b9102dddb 2009-07-23 22:06:31 -04:00
Brendan Eich
cf4a2c7921 Avoid shape regeneration and property cache purging from the GC unless the shape generator overflows (488731, r=jorendorff). 2009-07-23 17:59:49 -07:00
Jason Orendorff
a31f80165c Bug 503080 - Remove prototype-scope-sharing. r=brendan. 2009-07-21 16:25:11 -05:00
Andreas Gal
daadccbdec Follup-fix for 503665 (missing inlines). 2009-07-13 14:41:38 -07:00
Andreas Gal
bfb17e2d67 Make Scope::hold/drop and parts of Scope::search inline (503665, r=jwalden). 2009-07-13 14:29:32 -07:00
Andreas Gal
3367fcef8e Inline FinalizeObject into js_GC() along with making Scope hold() and drop() inline, too (503461, r=dmandelin). 2009-07-12 07:38:59 -07:00
Brendan Eich
f60779aef5 Bug 503343 - Change JSScope macros to methods. r=jorendorff 2009-07-09 15:27:21 -05:00
Brendan Eich
9cfe1539e6 Optimize GCto avoid atomic decrement in js_DropScope (503155, r=jorendorff). 2009-07-09 14:59:44 -04:00
Blake Kaplan
445fcf3242 Bug 496113 - Unwrap 'with' objects before calling into getters to restore API compatibility. r=brendan 2009-06-03 16:37:44 -07:00
Igor Bukanov
92f94e451c bug 491126 - sharing object map for non-native objects. r=brendan 2009-05-14 12:35:23 +02:00
Brendan Eich
0416e1e679 Bug 492355 - Suspected Txul regression from JS engine changes (r=igor). 2009-05-13 17:11:23 -07:00
Graydon Hoare
bb4177dccd Bug 490044 - TM: Add deep-bailing write barrier to global shape change code, r=brendan. 2009-04-24 17:47:32 -07:00
Igor Bukanov
e4bc4e81cb bug 488995 - fixing error reporting for getter-only properties. r=mrbkap sr=jst 2009-04-22 12:39:08 +02:00
Igor Bukanov
4ad2e764fa bug 488414 - js_GenerateShape just schedules, not run, the GC. r=brendan,gal 2009-04-20 12:10:29 +02:00
Igor Bukanov
fd49b19773 Backed out changeset f4662701526b (bug 488414) to fix !JS_THREADSAFE compilation errors 2009-04-20 11:59:36 +02:00
Igor Bukanov
56547f8087 bug 488414 - js_GenerateShape just schedules, not run, the GC. r=brendan,gal 2009-04-20 10:17:28 +02:00