Commit Graph

23123 Commits

Author SHA1 Message Date
Peter Van der Beken
340572b953 Fix for bug 807330 (Make xpc_qsUnwrapThis/xpc_qsUnwrapArg deal with new DOM bindings). r=jst.
--HG--
extra : rebase_source : 3553f82516bfaa0764185f94e2eef616d9cd696d
2012-09-26 16:17:46 +02:00
Luke Wagner
e3722a2ce4 Bug 807845 - provide a jsfriendapi to query the caller's outermost enclosing function (r=jimb) 2012-11-09 11:39:52 -08:00
Bill McCloskey
1aa12c38e7 Backout 34791dac914c for assertion failure (bug 803376) 2012-11-09 11:39:39 -08:00
Wes Johnston
41d7374421 Bug 810398 - Update support library error message to be clearer. r=blassey 2012-11-09 11:07:40 -08:00
Bill McCloskey
c386b1080e Bug 803376 - Add a new form of TRANSPLANT GC, with assertions for leaks (r=luke) 2012-11-07 12:06:29 -08:00
Bill McCloskey
f27437f917 Bug 809295 - Do a better job handling failure in JSCompartment::wrap (r=luke) 2012-11-05 21:09:20 -08:00
Bill McCloskey
6a0626cc37 Bug 803376 - Remove old TRANSPLANT GCs (r=luke) 2012-10-18 16:48:22 -07:00
Bill McCloskey
8ea6d78be0 Bug 803376 - Add a special form of wrapper rooting (r=luke) 2012-10-03 22:44:30 -07:00
Bill McCloskey
89122b3c84 Bug 803376 - Allow wrappers to be reused (r=bholley) 2012-09-11 17:14:24 -07:00
Bill McCloskey
e3f39b6c2e Bug 803376 - Add JSObject::setCrossCompartmentSlot (r=terrence) 2012-09-14 16:58:50 -07:00
Boris Zbarsky
081200f74b Bug 807226 part 0.5. More undefs to stop Windows headers from messing with our GetClassName. r=peterv 2012-11-09 07:59:41 -08:00
Boris Zbarsky
f05491aec8 Bug 779048 part 0.5. Don't require a JSContext argument for nsJSUtils::GetStaticScriptGlobal. r=bholley 2012-11-09 07:43:57 -08:00
Eric Promislow
cf0e5821c6 Bug 809179 - Reinstate the js -w and -s command-line options. r=dvander
--HG--
extra : rebase_source : 7071d9acc638ea56bbc1532e3284d519db06a498
2012-11-08 20:53:07 -05:00
Bobby Holley
5f960dade7 Bug 807623 - Reimplement obj_toString and fun_toString traps on BaseProxyHandler. r=ejpbruel
Looks like these got lost in the Direct Proxy Handler refactor.
2012-11-08 14:05:49 -08:00
Fernando Jiménez
595063e7a9 Bug 809218 - Expose atob and btoa functions in xpcshell; r=mrbkap 2012-11-08 13:45:41 -08:00
Steve Fink
5d755edd99 Bug 803276 - Disable ArrayBufferView.prototype.move on release channels. r=dmandelin 2012-11-08 10:39:58 -08:00
Marty Rosenberg
5e84aca52e Ensure that we are using the same IonCompartment throughout the lifetime of an AFC(bug 792873, r=jandem) 2012-11-08 11:14:27 -05:00
Marty Rosenberg
eee5a68da1 Don't attempt to verify that the stack will be aligned, because it may not be. (bug 807156, r=djvj) 2012-11-08 11:14:24 -05:00
Eddy Bruel
0b47465612 Bug 793160 - Add NULL check for proto; r=ejpbruel 2012-11-08 16:51:11 +01:00
Wes Johnston
7e7639ef9e Bug 759041 - Bring in Android compatibility libraries. r=blassey 2012-11-08 07:45:29 -08:00
Bobby Holley
429f1cfe90 Bug 809547 - Tests. r=bz 2012-11-07 22:40:48 -08:00
Benjamin Peterson
eb9e9406cc Bug 809292 - Deal with all source data allocation in one function. r=njn 2012-11-08 09:24:46 -05:00
Hannes Verschore
4ecc61cba4 Bug 809472: Add truncate analysis for MMul, r=mjrosenb 2012-11-08 14:35:26 +01:00
Bill McCloskey
cf6e657fd2 Bug 808067 - Fix needsBarrier for GC (r=sstangl,jonco) 2012-11-07 10:30:30 -08:00
Benoit Jacob
4dbcec42c7 Bug 809715 - Use MFBT's IsBaseOf to simplify QS_IS_NODE - r=ehsan 2012-11-07 21:33:31 -05:00
Makoto Kato
dc86cbe96c Bug 797794 - need sync Preprocessor.py. r=bustage 2012-11-08 10:52:06 +09:00
Makoto Kato
1b9b070867 Bug 807895 - Remove BSD/OS code. r=khuey 2012-11-08 10:36:28 +09:00
Kannan Vijayan
e094b7bbbc Backing out 72078b2daa84 due to not fixing entire issue. 2012-11-07 20:13:39 -05:00
Bobby Holley
73334e2a83 Bug 805807 - Filter setters. r=mrbkap 2012-11-07 15:45:50 -08:00
Bobby Holley
4bb1e8b3f7 Bug 802557 - Mochitests. r=bz 2012-11-07 15:43:09 -08:00
Kannan Vijayan
f38d42262f Bug 803730 - Fix boxing of instanceOf inputs in ion. r=sstangl 2012-11-07 17:16:15 -05:00
Bobby Holley
0ae350d48b Bug 806751 - Pile more garbage into GetWrappedNativeOfJSObject. r=mrbkap
--HG--
extra : rebase_source : 9d290c7058dd4a1984aff94ef84376913947189e
2012-11-07 14:12:14 -08:00
Luke Wagner
103ce99cc1 Bug 809532 - rm unused CloneFunctionObject overload (r=billm)
--HG--
extra : rebase_source : 9c495cef6839782ec7bfa9d1cc214c282ddaa591
2012-11-07 13:28:52 -08:00
Luke Wagner
758f3333d4 Bug 807185 - IonMonkey: optimize the non-native test in visitCallGeneric (r=sstangl)
--HG--
extra : rebase_source : 6ed2cc423ea0794ad715b2d4d31c0a3047c3464c
2012-11-01 21:35:13 -07:00
Luke Wagner
50f9a075a0 Bug 807228 - clean up the JSFUN_* flags situation (r=jorendorff)
--HG--
extra : rebase_source : 1bb7ac4a354a9b78e5b5201b4204c4ade3067c49
2012-11-01 21:35:09 -07:00
Terrence Cole
1bb80cfab8 Bug 798638 - Exactly root TryNoteIter; r=luke
TryNoteIter is always stored on the stack and stores a JSScript* internally.
2012-10-05 16:29:57 -07:00
Terrence Cole
ab0d85ee35 Bug 807151 - Unexport |mozilla| from the |js| namespace; r=Waldo
Clang does not want to allow js::ion::Range and mozilla::Range simultaneously
when we have a |namespace js { using namespace mozilla; }| declaration.
2012-11-06 17:35:18 -08:00
Nathan Froyd
6cd8a16138 Backout a9cfcf4b62d9 (bug 803730), a5e214d4f8b0 (bug 803730), for intermittent oranges in newly added tests 2012-11-07 14:58:29 -05:00
Jim Mathies
36c0583c7c Bug 809158 - Cleanup enable-metro configure.in sections and set the proper WINVER for js in metro builds. r=bbondy 2012-11-07 13:27:00 -06:00
Jacek Szpot
513125c236 Bug 800106: Remove NS_ALWAYS_INLINE from configure.in; r=ehsan 2012-10-13 00:36:39 +02:00
Terrence Cole
db03eac92b Bug 501265 - SpiderMonkey's shell |load()| should interpret chars as UTF-8; rs=Waldo 2012-11-06 11:57:42 -08:00
Kannan Vijayan
f5b4cb0cee Bug 803730 - Fix ion to box LHS operand when performing InstanceOf on an object. (r=sstangl) 2012-11-07 13:04:01 -05:00
Kannan Vijayan
fc947af223 Bug 803730 - Add mochitest for bug. 2012-11-07 13:03:31 -05:00
Bobby Holley
5ede664aac Bug 809318 - Fix flakey tests. r=philor 2012-11-07 09:39:32 -08:00
Bobby Holley
42c232e7e3 Bug 808457 - Add Telemetry for Components.lookupMethod and Components.interfaces. r=mrbkap 2012-11-07 08:28:35 -08:00
Bobby Holley
0d4bc850b4 Bug 808611 - Move valueOf to nsIDOMLocation. r=mrbkap 2012-11-07 08:27:23 -08:00
Geoff Brown
8da8b19c60 Bug 808729 - Set _TESTING_MODULES_DIR for Android xpcshell tests; r=jmaher
--HG--
extra : rebase_source : 80896416e1262802421282573af6c2babc4cfcac
2012-11-13 16:37:53 -07:00
Gregor Wagner
326de4e3ae Backout f2c60518351d Bug 809661 2012-11-13 14:44:18 -08:00
Ben Turner
a62084789a Bug 809661 - Need a speedy way to construct a thread list for SMS messages. r=sicking 2012-11-13 13:01:26 -08:00
Till Schneidereit
2cbebc7fa3 Bug 784294 - Convert some array extras to self-hosted js implementations. r=Waldo
The following methods are converted:
- lastIndexOf
- indexOf
- forEach
- some
- every
- reduce
- reduceRight

--HG--
extra : rebase_source : 7dd5dc4167c505c6d02823d2d8d8c7da0cf0e237
2012-08-28 14:35:15 +02:00
Till Schneidereit
88fa8c9631 Bug 791850 - Lazily clone self-hosted methods installed via js_DefineFunction. r=luke
--HG--
extra : rebase_source : e350e006484af8bc41e8bebe9a2d3842cebe91b9
2012-09-18 22:11:37 +02:00
Hannes Verschore
9c7f3be4e7 Bug 809390: Improve range analysis on bitand, r=mjrosenb 2012-11-13 18:27:54 +01:00
Kyle Huey
206106294e Bug 810987: When sharing a global, don't import properties onto the global, import them onto the appropriate 'this' object. r=mrbkap 2012-11-13 08:57:44 -08:00
Paul Adenot
061130052b Bug 779997 - Import SoundTouch Library in the tree. r=khuey,rstrong 2012-08-26 22:36:44 -07:00
Paul Adenot
63623db352 Backed out changeset 98f9d1044e54 because r= bit is missing in commit message. 2012-11-07 10:30:49 +01:00
Paul Adenot
4107bd8751 Bug 779997 - Import SoundTouch Library in the tree. r= 2012-08-26 22:36:44 -07:00
Nicholas D. Matsakis
0f88896f1a Bug 807480 - Add Rooted<T> roots to PerThread state. r=luke
Currently there are a number of global fields in JSRuntime* which are basically
tracking per-thread state.  This makes sense on the current trunk since there
is only ever a single thread associated with a runtime, but as Parallel JS (nee
Rivertrail) starts to land this assumption no longer holds.

This patch makes a struct, currently called |JS::PerThreadData|, that stores
per-thread data from the runtime.  There is one instance of this struct
embedded in "Runtime" itself (the field |mainThread|).  For now I have only
migrated the debug GC fields into |PerThread|, those are the ones causing me
immediate pain.  Eventually more fields will want to move into there.

The eventual goal is to distinguish thread-safe code, which will take as
argument a |JS::PerThread*|, from non-thread-safe code, which will take a
|JSRuntime*| or |JSContext*|.
2012-11-06 22:32:01 -05:00
Bobby Holley
9a5d674c8c Bug 808730 - Implement the 'IfFound' parent of ReparentWrapperIfFound. r=mrbkap
This is a pretty dumb bug, but we never actually hit this codepath at the moment.
We currently end up in wrapper by either explicitly calling
ReparentWrappedNativeIfFound (in nsNodeUtils and in nsHTMLDocument), or by moving
existing wrappers during orphan fixup. The former always passes a wrapper-cached
object, and the latter guarantees that we always have a wrapper. So we'd never
hit the "no wrapper cache, no wrapper" case in the current code.
2012-11-06 17:56:49 -08:00
Philip Chee
0618f2c4de Bug 808278 - Unable to Build with VS2008SP1/VC9 since Bug 740015 (Update Yarr to WebKit rev 130234). r=dmandelin 2012-11-03 17:24:51 +08:00
Masatoshi Kimura
8ecc83b13b Bug 801487 - Add a JSAPI to make a report with unicode arguments. r=Waldo 2012-11-06 18:23:14 -05:00
Andrea Marchesini
6a0fe78592 Bug 781425 - Part 1: Enconding and dictionary. r=mounir, sr=sicking 2012-11-06 18:23:13 -05:00
Norbert Lindenberg
a18342882f Bug 769872 - Use Handle<PropertyName*> instead of char* for getSelfHostedFunction argument. r=jwalden
--HG--
extra : rebase_source : 40c6de65e50ac3ac31cbe9321a73fc01de25d09b
2012-11-05 13:38:00 +01:00
Landry Breuil
73365fd34f Bug 792085. Fix js build on ppc, broken since ionmonkey merge. r=dvander
Sprinkle some #ifdef JS_IOn/JS_METHODJIT around ion includes.
Fix part of #746112, where pagesize was set to 64k on all ppcs,
while it seems it's only on ppc64.
2012-11-06 19:50:19 +01:00
Terrence Cole
187176266e Bug 805492 - Add some more exact script rooting; r=sfink
The new decompiler is hitting an AssertNoGC() from this.
2012-10-25 10:53:58 -07:00
Terrence Cole
531b585037 Bug 808834 - Fix length check when uninlining new dependent strings; rs=luke
--HG--
extra : rebase_source : 51fde514fd92a5a65b078d4b7dfffe3d9640c751
2012-11-05 16:04:52 -08:00
Terrence Cole
5b0b9b8087 Bug 808483: Fix dependent string assertion; r=luke
Undepended strings can break the assertion in JSDependentString::new_. This
generalizes the assertion to work for all cases.

--HG--
extra : rebase_source : 62b7fa786c6250054092723b92cd97bded92d6b1
2012-11-05 15:07:52 -08:00
Bobby Holley
327f8ca891 Bug 807179 - Add a constructor for JSPropertyDescriptor. r=luke 2012-11-05 17:49:44 -08:00
Nicolas B. Pierron
68d4fa0e36 Bug 807047 - Fix test case. r=oops 2012-11-05 17:28:42 -08:00
Bill McCloskey
2aae7cd63a Bug 808067 - Back out again due to possible orange (r=orange) 2012-11-05 17:22:54 -08:00
Bobby Holley
35a5c3a7c6 Bug 800864 - Add some more tests. r=bz 2012-11-05 17:15:53 -08:00
Bobby Holley
60c3e2181b Bug 793969 - Tests. r=mrbkap 2012-11-05 17:10:34 -08:00
Nicolas B. Pierron
b9bd532656 Bug 807047 - Only use missing property cache on non-idempotent IC. r=jandem 2012-11-05 16:55:08 -08:00
Terrence Cole
96af405e26 Bug 772722 - Remove superfluous usage of Atomics in SpiderMonkey; r=luke
None of the current usages of ATOMIC_INC/DEC are useful now that we do not allow
multi-threaded runtimes. This also removes a pre-mature optimization that
happened to be using the atomics. I measured it as saving strictly < 3us on old
hardware.

--HG--
extra : rebase_source : 83ff1826f4cfb59fa505ae2e7a7150c4a478598b
2012-11-05 11:52:03 -08:00
Terrence Cole
ad56444ccf Bug 808181: Do not allow implicit conversion of Return<T>; r=jorendorff
This will allow the compiler to catch more usage errors.
2012-11-05 10:53:04 -08:00
Bill McCloskey
6c4ca4af53 Bug 808067 - Add test (r=sstangl) 2012-11-05 14:52:15 -08:00
Bill McCloskey
1dccfd6b33 Bug 808067 - Fix needsBarrier (r=sstangl,jonco) 2012-11-05 14:22:35 -08:00
Ed Morley
5315a9a632 Backout f458467cc2cf & 5c5e4097dd20 (bug 808067) for make check failures 2012-11-05 22:13:33 +00:00
Bill McCloskey
3509e1737d Bug 808067 - Change the compartments we iterate over when ending GC (r=jonco) 2012-11-05 13:17:06 -08:00
Bill McCloskey
ff0cd0b135 Bug 808067 - Toggle Ion barriers when resetting incremental GC (r=sstangl) 2012-11-05 13:16:22 -08:00
Steve Fink
0da33b1c98 Bug 807829 - SkipRoot no longer needed for StackIter script
--HG--
extra : rebase_source : 006ac738d3284cfb5349ce431bd64e05c80d9863
2012-11-01 13:57:47 -07:00
Steve Fink
a5fa7fc682 Bug 807829 - Unrooted scope variable accidentally used
--HG--
extra : rebase_source : 90b046577d61c4682566fcff2d4708ae75ed26b4
2012-11-01 13:57:47 -07:00
Steve Fink
91e690f6e0 Bug 807829 - Handlify js_NativeSet and use rooted Shape* consistently
--HG--
extra : rebase_source : 50da90b308ace580a6312084d8ba38667a838b9e
2012-11-01 13:57:47 -07:00
Steve Fink
b79c0a1e9e Bug 807458 - Eliminate a SkipRoot from NewDenseCopiedArray. r=terrence
--HG--
extra : rebase_source : 57b50c345cb0a9a481efda9a8526732d5129df48
2012-11-01 13:57:47 -07:00
Boris Zbarsky
e0cb69bbd9 Bug 807548. Enumerating an Xray should not see the 'constructor' property on DOM prototypes unless we're told to include non-enumerable properties. r=peterv 2012-11-05 11:58:03 -05:00
Boris Zbarsky
bea8d78997 Bug 743171. Fix the global's enumerate hook to correctly enumerate Proxy and WeakMap. r=jorendorff 2012-11-05 11:58:03 -05:00
Jan de Mooij
b732e5bfff Bug 808519 part 2 - Rename MaybeScriptFromCalleeToken and call it in GetTopIonJSScript. r=dvander 2012-11-05 17:35:30 +01:00
Jan de Mooij
d89dbc1048 Bug 808519 part 1 - Rename IonFrame_JS to IonFrame_OptimizedJS. r=dvander 2012-11-05 17:35:10 +01:00
Hannes Verschore
4f492dd86c Bug 808294: Fix tracelogger builds, r=dvander 2012-11-05 17:27:42 +01:00
Hannes Verschore
ba50d92452 Bug #807824: Don't restore register in oolcall when it is used as a return value, r=nbp 2012-11-05 17:14:50 +01:00
Nicholas Nethercote
5810ed9556 Bug 807896 - Reduce the initial size of SPS's strings hashtable. r=acrichto.
--HG--
extra : rebase_source : 681db4bf991019e302dfa08869fa59499a33eac1
2012-11-04 14:17:53 -08:00
Ehsan Akhgari
6e3b90c43e Merge mozilla-central into mozilla-inbound 2012-11-04 11:09:45 -05:00
Ms2ger
8d44a3dde8 Bug 803520 - Don't use JSCList for JSRuntime::contextList; r=Waldo 2012-11-04 09:00:06 +01:00
Ms2ger
a0504faba0 Bug 801991 - Remove the ability to generate custom quickstubs; r=peterv 2012-11-04 09:00:06 +01:00
Axel Hecht
4d9dd144a7 bug 808289, fix l10n-base for repacks, regression from bug 797745, r=bustage, DONTBUILD 2012-11-03 17:13:56 +01:00
Bill McCloskey
d99a8a8cca Backout bug 778993 for kraken regression (r=regression) 2012-11-02 18:21:36 -07:00
Bobby Holley
8b06fa3c7e Bug 805807 - Rearchitect filtering policies so that check() doesn't throw on denial. r=mrbkap
This is another one of those annoying situaitons in XPConnect right now where we
can't ask a question without potentially throwing if the answer is no. There's
also a bunch of unused cruft in here (like the Perm*Access stuff), so this stuff
was ripe for a spring cleaning. Unfortunately, I wasn't able to divide this patch
up nicely. Sorry for the big diff. :-(

In a nutshell, this patch changes things so that Policy::check() just becomes
a predicate that says whether the access is allowed or not. There's the remote
possibility that one of the underlying JSAPI calls in a ::check() implementation
might throw, so callers to ::check() should check JS_IsExceptionPending
afterwards (this doesn't catch OOM, but we can just continue along until the
next OOM-triggering operation and throw there).

Aside from exceptional cases, callers should call Policy::deny if they want to
report the failure. Policy::deny returns success value that should be returned
to the wrapper's consumer.
2012-11-02 21:47:49 -03:00
Bobby Holley
c351c18d32 Bug 805807 - Make Components wrapper throw on denial. r=mrbkap
There's really no reason to use the wishy-washy static COW Deny() here.

Also, note that the xpcshell-test wasn't testing what it thought it
was - interfaces is accessible from content code.
2012-11-02 21:47:49 -03:00
Jason Orendorff
3556bc2bcd Change some GC tests to only check the output of findReferences in builds that actually have it. Fixing orange introduced by dc4f417ef79a (bug 805003). No bug, no_r=me, pushing to a CLOSED TREE.
--HG--
extra : rebase_source : a460dbedcfd32ed8f24a1fc9db10922fe182398f
2012-11-02 18:34:50 -05:00
Terrence Cole
1fe5192896 Backed out changeset f0d7c7806a90 2012-11-02 16:00:27 -07:00
Terrence Cole
865ea27360 Bug 808181: Do not allow implicit conversion of Return<T>; r=jorendorff
This will allow the compiler to catch more usage errors.

--HG--
extra : rebase_source : b424e2a8dfb88a340fc298cd9a11cd5779664c9d
2012-11-02 15:48:08 -07:00