Commit Graph

824 Commits

Author SHA1 Message Date
Brian Hackett
f1b91c8773 [INFER] Analysis and compiler improvements for polymorphic call sites, bug 653962. 2011-05-20 19:33:06 -07:00
Brian Hackett
14097cb845 [INFER] Remove cx->newTypeObject, bug 657412. 2011-05-19 09:15:12 -07:00
Brian Hackett
4cb0c5c5ef [INFER] Cleanup for review, bug 657412. 2011-05-16 22:59:40 -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
55015fcf39 Merge TM -> JM 2011-05-11 20:37:23 -07:00
Brian Hackett
82629392f1 [INFER] Inlined natives for Array.{push,pop}, object flag cleanup, bug 653962. 2011-05-10 23:33:30 -07:00
Gregor Wagner
dc5385284e Bug 603916 - unifying GC sheduling. r=igor 2011-05-10 22:37:11 -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
c54f0f760a [INFER] Add read barrier for shapes with non-standard getters, bug 653639. 2011-04-30 19:42:58 -07:00
Brian Hackett
b6adf3132e [INFER] Understand types of window objects, bug 653639. 2011-04-30 17:53:40 -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
Chris Leary
e5b4259e5a Bug 654792: Give Shape::shape and Shape::id better names for great justice. (r=jorendorff) 2011-05-04 12:01:39 -07:00
Christian Holler
b0902374f8 Bug 628332 - Avoid double-frees when compartment allocation fails (r=billm). 2011-05-03 04:26:40 -07:00
Paul Biggar
b005c6c2d4 Merge backout. 2011-04-29 04:01:23 -07:00
Paul Biggar
15828cd649 Backed out changeset 334ada87e329 (bug 628332) - those a11y errors arrived at the same time as this landing, so backing this out to see if that fixes it. 2011-04-29 04:00:57 -07:00
Christian Holler
faf48eb1e7 Bug 628332 - Avoid double-frees when compartment allocation fails (r=billm). 2011-04-27 16:09:00 -07:00
Brian Hackett
fe5aeaab19 Merge TM -> JM 2011-04-20 11:37:46 -07:00
Brian Hackett
68b35100e1 Merge TM -> JM 2011-04-19 08:23:41 -07:00
Bill McCloskey
3c0cd83aa3 Bug 616666 - Use explicit stack for GC marking (r=gal) 2011-04-15 16:56:08 -07:00
Brian Hackett
fc65b95530 Merge TM -> JM 2011-04-13 06:45:06 -07:00
Blake Kaplan
d7c603eab8 Bug 618176 - Skip multiple wrappers when deciding whether this object is an array. r=gal 2011-04-12 15:56:45 -07:00
Brian Hackett
83e8f1e4ab Merge TM -> JM 2011-04-12 07:04:45 -07:00
Brian Hackett
e4deebb68d Merge TM -> JM 2011-04-11 07:33:47 -07:00
Ed Morley
90a849de12 Bug 647389 - Remove WINCE stuff from Spidermonkey (r=jorendorff) 2011-04-09 20:17:53 +01:00
Brian Hackett
012e3b1119 Merge TM -> JM 2011-04-08 19:27:14 -07:00
Brian Hackett
4226ea1e6e [INFER] Array bounds check hoisting, cleanup, bug 618690. 2011-04-05 18:12:03 -07:00
Brian Hackett
8b7888dd66 Merge TM -> JM 2011-04-01 19:57:28 -07:00
Brian Hackett
a1f196a052 [INFER] More fixes for stock JM behavior, bug 647048. 2011-04-01 17:26:34 -07:00
Andreas Gal
fd2168c3af Implement Harmony weak maps (bug 547941, r=jorendorff). 2011-04-16 21:23:44 -07:00
Wes Garland
256dd8ad05 Bug 586016, update JS_GetImplementationVersion. r=jorendorff 2011-04-16 14:16:50 -04:00
Colin Walters
2a0395d63b Bug 648102 - Make shell REPL/snarf/run always take UTF-8 input; add JS_DecodeUTF8; add UTF-8 flag to JS_BufferIsCompilableUnit. r=gal 2011-04-16 14:11:10 -04:00
Luke Wagner
6fcaf8c63f Bug 649531 - tidy up this-computation logic a bit, add some asserts (r=waldo)
--HG--
extra : rebase_source : f01409526e4582b87ced4b9f9d1170254a55373b
2011-04-12 17:16:12 -07:00
David Anderson
61cc68f032 Fix clang warnings (bug 647280, r=luke). 2011-04-14 13:45:06 -07:00
Phil Ringnalda
8d4385b7fe Back out bd821ea0ad41 (638324) for mochitest-chrome crashes 2011-03-31 19:55:10 -07:00
Andreas Gal
e69500d1bc Maintain a list of IdArrays as we hand them out via JS API (638324, r=brendan). 2011-03-31 14:42:33 -07:00
Brian Hackett
74bba0be53 [INFER] Inline scripted calls, bug 639099. 2011-03-26 19:07:13 -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
Paul Biggar
72c7701093 Bug 634155: Account for NewCompartment's memory, and change allocation APIs (r=nnethercote)
This changes the allocation API, in the following way:

  js_malloc -> {cx->,rt->,OffTheBooks::}malloc
  js_calloc -> {cx->,rt->,OffTheBooks::}calloc
  js_realloc -> {cx->,rt->,OffTheBooks::}realloc
  js_free -> {cx->,rt->,Foreground::,UnwantedForeground::}free
  js_new -> {cx->,rt->,OffTheBooks::}new_
  js_new_array -> {cx->,rt->,OffTheBooks::}new_array
  js_delete -> {cx->,rt->,Foreground::,UnwantedForeground::}delete_

This is to move as many allocations as possible through a JSContext (so that they may be aken into account by gcMallocBytes) and to move as many deallocations to the background as possible (except on error paths).
2011-03-31 01:13:49 -07:00
Brian Hackett
d737bb3ddb Merge TM -> JM 2011-03-22 18:07:31 -07:00
Jeff Walden
d3676c4409 Bug 649819 - Remove JS_BeginJSONParse/JS_ConsumeJSONText/JS_EndJSONParse now that these APIs are no longer used and the cleaner API is available and works. r=brendan 2011-03-21 11:42:14 -07:00
Luke Wagner
774c050740 Bug 602994 - Preparatory syntactic cleanup (r=waldo) 2011-04-08 10:52:48 -07:00
Chris Leary
2ef1aa6439 Bug 642274: Add loose equality to JSAPI. (r=Waldo)
--HG--
extra : rebase_source : 3001604e6e6bfc9c8e73aafc1498a71ae7ade9cd
2011-03-21 10:04:43 -07:00
Andreas Gal
707f928b25 Expose public APIs for converting doubles to signed/unsigned int per ECMA spec (bug 631132, r=bzbarsky). 2011-03-29 19:19:15 -07:00
Brian Hackett
f9a4f63af8 [INFER] Fast path for object equality, track equality hooks in type objects, bug 619592. 2011-03-19 16:53:07 -07:00
Rob Arnold
1fa00902b6 Bug 651510 - "Signature for JS_StructuredClone differs in jsapi.h and jsapi.cpp" [r=jorendorff] 2011-04-20 08:28:00 -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