Commit Graph

22496 Commits

Author SHA1 Message Date
Eric Faust
30183ad75c Bug 792166 - Fix incorrect handling of |delete| in common accessor checking. (r=djvj) 2012-09-26 19:02:56 -04:00
Terrence Cole
7b707cf94e Bug 793823 - Exactly root Bindings when on the stack; r=billm
Currently, we rely on the marking of the origin script to keep the stack
binding's data live. This will not work with a moving GC.
2012-09-24 15:18:34 -07:00
Steve Fink
644ee82385 Bug 794494 - Clear the right buffer link when pruning and reversing the list of ArrayBufferViews. r=billm 2012-09-26 14:24:37 -07:00
Sean Stangl
1e3fd51930 Bug 794025 - Detect IC purging in JM generateNativeStub(). r=dvander 2012-09-26 14:53:16 -07:00
Terrence Cole
daa912f873 Bug 794365 - Correctly finalize StaticStrings; r=billm
The StaticStrings were getting kept alive past the final GC.  This did not
matter before because we never needed to free external characters.  With
uninlining this assumption is no longer true.

--HG--
extra : rebase_source : 6d40aa130c582366f2effe16b5af67157824e37f
2012-09-26 14:17:55 -07:00
Terrence Cole
68f1a7379e Bug 791322 - Move Rooted to js:: namespace; r=billm
These should not be part of the public API.

--HG--
extra : rebase_source : 00a69ee54f06e3f557cd9ec2f3b059df10aa32df
2012-09-24 18:08:22 -07:00
Bill McCloskey
b30e41fd01 Bug 787856 - Use lazy protos for cross-compartment wrappers (r=bholley) 2012-09-03 16:42:22 -07:00
Bill McCloskey
2e75082f62 Bug 787856 - Convert JS_GetPrototype to support lazy protos (r=bhackett) 2012-09-03 16:42:17 -07:00
Bill McCloskey
88913893e5 Bug 787856 - Convert js::GetObjectProto to support lazy protos (r=bhackett) 2012-09-03 16:42:10 -07:00
Bill McCloskey
8d91040b33 Bug 787856 - Initial support for lazy prototypes (r=bhackett) 2012-09-26 09:49:20 -07:00
Kannan Vijayan
8adaf120df Bug 790051 - Add IonMonkey OOLNativeGetterExitFrame to support callouts to native getters from OOL IC stubs. (r=jandem) 2012-09-26 12:05:50 -04:00
Makoto Kato
10e687271c Bug 793583 - Remove WINCE related code from js/src. r=luke 2012-09-26 15:48:41 +09:00
Makoto Kato
038020cd78 Bug 697064 - Remove MOZ_CHECK_HEADERS(mmintrin.h) from configure.in. r=khuey 2012-09-26 15:48:29 +09:00
Ryan VanderMeulen
dbf93bfaec Backout bug 792215 for suspected Windows m-oth leaks.
CLOSED TREE
2012-09-25 22:40:56 -04:00
Bill McCloskey
e79a3db5c5 Bug 779073 - Don't treat GC verifier as an incremental GC (r=terrence) 2012-09-25 17:04:17 -07:00
Ehsan Akhgari
697bec41a5 Bug 793294 - Implement AudioBuffer; r=bzbarsky,smaug
This is the full implementation of the AudioBuffer object.  There are
two ways to create these objects from an audio context and this patch
implements only one of them.

The construction of the AudioBuffer object is a two step process: the
object should be created with operator new first, and then
InitializeBuffers should be called on it.  InitializeBuffers is
fallible, because it uses the JS API to create the underlying typed
arrays, but that's fine, since the length of the buffers comes from web
content, and we don't want to use infallible allocations for those
anyways.

We hold on to the JS objects from the C++ implementation, and trace
through all of those objects, so that a GC does not kill those object
without us knowing.

The buffer should be possible to manipulate from both C++ and JS, and
the C++ object probably needs to support a set of methods for the C++
callers at some point.
2012-09-25 17:58:50 -04:00
Kannan Vijayan
72b7fa4f82 Bug 792215 part 2. Convert old proxy bindings to JSNative getters and setters. r=peterv,ejpbruel 2012-09-25 14:44:40 -04:00
Boris Zbarsky
84dda56591 Bug 792215 part 1. Convert quickstubs to using JSNative getters and setters. r=peterv 2012-09-25 14:44:40 -04:00
Benjamin Peterson
9108040db8 Bug 794065 - Fix array literals with spread and holes at the end. r=jorendorff 2012-09-25 14:30:37 -04:00
Steve Fink
19c3c04632 Bug 762908 followup - only null out window.SpecialPowers when window exists. r=terrence
--HG--
extra : rebase_source : 4a894ddf5036e42870573db212e056012f35829e
2012-09-25 11:17:47 -07:00
Steve Fink
832bf5c291 Bug 789295 - Add special multi-view array buffer sweep pass to eliminate finalizers and thus allow background sweeping. r=billm
--HG--
extra : rebase_source : f71b9546ad3e511fb2a32d8bc24f39ec70e2f630
2012-09-18 09:58:36 -07:00
Steve Fink
8a76dabf44 Bug 789295 - Make a BufferView superclass for ArrayBufferView types to enforce common slot numbers. r=billm
--HG--
extra : rebase_source : ac621999a9bc45bda2ea3c379a887a1dc5764772
2012-09-11 16:47:22 -07:00
Steve Fink
055c1fba2c Bug 789295 - Reformat class method declarations to look like rest of spidermonkey. r=billm
--HG--
extra : rebase_source : 3dedf219ae696b70136d83888522dda95845a578
2012-09-18 09:58:36 -07:00
Steve Fink
d9dd6003bf Bug 791573 - Finalize ArrayBuffers in the background. r=billm
--HG--
extra : rebase_source : 15fdc10c2208b0d49b822ac1ac1d5e78682bc697
2012-09-18 09:58:36 -07:00
OHZEKI Tetsuharu
b810714776 Bug 791944 - Use Object.defineProperty() instead of __defineGetter__ in XPCOMUtils.defineLazyGetter(). r=mak77 2012-09-25 11:04:25 -04:00
Jan de Mooij
94b8aa3d7d Bug 792944 - Idempotent caches should reject singleton properties that require monitoring. r=dvander 2012-09-25 16:16:46 +02:00
Benjamin Peterson
e4341d9607 Bug 793513 - Only set properties on the rest array if it doesn't have unknown ones. r=jandem 2012-09-25 09:21:40 -04:00
Benoit Jacob
2249060a44 Bug 750862 - Implement WEBGL_compressed_texture_pvrtc - r=jgilbert 2012-09-25 08:49:28 -04:00
Benoit Jacob
d4fa48d92a Bug 790712 - Implement WEBGL_compressed_texture_atc - r=jgilbert 2012-09-25 08:49:28 -04:00
Mike Hommey
2729e13909 Bug 792685 - Add a way to have automagically inherited variable definitions in Makefiles. r=ted 2012-09-25 14:47:20 +02:00
Mike Hommey
fb05de0176 Bug 793634 - Force builds to be compatible with gtk 2.18/glib 2.22. r=karlt 2012-09-25 14:47:18 +02:00
Ted Mielczarek
8196a1cdce bug 792391 - Add a TARGET_LOCAL_INCLUDES variable to be used for compiling target sources only, not host sources. r=glandium 2012-09-20 09:46:04 -04:00
Nicholas Nethercote
b7796202d5 Bug 793588 (part 2) - Exactly root jsiter.{cpp,h}. r=sfink.
--HG--
extra : rebase_source : ffdd302bbad433d6a67e7b7ff8b631600c4a3594
2012-09-23 20:53:27 -07:00
Nicholas Nethercote
751ccd5f33 Bug 793588 (part 1) - Remove vacuous JSObject* parameter to Enumerate() et al. r=sfink.
--HG--
extra : rebase_source : 04aa15327f3040b19080dd8be5c169eef56ca4ca
2012-09-20 23:42:44 -07:00
David Anderson
1797f8a7f2 Use js_free on fresh slots instead of js_delete (bug 793385, r=billm). 2012-09-24 14:41:00 -07:00
David Anderson
6d84c2ecbd Fix slot computation bug in newCallObject (bug 793257, r=luke). 2012-09-24 13:48:21 -07:00
Bobby Holley
9f03f90fb7 Bug 792036 - Automated fixups. r=mccr8
find /files/mozilla/build/d/_tests/testing/mochitest/tests/ | egrep "\.(xhtml|html|xml|js)$" | grep -v SimpleTest | grep -vi mochikit | grep -v simpleThread | grep -v test_ipc_messagemanager_blob.html | grep -v "indexedDB/test" | xargs grep -l Components |  xargs grep -L enablePrivilege | perl -pe 's#.*mochitest/tests/##' | xargs perl -p -i.bakkk -e 's/Components\.interfaces(\s|;|\.|\[)/SpecialPowers\.Ci$1/g, s/SpecialPowers\.wrap\(Components\)\.(.)(lasses|tils|nterfaces|esults)/SpecialPowers.C$1/g, s/(?<![\.a-zA-Z])Components/SpecialPowers\.Components/g, s/window\.Components/window\.SpecialPowers\.Components/g'
2012-09-24 14:46:29 +02:00
Bobby Holley
7f912ddc79 Bug 792036 - Fix up tests to avoid relying on the existence of window.Components (MANUAL). r=mccr8
These are the manual fixes that the ensuing auto-generation can't deal with. Some of them
just fix up formatting (such as Components.\nFoo, so that subsequent auto-generation can
work better).
2012-09-24 14:46:28 +02:00
Bobby Holley
2edff93f2c Bug 792036 - Fix sandbox xpcshell tests. r=gabor
I want gabor to look at these.
2012-09-24 14:46:28 +02:00
Bobby Holley
515994bfb3 Bug 792036 - Add a SpecialPowers API to provide access to the Components object in various forms. r=mrbkap,ted
Now that window.Components is no longer acccessible to page JS, we need a way
to access it in mochitests. So this patch provides SpecialPowers.Components,
which is the bonafide Components object for the window upon which SpecialPowers
is defined. It also provides SpecialPowers.{Cc,Ci,Cr,Cu}, which are SpecialPowers-wrapped
versions of their respective sub-objects (with the exception of Ci, which is unwrapped).
2012-09-24 14:46:27 +02:00
Bobby Holley
847e24f9c1 Bug 792036 - Factor out glue code to get the JS Components object for a scope. r=mrbkap 2012-09-24 14:46:27 +02:00
Bobby Holley
98ac4b534a Bug 792036 - Refactor AttachComponentsObject API to allow an explicit target. r=mrbkap
The aGlobal API is currently unnecessary, since it should always be equal to the global obtained from the scope. But we'll want to manually specify the target object in subsequent patches, so make it an optional argument that's currently never passed.
2012-09-24 14:46:27 +02:00
Bobby Holley
6fdb3137fc Bug 783702 - Call through to get() for hasPrototype() path in getElementIfPresent(). r=ejpbruel 2012-09-24 12:05:50 +02:00
Nicholas Nethercote
4055fa6ad2 Bug 793086 (part 2) - Remove jsproto.tbl. r=jwalden.
--HG--
extra : rebase_source : b72b37267e5f26f2ab1e52d90673745124c760ae
2012-09-20 23:00:08 -07:00
Nicholas Nethercote
db6466781a Bug 793086 (part 1) - Convert JSClassInitializerOp parameter to HandleObject. r=sfink.
--HG--
extra : rebase_source : e8d20aad8abc0bf85df1f05e90be1ce46e8f0125
2012-09-20 22:17:49 -07:00
Bill McCloskey
1f956a0bc4 Bug 788362 - 9,440 bytes in 107 blocks are definitely lost as detected by Valgrind with selectforgc. r=jcoppeard 2012-09-23 21:30:30 -04:00
Shu-yu Guo
8a60083c49 Bug 789812 - Change immutability behavior to match that of frozen Objects (r=jwalden) 2012-09-21 21:06:12 -07:00
David Anderson
7ed1ce6cf1 Invalidate scripts when forbidding compilation (bug 792552, r=jandem). 2012-09-21 16:41:23 -07:00
Jim Blandy
415825c0c7 Bug 790117: Move external profiler control functions to their own source file in js/src/builtin; drop VTune. r=sfink
The VTune support needed to be updated for changes to the VTune control API; that work is bug 675098.
2012-09-21 16:36:13 -07:00
Jim Blandy
04963c0cd1 Bug 791157: Make sure the shell's 'evaluate' function properly restores the JSContext options. r=jorendorff 2012-09-21 16:10:30 -07:00
Steve Fink
14ff8a418d Bug 748309 - Test structured clone handling of cyclic graphs. r=jorendorff 2012-09-21 13:10:28 -07:00
Steve Fink
92de81b7b2 Bug 748309 - Structured clone should check for duplicates of all objects. r=jorendorff 2012-09-04 14:09:48 -07:00
Steve Fink
91dd75fd04 Bug 791574 - Use a Unix-compatible list2cmdline. r=terrence.
Sadly, subprocess.list2cmdline only seems to do something sensible for Windows, which I find rather bizarre. This patch fixes the problem where -s can give you something like

  ./js -e option(\'allow_xml\'); -f ...

which is totally invalid in bash.
2012-09-18 09:58:31 -07:00
Ehsan Akhgari
5fe78337ca Merge the landing of nsresult-enum on mozilla-central 2012-09-21 14:49:57 -04:00
Chris Peterson
21cd211b2f Bug 778980 - Part 2: Fix gcc -Wconversion-null warnings in js. r=dmandelin
--HG--
extra : rebase_source : 2988b953db883b67ec119e2c4f2c3a7a6bda82a0
2012-09-14 12:00:05 -07:00
Ehsan Akhgari
66eeeb5eb7 Merge mozilla-central into mozilla-inbound 2012-09-21 13:34:50 -04:00
Nicholas Nethercote
126f5faa53 Bug 791607 - Remove unnecessary |#include <new>| directives. r=dmandelin. 2012-09-20 20:42:43 -07:00
Nicholas Nethercote
4cbf03c6a9 Bug 790424 (part 2) - Remove ParseContext::functionList and FunctionBox::{siblings,kids}. r=jimb.
--HG--
extra : rebase_source : 54dfebcaeb3b5ce3c335e9bc6e9dd6ea085cf8d2
2012-09-12 18:50:39 -07:00
Nicholas Nethercote
46b59201b8 Bug 790424 (part 1) - Set strict mode on functions in default arguments more lazily. code=benjamin,nnethercote. r=nnethercote.
--HG--
extra : rebase_source : f386bd1f17b850f421e3c914e1b31e0a25c82119
2012-09-12 18:50:37 -07:00
Marty Rosenberg
aebddeaac7 GCthings don't have a single tag, so mutate the condition to actually do a set-test. (bug 792239, r=dvander) 2012-09-20 17:47:13 -04:00
Phil Ringnalda
8eac6cec70 Back out 1e7050c52cb9 (bug 792850), 776f7325952b (bug 705047), 2e1be0680e70 (bug 733501), 6adef296963c (bug 791775), b8397781f862 (bug 792391) for WinXP hangs and suspicion of breaking Android stacks 2012-09-20 14:38:14 -07:00
Marty Rosenberg
ed71b1690e Qualcomm's snapdragon does not interpret "push sp" as a valid instruction, so don't emit it. (bug 791462, r=dvander) 2012-09-20 23:38:55 -04:00
Terrence Cole
4ae2374230 Bug 756628 - OOM failure with oom-after; r=jonco
On the following testcase: |js -e 'const libdir = "js/src/jit-test/lib/";'
-A 6266 -f js/src/jit-test/tests/pic/grandproto.js|.  Appears to be a simple
missing allocation check.
2012-09-19 15:06:51 -07:00
Ted Mielczarek
1f146a51ad bug 792391 - Add a TARGET_LOCAL_INCLUDES variable to be used for compiling target sources only, not host sources. r=glandium
--HG--
extra : rebase_source : f1a0b2f6f8051f7d274e38d458c6e426c913470b
2012-09-20 09:46:04 -04:00
Ehsan Akhgari
a615c79e81 Bug 777292 - Make sure that the Components.results values are interpreted as unsigned integers; r=bholley 2012-09-20 09:11:20 -04:00
Joel Maher
c3c481579d Bug 762908 - Rip enablePrivilege out of spidermonkey tests. r=ted
--HG--
rename : testing/mochitest/specialpowers/Makefile.in => testing/specialpowers/Makefile.in
rename : testing/mochitest/specialpowers/chrome.manifest => testing/specialpowers/chrome.manifest
rename : testing/mochitest/specialpowers/components/SpecialPowersObserver.js => testing/specialpowers/components/SpecialPowersObserver.js
rename : testing/mochitest/MockFilePicker.jsm => testing/specialpowers/content/MockFilePicker.jsm
rename : testing/mochitest/tests/SimpleTest/MozillaLogger.js => testing/specialpowers/content/MozillaLogger.js
rename : testing/mochitest/tests/SimpleTest/SpecialPowersObserverAPI.js => testing/specialpowers/content/SpecialPowersObserverAPI.js
rename : testing/mochitest/specialpowers/content/specialpowers.js => testing/specialpowers/content/specialpowers.js
rename : testing/mochitest/tests/SimpleTest/specialpowersAPI.js => testing/specialpowers/content/specialpowersAPI.js
rename : testing/mochitest/specialpowers/install.rdf => testing/specialpowers/install.rdf
rename : testing/mochitest/specialpowers/jar.mn => testing/specialpowers/jar.mn
2012-09-20 09:06:50 -04:00
Gabor Krizsanits
3f2b789a0b Bug 785096: part3: Removing ccx from codegen/qsgen. r=bholley 2012-09-20 15:04:28 +02:00
Gabor Krizsanits
8d1cf92e96 Bug 785096 - part2: Removing XPCCallContext dependency from XPCVariant; r=bholley 2012-09-20 15:03:28 +02:00
Gabor Krizsanits
7ff94f298b Bug 785096 - part1: Moving dom string cache from XPCCallContext to XPCJSRuntime. r=bz 2012-09-20 15:01:37 +02:00
Ms2ger
93d99ce749 Merge m-c to m-i. 2012-09-20 13:25:53 +02:00
Ms2ger
1e7015f897 Merge PGO-green changeset from m-i to m-c. 2012-09-20 11:51:47 +02:00
Shu-yu Guo
1efc934da5 Bug 792605 - Replace isObject check with NonNullObject; refactor reporting errors in ParallelArray ops (r=luke) 2012-09-20 02:26:55 -07:00
Shu-yu Guo
58bb1667ef Bug 791445 - Propagate errors correctly in ParallelArray debug options (r=jorendorff) 2012-09-20 02:26:53 -07:00
Gervase Markham
d29fc4925e Bug 792028 - Update version_win.pl files and RPM spec file to refer to MPL 2. r=khuey. 2012-09-20 10:19:39 +01:00
Ms2ger
10e373a3de Bug 776239 - Unpref XHR bindings; r=bz 2012-09-20 09:55:37 +02:00
Ms2ger
1cee7fe10d Bug 792474 - Don't JS_ASSERT in xpconnect; rs=bholley 2012-09-20 09:55:37 +02:00
Ms2ger
e973046355 Bug 776243 - Unpref WebGL context bindings; r=peterv 2012-09-20 09:55:36 +02:00
Ms2ger
e37e5c980c Bug 791566 - Update old new proxy bindings to BaseProxyHandler::hasInstance changes; r=terrence 2012-09-20 09:55:36 +02:00
Mike Hommey
6540907667 Bug 787184 - Use generic install/copy rule in target_libs.mk. r=ted 2012-09-20 09:52:12 +02:00
Marty Rosenberg
f86a750c05 Ensure that branches that can be toggled are not used as pool guards (bug 792510, r=dvander) 2012-09-20 02:33:14 -04:00
Bobby Holley
2177137c1f Bug 790905 - Replace no-op principal check with something real. r=luke
This would have caught this bug.
2012-09-19 11:15:24 +02:00
Gabor Krizsanits
56f2a0f30d Bug 791845 - mozMatchesSelectorStub should return false on error. r=bholley 2012-09-19 10:53:42 +02:00
Nicholas Nethercote
3c11b61224 Bug 791611 (part 2) - Remove unnecessary |script| arg to TypeCompartment::newTypeObject(). r=sfink.
--HG--
extra : rebase_source : 793ff656d8e5e12988a1fb77b80fb7f7271118f2
2012-09-18 21:04:07 -07:00
Nicholas Nethercote
082ab0b34b Bug 791611 (part 1) - Exactly root most JSObjects in jsinfer.cpp. r=terrence.
--HG--
extra : rebase_source : 1b39f0220a1f0ec0f8633b6a0aa5685f1d3a2c02
2012-09-16 16:32:02 -07:00
Jan de Mooij
ab06fe89b0 Bug 789420 - Don't optimize bitwise ops if one of the operands is an object. r=dvander 2012-09-20 08:55:30 +02:00
Nicholas Nethercote
18044f737e Bug 790146 - Neaten up some JSScript map handling. r=jorendorff. 2012-09-10 23:03:00 -07:00
Luke Wagner
551bcf08d2 Bug 792235 - rm JS_SuspendRequest (r=mrbkap)
--HG--
extra : rebase_source : 63484578f26b009c1c6dc555c736aaa1b71d1e4a
2012-09-04 14:43:25 -07:00
Terrence Cole
b4fb1d5302 Bug 792218 - Get more jsreftests green on the rooting analysis; r=sfink
This adds correct rooting of several JSScript* and UncachedCallResult that are
blocking jsreftests from passing in root analysis mode.  Additionally, this
removes the unused implicit TlsRuntime constructor for Rooted: callers should
pass this manually so that they are easier to track.
2012-09-12 16:09:04 -07:00
Sean Stangl
afa8318625 Bug 792234 - Remove erroneous folding for MDiv. r=dvander 2012-09-18 15:31:58 -07:00
Luke Wagner
b8fcde43bf Bug 792237 - don't expose outstanding request count, just whether a context is active (r=mccr8)
--HG--
extra : rebase_source : 319ebfef9b1212619f9d7b6132c326587cc7625d
2012-09-04 15:22:05 -07:00
Sean Stangl
2cb0bdb037 Bug 789300 - Properly detect NaN truthiness. r=dvander 2012-09-18 14:18:38 -07:00
Nicholas Nethercote
9360dbe970 Bug 747202 - Separate and clean up JaegerMonkey's and IonMonkey's memory reporting. r=dvander. 2012-09-19 18:16:49 -07:00
Terrence Cole
8c13717d47 Bug 785551 - Remove an orphaned variable: r=Waldo
--HG--
extra : rebase_source : 39b2cd075977cd5ae13d4055fda2658a8cb2cede
2012-09-19 17:00:03 -07:00
Luke Wagner
93b864f871 Bug 786801 - Fix perf regression from adab1fdcfe0a by using currentScript again (r=jorendorff)
--HG--
extra : rebase_source : e04b138fa3f68ec893e546a601318923b6655aff
2012-09-19 15:35:42 -07:00
Terrence Cole
938043a087 Bug 785551 - Do not allow inline JSString chars in the frontend; r=luke
We need direct access to jschar*s in the frontend (and some other places) for
speed, but if these pointers are inlined into JSStrings then a GC may invalidate
them.  This patch ensures that we uninline JSStrings before they enter any of
these regions.

--HG--
extra : rebase_source : ddf62ad2a47b522aa9157be8bd0643022b20909b
2012-08-28 10:28:19 -07:00
Sean Stangl
e38940d2ab Bug 791589 - Mark the ArgumentsRectifier in visitApplyArgsGeneric(). r=mjrosenb 2012-09-19 15:28:16 -07:00
Ehsan Akhgari
e53b0b3938 Bug 777292 - Make sure that the Components.lastResult is interpreted as unsigned integers; r=bzbarsky 2012-09-21 14:45:57 -04:00
Jim Blandy
50be32e71d Bug 781439: Trim js/src/jit-test/tests/debug/Environment-find-06.js, and remove assertions. r=luke
slotCount() is O(n) on BlockObjects, so that, when used from a loop, those
assertions brought about quadratic behavior. The test creates 'let' blocks
with thousands of bindings, making the quadratic behavior show.

The assertions are unnecessary, as getSlotRef and setSlot do their own
bounds checking. I believe the test can be just as effective with smaller
'let' blocks.
2012-09-18 11:31:15 -07:00
Jan de Mooij
4f82ddcd0a Bug 792001 followup - Pass jschar to hasUnit/getUnit. r=pierron on IRC 2012-09-18 17:04:45 +02:00
Jan de Mooij
c3d124d9e1 Bug 792001 - Fix race condition with inlined String.fromCharCode. r=pierron
--HG--
extra : rebase_source : 275c53293443fec806ad8cf775173d9fdff698ab
2012-09-18 16:11:05 +02:00