Commit Graph

537 Commits

Author SHA1 Message Date
Brian Hackett
fa41f89faf [INFER] Read barriers for call results, bug 663381. 2011-06-10 19:03:57 -07:00
Brian Hackett
6590865df8 [INFER] Never do a lookup on the current scope chain for GNAME opcodes, bug 647695. 2011-06-08 09:20:01 -07:00
Brian Hackett
1cbfb7c83f [INFER] Update shape number after rolling back properties in scripted 'new' correction, bug 662044. 2011-06-04 07:59:12 -07:00
Brian Hackett
9ee5994b69 [INFER] Apply object review changes, bug 657412. 2011-06-03 20:48:16 -07:00
Brian Hackett
58811dfa16 [INFER] Address array review comments, add back backedge table, bug 657412. 2011-06-01 11:15:51 -07:00
Brian Hackett
7efba20ba5 [INFER] Add WithType variation for nativeSetSlot, fix gaps in type barriers, bug 657901. 2011-05-18 10:43:08 -07:00
Brian Hackett
98763bc2cb [INFER] Move addTypeProperty barriers under obj->setProperty, obj->defineProperty, bug 619693. 2011-05-16 16:15:37 -07:00
Brian Hackett
afdce01248 Merge TM -> JM 2011-05-15 11:32:09 -07:00
Brian Hackett
f4e191294e [INFER] Improved robustness and tracking of 'new' object properties across scripts, bug 653962. 2011-05-12 20:07:23 -07:00
Brian Hackett
55015fcf39 Merge TM -> JM 2011-05-11 20:37:23 -07:00
Brian Hackett
c930c3e982 Merge TM -> JM
--HG--
rename : js/src/GlobalObject.cpp => js/src/vm/GlobalObject.cpp
2011-05-09 09:49:48 -07:00
Brian Hackett
417f1e64b9 [INFER] Remove on stack recompilation, allow removed on stack JIT frames to rejoin into the interpreter, bug 650163. 2011-05-09 07:12:47 -07:00
Brian Hackett
838352f9db Merge TM -> JM 2011-04-28 13:02:47 -07:00
Paul Biggar
e4d6748cc4 Bug 642772: Don't recreate a class during enumeration, if it has been deleted (r=bhackett)
In SM, classes are lazily resolved. If we detect that a class about to be used
has not yet been resolved, then we resolve it. However, the way that we decided
that they were resolved was broken. If the global object had a String property,
then it had been resolved. So what happened when we deleted the String
property? Well, it got resolved again.

Instead of using the String property of the global object, we now use the
contructor slot on the global object. This works fine for String, but some
classes don't have a constructor, like Math and JSON. For those classes, we set
the constructor slot to True. In either case, we can now tell that a class is
resolved if the constructor slot in not Undefined.
2011-04-27 04:13:56 -07:00
Jeff Walden
5d29251946 Bug 652746 - Implement js::ArgumentsObject, js::NormalArgumentsObject, and js::StrictArgumentsObject. r=njn
--HG--
extra : rebase_source : 84258ffa658ba09928ab9b86f8017fa6683f3146
2011-04-25 22:40:00 -04:00
Jeff Walden
76a4343e93 Bug 652215 - Add a js::StringObject subtype of JSObject. r=njn
--HG--
extra : rebase_source : 7cdfe72d0932b51408b9ec5dc38219605e1925ce
2011-04-20 16:33:05 -04:00
Brian Hackett
68b35100e1 Merge TM -> JM 2011-04-19 08:23:41 -07:00
Brian Hackett
499683f447 [INFER] Preserve fixed slot and capacity information when trading object guts, bug 650912. 2011-04-18 16:00:17 -07:00
Brian Hackett
21fd2d8254 [INFER] Direct instance property accesses, bug 649376. 2011-04-12 20:39:16 -07:00
Brian Hackett
83e8f1e4ab Merge TM -> JM 2011-04-12 07:04:45 -07:00
Brian Hackett
2c80c88ba3 [INFER] Direct global name accesses, bug 648994. 2011-04-11 20:10:46 -07:00
Brian Hackett
3756228559 [INFER] Use both inline and dynamic slots for objects other than dense arrays, bug 648321. 2011-04-08 19:51:40 -07:00
Brian Hackett
012e3b1119 Merge TM -> JM 2011-04-08 19:27:14 -07:00
Brian Hackett
dac20a37f4 [INFER] Maybe fix build breaks. 2011-04-03 19:54:19 -07:00
Brian Hackett
8b7888dd66 Merge TM -> JM 2011-04-01 19:57:28 -07:00
Brian Hackett
b447aaf9bb [INFER] Restore stock JM behavior with inference off, bug 647048. 2011-03-31 18:11:41 -07:00
Andreas Gal
fd2168c3af Implement Harmony weak maps (bug 547941, r=jorendorff). 2011-04-16 21:23:44 -07:00
Jason Orendorff
28a0d1622a Bug 614714 - Change JS_ClearScope to use the new enumeration code. r=Waldo. 2011-04-14 16:59:26 -07:00
Brian Hackett
70ee8fa7f3 [INFER] Cache standard class objects earlier to avoid reentrant class construction, bug 646393. 2011-03-30 07:08:58 -07:00
Paul Biggar
43b850291d Bug 643548: Remove mozalloc_undef_macro_wrappers hack from JS engine. (r=luke,rs=brendan)
mozalloc_undef_macro_wrappers are brittle and have side-effects that are hard
to debug and fix. The alternative is the just stick an underscore on the end of
malloc, free, etc, which is a comparatively small burden.
2011-03-31 01:14:12 -07:00
Brian Hackett
d737bb3ddb Merge TM -> JM 2011-03-22 18:07:31 -07:00
Jan de Mooij
c633bccba3 [INFER] Inline some native functions, bug 621961. r=bhackett 2011-03-21 22:55:27 -07:00
Luke Wagner
64207228c7 Bug 602994 - Clean up eval, remove unneeded security checks, assert equivalence of principal lookup (r=waldo,mrbkap) 2011-04-08 10:52:51 -07:00
Luke Wagner
774c050740 Bug 602994 - Preparatory syntactic cleanup (r=waldo) 2011-04-08 10:52:48 -07:00
Luke Wagner
05d2002b66 Bug 644074 - Simplify and consolidate VM stack code into js/src/vm/Stack* 2011-04-13 09:27:37 -07:00
Jeff Walden
a8a0234d77 Bug 641655 - Add a js::GlobalObject subtype of JSObject. r=njn 2011-04-18 16:50:47 -04:00
Jeff Walden
77e6fd7646 Backed out changeset c8ba5bd72b0c, we have too many test harnesses and I forgot to run one. r=tree-decorator 2011-04-21 16:29:54 -04:00
Jeff Walden
f7e9104cd4 Bug 641655 - Add a js::GlobalObject subtype of JSObject. r=njn 2011-04-18 16:50:47 -04:00
Bill McCloskey
4a9bde3182 Bug 648647 - Eliminate JSObjectMap (r=jorendorff) 2011-04-08 14:21:08 -07:00
Bill McCloskey
3c0cd83aa3 Bug 616666 - Use explicit stack for GC marking (r=gal) 2011-04-15 16:56:08 -07:00
Jeff Walden
c9809f07b4 class RegExp, not struct RegExp. r=windows-bustage
--HG--
extra : rebase_source : 5c31a9b6a5309548db45d2756f03abeec23ed2f9
2011-03-24 15:04:54 -07:00
Brian Hackett
7469fa7a3a [INFER] Don't share shapes between objects with different types, bug 620599. 2011-03-16 10:02:19 -07:00
Brian Hackett
0f8152b6ef [INFER] Use new type objects when the result of 'new' is assigned to a .prototype, bug 641714. 2011-03-15 00:17:07 -07:00
Brian Hackett
9d86c615fc Merge TM -> JM 2011-03-14 22:41:04 -07:00
Andreas Gal
0dec3716f6 Inline GC mark path (bug 639729, r=billm). 2011-03-13 18:13:52 -07:00
Brian Hackett
5d55f075a3 [INFER] Compute types for singleton/JSON arrays and objects, bug 639263. 2011-03-10 16:17:39 -08:00
Brian Hackett
d639ada378 Merge TM -> JM 2011-03-09 09:58:49 -08:00
Brian Hackett
6f2c05af08 [INFER] Stronger type-correctness assertions when setting or getting properties, bug 619693. 2011-03-06 15:35:09 -08:00
Jeff Walden
4dce1d9ffa Bug 640072 - Convert properties of RegExp objects into true data properties, eliminating a use of shared-permanent properties. r=jorendorff 2011-03-05 15:29:30 -08:00
Jeff Walden
6de99f0675 Bug 638997 - Remove the id field from PropDesc: users who needed it should manage the id separately. r=luke
--HG--
extra : rebase_source : eb2152a2259a81bca1d7a4f5521787f9385a3c6f
2011-03-04 17:24:15 -08:00