Commit Graph

23167 Commits

Author SHA1 Message Date
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
Bill McCloskey
aa7be0f282 Bug 778993 - Separate runtime's gcMallocBytes from compartment's gcMallocBytes (r=gwagner,till) 2012-11-02 15:06:56 -07:00
Jason Orendorff
b648b070b1 Bug 787703. r=terrence.
--HG--
extra : rebase_source : 59c8ab53405421c3eeb87fb409d8f2af94630b5a
2012-11-02 10:12:45 -05:00
Jason Orendorff
cfeb868739 Bug 807001 - Change Map and Set size() methods to accessor properties. r=Waldo.
--HG--
extra : rebase_source : bf2809aa1d943caa6349d7b44621cd1b0bb85742
2012-11-02 10:12:36 -05:00
Bobby Holley
a4ce179e40 Bug 731471 - Crashtesty-mochitest. r=me 2012-11-04 07:41:01 -08:00
Jason Orendorff
c508d70974 Bug 805003 - Implement Map and Set clear methods. r=luke.
--HG--
extra : rebase_source : 02c641c57f556f83dbaf6fbf568f0d67e53c9982
2012-10-30 17:02:29 -05:00
Ryan VanderMeulen
d716366c32 Merge m-c to inbound. 2012-11-02 16:11:46 -04:00
Ryan VanderMeulen
7ce522bbc4 Merge fx-team to m-c. 2012-11-02 15:45:53 -04:00
Panos Astithas
ceacb0d392 Implement Debugger.removeAllDebuggees for efficient debugger shutdown (bug 740551); r=jimb,jorendorff 2012-11-02 18:30:23 +02:00
Bill McCloskey
35845d607b Bug 807535 - Avoid toggling Ion write barrier too often (r=sstangl) 2012-11-01 08:08:21 -07:00
Axel Hecht
c315945bdd bug 797745, use l10n-base and relativesrcdir instead of config.mk for l10n-merge, r=ted
--HG--
extra : rebase_source : 0d280e5cfabe7efdbe112309da6ef87d3848c441
2012-11-01 13:25:53 +01:00
Nicolas B. Pierron
72fe66e92b Bug 807035 - Skip guard insertion if there is no proto. r=dvander 2012-10-31 18:55:33 -07:00
Eric Faust
17311133e4 Check to make sure compilations haven't been invalidated (bug 799803, r=pierron). 2012-10-31 18:41:56 -07:00
David Anderson
ce5e3ac378 Respect object's extensibility in addprop ICs (bug 805747, r=djvj). 2012-10-31 16:23:53 -07:00
Sean Stangl
0945cd5537 Bug 800617 - Fix some ARM-specific uber-nits. r=mjrosenb 2012-10-31 15:41:20 -07:00
Rafael Ávila de Espíndola
111917a5c3 Bug 807112 - change MOZ_EXPORT_API and MOZ_IMPORT_API to not take the type. r=Waldo. 2012-10-31 18:18:12 -04:00
Kyle Huey
1482122303 Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
--HG--
extra : rebase_source : 98337b6a8c07d05e8c961a452dd05a7d75c3c60b
2012-10-31 09:13:28 -07:00
Bill McCloskey
70a8d7ef1c Bug 807161 - Remove extern C and #ifdef __cplusplus from JSAPI (r=luke) 2012-10-30 18:28:34 -07:00
Jan de Mooij
e8004990a9 Bug 802809 - Assert PRESET LDefinitions are not followed by instructions with fixed uses. r=dvander 2012-10-31 16:27:00 +01:00
Jan de Mooij
04a5e0b510 Bug 801831 - Don't mark EnterJIT thunk if it's NULL. r=dvander 2012-10-31 14:04:18 +01:00
Tom Schuster
85c2e983ae Bug 805222 - Change some usages of GetFunctionId to GetFunctionDisplayId for better JS stacktrace. r=bholley,robcee 2012-10-31 13:34:42 +01:00
Peter Van der Beken
5f0fc13698 Test for bug 798264. 2012-10-12 12:48:25 +02:00
Bill McCloskey
f5c13821a8 Bug 739681 - Allow DumpHeapComplete to print unreachable objects (r=mccr8) 2012-11-02 12:24:19 -07:00
Geoff Brown
e3a9de9f57 Bug 799863 - Fix paths so check-one-remote can find mozdevice; r=wlach 2012-11-02 13:19:54 -06:00
Ed Morley
b159aab211 Backout 23c9f61a243b & 6ca11f4b470c (bug 805807) for mochitest-1 orange in test_contextmenu.html 2012-11-02 14:12:51 +00:00
Robert O'Callahan
6a3039a63c Bug 807237. Add 'data' parameter to JS_StealArrayBufferContents. r=sfink
--HG--
extra : rebase_source : 5c9fe8f9b09ac63f3e130e7ff3418301f868cb8d
2012-11-02 23:42:59 +13:00
Robert O'Callahan
5b81ee2437 Bug 807212. Call TypedArray methods instead of accessing slots directly. r=sfink
--HG--
extra : rebase_source : 05af21bea8caf6d80bb3f97762d559f21e0c4157
2012-11-02 23:42:58 +13:00
Robert O'Callahan
009abd8982 Bug 807223 - Implement JS_ArrayBufferViewBuffer. r=sfink
This is really sfink's patch, but we wrote basically the same code and the
review looks better this way.

--HG--
extra : rebase_source : 90d52ff6c9b7050abde98fa582984c88fa909f0c
2012-10-30 21:26:32 -07:00
Bobby Holley
2d408f61a6 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 13:27:59 +01:00
Bobby Holley
ac090a0e20 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 13:27:59 +01:00
Vicamo Yang
8297cdabd6 Backout 67cb43bb8865: Breaks B2G Marionette 2012-10-31 16:35:11 +08:00
Andrew McCreight
c8dcda07ec Bug 806433 - Make mReleaseRunnable a ref ptr. r=smaug 2012-10-30 20:01:31 -07:00
Tony Young
449f44e70d Bug 806643 - Negate doubles by flipping signed bit. r=sstangl 2012-10-30 14:59:06 -07:00
Rafael Ávila de Espíndola
512a3dd46a Bug 803707 - Don't assume pointers are 64 bits. r=Waldo.
Use reinterpret_cast.
2012-10-30 17:38:13 -04:00
Jonas Sicking
c7d1bf58ee Bug 806587: Restore getCodebasePrincipal since extensions use it. r=mounir 2012-10-30 22:24:41 +01:00
William Lachance
f3518f5541 Bug 799863 (1/3) - Make sure remote xpcshell tests can find mozdevice;r=gbrown
---
 config/makefiles/xpcshell.mk        |    1 +
 js/src/config/makefiles/xpcshell.mk |    1 +
 testing/testsuite-targets.mk        |    1 +
 3 files changed, 3 insertions(+)
2012-10-16 16:28:49 -04:00
Boris Zbarsky
7cb30ff9c6 Bug 801819. Remove nsIDOMCSS2Properties and the classinfo bits for CSS declarations. r=peterv,dbaron 2012-10-30 17:14:06 -04:00
Nicolas B. Pierron
1010277758 Bug 804064 - TableSwitchV, unbox integers values before branching. r=h4writer 2012-10-30 13:51:43 -07:00
Terrence Cole
76e866779c Bug 805080 - Remove unused CESU8 support from SpiderMonkey; r=luke
We have many CESU8 paths in SpiderMonkey which are completely unused and
untested. We have many more "UTF-8" paths which are really mislabled CESU8 paths
and visa-versa. This patch attempts to disentable all of the various encoding
options in SpiderMonkey.
2012-10-29 13:55:17 -07:00
Ehsan Akhgari
786e1a903f Backed out 2 changesets (bug 805883, bug 787703) because of Windows PGO bustage on non-profiling builds
Backed out changeset 792a91b91020 (bug 805883)
Backed out changeset e1c7f5195704 (bug 787703)

--HG--
extra : rebase_source : 725029fbf5e34ae198bd9f4cde53593e8f373392
2012-10-30 16:17:29 -04:00
Bobby Holley
ce50e5bd1b Bug 804630 - Tests for exposing prototype properties on a derived object. r=mrbkap 2012-10-30 18:29:11 +01:00
Kyle Huey
bdf47895bb Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon 2012-10-30 12:28:11 -07:00
Ed Morley
777eed8444 Backout a145ded68994, e0cf397089ec & 1545e91c658e (bug 798491) for bustage on a CLOSED TREE 2012-10-30 17:02:31 +00:00
Kyle Huey
331f5d8222 Bug 798491: Followup bustage fix. 2012-10-30 08:42:47 -07:00
Kyle Huey
aa1997a51a Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon 2012-10-30 08:26:12 -07:00
Phil Ringnalda
9434ca32e9 Back out 4770ab40cdb6 (bug 804064) for bustage 2012-10-29 22:59:21 -07:00
Nicolas B. Pierron
a4a41f91ca Bug 804064 - TableSwitchV, unbox integers values before branching. r=h4writer 2012-10-29 22:31:20 -07:00
Bill McCloskey
946abd6a57 Bug 806644 - Back out 782072 (r=terrence)
--HG--
extra : rebase_source : ac0be1c64b09a18d9617ccae0a6e015f0b14b797
2012-10-29 17:34:59 -07:00
Nicolas B. Pierron
3c85803aac Bug 792631 - Add IC for missing properties. r=dvander 2012-10-29 15:17:06 -07:00
Jacek Szpot
0b35b0e3d8 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Daniel Holbert
c8e4b17456 Bug 806442: Remove unused variable "slot" from Compiler::markUndefinedLocal. r=billm 2012-10-29 13:40:20 -07:00
Hannes Verschore
ccf61ba4e7 Bug #807380: Report to the compiler the function is constructing when entering at a branch, r=dvander 2012-11-02 11:45:25 +01:00
Shu-yu Guo
46d2757561 Bug 807525 - Have embedjs.py append newlines when not present. (r=till) 2012-11-01 23:40:38 -07:00
David Anderson
88229dd518 Update Yarr to WebKit rev 130234 (bug 740015, r=dmandelin). 2012-11-01 21:35:25 -07:00
Luke Wagner
199d5b77ae Bug 805294 - Don't use the RegExpShared cache to track all live RegExpShareds (r=billm) 2012-11-01 21:27:07 -07:00
Nicholas Nethercote
1c9660a37a Bug 806283 - Split up and add native iterators to "object/misc" memory reports. r=jorendorff.
--HG--
extra : rebase_source : 867e178d0c921de9e144fb274e1c0d77c8845b81
2012-11-01 16:51:04 -07:00
Hannes Verschore
133fa7281c Bug 806793: disable hoisting shape guards after bailing because of a shape guard, r=jandem 2012-11-02 00:36:50 +01:00
Peter Van der Beken
1ef60a85a4 Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript). r=bz.
Switch from using the interface objects from the Xrays compartment to wrapping
interface objects and interface prototype objects in Xrays. Make dom binding
Xrays deal with both instance objects and interface and interface prototype
objects.
2012-10-09 20:50:27 +02:00
Jan de Mooij
37f89578d7 Bug 800179 - Initialize CallArgsList::active_ in the constructor. r=luke
--HG--
extra : rebase_source : a540b9484db012813d5fd0f960bdb2d83baeeeaf
2012-10-29 19:00:53 +01:00
Bobby Holley
88c0b669e0 Bug 803068 - Remove toBaseProxyHandler and toWrapper. r=ejpbruel
--HG--
extra : rebase_source : 1224e016033c57ec9fbf970fc5eabb2904386529
2012-10-29 16:52:54 +01:00
Bobby Holley
b4461f0bed Bug 803068 - Merge DirectWrapper and Wrapper. r=ejpbruel
--HG--
extra : rebase_source : a2b98a9585c6f7761747cfaf55684e6eeed91344
2012-10-29 16:52:53 +01:00
Bobby Holley
a0d19fc627 Bug 803068 - Remove IndirectProxyHandler. r=ejpbruel
--HG--
extra : rebase_source : 08570e140f6e16d73adca23b51b63222231dc0f4
2012-10-29 16:52:53 +01:00
Bobby Holley
f107868927 Bug 803068 - Remove IndirectWrapper. r=ejpbruel
We also take the opportunity to update the now-obsolete comment about the
wrapper hierarchy.

--HG--
extra : rebase_source : b756bf143d202daae4b5abcf99f7fb381e040641
2012-10-29 16:52:53 +01:00
Bobby Holley
cf2bcfdc02 Bug 803068 - Make ScriptedIndirectProxyHandler inherit BaseProxyHandler directly. r=ejpbruel
There are no actual dependencies on IndirectProxyHandler, despite the fact that
it roughly mimics its behavior.

--HG--
extra : rebase_source : 556c4d0eb0ac41547e2de7f033fe4097da4ca77b
2012-10-29 16:52:53 +01:00
Bobby Holley
63c5692d29 Bug 803068 - Restore BaseProxyHandler call/construct traps. r=ejpbruel
I don't ever remember them being moved, but this seems wrong. As long as we
continue to support function proxies, there's no reason that the call logic
should be limited only proxies with targets. In particular, this issue breaks
the SpecialPowers wrapper after making ScriptedIndirectProxyHandler inherit
BaseProxyHandler.

--HG--
extra : rebase_source : 61f51f2c97eb6cf5850ffa6699a396a436567065
2012-10-29 16:52:53 +01:00
Bobby Holley
8eabbd467b Bug 803068 - Manually grab the BaseProxyHandler derived traps in SandboxProxyHandler. r=ejpbruel
Let's just bite the bullet and do this here. It will let us get rid of
IndirectProxyHandler, which has really overcomplicated our proxy hierarchy.

--HG--
extra : rebase_source : 7e81529936bc256d672e40537eb6abca6374e52c
2012-10-29 16:52:53 +01:00
Bobby Holley
c45ac66eb0 Bug 797206 - Remove GetPrincipalFromContext. r=bz 2012-10-29 15:55:36 +01:00
Peter Van der Beken
efd72d6b0c Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript) - rename ProtoOrIfaceArray. r=bz.
--HG--
extra : rebase_source : c426270fc1ebee818629bd94dfc8d11af59bfc00
2012-10-09 20:50:27 +02:00
Peter Van der Beken
705e0cc63b Fix for bug 804992 (Enable objects with new DOM bindings to be parent of other DOM objects). r=bz.
--HG--
extra : rebase_source : f07cade82dad0216d94e68dd0c0f495977abeb31
2012-09-12 22:29:30 +02:00
Peter Van der Beken
09dd1ac571 Fix for bug 804732 (Remove mCachedDOMPrototypes). r=bz.
--HG--
extra : rebase_source : dc9ffe5f37dbc0542cbb47384b2d25472c70d801
2012-10-23 22:11:58 +02:00
Jan de Mooij
874593342a Bug 804636 part 4 - Remove TypeOracle::incslot and inc/dec handling in TypeDynamicResult. r=dvander 2012-10-29 11:26:09 +01:00
Nicholas Nethercote
dfb006bf92 Bug 805915 (part 5) - Add more detail to shape memory reports. r=luke.
--HG--
extra : rebase_source : f1a05ea15b78e5f33d6398accca3333ab29fa1c6
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
dd15137c21 Bug 805915 (part 4) - Add more detail to string memory reports. r=luke.
--HG--
extra : rebase_source : 010e28f10917ae4cc9d0d11abace9bcdabf0aba8
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
37e1cf7c58 Bug 805915 (part 3) - Fix misleading behaviour of JSString::isShort(). r=luke.
--HG--
extra : rebase_source : 433f852fafc580cd4d51241dd3d90fd387719f3d
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
17209cb3c5 Bug 805915 (part 2) - Add more detail to object memory reports. r=luke.
--HG--
extra : rebase_source : e54ece88753280ccac284f6265fd92310dc1bec6
2012-10-29 08:51:21 +11:00
Nicholas Nethercote
d46cd5f2d4 Bug 805915 (part 1) - Rename the "cross-compartment-wrappers" memory report. r=luke.
--HG--
extra : rebase_source : a9689bde17b043bc8bec55c0307c0bbf94768232
2012-10-29 08:51:21 +11:00
Ryan VanderMeulen
dd87cc277e Bug 799917 - Backout for various regressions. 2012-10-28 08:49:20 -04:00
Jan de Mooij
85146049a7 Bug 804636 part 3 - Remove JM+TI loop test analysis. r=bhackett 2012-10-27 20:56:19 +02:00
Jan de Mooij
ecd7f72ca7 Bug 804636 part 1 - Decompose LOCAL/ARG inc/dec ops. r=bhackett 2012-10-27 14:16:17 +02:00
Kannan Vijayan
fee107739d Bug 800568 - Remove spurious use of potentially-nonexistant pushedTypes in callGetter IC code. (r=nbp) 2012-10-26 21:01:15 -04:00
Benjamin Peterson
a5df34dfbf backout bug 778948 eace14fccc47 for horrible sunspider regression r=me 2012-10-26 17:59:35 -07:00
Gregor Wagner
3358240540 Bug 800063 - Make GC_ALLOCATION_THRESHOLD dynamic. followup. r=orange 2012-10-26 17:40:39 -07:00
Benjamin Peterson
952638ace4 Bug 778948 - Move jsinterp to vm/Interpreter. r=luke
--HG--
rename : js/src/jsinterpinlines.h => js/src/vm/Interpreter-inl.h
rename : js/src/jsinterp.cpp => js/src/vm/Interpreter.cpp
rename : js/src/jsinterp.h => js/src/vm/Interpreter.h
2012-10-26 16:51:05 -07:00
Gregor Wagner
94f2e887b4 Bug 800063 - Make GC_ALLOCATION_THRESHOLD dynamic. r=billm 2012-10-26 16:06:19 -07:00
Sean Stangl
879152f462 Bug 803884 - Fold MControlInstructions. r=mjrosenb 2012-10-26 14:25:54 -07:00
Ryan VanderMeulen
22439e63c4 Merge m-c to inbound. 2012-10-26 16:06:04 -04:00
Daniel Holbert
3bf29216d0 Bug 805883: Add (void) cast to "use" an otherwise-unused variable, as far as GCC build-warning is concerned, in gc/Root.h. r=jorendorff 2012-10-26 11:41:14 -07:00
Bill McCloskey
d48c07ff09 Bug 803907 - Simplify GC root iteration (r=terrence) 2012-10-26 11:53:31 -07:00
Bill McCloskey
44c1337852 Bug 803907 - Remove some unused GC functions (r=terrence) 2012-10-26 11:53:25 -07:00
Bill McCloskey
2e35cd555e Bug 803907 - Remove some GC debugging functions (r=terrence) 2012-10-26 11:53:20 -07:00
Bill McCloskey
b8c104da8b Bug 803907 - Remove JS MapRoots (r=terrence) 2012-10-26 11:51:35 -07:00
Bill McCloskey
f8f8d7017f Bug 692267 - Remove js/src/gc/Heap.h from INSTALLED_HEADERS (r=terrence) 2012-10-26 11:18:50 -07:00
Bill McCloskey
2e039c483d Bug 692267 - Remove jsgc.h from INSTALLED_HEADERS (r=terrence) 2012-10-26 11:17:24 -07:00
Nicholas Nethercote
1bb4139b79 Bug 804891 - Reduce LIFO_ALLOC_PRIMARY_CHUNK_SIZE from 128 KiB to 32 KiB. r=wmccloskey.
--HG--
extra : rebase_source : 41cbe9a405e2febe84ce1db3bf1dba9a19f53748
2012-10-25 17:55:31 -07:00
Ryan VanderMeulen
5674cf6938 Backout 589b6766b99a (bug 786146) due to test bustage on a CLOSED TREE. 2012-10-25 20:05:13 -04:00
Andrew Quartey
1d28872093 Bug 792581 - part 20: Replace LL_UI2L macro with int64_t cast. r=ehsan 2012-10-25 19:25:57 -04:00
Nikhil Marathe
453b3dce5f Bug 804174 - Inline CallerHasUniversalXPConnect with IsCallerChrome. r=mccr8 2012-10-25 16:10:53 -07:00
Brian Hackett
dfa06ed040 Eagerly generate a single copy of Ion stubs and wrappers, bug 786146. r=dvander 2012-10-25 15:37:17 -07:00
Jason Orendorff
975e61072c Bug 787703. r=terrence 2012-10-25 17:43:25 -04:00
Brian Hackett
4dcb603901 Allow canceling in-progress off thread ion compilations, bug 785761. r=dvander 2012-10-25 13:46:49 -07:00
Anant Narayanan
1ceeaa0d12 Backout 4aef9921a9d6, build failed 2012-10-25 12:28:05 -07:00
Brian Hackett
d177fc87e2 Allow canceling in-progress off thread ion compilations, bug 785761. r=dvander 2012-10-25 12:00:00 -07:00
Bobby Holley
488778aa80 Bug 797821 - Null check to fix intermittent orange. r=me 2012-10-25 18:36:45 +02:00
Ehsan Akhgari
f117c7a7b0 Backed out 2 changesets (bug 579517)
Backed out changeset 5298adc70963
Backed out changeset 86ccf7c918ce (bug 579517)
2012-10-25 12:32:24 -04:00
Ehsan Akhgari
48b5c1a608 Code hygiene: don't use PR_TRUE and PR_FALSE, and use stdint types instead of PRInt types (no bug really, but you could say bug 579517) 2012-10-25 11:48:19 -04:00
Bobby Holley
6bae1ef04d Bug 797821 - Address Ms2ger's review comments. r=me 2012-10-25 17:01:09 +02:00
Bobby Holley
c8500076c1 Bug 797821 - Remove the XPConnect Compartment Set. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
c562949e50 Bug 797821 - Hoist XPConnect-y stuff out of the compartment private and into the XPCWrappedNativeScope. r=mrbkap
This change means we no longer have to keep around a set of XPConnect compartments.
We keep the compartment private around for non-xpconnecty stuff like about:memory
instrumentation that needs to happen on non-xpconnect compartments.
2012-10-25 17:01:09 +02:00
Bobby Holley
a257acaeb2 Bug 797821 - Removed the unused reserved slot for XPConnect globals. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
4ab5b9a39a Bug 797821 - Remove JSCLASS_XPCONNECT_GLOBAL flag. r=mrbkap 2012-10-25 17:01:09 +02:00
Bobby Holley
c14f6e265e Bug 797821 - Decide whether we need to trace DOM stuff based on more relevant information than JSCLASS_XPCONNECT_GLOBAL. r=mrbkap
This will let us rip out that flag.
2012-10-25 17:01:08 +02:00
Bobby Holley
19e17dc08a Bug 797821 - Remove FindInJSObjectScope and friends. r=mrbkap
\o/
2012-10-25 17:01:08 +02:00
Bobby Holley
05aea8b835 Bug 797821 - Replace usage of XPCWrappedNativeScope::FindInJSObjectScope(ccx, obj) with GetObjectScope(obj). r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
18d529092b Bug 797821 - Create XPCWrappedNativeScopes immediately after global creation. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
36cb31b1bc Bug 797821 - Remove xpc_NewSystemInheritingJSObject and cached mJSPrototypeObject. r=mrbkap
xpc_NewSystemInheritingJSObject is totally unnecessary now that the system bit
has been removed (\o/). Furthermore, the mJSPrototypeObject optimization is
really dumb. it complicates tracing significantly, and we don't actually use it
in any critical places: XPCWrappedNative and slim wrapper creation use a different
prototype, so this is used only for the creation of tearoff reflectors (seldom/
never used), XPCWrappedNativeProto objects, and the nohelper prototype on the
scope (once per scope).

We could actually just pass NULL to JS_NewObject and let it deal. However, this
would actually trigger a dynamic lookup for the prototype object of the
associated JSClass, which isn't what we want. So we just explicitly pass in
Object.prototype.
2012-10-25 17:01:08 +02:00
Bobby Holley
ddca166933 Bug 797821 - Remove unused aNative parameter to XPCWrappedNativeScope creation. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
9e5696d887 Bug 797821 - Stop storing mScriptObjectPrincipal. r=mrbkap 2012-10-25 17:01:08 +02:00
Bobby Holley
703a9798c9 Bug 797821 - Stop making nsXBLDocumentInfo and nsXULPrototypeDocument globals with XPConnect. r=mrbkap
We already weren't creating a scope for them. They're generally pretty isolated
and are just used for holding functions that get cloned into other scopes.
Apparently mccr8 once found an edge from an nsXULPrototypeDocument scope into
another scope, but I don't think that should really break anything.
2012-10-25 17:01:07 +02:00
Bobby Holley
d6ecaf26fe Bug 797821 - Allow compartment privates to be lazily created when using them just for storing about:memory URIs. r=mrbkap
This will allow us to stop making nsXULPrototypeDocument and nsXBLDocumentInfo
globals XPConnect globals.
2012-10-25 17:01:07 +02:00
Bobby Holley
826ce1e16b Bug 797821 - Stop passing wantXrays directly to CreateGlobalObject. r=mrbkap
This can happen after the fact where it needs to.
2012-10-25 17:01:07 +02:00
Bobby Holley
961bc14d2b Bug 797821 - Loosen the CompartmentPrivate contract so that having one does not imply being in the compartment set. r=mrbkap
The compartment set goes away in later patches anyway. This is to allow us to
create compartment privates for things like XUL prototype document globals
without having to put them in the set and trace expandos and such.
2012-10-25 17:01:07 +02:00
Bobby Holley
3b50be121c Bug 797821 - Simplify the call signature for XPC::CreateGlobalObject. r=mrbkap 2012-10-25 17:01:07 +02:00
Bobby Holley
78e479ed30 Bug 797821 - Remove CreateNewGlobal. r=mrbkap
It doesn't do anything useful at this point.
2012-10-25 17:01:07 +02:00
Bobby Holley
b04ca561e8 Bug 797821 - Remove the dependency of XPCWrappedNativeScope instantiation on XPCCallContext and expose the raw constructor. r=mrbkap 2012-10-25 17:01:07 +02:00
Benjamin Peterson
100afe236c Bug 804857 - Start with a small compression buffer. r=njn 2012-10-24 16:15:48 -07:00
Benjamin Peterson
13a625e950 Bug 804857 - Allocate memory in the compression thread and have its clients check for error. r=njn 2012-10-24 16:15:48 -07:00
Benjamin Peterson
751b0aad58 Bug 804558 - Make JSScript::loadSource GC-safe. r=terrence 2012-10-24 13:51:28 -07:00
Bobby Holley
39688c3cc6 Bug 801576 - Android bustage fix. r=me 2012-10-24 14:18:39 +02:00
Bobby Holley
add541742c Bug 801576 - Add tests for the same-origin policy. r=mrbkap 2012-10-24 12:04:19 +02:00
Bobby Holley
32af1d27d9 Bug 801576 - Forbid cross-origin access to the History object. r=mrbkap 2012-10-24 12:04:18 +02:00
Ryan VanderMeulen
f514f1397a Merge m-c to inbound. 2012-10-23 22:41:34 -04:00
Ryan VanderMeulen
ce44cdfbd3 Merge the last PGO-green inbound changeset to m-c. 2012-10-23 22:28:33 -04:00
Kannan Vijayan
1126411f71 Bug 795801 - IC StrictPropertyOp setters in IonMonkey. (r=dvander) 2012-10-23 22:18:11 -04:00
Olli Pettay
b0e3180948 Bug 780770, nsThread::SetMainThreadObserver, r=bz+bholley 2012-10-24 01:26:36 +03:00
Benjamin Peterson
b6d6f226f0 No bug: Make constructor explicit. rs=Waldo 2012-10-23 15:37:58 -07:00
Benjamin Peterson
1adbee29f9 Bug 804404 - Set source hook in XPC initialization. r=bz 2012-10-23 18:09:00 -04:00
Brian Hackett
554176192e Keep the interpreter stack synced for GC scanning, bug 781657. r=billm 2012-10-23 09:20:56 -07:00
Brian Hackett
fcff772478 Propagate callee 'this' types more often, bug 788822. r=jandem 2012-10-23 09:05:27 -07:00
Brian Hackett
6fcba53d19 Don't get confused by unreachable opcodes before loop headers when picking chunk boundaries, bug 781859. r=jandem 2012-10-23 07:45:34 -07:00
Jonathan Kew
df166e73aa backout 4c79da81e6fc (bug 800785) on suspicion of burning the Linux PGO builds 2012-10-23 11:57:45 +01:00
Chuck Lee
ddac623d6a Bug 780142 - Rewrite MozWifiConnectionInfoEvent. r=smaug 2012-10-22 18:18:26 +08:00
Chuck Lee
a7168749c9 Bug 780142 - Rewrite WifiStatusChangeEvent. r=smaug 2012-10-22 17:17:18 +08:00
Makoto Kato
32f135c952 Bug 800785 - unnecessary PGO for js shell. r=ted 2012-10-23 16:42:19 +09:00
Till Schneidereit
749af984d3 Bug 784400 - adapt GlobalObject::hasIntrinsicFunction to changes in self-hosting initialization. r=luke
--HG--
extra : rebase_source : 6afbfcc0264e44bf7a740635e47ee1ea6ce23655
2012-10-21 20:48:06 -07:00
Gregory Szorc
3e476bcb7f Bug 800614 - Require Python 2.6 to build the tree; r=ted 2012-10-22 12:24:40 -07:00
Nick Hurley
31985d7fa6 Bug 536324 part 3 - Change consumers of nsIChannel. r=sworkman 2012-10-22 10:51:07 -07:00
Andres Hernandez
e456defc7f Bug 769298 - Avoid logging script errors coming from private windows in the global error console 2012-10-19 15:52:21 -06:00
Boris Zbarsky
2c0d8809e7 Bug 801712 part 2. Switch ImageData to WebIDL bindings. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
ad8c0e8444 Bug 801712 part 1. Add the WebIDL binding API to ImageData. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
5592281fbe Bug 801723. WebIDL binding objects may not have classinfo even if they're nsISupports. r=peterv 2012-10-22 13:08:51 -04:00
Rafael Ávila de Espíndola
5d094213a0 Bug 803707 - Don't assume pointers are 64 bits. r=benjamin. 2012-10-22 09:07:04 -04:00
Bobby Holley
dc33cae831 Bug 789224 - Separate certificate principals out from CAPS. r=dveditz
There's no longer any reason why "certificate principals" need to be principals at all.
I tried to rip them out entirely, but it looks like they're still used vestigially at XPI
install time to display author information. But there's no reason that they have to be
porkbarreled into the security-critical objects that we pass around all over the place.
So let's make them their own deal.

I was tempted to call them "certificate holders", but that would involve renaming methods and
cause more compat fuss than necessary.

--HG--
rename : caps/idl/nsISignatureVerifier.idl => security/manager/ssl/public/nsISignatureVerifier.idl
2012-10-22 08:29:56 +02:00
Bobby Holley
9f03d6c96b Bug 789224 - Remove capability manager stuff in nsScriptSecurityManager. r=mrbkap 2012-10-22 08:29:55 +02:00
Justin Wood
a08aa7e3fc Merge backout of Bug 800613 2012-10-22 00:43:31 -04:00
Justin Wood
6c551d0d0f Backout bug 800613 (09dc2dc1fc9f) due to l10n breakage 2012-10-22 00:42:56 -04:00
Peter Van der Beken
9f37e05526 Fix for bug 803872 (Remove remaining references to the dom.new_bindings pref). r=Ms2ger. 2012-10-21 13:06:55 +02:00
Ms2ger
ff1fb0488f Bug 796903 - Part b: Remove classinfo from DOMImplementation; r=bz 2012-10-21 09:38:41 +02:00