Commit Graph

13153 Commits

Author SHA1 Message Date
Paul Biggar
8c53817034 Bug 625141 - Avoid overwriting used register in TypedArray IC (r=dvander)
There was an edge case when creating an IC to store to typed arrays, in which
we would overwrite a register which was a component of the address. Fix by
preserving the address in that case, and restoring it after the overwrite.

This also checks that we save/restore each register only once.
2011-01-31 17:16:25 -08:00
Jim Blandy
2016210905 Bug 554955: Revert fix (changesets 297b1312f534, 18a1effafe19, 26d40e1e80bf, f6117465a979): 14% performance hit as measured by Talos. r=talos 2011-01-31 16:48:26 -08:00
David Mandelin
6242f450e2 Bug 627609 followup 2: add missing helper for tests, r=orange 2011-01-31 16:41:45 -08:00
David Mandelin
8e65dc49e0 Bug 627609 followup: address comments and check for start of opcode stream before atOptionalBracket 2011-01-31 16:15:56 -08:00
David Mandelin
fddedf5950 Bug 627609: make PCRE handling of empty matches within quantified groups match ECMA-262, r=cdleary 2011-01-31 16:03:11 -08:00
Steve Fink
6a333d3f55 Bug 627758 - Handle cancelled GC runs properly (r=dmandelin)
--HG--
extra : rebase_source : a215df78cb2bedb190f8655df4cd5b7dd6ec5f3a
2011-01-31 15:00:52 -08:00
Jim Blandy
672dd55a28 Bug 621103: Rename js::Anchor to JS::Anchor: 'JS' is the public namespace. r=waldo 2011-01-31 14:42:53 -08:00
Bill McCloskey
fa08e98f10 Bug 630340 - Fix undefined value in compartment assertion (r=Waldo) 2011-01-31 13:54:28 -08:00
Jason Orendorff
bb4fd3c0ab Call a class a class, to avoid MSVC warning. rs=Waldo. 2011-01-31 15:37:13 -06:00
Jeff Walden
2da1a60948 Bug 619283 - Built-in JS methods must not box undefined or null into the global object when called, both to comply with ES5 and to prevent inadvertent global object exposure to secure JS variants. r=dmandelin, a=blocking 2011-01-26 13:37:45 -08:00
Jeff Walden
13fb18a6fe Bug 619283 - Built-in JS methods must not box undefined or null into the global object when called, both to comply with ES5 and to prevent inadvertent global object exposure to secure JS variants. r=dmandelin
--HG--
extra : rebase_source : be6802a24bd58eb6339369e6803d3eb2fbbc07a5
2011-01-26 13:37:45 -08:00
Jeff Walden
bb7b92659a Detabify js1_6/extensions/regress-312385-01.js for readability. r=tabsmustdie 2011-01-26 10:20:29 -08:00
Chris Leary
86d81ea3d6 Merge tracemonkey to mozilla-central. (a=blockers) 2011-01-31 19:43:36 -08:00
Jeff Walden
7bea1187ea Detabify js1_6/extensions/regress-312385-01.js for readability. r=tabsmustdie
--HG--
extra : rebase_source : d868c348643c9ece864daf944f8d4e93a6c11314
2011-01-26 10:20:29 -08:00
Jason Orendorff
f1be13e671 js_InitExceptionClasses was skipping part js_InitClass, leading to "Assertion failure: proto->canProvideEmptyShape". Bug 624968, r=Waldo.
--HG--
extra : rebase_source : 08ebb71574a0b1962e8f1c0c3f9a7aa7ec904b03
2011-01-24 17:32:44 -06:00
Jason Orendorff
2c260dfeff Remove assertion that has clearly outlived its usefulness. Bug 626592, r=dvander.
--HG--
extra : rebase_source : a629cbdfb129ac557f68a9d5938880ebd11c1305
2011-01-24 13:49:06 -06:00
David Anderson
9a680c6236 Fix constant folding bug in Uint8Clamped arrays (bug 624483, r=vlad). 2011-01-31 12:46:09 -08:00
David Anderson
b1acdbb117 Fix jsanalyze missing a GETLOCAL case (bug 630048, r=dmandelin). 2011-01-31 12:41:17 -08:00
Jim Blandy
a237e87988 Bug 554955: Give blocks and call objects unique shapes when they have parents that may be extended with new bindings. r=jorendorff
The comments for js::Bindings::extensibleParents explain why this is necessary.

AssertValidPropertyCacheHit should have been catching this bug, but for
reasons I don't understand, it is restricted from checking this case. This
patch extends it to assert when the bug is detected.

I've gathered the infallible parts of the initialization for Call objects
and cloned block objects into their own functions.
2011-01-31 12:08:13 -08:00
Jim Blandy
4b5d129a27 Bug 554955: Make JSObject::setMap not pretend to take a const shape. r=jorendorff
Without this patch, JSObject::setMap takes a const js::Shape *, which is
kind of misleading. The object will not actually treat the shape as const
(it does a const_cast). At all but one call site, setMap's argument is not
a const shape --- and in fact, many call sites are installing empty shapes
whose role in life is to be extended.

The only place where a const js::Shape appears is in setSharedNonNativeMap,
which is doing something unusual. The const cast should be there.

Changing js::Bindings::lastShape to return a non-const shape is then
natural, and cleans up the definition of initCall coming in the next patch.
2011-01-31 12:08:13 -08:00
Jim Blandy
e0523545cd Bug 554955: Introduce a typed accessor for retreiving functions from JSFunctionBoxes. r=brendan 2011-01-31 12:08:13 -08:00
Jim Blandy
403f750c48 Bug 554955: Drive-by comment fix. no r. 2011-01-31 12:08:13 -08:00
Jonas Sicking
8ae905de30 Tests for bug 594999 (r=mrbkap). 2011-01-29 18:53:59 -08:00
Andreas Gal
80068e5cca Silenty return undefined instead of throwing when content tries to access non-exposed chrome properties (bug 594999, r=mrbkap). 2011-01-29 18:48:30 -08:00
Jonas Sicking
6c6a7cea3e Disallow content access to chrome functions without __exposedProps__ (bug 628410, r=gal). 2011-01-29 18:47:17 -08:00
Igor Bukanov
7c65c6fde5 bug 624880 - renaming JSD public API to reflect the signature change. r=timeless 2011-01-29 22:40:29 +01:00
Igor Bukanov
276b0a6237 bug 624364 - r=jorendorff
--HG--
extra : rebase_source : 6e410f6a4aaf21779741b19f6b9ae228946b25bc
2011-01-25 00:04:29 +01:00
Brendan Eich
de8093385a Followup fix for gaping hole in patch for bug 591846 (credit to jorendorff, r=me). 2011-01-29 01:01:54 -08:00
Igor Bukanov
6d2d81f9db bug 629655 - avoid influencing the malloc GC counters when dumping the heap. r=anygregor 2011-01-28 23:25:05 +01:00
Andreas Gal
48adc47ad7 Cache result of Function.prototype.toString (bug 629590, r/a=shaver). 2011-01-28 10:19:13 -08:00
Boris Zbarsky
8988295145 Bug 628209 partial fix. On trace, make the element getter for typed arrays of unsigned integers that are less than 32 bits get signed 32-bit ints, not unsigned 32-bit ints. r=gal 2011-01-28 10:33:12 -05:00
Brendan Eich
1d606e7be9 Allow PropertyOp-based data properties to be frozen at last-got value (591846, r=jwalden). 2011-01-25 18:04:45 -08:00
Chris Leary
2b67ce4256 CLOSED TREE: Merge mozilla-central and tracemonkey. (a=blockers) 2011-01-27 20:06:21 -08:00
Chris Leary
6d0cc31d27 Back out changeset 7d82892cb8df. 2011-01-27 19:43:33 -08:00
Chris Leary
001cef1fd8 Merge the backout head. 2011-01-27 16:26:21 -08:00
Chris Leary
8f8ea8fd48 Backed out changeset b5ca98debed0 2011-01-27 16:25:30 -08:00
Bill McCloskey
a4f9ab0da8 Bug 609104 - Move the property tree to the compartment (r=brendan) 2011-01-27 15:46:39 -08:00
Blake Kaplan
f6e1daac94 Bug 611485 - Don't enter the foreign compartment when calling through Xray wrappers. r=gal 2011-01-25 15:06:45 -08:00
David Mandelin
62ff5f09d8 Bug 611653: clear values instead of scope when global window shuts down, r=brendan,smaug 2011-01-21 18:37:30 -08:00
Andreas Gal
809f0911fc Remove JSAutoRequest from Handle::ToJSObject (bug 628930, r=jst). 2011-01-26 15:20:20 -08:00
Andreas Gal
c6e66c8f0b Fix compartment mismatches in js/jetpack (bug 624366, r=jst). 2011-01-26 15:18:51 -08:00
Jeff Walden
b33b7b3c3e Bug 497869 - Switch ES5's FutureReservedWords to be reserved only in strict mode, because we foolishly unreserved them once in the past. r=brendan 2011-01-26 15:02:07 -08:00
David Anderson
70bb6ed2af Clone lambdas in heavyweight scopes (bug 625157, r=brendan). 2011-01-26 12:41:15 -08:00
Andreas Gal
f2f643add9 In Proxy get(own)PropertyDescriptor return undefined if property doesn't exist (bug 582967, r=brendan/jorendorff). 2011-01-26 10:43:10 -08:00
Chris Leary
96ff8c4ba9 Follow up fix 2 for bug 623435. (r=brendan)
--HG--
extra : rebase_source : 5c9b8aec39f707f0539b1a9e299f8a5fcc5ee753
2011-01-25 18:00:31 -08:00
Chris Leary
e9f1beb7d9 Follow up fix for bug 623435. (r=brendan) 2011-01-25 17:16:38 -08:00
Chris Leary
986ed207fa Bug 623435: Rip out deprecated RegExp.compile. (r=brendan) 2011-01-25 14:32:53 -08:00
Luke Wagner
36e619deba Bug 627227 - Remove retval-jsval optimization in CallMethod; take the normal wrapping path (r=jst)
--HG--
extra : rebase_source : 899a628dd668efc48d91bd7098010f9c8d4ae61c
2011-01-25 12:27:17 -08:00
timeless@mozdev.org
313f426282 Bug 615834 warning: inline function ‘JSCompartment* JSObject::getCompartment() const’ used but never defined. r=gal
r=mrbkap

--HG--
extra : rebase_source : fe12e4864bb95a55802be395bd119a064af64baf
2011-01-18 14:25:46 -08:00
Chris Leary
074bd0c596 Bug 595691, take 2: fix versioning across VM instances, remove _options. (r=luke,brendan,igor) 2011-01-27 02:54:58 -08:00
Andreas Gal
3c34eab945 Follow-up fix for bug 625559. 2011-01-26 19:19:33 -08:00
Blake Kaplan
8f27ca08f2 Catch chrome eval escaping into content (bug 625559, r=gal). 2011-01-26 18:28:49 -08:00
Jeff Walden
d1158ba854 Followup to change a no-longer-passed-by-us test after the last push for bug 497869. r=orange
--HG--
extra : rebase_source : de824bfb0a7d718e555a85cfad907fb42a5346c0
2011-01-26 16:46:25 -08:00
Mike Hommey
027a27b5f0 Merge backout. a=bustage 2011-01-29 09:33:40 +01:00
Mike Hommey
e781951704 Backed out changeset 32542df68da3 because of maemo bustage. a=bustage 2011-01-29 09:30:17 +01:00
Mike Hommey
ffb82fe543 Bug 627299 - Fix assembler arguments passed in CFLAGS. r=khuey,r=wtc,a=sdwilsh 2011-01-28 09:22:59 +01:00
David Mandelin
618cf9a71d Bug 624041: skip elements deleted via shift or reverse in iteration, r=igor
--HG--
extra : rebase_source : 4e6862e68ee808b172c782412a2983ad0ea5ac4a
2011-01-10 18:39:46 -08:00
Jeff Walden
4c28b52d07 Oops, shell-only test. r=sparky 2011-01-25 11:48:32 -08:00
Luke Wagner
d7acf11bcb Bug 627959, part 3 - move dtoaCache into the compartment (r=billm)
--HG--
extra : rebase_source : 19f2f0bebdfa7f8b349086be18847ffeb834ef4e
2011-01-24 16:30:16 -08:00
Luke Wagner
acc89d7129 Bug 627959, part 2 - wrap exception in XPCThrower::ThrowExceptionObject (r=gal)
--HG--
extra : rebase_source : ea39e580d733130b63d0a71c19c32e773e50f50b
2011-01-24 16:30:16 -08:00
Luke Wagner
9ff73cbdc7 Bug 627959, part 1 - Also assert same compartment on strings (r=me)
--HG--
extra : rebase_source : c6d45ea9f46d68b12b03efd13192d4d217ed4783
2011-01-24 16:30:08 -08:00
Jeff Walden
55ae2cef53 Add tests for behavior of function statements inside with. r=tests
--HG--
extra : rebase_source : c8088e21fb5aeca0b8f62dd8364435ac67e6aa6e
2011-01-24 16:49:26 -08:00
Steve Fink
dc0764a56d Improve comment. Related to bug 627943.
--HG--
extra : rebase_source : ba7505cfd9c0b1957172ba12a0fd39f44050916f
2011-01-24 23:16:48 -08:00
Steve Fink
f448c5faf9 Bug 627516 - Unconditionally #include assembler/wtf/Platform.h to fix crash with --disable-methodjit, r=cdleary
--HG--
extra : rebase_source : cffc3a025b7f32111f97a6853fc5555282568ffe
2011-01-20 14:03:51 -08:00
Steve Fink
afccee8a2d Bug 627943 - Bad ordering of exception save/wrap/restore, r=gal
--HG--
extra : rebase_source : bc2bdd4af8c4639456a8a7c77f8a0353e44ac1d2
2011-01-21 17:32:00 -08:00
Chris Leary
1771b7c232 Backed out changeset b88172246b66 due to Win32 debug failures. 2011-01-25 04:11:47 -08:00
Chris Leary
b462e1fb98 Bug 595691: fix versioning across VM instances, remove _options. (r=luke,brendan,igor) 2011-01-25 02:33:27 -08:00
Andreas Gal
390064e4c9 Trigger appropriate proxy trap for Object.getOwnPropertyNames (bug 628333, r=jwalden). 2011-01-24 22:39:58 -08:00
Chris Leary
a490c5bc24 Merge mozilla-central and tracemonkey. (a=blockers) 2011-01-24 19:47:52 -08:00
Chris Leary
e41aa73d24 Back out changeset 72cb2f4a893c 2011-01-24 19:45:08 -08:00
Andreas Gal
6629b9fa11 Trigger appropriate proxy trap for Object.getOwnPropertyNames (bug 628333, r=jwalden). 2011-01-24 16:10:54 -08:00
Bill McCloskey
3b8a90ccae Bug 627475 - Fix missing return stmt for Android (fixes changeset 4031baed59f7) 2011-01-24 15:16:27 -08:00
Steve Fink
db1cdf9f0a Backed out changeset e13f3b909fa2 2011-01-24 15:12:18 -08:00
Steve Fink
c862f01fdc Backed out changeset 6dcf1547ea08 2011-01-24 15:11:58 -08:00
Steve Fink
937c639424 Backed out changeset 47678330818a 2011-01-24 15:11:34 -08:00
Steve Fink
08a1d24071 Backed out changeset 8743def9e748 2011-01-24 15:11:13 -08:00
Steve Fink
2dacef3f04 Backed out changeset b7e91bafdcd9 2011-01-24 15:10:52 -08:00
Steve Fink
31df3a402a Backed out changeset d54eac606dd7 2011-01-24 15:10:23 -08:00
Steve Fink
8beba6e0ff Backed out changeset c10e63cba3b6 2011-01-24 15:07:00 -08:00
Steve Fink
aa873a798d Improve comment. Related to bug 627943.
--HG--
extra : rebase_source : 66619f6ab6ed81dd0a7d01df5a03274229b5e12e
2011-01-24 14:43:39 -08:00
Steve Fink
b500ebd4d9 Bug 626830 - XPConnect should turn debugging off immediately, without waiting for a quiescent stack
--HG--
extra : rebase_source : 62a7bb8024313841b4c40c86ccaedd1ae9f56ad1
2011-01-24 13:24:52 -08:00
Steve Fink
e2145da10c Bug 626830 - Allow JSD to turn on debugging when no JS code is running, not just when XPConnect stack is completely empty, r=dmandelin
--HG--
extra : rebase_source : 3f177904d2708642dfec8d5937964ec8fc83427a
2011-01-24 13:21:18 -08:00
Steve Fink
65d69cfc54 Bug 627758 - Detect forced GC end case to fix jsd.off() giving NS_ERROR_NOT_AVAILABLE, r=dmandelin
--HG--
extra : rebase_source : 6525e0b9abca2b0096d3fe0d5b8248dcfaebe7ba
2011-01-20 22:10:54 -08:00
Steve Fink
431720e0ac Bug 626743 - Set debug mode for whole runtime, avoiding compartment-less contexts, r=dmandelin
--HG--
extra : rebase_source : 198e9c85fd8126ef0ec24eb390641ece2f2cd61e
2011-01-19 15:33:34 -08:00
Steve Fink
3046e8cfdb Bug 627516 - Unconditionally #include assembler/wtf/Platform.h to fix crash with --disable-methodjit, r=cdleary
--HG--
extra : rebase_source : 8381615c16097fd6eb86e63f7c59b7f33587b47c
2011-01-20 14:03:51 -08:00
Steve Fink
82dbc5d4cf Bug 627943 - Bad ordering of exception save/wrap/restore, r=gal
--HG--
extra : rebase_source : c317f6f3357885077c7182834d3b29412a5606f2
2011-01-21 17:32:00 -08:00
Bill McCloskey
d2d16afad0 Bug 627475 - Clean up methodjit OOM handling (r=dmandelin) 2011-01-24 14:36:34 -08:00
Bill McCloskey
bc4fee0689 Bug 610088 - Don't assert when DecompileValueGenerator called from script prologue (r=dmandelin) 2011-01-24 11:55:02 -08:00
Bill McCloskey
7cf78aa843 Backed out changeset f3b470fb91a9 (orange) for bug 623297 2011-01-24 11:18:53 -08:00
Bill McCloskey
b7ffccbd4b Bug 623297 - To decide JS_ON_TRACE, check the thread, not the compartment (r=gal) 2011-01-24 10:36:28 -08:00
Luke Wagner
75d92493c9 Bug 626526 - Change cx->busyArrays to use SystemAllocPolicy; avoid JSContext init subtleties (r=pbiggar) 2011-01-24 09:47:25 -08:00
Jeff Walden
388e0a33f7 Bug 497869 - Forbid let and yield in strict mode code in scripts which are not JS1.7 or greater (that is, any web script not explicitly opted into JS1.7+ with a <script type>). r=brendan 2011-01-24 07:26:26 -08:00
Jeff Walden
15fda24aa9 Bug 497869 - Future reserved words are syntax errors in strict mode. r=brendan 2011-01-22 17:46:22 -08:00
Jeff Walden
50cccbcec6 Bug 624110 - Properly traverse the scope chain over strict eval frames in the tracer. r=brendan 2011-01-10 13:09:07 -06:00
Jeff Walden
882117c5e3 Back out everything from the last several hours for turning into a disaster zone finally ending in total orange. r=return-to-sanity 2011-01-23 03:12:28 -08:00
Jeff Walden
91caba886f Fix redness. jsd being C and not C++ bites again! r=redness 2011-01-23 01:16:34 -08:00
Andreas Gal
0fc264ef3f Don't lose error condition in decompiler (bug 621988, r=brendan). 2011-01-22 23:30:30 -08:00
Jeff Walden
16cad291a3 Bug 624110 - Properly traverse the scope chain over strict eval frames in the tracer. r=brendan 2011-01-10 13:09:07 -06:00
Jeff Walden
a6a68a253b Bug 497869 - Future reserved words are syntax errors in strict mode. r=brendan 2011-01-22 17:46:22 -08:00
Rafael Ávila de Espíndola
61100744cd Bug 622144 - Code must #include <string.h> to use memset. r=dmandelin, a=shaver 2011-01-22 08:52:25 -08:00