Commit Graph

22413 Commits

Author SHA1 Message Date
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
Jason Orendorff
0fcc6bf664 Bug 788356 - Fix memory leak in evaluate(). JS shell only; this code is not part of the browser. r=Waldo. 2012-09-18 06:03:23 -05:00
Jason Orendorff
a03774931c Bug 789239 - Unravel 30-line if condition in Parser.cpp. Part 2 - Rewrite IsValidForStatementLHS using early returns. r=Waldo. 2012-09-18 06:03:22 -05:00
Jason Orendorff
77138fa36b Bug 789239 - Unravel 30-line if condition in Parser.cpp. Part 1 - Move the condition into a helper function. r=Waldo. 2012-09-18 06:03:22 -05:00
Jason Orendorff
f5d02cae64 Bug 728079 - "Assertion failure: pn2->pn_u.binary.iflags & 0x1" with JS 1.7, for-of loop, and destructuring. r=Waldo.
--HG--
extra : rebase_source : c395a34587756bcc5e418e2ed04ec9d055ab230d
2012-09-13 07:56:52 -05:00
Jeff Walden
76a7d750ba Bug 790349 - Convert all fooAtom uses to simply foo. r=jorendorff 2012-09-11 10:32:33 -07:00
Jeff Walden
3ca93096a0 Bug 790349 - Make JSAtomState store FixedHeapPtr<PropertyName> so that cached-name uses don't have to be rooted. r=jorendorff 2012-09-10 20:42:08 -07:00
Jeff Walden
9199ae6951 Fix all clang warnings introduced by the Ionmonkey landing (and one or two predating it). No bug, r=dvander over IRC
--HG--
extra : rebase_source : 60d83d511c3e1cb7c1673f5c5e7800996716fcc1
2012-09-17 18:02:29 -07:00
Jeff Walden
ce22e935f0 Bug 790349 - Allow atoms to be referred to by |cx->names().foo| where |foo| is the text of the atom (except in cases where the text of the atom isn't a C++ identifier). r=jorendorff
--HG--
extra : rebase_source : dcd3f2af4b9e9f9ea0fc98cd4f5ad3559cde4358
2012-09-10 13:27:19 -07:00
Jeff Walden
de64264fdd Bug 790349 - Define keywords with a higher-order macro. r=jorendorff
--HG--
extra : rebase_source : 728450bd46473d7d741c119ecfcf4c3c3f98cbad
2012-09-10 13:27:18 -07:00
Jeff Walden
a546087964 Bug 789635 - Clean up JSAtomState so that all atom fields are macro-defined, and move the atoms set into JSRuntime directly. r=jorendorff
--HG--
extra : rebase_source : ed461a1092fde477a199499e4519885598be7079
2012-09-06 13:48:40 -07:00
Jeff Walden
4a03fff300 Bug 789635 - Convert the prototype list into a higher-order macro, to facilitate easier use of it in other higher-order macros. r=jorendorff
--HG--
extra : rebase_source : 07457587091f60e788a8bddf577514069177b217
2012-09-07 14:42:33 -07:00
Nicholas Nethercote
8ec35ae331 Bug 791608 (part 6) - Fix compile warnings about ObjectImpl::writeBarrierPre(). r=jwalden.
--HG--
extra : rebase_source : 57115245e52573641978199620c6b5abb6528f79
2012-09-17 17:20:00 -07:00
Nicholas Nethercote
f89131c7a7 Bug 791608 (part 5) - Fix compile warning about signed/unsigned comparison. r=jwalden.
--HG--
extra : rebase_source : a8b8c61addc606a0d17520f3cfac18762836c164
2012-09-17 17:18:32 -07:00
Nicholas Nethercote
8faad9e827 Bug 791608 (part 4) - Fix compile warnings about ObjectImpl::getClass(). r=jwalden.
--HG--
extra : rebase_source : dc15218ede7135a3487cb31997e532abccd0d256
2012-09-17 17:16:57 -07:00
Nicholas Nethercote
e0b4a1beaa Bug 791608 (part 3) - Fix compile warnings about JSContext::{enter,leave}Compartment(). r=jwalden.
--HG--
extra : rebase_source : 8b184f95cdcff660b9837490e62dbb5c15f267b2
2012-09-17 17:16:23 -07:00
Nicholas Nethercote
ba81fac192 Bug 791608 (part 2) - Fix compile warnings about JSContext::typeInferenceEnabled(). r=jwalden.
--HG--
extra : rebase_source : e086bc6c421b2892cf2648c24a0af798159e98f5
2012-09-17 17:15:54 -07:00
Nicholas Nethercote
bd8bae54c6 Bug 791608 (part 1) - Fix compile warnings about JSObject::isFunction. r=jwalden.
--HG--
extra : rebase_source : 32e1bd6d65d4c2f6002b40ac0cbdd4955f2ddcdd
2012-09-17 17:11:54 -07:00
Jan de Mooij
77f1f71f9a Bug 779411 - Require use-at-start or fixed registers at call instructions. r=sstangl 2012-09-17 17:16:03 -07:00
Javi Rueda
33e1586046 Bug 530099 - Remove extensions.getMore* preferences. r=dtownsend 2012-09-17 18:42:36 -04:00
Jeff Walden
f0306c6359 Backed out changeset b6855b090307, possible memory leak. r=graphserver
--HG--
extra : rebase_source : f7e5b460f3c96ee74a0ba2abbd122c436e134063
2012-09-17 15:11:24 -07:00
Jeff Walden
1a9be94bdf Backed out changeset 17d36418f4d6, possible memory leak. r=graphserver
--HG--
extra : rebase_source : ce0a13c66211ad536eca08722cf15b2214e0d8da
2012-09-17 15:10:47 -07:00
Jeff Walden
dde78b4799 Backed out changeset 9eadf573bb38, possible memory leak. r=graphserver
--HG--
extra : rebase_source : 06d158261952934bfb60c0cc1ce38e1cbcede53a
2012-09-17 15:07:42 -07:00
Jeff Walden
52c123e54c Backed out changeset 2cdc9370922f, possible memory leak. r=graphserver
--HG--
extra : rebase_source : 465017bdf909f3fa390e2e676b3421a75c6f5b04
2012-09-17 15:06:58 -07:00
Jeff Walden
7816643d7f Backed out changeset cf239b55242a, possible memory leak. r=graphserver
--HG--
extra : rebase_source : 5dc4920582bd2e73e7fa3346ba7b4ec8148a9d0c
2012-09-17 15:06:16 -07:00
Jeff Walden
d79629b328 Backed out changeset d3d8807c6c59, possible memory leak. r=graphserver
--HG--
extra : rebase_source : f1b208bb368083e8685619a5f0e11fb6c2ffd09b
2012-09-17 15:04:21 -07:00
Terrence Cole
0a92ab063e Bug 790836 - Don't mark the fields of IonJSFrameLayout twice; r=pierron
This also skips poisoning stack roots owned by Ion in the rooting analysis.

--HG--
extra : rebase_source : 006079bc3f443bd6630f5a3c32135fbddc279f1d
2012-09-17 11:13:20 -07:00
Jeff Walden
6f6a379cab Bug 790349 - Convert all fooAtom uses to simply foo. r=jorendorff
--HG--
extra : rebase_source : b0b255d242dbb8cef2df3c758bec82e88699ecdd
2012-09-11 10:32:33 -07:00
Jeff Walden
d6e3e21556 Bug 790349 - Make JSAtomState store FixedHeapPtr<PropertyName> so that cached-name uses don't have to be rooted. r=jorendorff
--HG--
extra : rebase_source : f9113497185b3404415603da4fc8c43125d9052c
2012-09-10 20:42:08 -07:00
Jeff Walden
9641f5c879 Bug 790349 - Allow atoms to be referred to by |cx->names().foo| where |foo| is the text of the atom (except in cases where the text of the atom isn't a C++ identifier). r=jorendorff
--HG--
extra : rebase_source : b07052fa40f006d22f0fbd584ab0a28507cae1d3
2012-09-10 13:27:19 -07:00
Jeff Walden
1b2206853c Bug 790349 - Define keywords with a higher-order macro. r=jorendorff
--HG--
extra : rebase_source : 1f8e8e61af6407d4e164c0e8d6a7e29b4358a7dc
2012-09-10 13:27:18 -07:00
Jeff Walden
d892582d8e Bug 789635 - Clean up JSAtomState so that all atom fields are macro-defined, and move the atoms set into JSRuntime directly. r=jorendorff
--HG--
extra : rebase_source : 83316d60be6a58b5a4b51058331068bf68ec0626
2012-09-06 13:48:40 -07:00
Jeff Walden
b89a5856a7 Bug 789635 - Convert the prototype list into a higher-order macro, to facilitate easier use of it in other higher-order macros. r=jorendorff
--HG--
extra : rebase_source : 7adb1efe9f87467767ea498b85182b7e6aa7cf17
2012-09-07 14:42:33 -07:00
Jeff Walden
ebd7f5c29b Bug 790349 - Implement a FixedHeapPtr class to replace raw pointers to GC-managed things, which will implicitly convert to a handle. r=billm
--HG--
extra : rebase_source : 2a0091031ec8f6083aaeda06163d6a063c32e4ac
2012-09-04 10:01:53 -07:00
Jeff Walden
736d91284b Use MOZ_DELETE on the copy/assignment operators for various hash classes. No bug, r=lumpy
--HG--
extra : rebase_source : f9fb08566c17f62c189b1469e3730554b6fbe1ce
2012-09-10 13:27:04 -07:00
Jeff Walden
f7d62e2bcd Tweak an assertion in HashTable.h to use initialized() rather than !null, for clarity. No bug, r=sparky
--HG--
extra : rebase_source : a6110712d528e52323293cdbff4b171c5fda6401
2012-09-10 13:17:55 -07:00
Nicolas B. Pierron
3d1b625fd2 Bug 791122 - IonMonkey, fix bogus DOM exit frame assertion. r=efaust 2012-09-17 10:34:07 -07:00
James Kitchener
1272e4ff62 Bug 730859 - Replace JSAtom with PropertyName in JSOP_DELPROP. r=jandem
--HG--
extra : rebase_source : 10cfedf5457090832910d436b8191e7af8e906b2
2012-09-17 17:19:26 +02:00
Peter Van der Beken
71b55b1f68 Fix for bug 788532 (Add the new DOM bindings API to DOM lists). r=bz.
--HG--
extra : rebase_source : 18e21a786b6a9cc2aeada52ba5ca3a2614cb596b
2012-09-05 22:49:53 +02:00
Ms2ger
8976774677 Bug 787933 - Stop using stdin types in IPC code; r=bsmedberg+cjones sr=cjones 2012-09-17 10:37:20 +02:00
Bill McCloskey
2b5c5c30ba Bug 790865 - Add more compartment assertions (r=terrence) 2012-09-14 17:19:53 -07:00
Bill McCloskey
707b83567c Bug 791371 - IonMonkey: ContextStack::currentScript needs check (r=dvander) 2012-09-14 16:23:43 -07:00
Bill McCloskey
7f4261cbf6 Bug 791376 - Simplify JSObject::swap (r=bholley) 2012-09-14 16:20:04 -07:00
Takanori MATSUURA
003daee28d Bug 790868 - Remove duplicated --disable-ion definition. r=njn 2012-09-14 16:04:47 -04:00
Andrew Quartey
f408860a65 Bug 791091 - Fix build warnings in XPConnect. r=jorendorff 2012-09-14 15:00:01 -04:00
Ehsan Akhgari
46f6a1d616 Bug 579517 follow-up: Remove NSPR types that crept in 2012-09-14 14:55:01 -04:00
Jan de Mooij
4666771c44 Bug 764743 - Port RegExp.exec -> RegExp.test optimization to IonMonkey. r=sstangl 2012-09-14 18:39:53 +02:00
Gary Kwong
5bd546c887 Bug 727223 - Add test, r=me 2012-09-14 08:33:33 -07:00
Jan de Mooij
be14075016 Bug 790108 part 2 - Use AutoValueArray to root argv array. r=terrence 2012-09-14 13:47:43 +02:00
Jan de Mooij
076607a353 Bug 790108 part 1 - Use HandleObject, MutableHandleValue for pop/shift/push stubs. r=dvander 2012-09-14 13:44:15 +02:00
Norbert Lindenberg
1f492e6a0e Bug 784300 - Make self-hosted non-constructor functions not have a prototype. r=tschneidereit 2012-09-13 11:33:00 +02:00
Nicholas Nethercote
dfbdbe81e0 Bug 782802 (part 4) - Still more exact rooting in jsreflect.cpp. r=terrence.
--HG--
extra : rebase_source : 713f1d186fdae009fe3d349f3e6fcb6aebdbfdc9
2012-09-12 22:10:51 -07:00
Nicholas Nethercote
6731efebee Bug 782802 (part 3) - Yet more exact rooting in jsreflect.cpp, enough to turn on exact scanning with the root analysis. r=terrence.
--HG--
extra : rebase_source : 89c6b0ea11cff82b7a13e9667edb5c6a031cb78d
2012-09-12 22:02:10 -07:00
Nicholas Nethercote
5cbcfd2abf Bug 782802 (part 2) - More exact rooting in jsreflect.cpp. r=terrence.
--HG--
extra : rebase_source : 1d34717fb1cda8e83cca3d51ddcb7c75de2bbd07
2012-09-12 16:52:48 -07:00
Nicholas Nethercote
d7044fc17e Bug 782802 (part 1) - Start doing exact rooting in jsreflect.cpp. r=terrence.
--HG--
extra : rebase_source : 6b0d998d7432f9dbcb239197d026f381335faf2f
2012-09-12 16:19:40 -07:00
Gary Kwong
b0d8721394 Bug 791146 - Fix the property name of JS_THREADSAFE in GetBuildConfiguration to 'threadsafe', and remove duplicate JSGC_ROOT_ANALYSIS ifdef block, r=sfink 2012-09-13 17:59:17 -07:00
Sean Stangl
0ebdad196c Bug 790921 - Return on error from patchableCallPreBarrier(). r=dvander 2012-09-13 16:58:47 -07:00
Benjamin Peterson
426ab47193 No bug - tweak comment. r=me DONTBUILD 2012-09-13 19:42:38 -04:00
Eddy Bruel
6f2f95a5cd Bug 791094 - Fix some warnings about inconsistent uses of struct/class; r=sfink 2012-09-13 23:06:22 +02:00
Terrence Cole
c22e05d377 Bug 790782 - Fix initialization of StoreBuffer and Nursery; r=sfink
When initializing the compartment, we need to explicitly disable the StoreBuffer
and Nursery if we are not enabling them.
2012-09-12 15:38:31 -07:00
Terrence Cole
6bfcd79947 Bug 788359 - Remove unused argumentFormatMap and associated API; r=dmandelin
This removes some fiddly code sitting around completely unused and untested.

--HG--
rename : layout/base/tests/chrome/blue-32x32.png => layout/reftests/backgrounds/blue-32x32.png
rename : mobile/android/config/mozconfigs/android-noion/nightly => mobile/android/config/mozconfigs/android/nightly
extra : rebase_source : 68192aba59396a37242ee2aa266621dbea513171
2012-09-04 17:17:21 -07:00
Benjamin Peterson
8f8ef0fd03 Bug 788701 - Decrease the length of the text to match when there is a start position. r=jorendorff 2012-09-13 14:34:33 -04:00
Steve Fink
7ead81e495 Bug 786386 - Add easy way to disable typed array move() method. r=dmandelin 2012-09-13 09:30:17 -07:00
Eddy Bruel
52db8cd7aa Bug 779789 - Turn export and import from reserved keywords into real keywords; r=jorendorff 2012-09-13 15:08:59 +02:00
Jan de Mooij
8abd43e450 Bug 784385 - Fix JSOP_SETPROP to push the original value, not the setter's return value. r=djvj 2012-09-12 20:07:20 +02:00
Nicholas Nethercote
08b9c0e7b7 Backout 04eb40b6fdd0 (bug 788261 part 2) for breaking js1_8_5/extensions/reflect-parse.js.
--HG--
extra : rebase_source : 4acc488de2923d45c9189f62378c3a8907d0c049
2012-09-12 22:10:25 -07:00
Benjamin Peterson
93bfdeaedc Bug 781422 - Give parameters defaults whenever they're undefined. r=jorendorff
--HG--
extra : rebase_source : 76adc4ad8eb99002919489107c15931c56f747d6
2012-09-12 19:17:17 -04:00
Neil Rashbrook
f194ed342b Bug 790737 Tweak epoch date r=glandium 2012-09-12 22:15:25 +01:00
Rafael Ávila de Espíndola
5101e1a9f4 Bug 788276 - Properly check for broken (deprecated) compilers. r=gps.
Check for old gcc versions.
2012-09-12 14:54:40 -04:00
Rafael Ávila de Espíndola
3984de1de8 Bug 788276 - Properly check for broken (deprecated) compilers. r=gps.
Check for old versions of llvm.
2012-09-12 14:48:16 -04:00
Tom Schuster
a6de2b4f37 No bug - Proxy::fun_toString should call the fun_toString handler. r=jorendorff 2012-09-12 19:06:56 +02:00
Jason Orendorff
031d67828c Bug 781343 - Part 2: common up some debug functions in shell/js.cpp. r=jimb.
--HG--
extra : rebase_source : 83946e4ad299b5a1fa8a246156414ca92d76bf84
2012-09-12 11:03:15 -05:00
Jason Orendorff
8ab261f54a Bug 781343 - "Assertion failure: !cx->isExceptionPending()". r=jimb.
--HG--
extra : rebase_source : f1347aaf159380c78563418b73a412a8518a0517
2012-09-12 11:02:22 -05:00
Jason Orendorff
48c8e8d9bf Bug 779025 - jit-test/tests/collections/Map-iterator-add-remove.js causes AddressSanitizer heap-use-after-free. r=luke.
--HG--
extra : rebase_source : bef5647e7a6936f4302880300e36653e21fc831e
2012-09-12 11:01:34 -05:00
Jason Orendorff
1288cd8a5e Bug 778557 - "Assertion failure: !args.rval().isPrimitive() && callee != &args.rval().toObject()". r=jimb.
--HG--
extra : rebase_source : fa51b866178d26c0a2e17f0de13d4398b6ce8897
2012-09-12 11:00:08 -05:00
Yusuke Suzuki
52f75243f9 Bug 790247 - Reflect.parse should treat x["y"] as a computed MemberExpression. r=jorendorff. 2012-09-12 10:27:09 -05:00
Gina Yeh
1cca3ee12d Bug 789014 - Final version: Broadcast bonding-related events via system message, r=qdot, r=mrbkap 2012-09-12 22:03:42 +08:00
Jan de Mooij
76ffe3fcc8 No bug - Fix Clang warnings in jsinfer.cpp and IonFrames.cpp. r=pierron 2012-09-12 15:00:45 +02:00
Jon Coppeard
fb88cce090 Bug 787905 - GC: SweepBackgroundThings can be called with freed compartments in list r=billm 2012-09-12 10:52:19 +01:00
Nicholas Nethercote
6af4eb32dd Bug 788957 (part 5) - Remove unused arguments from NoteLValue(). r=benjamin.
--HG--
extra : rebase_source : 0619c948733d8968868960daca1920a237342174
2012-09-10 20:44:05 -07:00
Nicholas Nethercote
6798e6861d Bug 788957 (part 4) - Add GlobalSharedContext, a sub-class of SharedContext, and also make FunctionBox a sub-class of SharedContext. r=benjamin.
--HG--
extra : rebase_source : 625a93dc48acbbdb9185378534e52b700688011d
2012-09-10 20:43:14 -07:00
Nicholas Nethercote
170e2935ae Bug 788957 (part 3) - Change SharedContext::inFunction() to SharedContext::isFunction. r=benjamin.
--HG--
extra : rebase_source : ce3e88a0d9da9d6946783e86188ae80cdae7dabc
2012-09-10 20:42:18 -07:00
Nicholas Nethercote
e58297be27 Bug 788957 (part 2) - Split ContextFlags into AnyContextFlags and FunctionContextFlags. r=benjamin.
--HG--
extra : rebase_source : a850729d3ca94cc6a04c87bf26e6154a7e1ef18b
2012-09-10 20:40:11 -07:00
Nicholas Nethercote
1d3a09e9e5 Bug 788957 (part 1) - Change FunctionBox so it has an ObjectBox rather than is an ObjectBox. r=benjamin.
--HG--
extra : rebase_source : b7f2465bddce85a641be03c7120be8b949653bd2
2012-09-10 17:58:32 -07:00