Commit Graph

18523 Commits

Author SHA1 Message Date
Jeff Walden
04138b6238 Bug 728411 - Move checkShapeConsistency into ObjectImpl. r=bhackett
--HG--
extra : rebase_source : 92525ff32e1d27c335eb0d2c73a8b54b0d5b8a54
2012-02-23 15:45:01 -08:00
Jeff Walden
800c0e5af6 Bug 728411 - Move most other slot-access methods into ObjectImpl. r=bhackett
--HG--
extra : rebase_source : 34a66226584835cdedc5958d0475606de972180a
2012-02-23 15:39:35 -08:00
Jeff Walden
8b9d875ceb Bug 728411 - Move slot range operations into ObjectImpl. r=bhackett
--HG--
extra : rebase_source : 704d67267923e019df82de7f77f60b48c6c62128
2012-02-23 15:39:32 -08:00
Jeff Walden
e6976ebef4 Bug 737996 - Remove some essentially-obsolete configuration options from jsversion.h. r=luke
--HG--
extra : rebase_source : 4b54a0ab0a6fcdb15ee671ee8c1b460d4b4f4180
2012-03-21 12:23:07 -07:00
Terrence Cole
8904116cef Bug 735761 - Fix a cosmetic error in the test suite; r=dmandelin
This patch pushes our null results for non-run tests before running other tests
so that when we do not try to update the progress bar after we finish running.

--HG--
extra : rebase_source : 02e53cddcab4c5898ef2636f78c806509ae33dcf
2012-03-21 11:49:01 -07:00
Igor Bukanov
9ba9747e3a bug 730221 - followup to bump XDR version number as the previously landed changeset made incompatible changes to xdr format. r=bugzilla_comment 2012-03-21 19:14:42 +01:00
Hessam Salehi
25b8143afe Bug 474505 - Replace uses of nsVoidPtrHashkey with nsPtrHashKey<T>; r=bsmedberg 2012-03-21 14:07:31 -04:00
Luke Wagner
c97b610edb Bug 737388 - Put back piece of prologue accidentally removed earlier (r=bhackett) 2012-03-21 01:51:11 -07:00
Brian Hackett
0baaf796f4 Use singleton types for global object initializers, bug 731398. r=dvander 2012-03-21 07:37:43 -06:00
Brian Hackett
d660ec709a Update type sets persistently for arithmetic on objects, bug 733979. r=billm 2012-03-21 06:32:18 -06:00
Luke Wagner
1e24ec622e Bug 736555 - don't use magic values to implement deleted args (r=bhackett)
--HG--
extra : rebase_source : f4e3f63512acb2ff8ee874de2d718bd7877932d6
2012-03-14 17:19:17 -07:00
Luke Wagner
527cb08cee Bug 737575 - fix arguments['integer'] (r=dvander)
--HG--
extra : rebase_source : 5cb580a47187f2a88a98efc3fa8a88ee4c8bc551
2012-03-20 17:21:58 -07:00
Terrence Cole
73512b7fd7 Bug 737221 - Add a missing pre barrier on jsid strings; r=billm
--HG--
extra : rebase_source : 970b91446c7703966aa6f397ac40d8d9d486f796
2012-03-20 16:03:50 -07:00
Steve Fink
bfb79fbda2 Fix --enable-dtrace build failure from bug 737195. r=npotb, DONTBUILD 2012-03-20 12:48:43 -07:00
Terrence Cole
74008eefc7 Bug 737195 - Add barriers to JSFunction::atom; r=billm
This is only ever initialized, so it needs generational barriers, but not
incremental barriers.
2012-03-19 17:24:05 -07:00
Terrence Cole
dbe94b8be8 Bug 740673 - Simplify the C++ WeakMap implementation; r=jimb
It exposes way more configurability than we use at the moment.
2012-03-29 17:35:46 -07:00
Terrence Cole
ed16bd1b59 Bug 740153 - Don't expose Entry directly through HashMap; r=luke
HashMap and HashSet only expose Entries through Ptr and Range, except for one
variant of put. They also don't expose the default size they use if you call
init() without an argument. These weirdnesses seem to be interface carried over
from the old jsdhash.

The first oddness is unused and can be removed, the second should simply get
exposed to make it easier to wrap HashMap and HashSet.

--HG--
extra : rebase_source : e1432a9af189229f379158ba0529956ddbf5f234
2012-03-30 11:01:58 -07:00
Luke Wagner
ba933e8a39 Bug 740654 - Hoist recursion checks out of Interpret into callers so that Interpret does not throw when trying to rejoin from mjit (r=bhackett)
--HG--
extra : rebase_source : f85c12860d9172e5167e5952352b02d367e53057
2012-04-02 08:57:27 -07:00
Justin Lebar
155a287d43 Bug 738624 - Add ghost windows to about:compartments. r=njn
--HG--
extra : rebase_source : a486e644351af72a4276f26de2e4588ee851426f
2012-04-02 10:37:04 -04:00
Bobby Holley
e3df69dd0f Bug 738874 - Don't allow non-classinfo XPCWNs to be wrapped cross-compartment. r=mrbkap 2012-03-25 22:35:50 -07:00
Makoto Kato
a41e6dd26b Bug 716333 - get rid of WithConversion (xpconnect part). r=bholley 2012-03-26 14:12:15 +09:00
Igor Bukanov
7296e0408c bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke
The patch shrinks the API presented in jsxdrapi.h down to 4 functions to
encode/decode scripts and interpreted functions to/from the memory. The
newly introduced implementation header vm/Xdr.h replaces the former
JSXDRState with the template class XDRState parametrized by the enum
type with two constants, XDR_ENCODE and XDR_DECODE. This way a compiler
can fully eliminate the former runtime checks for the decoding/encoding
mode. As a drawback this required to explicitly instantiate the xdr
implementation as I do not want to put all the xdr code to header files.

The memory-only XDR allows to avoid coping filename and to-be-atomized
chars to a temporary buffer as the code can just access the buffer
directly. Another change is that new XDRScript takes as a parameter its
parent script. This allowed to avoid keeping filename in XDRState and
simplify the filename management.

Another change is the removal of JS_HAS_HDR. As CloneScript uses XDR to
copy a script, JS_HAS_XDR cannot be disabled.

--HG--
rename : js/src/jsxdrapi.cpp => js/src/vm/Xdr.cpp
extra : rebase_source : f8f1536a86b7c3fe7296a16b6677bd21664af98a
2012-02-20 11:58:00 +01:00
Matt Brubeck
f83a9ab93e Merge mozilla-central and mozilla-inbound 2012-03-24 09:05:27 -07:00
Masatoshi Kimura
9177b368f2 Bug 736686 - Part 1: Make dictionary initializers callable off main thread. r=khuey 2012-03-24 12:33:49 +01:00
Dão Gottwald
766a2b3244 Backed out changeset 30798fdc5bad 2012-03-24 12:33:30 +01:00
Igor Bukanov
f8a4496d31 bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke
The patch shrinks the API presented in jsxdrapi.h down to 4 functions to
encode/decode scripts and interpreted functions to/from the memory. The
newly introduced implementation header vm/Xdr.h replaces the former
JSXDRState with the template class XDRState parametrized by the enum
type with two constants, XDR_ENCODE and XDR_DECODE. This way a compiler
can fully eliminate the former runtime checks for the decoding/encoding
mode. As a drawback this required to explicitly instantiate the xdr
implementation as I do not want to put all the xdr code to header files.

The memory-only XDR allows to avoid coping filename and to-be-atomized
chars to a temporary buffer as the code can just access the buffer
directly. Another change is that new XDRScript takes as a parameter its
parent script. This allowed to avoid keeping filename in XDRState and
simplify the filename management.

Another change is the removal of JS_HAS_HDR. As CloneScript uses XDR to
copy a script, JS_HAS_XDR cannot be disabled.

--HG--
rename : js/src/jsxdrapi.cpp => js/src/vm/Xdr.cpp
2012-02-20 11:58:00 +01:00
Ms2ger
8775c56114 Backed out changeset f33e1e959036; r=bustage 2012-03-24 11:04:34 +01:00
Igor Bukanov
8e97874303 bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke
The patch shrinks the API presented in jsxdrapi.h down to 4 functions to
encode/decode scripts and interpreted functions to/from the memory. The
newly introduced implementation header vm/Xdr.h replaces the former
JSXDRState with the template class XDRState parametrized by the enum
type with two constants, XDR_ENCODE and XDR_DECODE. This way a compiler
can fully eliminate the former runtime checks for the decoding/encoding
mode. As a drawback this required to explicitly instantiate the xdr
implementation as I do not want to put all the xdr code to header files.

The memory-only XDR allows to avoid coping filename and to-be-atomized
chars to a temporary buffer as the code can just access the buffer
directly. Another change is that new XDRScript takes as a parameter its
parent script. This allowed to avoid keeping filename in XDRState and
simplify the filename management.

Another change is the removal of JS_HAS_HDR. As CloneScript uses XDR to
copy a script, JS_HAS_XDR cannot be disabled.

--HG--
rename : js/src/jsxdrapi.cpp => js/src/vm/Xdr.cpp
2012-02-20 11:58:00 +01:00
Jeff Walden
ced20c2644 Remove an unnecessary declaration that seems to be causing link errors only on Windows with some compilers. Followup to bug 739380, r=bustage 2012-04-03 09:10:22 -07:00
Justin Lebar
c7747cbafe Bug 738624 - Add ghost windows to about:compartments. r=njn
--HG--
extra : rebase_source : c16cdfc4c06b363f54f1d0f37bb006cf977b079a
2012-04-02 22:28:05 -04:00
Josh Matthews
ee611c89d9 Bug 704147 - Make ctypes function pointers callable via call and apply. r=bholley 2012-02-14 16:26:05 -05:00
Daniel Holbert
6fdccfb996 Bug 742438: Fix straggling bool-vs-NULL comparison after HashSet::put return-type change. r=terrence 2012-04-04 11:18:18 -07:00
Igor Bukanov
2f97ce3e53 bug 737365 - followup to fix !JS_THREADSAFE build. r=none
--HG--
extra : rebase_source : 949296487fa23ae991adc29a9ecf66d79d7fbef0
2012-04-04 18:05:51 +02:00
Igor Bukanov
45bee87157 Bug 737365 - stop using the cx during finalization, part 3.
This part removes the usage of JSContext* during the finalization and
when sweeping the compartments. That required to change quite a few
methods in type inference, jit and debugger implementation to take a
FreeOp rather than JSContext pointer. In turn that also often required
to replace cx->compartment usage with extracting the compartment from
the passed objects or pass the compartment explicitly. On the plus side
it allowed to remove fallible compartment enter code in methods that
could be called during finalization.
2012-03-20 11:22:05 +01:00
Igor Bukanov
637a51f167 Bug 737365 - stop using the cx during finalization, part 2.
This parts removes the usage of JSContext* during the finalization in
Web Workers and JS shells implementations. With this chnages JSContext * is only
accessed during the finalization in the SpiderMonkey implementation.
2012-03-19 15:34:58 +01:00
Igor Bukanov
83623b313c Bug 737365 - stop using the cx during finalization, part 1.
This part changes the signatures for various finalization API to take
not JSContext* but rather either JSFreeOp structure or its
library-private counterpart FreeOp. These structures wrap parameters
that are passed to the finalizers removing most of explicit dependencies
on JSContext in the finalization code.
2012-03-19 15:34:55 +01:00
Igor Bukanov
fbeb82e29f bug 730221 - delegating serialization of script principals to the embedding. r=:luke,:bz
Currently to serialize principals stored in JSScript we have a rather complex
schema. First there is the transcode callback that the embedding must provide
to transcode principals using XDR API. Second we use rather complex glue code
to implement that callback in terms of writing/reading nsIObjectOutputStream/
nsIObjectInputStream. This glue code is duplicated in 3 places. All this can
be avoided if we simply delegate transcoding of principals to the caller. In
addition, at least in the case of the cached startup scripts we do not even
need to transcode the principals as the the cached scripts always have the
system principal so we can skip all the transcode complexity there.

The patch implemnts this idea. In particular, the code in JS engine
responsible for transcoding of principals is replaced by the single API
function JS_XDRSetPrincipals that the embedding can use to set principals for
decoded scripts and functions. Then the startup cache uses this to set the
principals for the decoded script to the system principals. The other two
places in nsJSContext::Serialize and  XBL_SerializeFunction that need to
serialize principals together with a function or script now uses common
utilities in nsXPConnect so the serialization complexity resides in the single
 place.
2012-02-13 14:10:04 +01:00
Matt Brubeck
3141d23221 Merge mozilla-central and mozilla-inbound 2012-03-19 16:47:00 -07:00
Luke Wagner
2f1cc78598 Bug 736807 - Fix test added by fc8534cfca3d to test for gczeal (r=orange) 2012-03-19 11:47:23 -07:00
Luke Wagner
9c7fbf2d72 Bug 736807 - InitExnPrivate needs to root values since they can now be wrapped (r=bholley)
--HG--
extra : rebase_source : 4aeb6c6b271588c57c4b6e166c630a72c8c7d0d5
2012-03-19 10:49:12 -07:00
Mike Hommey
f6255df92e Bug 733773 - Reset default values for thumb, float-abi, etc. when --with-arch is specified. r=ted 2012-03-13 09:47:03 +01:00
Jesse Ruderman
3a63956918 Bug 736795 - Some shell help() messages have extra periods 2012-03-17 22:24:07 -07:00
Igor Bukanov
877dee50e1 bug 736978 - remove JS_FinalizeStub. r=:billm
Currently the GC finalizes on the background thread only objects with null
JSClass::finalize. However, this implies that any object that uses
JS_FinalizeStub for the finalizer would be prevented from the background
finalization.

To fix this the patch removes JS_FinalizeStub replacing it with NULL in all
cases when the class has no custom finalizer. For style consistency the patch
also removed the usage of JSCLASS_NO_OPTIONAL_MEMBERS in the static
declarations as the compiler fills the missing fields with null in any cases.
2012-03-19 15:27:58 +01:00
Prabindh Sundareson
b62d17df9a Bug 735594 - Add check for MOZ_JSDEBUGGER so that --enable-jsd=no works. r=bholley+khuey 2012-03-15 20:12:45 -04:00
Jared Wein
883053cd10 Bug 730318 - Implement a way for chrome js to enumerate the plugin objects on a page for activation. r=khuey 2012-03-27 13:50:50 -07:00
Andrew McCreight
d1c47fdce5 Bug 736563 - mark global objects held by live windows black during GC. r=smaug 2012-03-27 12:22:10 -07:00
Bobby Holley
ff990375c6 Bug 738956 - Wrap values in nsStructuredCloneContainer::InitFromVariant before passing them to JS_WriteStructuredClone. r=khuey 2012-03-27 11:43:11 -07:00
Bill McCloskey
ad804cbc84 Bug 738841 - Fix handling of 'this' in methodjit without TI (r=bhackett) 2012-03-27 10:54:04 -07:00
Luke Wagner
4098eb7793 Bug 739494 - rm JSOP_DEFLOCALFUN (r=bhackett)
--HG--
extra : rebase_source : bb055d312548d6f04096e2320838addfbffd65fc
2012-03-26 22:08:03 -07:00
Luke Wagner
e58143c4c1 Bug 737552 - Remove 'funargs' (r=jimb)
--HG--
extra : rebase_source : 768b5b36503747a7ab95cc745439be4c36e64168
2012-03-20 11:18:37 -07:00
Luke Wagner
d523a82ac7 Bug 737570 - Fix handling of overwritten arguments via non-toplevel function statement named 'arguments' (r=waldo)
--HG--
extra : rebase_source : 91a45e78412a86f647375485fcd038505a134f0d
2012-03-19 19:22:59 -07:00
Bill McCloskey
97d5ffd408 Bug 736605 - Add more timers to GC statistics (r=terrence) 2012-03-16 14:55:56 -07:00
Bobby Holley
ab0445c528 Bug 596351 - Proxies should throw TypeErrors for assignments to read-only properties in ES5 strict mode. r=luke 2012-03-16 12:47:21 -07:00
Bobby Holley
7aa891a8c8 Bug 734475 - Take the full union of native sets when bringing non-PreCreate XPWNs across compartments. r=mrbkap 2012-03-16 12:47:20 -07:00
Luke Wagner
6c8e2f8935 Bug 736012 - Unwind current frame on failure to enter jit code from loop header (r=bhackett)
--HG--
extra : rebase_source : 5dcfb53368a6f816b44d26cf43b564f1525d74bb
2012-03-16 10:04:17 -07:00
Terrence Cole
7f9923f96d Bug 730961 - Make internal marking interface indirect; r=billm
Now that all of the marking interface users use indirect marking, we can pass
through the indirection internally and stop passing every object through the
stack.
2012-03-14 14:07:16 -07:00
Peter Van der Beken
526e189372 Fix for bug 736229 (Stop storing expando objects in the wrapper cache, store the proxy instead). r=jst. 2012-03-14 15:22:10 +01:00
Marco Bonardo
ff249f47c5 Merge inbound and central 2012-03-16 13:42:16 +01:00
Ms2ger
126a61ae1e Bug 722154 - Part f: Remove custom quickstubs for vertexAttrib[1-4]fv; r=bjacob 2012-03-16 10:53:41 +01:00
Ms2ger
0fa822c551 Bug 722154 - Part e: Remove custom quickstubs for uniform[1-4][i,f]v and uniformMatrix[2-4]fv; r=bjacob 2012-03-16 10:52:42 +01:00
Ms2ger
6c8b1e6b1c Bug 722154 - Part d: Remove custom quickstub for readPixels; r=bjacob 2012-03-16 10:50:51 +01:00
Ms2ger
9fe057f15e Bug 722154 - Part c: Remove custom quickstubs for compressedTexImage2D and compressedTexSubImage2D; r=bjacob 2012-03-16 10:50:33 +01:00
Ms2ger
475f50510f Bug 722154 - Part b: Remove custom quickstub for bufferSubData; r=bjacob 2012-03-16 10:50:18 +01:00
Ms2ger
3b2c005617 Bug 722154 - Part a: Remove custom quickstub for bufferData; r=bjacob 2012-03-16 10:50:00 +01:00
Ms2ger
90fe48b371 Bug 550309 - Part e: Remove custom quickstub for getImageData and return an actual ImageData; r=bz 2012-03-16 10:48:55 +01:00
Ms2ger
364d2a12d3 Bug 550309 - Part c: Implement ImageData; r=bz 2012-03-16 10:44:08 +01:00
Bobby Holley
fcdd9b391d Bug 735826 - Fix jit-tests for browser builds on mac. r=dmandelin 2012-03-15 19:47:06 -07:00
Bobby Holley
6261b39dd3 Bug 736316 - Components.utils.getGlobalForObject should unwrap cross-compartment wrappers. r=khuey 2012-03-15 19:47:06 -07:00
Jeff Walden
c99af04c11 Bug 735313 - StringBuffer still needs length validation. r=luke 2012-03-14 15:29:29 -07:00
Ryan VanderMeulen
4c60195e21 Backout ca1873b20652 (bug 735594) due to mochitest-4 orange. r=http://i.qkme.me/36kr7a.jpg 2012-03-15 21:27:51 -04:00
David Mandelin
9fc3bd66af Bug 728623: disable jitcode address randomization on Win64, r=dvander 2012-03-14 17:36:34 -07:00
Matthew Gregan
2236c84d27 Bug 734784 - Update system-headers to reflect changes to libvpx includes. r=cpearce 2012-03-15 12:06:02 +13:00
Jeff Walden
7068919618 Back out bug 735313, an invariant was relaxed but not all assertions of it were adjusted properly, and I'm not 100% confident tinderboxen will correctly handle the new failure mode. r=bustage 2012-03-14 15:24:51 -07:00
Prabindh Sundareson
fd437e4fad Bug 735594 - Add check for MOZ_JSDEBUGGER so that --enable-jsd=no works. r=bholley 2012-03-15 20:12:45 -04:00
Jeff Walden
bb310a3fde Bug 735313 - StringBuffer still needs length validation. r=luke 2012-03-14 12:41:15 -07:00
Ehsan Akhgari
aad636cb78 Backout changeset ea6be5f60c42 (bug 722946) for breaking Windows builds 2012-03-14 14:29:58 -04:00
Terrence Cole
6ab75b39c1 Bug 722946 - Add method to HashTable for inline rekeying/removal; r=luke
It is possible in several places to have unconstrained client objects as the key
of a HashMap/HashSet.  For generational and compacting GC, we will need to move
these objects in memory.  This means we will need to remove and re-insert these
keys in a new location, during GC.  Because we cannot safely allocate memory
for this, we need a specialized algorithm inside the HashTable itself.
2012-02-03 15:43:34 -08:00
Terrence Cole
4679d4aef3 Bug 734517 - Fix barriering of funName in InitExnPrivate; r=billm
InitExnPrivate needs to trigger barriers when copying out to the heap, but not
when copying data into the on-stack vector.
2012-03-12 18:32:39 -07:00
Blake Kaplan
7a4eeff601 Bug 727884 - Make nsWrapperCache::WrapObject take a JSObject scope instead of XPCWrappedNativeScope. r=peterv 2012-03-14 16:25:40 +01:00
Brian Hackett
b27a80e3b8 Don't generate addprop PIC for JSOP_SETNAME, bug 735161. r=dvander 2012-03-14 08:11:14 -07:00
Jacek Caban
43d5109d07 Bug 729067 - configure.in changes LDFLAGS before calling js/src/configure r=glandium 2012-03-14 15:07:34 +01:00
Mike Hommey
135e75b50c Bug 716544 - Only define android bionic headers as system headers, and only use stlport includes when compiling C++. r=khuey 2012-03-13 09:47:02 +01:00
Ekanan Ketunuti
6dd7569b81 Bug 722180 - Remove error codes for proxies. r=khuey 2012-02-01 18:53:29 +07:00
Bobby Holley
c9729c8e9a Bug 735544 - Allow exception stacks to cross compartment boundaries. r=luke 2012-03-15 15:19:52 -07:00
Terrence Cole
a61bf25367 Bug 736168 - Remove MarkablePtr; r=billm
Now that the marking indirection work is complete, this is no longer used and
should be removed.

--HG--
extra : rebase_source : e8116e9680c5a2005d0f9e6aea774b292cdca59c
2012-03-15 11:14:14 -07:00
Luke Wagner
e50cce1904 Bug 733950 - re-add the f.apply(arguments) optimization (r=bhackett) 2012-02-10 16:31:48 -08:00
Luke Wagner
fccfecaaff Bug 733950 - create arguments object eagerly (r=bhackett)
--HG--
rename : js/src/jsfun.cpp => js/src/vm/ArgumentsObject.cpp
2012-01-17 16:35:12 -08:00
Luke Wagner
225350a951 Backed out changeset d2107141265f to fix message 2012-03-15 10:39:02 -07:00
Luke Wagner
dd715c4d77 Backed out changeset 8f3b804118ef to fix message 2012-03-15 10:37:24 -07:00
Luke Wagner
a58068f5eb Bug 730497 - re-add the f.apply(arguments) optimization (r=bhackett)
--HG--
rename : js/src/jsfun.cpp => js/src/vm/ArgumentsObject.cpp
extra : rebase_source : 28c9c4c7ea9841ea42142cf88d1091d20a4f7f9d
2012-02-10 16:31:48 -08:00
Luke Wagner
4222e81877 Bug 730497 - create arguments object eagerly (r=bhackett)
--HG--
rename : js/src/jsfun.cpp => js/src/vm/ArgumentsObject.cpp
extra : rebase_source : 78e9eccc7c3dd4570d2f78f7b5b5eb2138813e99
2012-01-17 16:35:12 -08:00
Luke Wagner
1843d7c72e Bug 730497 - rm flat closures (r=bhackett,waldo)
--HG--
extra : rebase_source : cf704765ad227abced9e8804aaeb1dc8d12fc5a8
2012-02-27 23:49:02 -08:00
Terrence Cole
a683dde987 Bug 722946 - Add method to HashTable::Enum for inline rekeying; r=luke
It is possible in several places to have unconstrained client objects as the key
of a HashMap/HashSet. For generational and compacting GC, we will need to move
these objects in memory. This means we will need to remove and re-insert these
keys in a new location, during GC. Because we cannot safely allocate memory for
this, we need a specialized algorithm inside the HashTable itself.
2012-03-14 13:48:59 -07:00
Steve Fink
8fedb6a491 Bug 735118 - Add a --debugger flag on jstests.py to allow setting the debugger name and args to use. r=dmandelin
--HG--
extra : rebase_source : 19d4aaeaf8ddbe83d7b529cafd472e1edae783c1
2012-03-13 14:21:58 -07:00
Steve Fink
8f10efae3b Bug 735519 - Fix a bunch of "inlined function used but not defined" warnings. r=dmandelin
--HG--
extra : rebase_source : 3886a738be227a90f78b872dc17c308b2f9ebcc5
2012-03-14 12:28:48 -07:00
Terrence Cole
ebb0263408 Bug 735533 - Don't copyright empty files; r=dmandelin 2012-03-13 17:21:06 -07:00
Terrence Cole
8bcab405ff Bug 735491 - Fix possible recursion when tracing Debugger objects; r=billm
--HG--
extra : rebase_source : 9a1365dd7dffdd4a34f2390bc1739b490369cbe5
2012-03-13 15:38:05 -07:00
Ed Morley
28935417cc Merge mozilla-central to mozilla-inbound 2012-03-13 20:52:11 +00:00
Lukas Blakk
2fe69d3c6f Merging in version bump NO BUG 2012-03-13 13:38:38 -07:00
Kyle Huey
3232e8df17 No bug: Fix ply being stupid, take 2. r=me 2012-03-13 10:31:53 -07:00
David Mandelin
d53ceaae12 Bug 704259: part 2, don't set cx->generatingError in JS_ReportPendingException, r=luke 2012-03-06 18:49:05 -08:00
David Mandelin
9562de2b67 Bug 704259: part 1, refactor use of cx->generatingError without changing behavior, r=luke
--HG--
extra : rebase_source : 748e23ae07d8dc3c2cec165228d858abfc6a535f
2012-03-06 18:49:00 -08:00
Terrence Cole
620f254a87 Bug 531396 - Expose detailed GC timing information API; r=smaug,billm
Extensions such as MemChaser would really like an easier to parse and more
complete record of GC events than what can be gleaned from the message console.
This patch adds GC and CC observer messages formatted as JSON containing
detailed statistics.
2012-03-05 15:33:24 -08:00
Brian Hackett
fb3983c82b Disable regexp cloning optimization for global/sticky regexps, bug 728021. r=dmandelin 2012-03-13 08:37:52 -07:00
Marco Bonardo
3e58667468 Merge last green PGO from inbound to central 2012-03-13 11:17:21 +01:00
Masatoshi Kimura
e441461b51 Bug 721569 - Implement Blob constructor. r=sicking 2012-03-12 21:44:56 -07:00
Masatoshi Kimura
c89a117b0c Bug 721569 - Implement nullable types. r=khuey 2012-03-12 21:44:51 -07:00
Masatoshi Kimura
1f2073f34c Bug 721569 - Support default values for Web IDL dictionaries. r=khuey CLOBBER BUILD 2012-03-12 21:44:48 -07:00
Bill McCloskey
28982ab9a7 Back out 85ffbb752398 and 8cae4bde9534 (bug 728686 and bug 734946) due to possible leaks 2012-03-12 22:43:43 -07:00
Bill McCloskey
8015508b21 Bug 728686 - JS_NewPropertyIterator shouldn't disable IGC (r=igor) 2012-02-21 17:04:53 -08:00
Bill McCloskey
cf9cad2bfc Bug 728686 - JS_NewPropertyIterator shouldn't disable IGC (r=igor) 2012-02-21 17:04:53 -08:00
David Mandelin
15e9180eac No bug, mark slow test, r=me 2012-03-12 18:16:14 -07:00
David Mandelin
fdd7fe351d No bug, fix MSVC warnings, r=none 2012-03-12 18:12:54 -07:00
David Anderson
67bb3e5986 Remove JS_GetScriptedCaller (bug 732652, r=luke,mrbkap,bholley,smaug,bent). 2012-03-06 15:33:12 -08:00
Bill McCloskey
c434d1ee8c Bug 734763 - Fix gcMallocAndFreeBytes (r=gregor) 2012-03-12 13:26:37 -07:00
Peter Van der Beken
c3b954ffff Add new DOM binding for SVG list classes. r=jst.
--HG--
extra : rebase_source : ce84f9457d7b9a14a0a65db5c643938d0e0e05bc
2011-08-22 11:14:13 +02:00
Peter Van der Beken
7c7ace6986 Fix for bug 734506 (Fix DOM list binding generation - fix bad argument throwing). r=jst.
--HG--
extra : rebase_source : b71d386827bb0114be6e68a696270868e487fe1c
2011-10-14 23:52:31 +02:00
Peter Van der Beken
eee1fec521 Fix for bug 734506 (Fix DOM list binding generation - add includes for all types). r=jst.
--HG--
extra : rebase_source : 113e8e7e98dfea4b67cfa5e08bd281c5f105ab92
2011-10-14 23:18:41 +02:00
Peter Van der Beken
96b0afb0da Fix for bug 734508 (Add new DOM binding for SVG list classes). r=jst.
--HG--
extra : rebase_source : c32d2fd124093ae437f000655bba7f3a5f17d99d
2011-08-22 11:14:13 +02:00
Peter Van der Beken
7d36526803 Backout 790be8926d50 to fix commit message
--HG--
extra : rebase_source : 930b7802b35784ef5d70ed359d5d9932013ad62d
2012-03-12 21:13:23 +01:00
Luke Wagner
bc21bb11bf Bug 732496 - Pop 'sp' after TypeScript::Monitor (r=bhackett)
--HG--
extra : rebase_source : d57dc5b437699cfc9722730c60e0887fe4099208
2012-03-02 15:51:58 -08:00
Peter Van der Beken
c2e7269a78 Fix for bug 734505 (Add new DOM binding for FileList). r=jst.
--HG--
extra : rebase_source : 7a563b1af70c24f9117b813016b7a37612e92431
2011-08-22 11:14:13 +02:00
Peter Van der Beken
4d875e976f Fix for bug 734503 (Add new DOM binding for TouchList). r=jst.
--HG--
extra : rebase_source : 701eb8d9a60ffa981ebcd24f426109bd70cc5cbf
2011-08-22 11:14:13 +02:00
Peter Van der Beken
31fa18aab8 Fix for bug 734499 (Add new DOM binding for PaintRequestList). r=jst.
--HG--
extra : rebase_source : 37f4a1ea723db150abc07d66c6f167c27fd9c354
2011-08-22 11:14:13 +02:00
Peter Van der Beken
752e2223e7 Fix for new bug 734497 (Add new DOM binding for ClientRectList). r=jst.
--HG--
extra : rebase_source : 1cc96b94d21940ac1ed75ec6d46d9c2964fc54a0
2011-08-22 11:14:13 +02:00
Mark Capella
24883e7b24 Bug 595926 - Purge last traces of REQUIRES from the build system. r=khuey 2012-03-12 10:22:57 +01:00
Daniel Holbert
04b172bf20 merge m-c tip over to m-i 2012-03-11 15:40:05 -07:00
Ms2ger
e016675b5e Bug 733872 - Use JS_GetObjectPrototype in XPCWrappedNativeScope::SetGlobal; r=bholley 2012-03-11 09:43:22 +01:00
Christian Holler
b58d4954ab Bug 733493 - Improve JS shell OOM testing code, now with 100% less bustage. r=jorendorff 2012-03-10 15:53:03 -05:00
Christian Holler
20a377bc15 Bug 727326 - Add missing js_ReportOutOfMemory calls in methodjit code. r=bhackett 2012-03-10 15:52:28 -05:00
Gary Kwong
2eec22319a Backed out changeset 6169d8aa7a9d, a=tbplFire 2012-03-10 12:12:54 -08:00
Gary Kwong
54c92465c6 Backed out changeset 248590650201, a=tbplFire 2012-03-10 12:10:53 -08:00
Christian Holler
d1854ff811 Bug 727326 - Add missing js_ReportOutOfMemory calls in methodjit code, r=bhackett 2012-03-10 11:51:48 -08:00
Christian Holler
5dc19ab62e Bug 733493 - Improve JS shell OOM testing code, r=jorendorff 2012-03-10 11:50:26 -08:00
Jim Blandy
93b8f0dd57 Bug 676281: Implement Debugger.prototype.findScripts. r=jorendorff 2012-03-02 17:19:56 -08:00
Luke Wagner
c07ac28779 Bug 734129 - uncatchable exceptions should still pop cx->enumerators (r=dvander) 2012-03-09 16:25:50 -08:00
Jacek Caban
987bd3c3bf Bug 733713 - xpcom/tests fail to compile on mingw r=glandium 2012-03-09 16:58:43 +01:00
Igor Bukanov
30d3de8268 bug 728250 - remove JSPrincipals::codebase. r=:luke,:bz
In just 2 cases where JSPrincipals::codebase is used it can be reconstructed from the values stored in the associated nsJSPrincipal. In addition the patch makes nsJSprincipals to inherit both from nsIPrincipal and JSPrincipals allowing to use static_cast to convert between nsIPrincipal and JSPrincipals pointers and to drop many cases of manual JSPrincipal reference counting.
2012-03-09 10:48:50 +01:00
Nicholas Nethercote
55f276020a Bug 732843 - Handle Callback() failures in memory multi-reporters. r=jlebar.
--HG--
extra : rebase_source : 54af85a1ef839922d5443cdc36f601611258944a
2012-03-04 15:26:30 -08:00
Makoto Kato
c7ac52755f Bug 732328 - need os.close(fd) before os.remove(tmp) on expandlibs_exec.py. r=ted 2012-03-09 11:42:36 +09:00
Jeff Walden
d37062d793 Bug 733602 - Various StringBuffer cleanups, mostly removing unimplemented methods. r=luke
--HG--
extra : rebase_source : 388d94bf9c332896d1b5d95aac53c4ca75e9fc97
2012-03-06 15:28:48 -08:00
Matt Brubeck
465b97cf40 Merge mozilla-central to mozilla-inbound 2012-03-08 16:27:40 -08:00
Olli Pettay
4d4b25de9e Bug 730891, event ctor for StorageEvent, r=sicking,kyle 2012-03-08 23:27:05 +02:00
Olli Pettay
df535ad6d4 Backout Bug 704259, a=bustage 2012-03-08 16:44:32 +02:00
Bill McCloskey
a660f48b31 Bug 732719 - Mark stack slot as undefined (r=bhackett) 2012-03-07 18:05:29 -08:00
Terrence Cole
e884c28bf9 Bug 734196 - Updating the private pointer should not recurse when marking; r=billm
The private pointer is the only pointer update during GC marking that can invoke
unrelated code.  If this code triggers a write barrier, then this will recurse.
This patch adds a way to update private pointers without triggering a barrier,
explicitly for use by the GC during marking.
2012-03-08 15:05:21 -08:00
Christian Holler
c75048ad98 Bug 727445 - Add --enable-address-sanitizer for ASan specific workarounds. Add --enable-llvm-hacks to pass CFLAGS to NSS and omit -Wl,-z,defs for shared libs. r=khuey,kaie 2012-03-07 15:11:15 -08:00
Marco Bonardo
780de92c27 Backout d68420c97e0e (bug 691898) as suspected of the jit tests failures 2012-03-07 14:06:03 +01:00
Rafael Ávila de Espíndola
68a5f7fe40 Bug 733504 - More workarounds llvm.org/pr12127. r=dvander. 2012-03-07 08:32:15 -03:00
Landry Breuil
c78af1f2ba Bug 691898 - Use YARR interpreter instead of PCRE on platforms where YARR JIT is not supported. r=dmandelin 2012-03-07 12:06:19 +01:00
David Mandelin
0e591d4ef6 Bug 733146: Add needed import to results.py, r=dmandelin 2012-03-06 18:54:42 -08:00
David Mandelin
a2fdf1a4b6 Bug 704259: part 2, don't set cx->generatingError in JS_ReportPendingException, r=luke 2012-03-06 18:49:05 -08:00
David Mandelin
f48bd8ea3c Bug 704259: part 1, refactor use of cx->generatingError without changing behavior, r=luke 2012-03-06 18:49:00 -08:00
Luke Wagner
78bda59554 Bug 733310 - factor out inc/dec interpreter logic (r=bhackett)
--HG--
extra : rebase_source : 10d8277f4446f97e9a158f740d1a398341ac2382
2012-03-06 00:52:42 -08:00
Luke Wagner
6bb4df0a55 Bug 732744 - rm AutoPreserveEnumerators (r=dvander)
--HG--
extra : rebase_source : f28eebcf3a3e14f4db0299b07b28f8e7a783b84a
2012-03-06 00:43:45 -08:00
Igor Bukanov
553cbdfc40 bug 730234 - remove GC locking from activities, operation callbacks-related code and for code that accesses the JSContext list. r=luke 2012-02-24 12:03:28 +01:00
Bobby Holley
53efbc78aa Bug 731804 - nsXPCWrappedJSClass::GetNamedPropertyAsVariant should jsvalify strings _after_ changing compartments. r=peterv 2012-03-08 11:13:34 -08:00
Bill McCloskey
4f3a1a6f62 Bug 730447 - Create a GC counter for malloc bytes (r=gregor) 2012-03-07 18:07:41 -08:00
Adam
8546c08abd Make "let" a reserved word for Web scripts. Bug 730139, r=jorendorff. 2012-03-02 18:28:29 -06:00
Jan de Mooij
1608dc1de3 Bug 732423 - Combine GETELEM and CALLELEM interpreter cases and fix some e4x/noSuchMethod bugs. r=bhackett 2012-03-08 12:18:27 +01:00
Mike Hommey
09cbaacf5a Fixup for bug 603370. Re-sync build/autoconf/expandlibs.m4 with js/src 2012-03-08 09:15:51 +01:00
Mike Hommey
f955d8086e Bug 603370 - Avoid Identical Code Folding messing with symbol reordering. r=khuey 2012-03-08 08:56:28 +01:00
Mike Hommey
934aace9a3 Bug 603370 - Add an option to expandlibs-exec to allow to reorder the symbols when linking. r=khuey 2012-03-08 08:56:27 +01:00
Mike Hommey
5b2d25f61e Backout changeset 283408b8d8a3 (bug 603370) 2012-03-08 08:39:17 +01:00
Mike Hommey
70f92bca22 Bug 695711 - Always add -ffunction-sections and -fdata-sections when building with GCC, and port bug 670659 and bug 675867 to js/src. r=khuey
--HG--
rename : build/unix/check_debug_ranges.py => build/autoconf/check_debug_ranges.py
rename : build/unix/check_debug_ranges.py => js/src/build/autoconf/check_debug_ranges.py
2012-02-27 16:35:44 +01:00
David Mandelin
68c407c176 Bug 733260 followup: use uint32_t for array and string lengths, r=luke
--HG--
extra : rebase_source : 1729b4b927fde0678872b9de62a7466381aa07c3
2012-03-06 15:52:55 -08:00
Bobby Holley
2dc291ee58 Bug 731845 - XPCWrappedNative::ReparentWrapperIfFound should handle preserved wrappers. r=mrbkap 2012-03-05 16:58:59 -08:00
Gregory Szorc
a272dc9b1e Bug 729098 - Part 1/2: Create xUnit XML results file when executing xpcshell tests; r=khuey 2012-03-06 15:03:34 -08:00
Bill McCloskey
9eb41c6433 Bug 731094 - Expose a testing function that permits only deterministic GCs (r=igor) 2012-03-06 11:39:31 -08:00
Bill McCloskey
84718f7e90 Bug 729369 - Expose the same set of SpiderMonkey testing APIs to debug shell and debug browser chrome (r=Waldo) 2012-03-06 11:38:44 -08:00
Terrence Cole
b5a88d9637 Bug 733372 - Fix an infinite recursion in GC marking; r=billm
Since the private data is sometimes packed in strange ways into the underlying
structure, we cannot just pass a reference to it to the marker.  Instead, we
store the gotten value on the C stack, do marking and potentially update its
value there, then pass the updated privates location to the object using
setPrivate.  If the setPrivate function triggers write barriers that end up
marking, this can recurse.  For now we should simply not do this.

--HG--
extra : rebase_source : ce2607907cc66f8beaeab433e21ba302cbf1b34e
2012-03-06 11:30:25 -08:00
Matt Brubeck
18cd6fbeaa Back out 2fbc7d9ac670 (bug 731845) on suspicion of causing test_native_mouse_mac.xul timeouts 2012-03-06 11:05:37 -08:00
Mike Hommey
4bfcfc14d4 Bug 731151 - Avoid creating (and leaving around) an a.out during configure. r=khuey 2012-02-28 10:48:16 +01:00
Nicholas Nethercote
e93c8baf5c Bug 729403 (follow-up) - Use the right KIND for runtime/gc-marker, thus avoiding warnings about explicit mismatches. r=me.
--HG--
extra : rebase_source : 4625531f438d5e1e6a2e600134dee959a45e8204
2012-03-05 21:04:38 -08:00
Mark Hammond
6f18fbf7c7 Bug 728986: dump() writes to stdout instead of stderr. r=bent 2012-03-06 15:44:37 +11:00
David Mandelin
5e02d0630c Bug 733260: remove typedef jsuint, r=luke
--HG--
extra : rebase_source : e8f576e1b5b189b47807c613c0cff79f5c8038e7
2012-03-05 18:43:45 -08:00
Andrew McCreight
7f86c54ec3 Bug 723971 - unmark gray for shapes. r=billm 2012-03-05 18:11:29 -08:00
Bobby Holley
ac1fbc4a6a Bug 731845 - XPCWrappedNative::ReparentWrapperIfFound should handle preserved wrappers. r=mrbkap 2012-03-05 16:58:59 -08:00
Bobby Holley
ba4156b5cf Bug 720580 - Assert that we have the global jsclass flag if and only if we're a global. r=mrbkap 2012-03-05 15:22:53 -08:00
Bobby Holley
24197270eb Bug 720580 - Assert against creating globals in xpc_NewSystemInheritingJSObject. r=mrbkap
With this patch, the only call to JS_NewGlobalObject in XPConnect happens in xpc_CreateGlobalObject. \o/
2012-03-05 15:22:45 -08:00
Bobby Holley
87d7f5f353 Bug 720580 - Do the last bit of wrapped global initialization once the dust has settled. r=mrbkap 2012-03-05 15:22:45 -08:00
Bobby Holley
eb0a73527c Bug 720580 - Kill temporary globals. r=mrbkap
This patch breaks the "every commit is a 100% correct tree" invariant a little bit, because constructors and prototypes for DOM globals are broken (PostCreatePrototype never gets called). This is fixed in the next patch. Doing it this way makes for a cleaner series of commits, and the browser still builds and runs fine.
2012-03-05 15:22:45 -08:00
Bobby Holley
f43429b675 Bug 720580 - Introduce XPCWrappedNative::WrapNewGlobal. r=mrbkap 2012-03-05 15:22:45 -08:00
Bobby Holley
3523199f9a Bug 720580 - Call TraceDOMPrototypes via TraceXPCGlobal, and avoid the verification process for wrapped natives. r=mrbkap 2012-03-05 15:22:45 -08:00
Bobby Holley
4b0b1b7f62 Bug 720580 - Make the call to PostCreatePrototype optional. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
d5786b3e4f Bug 720580 - Factor out the call to PostCreatePrototype into a helper method. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
221605656b Bug 720580 - Accept an explicit native global during XPCWrappedNativeScope creation. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
fa19fcd55d Bug 720580 - Manually resolve |Object| on the global in XPCWrappedNativeScope::SetGlobal() to avoid calling into the XPConnect resolve hook too early. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
9146075c05 Bug 720580 - Make JSID class initialization happen on demand. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
1d80caf8a2 Bug 720580 - Modify the semantics of XPCWrappedNative::FinishCreate() so that it doesn't muck around with the refcounts of its inparam. r=mrbkap
The current semantics involve the caller transfering ownership of the input wrapper to FinishCreate(), which is complicated and error-prone. Now that we're using nsRefPtr at the callsites, we can get rid of it.
2012-03-05 15:22:44 -08:00
Bobby Holley
dd0c70edd5 Bug 720580 - Use nsRefPtr instead of manual AddRef/Release in XPCWrappedNative::{GetNewOrUsed,Morph}. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
5115bb9cb6 Bug 720580 - Move the AutoMarkingWrappedNativePtr in XPCWrappedNative::{GetNewOrUsed,Morph} closer to where we need it. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
fe4872737f Bug 720580 - Stop passing isGlobal everywhere and use the nsIXPCScriptable flags instead. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
ccb745bc93 Bug 720580 - Stop passing aExtraPtr to InitClassesWithNewWrapedGlobal. r=mrbkap
We only ever pass null here anyway, and this whole infrastructure is going away real soon now.
2012-03-05 15:22:44 -08:00
Bobby Holley
2cb54e998b Bug 720580 - Remove unnecessary aIID parameter from nsIXPConnect::InitClassesWithNewWrappedGlobal. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
f43e9eb936 Bug 720580 - Introduce a flag for global natives and assert that we have it. r=mrbkap 2012-03-05 15:22:44 -08:00
Bobby Holley
c03737bfa1 Bug 720580 - Indicate free bits in nsIXPCScriptable.idl. r=mrbkap 2012-03-05 15:22:43 -08:00
Brian Hackett
2615a9267b Don't use reference to freed contents of JIT script, bug 730806. r=dvander 2012-03-05 13:25:24 -08:00
Charles Chan
ccd935f93a Bug 724736 - Move js::StringBuffer into js/src/vm/StringBuffer{-inl.h,.cpp}. r=jwalden
--HG--
extra : rebase_source : 69c3319801fbe80dbe0fc150680c9ffca2e519d9
2012-03-05 12:40:11 -08:00
Brian Hackett
7a69f7d85d Ensure 'for' loops have a leading JSOP_NOP, bug 732776. r=dvander. 2012-03-05 12:45:14 -08:00
Jeff Walden
b9cffc0641 Bug 732669 - Box primitive values correctly when accessing properties of them. r=bhackett
--HG--
extra : rebase_source : c4c084557425e6d42b990ca22c10972fcc6697ce
2012-03-05 09:34:38 -08:00
Terrence Cole
610ce813e4 Bug 728343 - Make unbarriered object marking interface indirect ; r=billm
This will allow us to move objects that are not wrapped in a HeapPtr.
2012-02-17 11:46:11 -08:00
Ed Morley
d27ab2302c Backout afeafc02c1de, dfae37833c9b & f9f51c726fa7 (bug 729940 parts 1-3) for talos regressions 2012-03-05 15:22:28 +00:00
Justin Lebar
eabf2efeae Bug 729940 - Part 2: Stop using crappy hash functions in the js engine. r=bhackett 2012-03-04 15:58:06 -05:00
Justin Lebar
8f94cc1764 Back out bug 729940 (a108aee:d75775d) due to 32-bit red. 2012-03-04 14:20:34 -05:00
Justin Lebar
379c6ab88b Bug 729940 - Part 2: Stop using crappy hash functions in the js engine. r=bhackett 2012-03-04 13:49:41 -05:00
Jan de Mooij
bce6f7e43f Bug 732693 - Fix bytecode emitted for o.__proto__(). r=bhackett 2012-03-03 16:27:51 +01:00
Matheus Kerschbaum
89b7db65ac Bug 687579 part 1: Remove globalStorage implementation. r=jst
Bug 687579 part 1: Remove globalStorage implementation. r=jst
2011-10-09 22:14:00 -04:00
Jeff Walden
b0b2dc3ff9 Silence a (newly introduced in) clang warning about adding an int to a string. No bug, r=trivial 2012-03-02 19:59:11 -08:00
Luke Wagner
d159b501a3 Bug 730497 - preparatory parser sanity enhancements (r=jorendorff)
--HG--
extra : rebase_source : 4e89da8ce6b0f107fabd1944575c4c181283eeac
2012-02-27 16:36:04 -08:00
Luke Wagner
0229e94a42 Bug 731724 - don't forget about function::arguments! (r=waldo)
--HG--
extra : rebase_source : e782e9f06b17a7ac5c46f990092c94595b1a92cd
2012-03-02 09:32:04 -08:00
David Mandelin
8984e21021 Bug 732306: Remove typedef jsint, r=luke
--HG--
extra : rebase_source : 4d15a8514dbd698c114fa688461e533afab68ffa
2012-03-01 18:54:01 -08:00
aceman
a39be24188 Bug 368758 - Remove obsolete workaround pref editor.quotesPreformatted. r=ehsan 2012-03-02 17:23:01 -05:00
Jim Blandy
29a6548922 Bug 674171: Implement Debugger.Frame.prototype.onPop. r=jorendorff 2012-03-02 12:12:14 -08:00
Jim Blandy
5faf15629d Bug 674171: Separate the construction of a completion value from the debuggee->debugger compartment transition. r=jorendorff
In class Debugger, split newCompletionValue into:
- resultToCompletion, which takes a standard SpiderMonkey (success, value,
  context's exception) triple and produces the corresponding
  (JSTrapStatus, value) pair; and
- newCompletionValue, which takes a (JSTrapStatus, value) pair and produces
  a JavaScript completion value.

Define receiveCompletionValue to do exactly what newCompletionValue used to
do: the above two operations, with a compartment 'leave' in the middle.
Substitute receiveCompletionValue where newCompletionValue is used now.
2012-03-02 12:12:14 -08:00
Jim Blandy
435129c819 Bug 674171: Make the JavaScript shell's 'evaluate' function to return a value. r=jorendorff
This simplifies writing tests, since one can use common structure around
uses of both 'eval' (which produces "eval" frames) and 'evaluate' (which
produces "global" frames).
2012-03-02 12:12:14 -08:00
Jim Blandy
2e872d2ec9 Bug 674171: Define Debugger::FrameRange, for iterating over the Debugger.Frame instances referring to a given StackFrame. r=jorendorff 2012-03-02 12:12:14 -08:00
Jim Blandy
10dc7e74c9 Bug 674171: Delete hasDebugModeCodeToDrop, it is scratched^Wunused. r=jorendorff
I had a hard time writing a test case for this, so I gave up.
2012-03-02 12:12:13 -08:00
Peter Van der Beken
52dc54f3e9 Fix for bug 732175 (Generate DOM list bindings that aren't controlled by the dom.new_bindings pref and remove old bindings for NodeList/HTMLCollection/HTMLOptionsCollection). r=jst.
--HG--
extra : rebase_source : 2eeeec059fe3467769ebcc5af01c8d472c2afbb6
2012-02-27 18:02:47 +01:00
Peter Van der Beken
c1cb66d9c8 Fix for bug 717013 (Add new DOM binding for DOMTokenList). r=jst.
--HG--
extra : rebase_source : 6ae0abe3bbe33a140c62c193685e23529d44e6d4
2011-08-22 11:14:13 +02:00
Brian Hackett
05d65de1c9 Backout consolidation of pending arrays for switch targets, bug 730888. r=dvander 2012-03-01 17:48:32 -08:00
David Mandelin
e2e9eb9eb3 Bug 731898: Remove typedef jsrefcount, r=luke
--HG--
extra : rebase_source : 1e0c99c44a8d6d2807a647273b1d07691f8c983e
2012-03-01 11:43:17 -08:00
Jason Orendorff
da07715475 Add CallArgs::hasDefined convenience method. Bug 730676, r=luke.
--HG--
extra : rebase_source : 12e51485479c86a518300de28fe125e692dea4c6
2012-03-01 12:48:52 -06:00
Jason Orendorff
0af3864536 Add static assertions as requested in bug 726298 comment 2 and 4.
--HG--
extra : rebase_source : 3edf2446076dae08c16b121de18505174c84f370
2012-03-01 12:48:47 -06:00
Ehsan Akhgari
3a282685d8 Bug 732162 - Build mobile profiling builds with -funwind-tables; r=khuey
--HG--
extra : transplant_source : 4O%F7%BA%94%0Fh%F6%5E%EA%10%E1%08%9E%D9S%A2XEd
2012-03-01 16:24:04 -05:00
Jim Blandy
dbda278555 Bug 721642: Remove function proxy support from proxy_TraceObject. r=jorendorff
Function proxies will always call proxy_TraceFunction, which handles the
'call' and 'construct' slots.

This patch also moves the call to proxy_TraceObject from proxy_TraceFunction into
a tail position, so it could be compiled as a jump.
2012-03-01 12:59:24 -08:00
Marco Bonardo
d433f51394 Backout 51bff179fa81 (bug 731898) for Android bustage 2012-03-01 21:57:14 +01:00
Bill McCloskey
abf41392d2 Bug 732087 - Change argc to nvars (r=luke) 2012-03-01 11:58:00 -08:00
David Mandelin
64337d4c17 Bug 731898: Remove typedef jsrefcount, r=luke 2012-03-01 11:43:17 -08:00
Bill McCloskey
bd2fa87f12 Bug 731783 - Eliminate per-compartment barrier marker (r=igor) 2012-03-01 10:39:13 -08:00
Kai Engert
a9fd38bf43 Bug 728719, NSSUTIL_GetVersion, undefined reference during linking, r=glandium 2012-03-01 17:29:34 +01:00
Jason Orendorff
b3e994f7f8 Make Map and Set constructors take a single iterable argument. Bug 726223, r=luke.
--HG--
rename : js/src/jit-test/tests/collections/Map-size-1.js => js/src/jit-test/tests/collections/Map-constructor-1.js
rename : js/src/jit-test/tests/collections/Map-size-2.js => js/src/jit-test/tests/collections/Map-size.js
rename : js/src/jit-test/tests/collections/Set-size-1.js => js/src/jit-test/tests/collections/Set-constructor-1.js
rename : js/src/jit-test/tests/collections/Set-size-2.js => js/src/jit-test/tests/collections/Set-size.js
2012-03-01 09:01:46 -06:00
Jason Orendorff
837e896d58 Add Map.prototype.size and Set.prototype.size. Bug 726298, r=luke. 2012-03-01 09:01:45 -06:00
Jason Orendorff
e0b3ccc0b5 Add tests for some ancient watchpoint bugs (zombie setters!) and remove a senile line of code from obj_watch. Bug 604781, r=jimb. 2012-03-01 09:01:45 -06:00
Jason Orendorff
32f4b561f4 Fix totally wrong OOM handling in MapObject.cpp. Bug 726218, r=luke. 2012-03-01 09:01:45 -06:00
Jason Orendorff
8a21b894b3 Fix "Assertion failure: isDenseArray() && idx < getDenseArrayInitializedLength(), at ../jsobjinlines.h:558" with for-of, Array, trailing holes. Bug 726212, r=Waldo. 2012-03-01 09:01:45 -06:00
Jason Orendorff
9ffda93808 Element iterators should use [[Get]] and not peculiarly ignore the prototype chain. Bug 725168, r=Waldo. 2012-03-01 09:01:45 -06:00
Jason Orendorff
eb84a5f3ba Reflect.parse("[,,,]") should make an ArrayExpression with .elements.length 3. Bug 630232, r=dherman. 2012-03-01 09:01:45 -06:00
Jason Orendorff
8e4eb12002 Fix hilarious bug in js_malloc: it fails once every 2^32 allocations in DEBUG builds. Bug 730270, r=luke. 2012-03-01 09:01:45 -06:00
Igor Bukanov
182e2dd994 bug 723286 - remove JSContext * parameter from heap-traversal and related API. r=:billm 2012-02-29 21:23:38 +01:00
Steve Fink
1a213d89c9 Bug 730144 - Label objects with their mark colors when dumping the heap
--HG--
extra : rebase_source : 8bb1243f66610bde734a4f9063446a1b02bc0b68
2012-02-23 18:47:59 -08:00
Steve Fink
8f67dbcad5 Bug 719294 - Eliminate the bytecode space optimization where it omits the starting line number. r=luke
As per this comment:

/*
 * Special case: function definition needs no line number note because
 * the function's script contains its starting line number.
 */

But this is the only reason why you need a JSContext in js_PCToLineNumber, and I have a user that needs to do the lookup without a context.

--HG--
extra : rebase_source : 0807e755d5d7c1ecd6837ca4f6b8d4cc53e3f0b2
2011-06-06 14:11:08 -07:00
Bobby Holley
e6beee84d8 Bug 731471 - Don't reparent wrappers that don't want to move. r=peterv 2012-02-29 21:21:57 -08:00
Justin Lebar
b682bbe4a5 Bug 731789 - Rename mfbt/StdInt.h to mfbt/StandardInteger.h, so stdint types work from cpp files inside mfbt. r=waldo 2012-02-29 22:56:43 -05:00
David Mandelin
b29f6a956a Bug 731492: Remove obsolete typedef JSPackedBool, r=luke
--HG--
extra : rebase_source : 95423985f55547755a988ba19629678997bfa553
2012-02-28 19:03:57 -08:00
Matt Brubeck
710e5b9000 Back out 2778f515ed5a (bug 723286) on suspicion of causing OSX64 crashes 2012-02-29 16:18:22 -08:00
Jeff Walden
7dc450d625 Warning patrol. No bug, r=themaid
--HG--
extra : rebase_source : b7e56f8e95e76c35089ff48a26fb60f9a4708995
2012-02-28 18:08:04 -08:00
Igor Bukanov
267b62cdb3 Bug 731618 - remove JSContext * parameter from heap iteration API. r=:Billm 2012-02-29 21:23:53 +01:00
Steve Fink
660c93f18d Bug 731450 - jstests.py needs to import subprocess.call. r=dmandelin
--HG--
extra : rebase_source : 307566ad1ad837dcd355440f378b755db3ae6afc
2012-02-28 17:15:26 -08:00
Steve Fink
34aac9ca1c Bug 730144 - Label objects with their mark colors when dumping the heap. r=mccr8
--HG--
extra : rebase_source : 0eb7c558ec255cb26784522137a8b80746cbe140
2012-02-23 18:47:59 -08:00