Commit Graph

12134 Commits

Author SHA1 Message Date
Bill McCloskey
c685845c26 Bug 596364 - Allow the trace JIT to tell the method JIT to unblacklist a loop (r=dvander) 2010-10-19 11:08:25 -07:00
Tom Schuster
b7057e3464 Bug 594233 - speed up js::DefaultValue on Number builtin with void hint (r=lw)
--HG--
extra : rebase_source : e06f43fe67eef83dd7c6d56417be8395184d40dd
2010-10-19 10:39:55 -07:00
Bill McCloskey
0aa74ae67f Fix broken aliasing annotations from bug 600016 2010-10-19 10:17:29 -07:00
Luke Wagner
4e00bb8e1e Bug 605352 - JM: avoid double-pin in x64 FrameState:syncFe (r=sstangl) 2010-10-19 09:40:47 -07:00
Luke Wagner
4511595997 Bug 604210 - Optimistically use pc to decompile when vp is above pcdepth (r=brendan) 2010-10-19 09:36:24 -07:00
Luke Wagner
c2031cddf8 Bug 604638 - remove dead var in TracerState (r=dvander) 2010-10-19 09:21:01 -07:00
Dave Herman
7488e1af91 bug 594060, r=cdleary: Reflect.parse(): make source location information optional 2010-10-19 09:00:51 -07:00
Chris Leary
f03fe920ff Temporarily disable MONOIC for ARM due to bug 599214 breakage. 2010-10-19 01:30:43 -07:00
Makoto Kato
cb7dbc1e2d Bug 589917 - js_GetDeflatedUTF8StringLength computes the wrong UTF-8 length for surrogate pairs. r=igor, a=betaN+ 2010-10-19 17:06:10 +09:00
Nicholas Nethercote
7f48f3bad8 Update nanojit-import-rev stamp. 2010-10-18 23:42:02 -07:00
Nicholas Nethercote
0ee247937a Bug 602788 - nanojit: more constant folding of quads in ExprFilter, please. r=stejohns.
--HG--
extra : convert_revision : 8409c49a72dc223ca0622bc18b396e81f8d45608
2010-10-18 23:20:16 -07:00
Peter Van der Beken
c66e34a29f Fix for bug 604957 (Change sandbox constructor to take one optional argument instead of two). r=mrbkap, a=blocking. 2010-10-15 11:02:42 -07:00
David Anderson
5c799c5502 Actual rebase bustage fix (bug 603044 fallout). 2010-10-18 22:31:44 -07:00
David Anderson
ee43bf84c8 Fix line change lost in rebase (bug 603044 fallout). 2010-10-18 21:41:17 -07:00
David Anderson
14fd4207dc Fixed bogus assert about script lengths (bug 603044 fallout). 2010-10-18 21:08:42 -07:00
David Anderson
6d9c7313d8 Build bustage fix. 2010-10-18 20:30:36 -07:00
David Anderson
2f0a83a27d Remove JSOP_BEGIN and fix tracer integration issues (bug 603044, r=luke+dmandelin). 2010-10-15 11:36:56 -07:00
Nicholas Nethercote
2e41130d44 Update nanojit-import-rev stamp. 2010-10-18 19:21:16 -07:00
Nicholas Nethercote
3350cbfdc2 Bug 602765 - nanojit: in Nativei386.cpp, generate d[b + i<<s] addressing modes in asm_load64() and asm_store64(). r=rreitmai.
--HG--
extra : convert_revision : 85b3484747acd7222efded3dea41267a21928d4e
2010-10-18 18:39:47 -07:00
Ginn Chen
a2f1826354 Bug 604335 Do not use asm_nongp_copy for moving between FpRegs and GpRegs on SPARC r=edwsmith
--HG--
extra : convert_revision : 004571303a080d8915b9845190b33338e495bcba
2010-10-18 19:47:12 +08:00
Ginn Chen
e280d4b539 Bug 603560 Workaround for Solaris Studio compiler, it failed to compile static const int x = { 1 }; r=edwsmith,nnethercote
--HG--
extra : convert_revision : c4f9bb1b1fd4816604d86045806423025f8e6e4e
2010-10-18 19:46:04 +08:00
Rick Reitmaier
23b0e1f23d Fix build breakage - missing portion of patch in prior checkin.
--HG--
extra : convert_revision : 2cb7d0c94e4b64bbe5d40dcd9d8a8d0f03fb9a5b
2010-10-14 19:01:15 -07:00
Rick Reitmaier
61ef5b743e Bug 595033 - nanojit: harden via random function alignment (wmaddox,nnethercote,edwsmith)
Introduce a random number of 'int3' instructions inbetween JIT'd methods.

NOTE: this feature is currently disabled

--HG--
extra : convert_revision : d75d0a918f8e048b92127188f47f4e1efcee9004
2010-10-14 18:54:07 -07:00
Alex Macdonald
e0fd2ca7c6 Bug 603865 - "Revive AOT compiler" [r+r=stejohns]
--HG--
extra : convert_revision : 1cdb89db3ab910033e208fb66cfeb074cd1bca2a
2010-10-12 21:37:00 -07:00
Rick Reitmaier
8474600047 Bug 587727 - nanojit: Reduce paging traffic from calls to CodeAlloc.markExec (nnethercote,edwsmith)
Stage I cleanup in prep for optimization patch

--HG--
extra : convert_revision : 0224edb6c2b863014fa4688fbe9c1b0ad8e73ef0
2010-10-14 12:26:33 -07:00
Bill McCloskey
1b9d7cdaa6 Bug 599214 - JM: Add a fast path for object equality (r=dvander,nnethercote) 2010-10-18 17:04:43 -07:00
Nicholas Nethercote
b73a4da22c merge 2010-10-18 16:59:17 -07:00
Nicholas Nethercote
327c3f47e2 Backed out changeset 11b2f7a76d0f (bug 604297) due to possible dromaeo perf regression. 2010-10-18 16:58:25 -07:00
Blake Kaplan
2541b77fee Followup fix for bug 605167 2010-10-18 16:45:39 -07:00
Blake Kaplan
60998c4cdd Fix bug 605167. r=peterv
--HG--
extra : rebase_source : 67b5ac9708e2efe22a200ab4cbcaef76b494dfa1
2010-10-18 15:21:50 -07:00
Blake Kaplan
dd9f90f08f Bug 604365 - Don't accidentally share JSSLOT_PROXY_EXTRA with functions. r=peterv
--HG--
extra : rebase_source : 28b7941b463e83540e078cda86c5ef2b1c56c701
2010-10-18 15:21:47 -07:00
Bill McCloskey
e6ac85d1af Bug 600414 - TM: Use a more precise check for negative zero when multiplying (r=nnethercote) 2010-10-18 15:13:55 -07:00
Bill McCloskey
c17db118a3 Bug 600016 - TM: Recognize that the result of Math.floor is an integer (r=nnethercote) 2010-10-18 15:10:52 -07:00
Jan de Mooij<jandemooij@gmail.com>
e341572441 Bug 604427: fix JM handling of !== with nans, r=dvander 2010-10-18 14:19:39 -07:00
Bill McCloskey
d54eee1ce2 Bug 603471 - Make int32* and int32_t* inter-convertible (r=jimb) 2010-10-18 14:10:50 -07:00
Bill McCloskey
b675508c7a Bug 596676 - Print script execution time in shell (r=dmandelin) 2010-10-18 14:08:56 -07:00
Nicholas Nethercote
913bd8a149 Bug 584279 - TM: improve alias analysis by adding many more access regions (2nd attempt). r=bhackett. 2010-10-18 12:55:56 -07:00
Tom Schuster
5369c7af87 Bug 604971 - array.sort compare-function gets incorrect this. r=jwalden 2010-10-18 12:24:23 -07:00
Bill McCloskey
2ada2594a9 Bug 601395 - Add tests (r=cdleary) 2010-10-18 11:38:15 -07:00
Bill McCloskey
88e727ada5 Bug 601395 - Fix parent pointer tracking for block objects (r=cdleary) 2010-10-18 11:34:57 -07:00
David Anderson
d0aaf58043 Backed out changeset 45805d1b90d4. 2010-10-18 11:24:27 -07:00
David Anderson
f5a05c566e Refactor code related to ICs (bug 603779, r=dmandelin,sstangl).
* * *
Make Assembler derive from value-format assemblers (bug 603779 part 1, r=sstangl).
* * *
Refactor dense array load generation (bug 603779 part 2, r=dmandelin).
* * *
Add object class helpers to Assembler (bug 603779 part 3, r=dmandelin).
* * *
Refactor StateRemat and fix nearby IC bugs (bug 603779 part 4, r=dmandelin).
* * *
Refactor ValueRemat (bug 603779 part 5, r=dmandelin).
* * *
Factor out and rename some common IC structures (bug 603779 part 6, r=dmandelin).
2010-10-17 22:28:49 -07:00
Nicholas Nethercote
be2aa1d407 Backed out changeset c961a413660c 2010-10-17 23:24:26 -07:00
Nicholas Nethercote
e48a2774f0 Bug 584279 - TM: improve alias analysis by adding many more access regions. r=bhackett. 2010-10-17 18:42:58 -07:00
Nicholas Nethercote
3bd89f9f68 Bug 604297 - TM: don't allow non-conditions to be passed to TraceRecorder::guard(). r=dmandelin. 2010-10-17 15:53:27 -07:00
Blake Kaplan
81e28f8cec Bug 604368 - Share some code so that bug fixes fix both parts. r=peterv a=blocking beta7 2010-10-16 15:26:14 -07:00
Peter Van der Beken
9c40aad72a Fix for bug 604362 (Don't rewrap XPCWrappedNatives that don't have classinfo). r=mrbkap. 2010-10-16 01:43:53 -07:00
Blake Kaplan
4e14d8e983 Bug 604476 - Do a full property resolve when enumerating. r=gal
--HG--
extra : rebase_source : be6ee618aebfed864e737d341208e854061671ee
2010-10-15 18:27:42 -07:00
Blake Kaplan
677d1719d6 Bug 604797 - Wrap values in nsJSCID::CreateInstance. r=peterv
--HG--
extra : rebase_source : 013a2f6a7056bb50673b5328d31fd069cb05f5ec
2010-10-15 18:27:29 -07:00
Blake Kaplan
4c0461f1ad Fix bug 593602. r=gal
--HG--
extra : rebase_source : d0f105abd26702cd95c6b530ed6d1b1c76c82d52
2010-10-15 14:15:53 -07:00
David Mandelin
b921204b94 Bug 603077: OOM safety for JM assembler buffer, r=dvander 2010-10-14 16:33:49 -07:00
Sean Stangl
47aced3e61 Avoid convertValueToType() in PunboxAssembler. b=604448, r=dvander. 2010-10-15 19:17:35 -04:00
David Mandelin
1d856b8741 Bug 604799: allocate 64K code memory chunks on Windows, r=dvander 2010-10-15 15:42:56 -07:00
David Anderson
d54dd1cc18 Merge backout. 2010-10-15 15:30:17 -07:00
David Anderson
0c625a8d1a Backed out changeset 8ea3083a9787 2010-10-15 15:29:57 -07:00
David Anderson
e0dffc93d5 Merge backout. 2010-10-15 15:29:31 -07:00
David Anderson
61f242f7aa Backed out changeset 2bdf648e7015 2010-10-15 15:21:51 -07:00
David Anderson
a130b5b67b Backed out changeset cf1d774f7f73 2010-10-15 15:21:20 -07:00
David Anderson
cdeea159b6 Fix JSD build bustage, JSOP_BEGIN removal fallout. 2010-10-15 14:20:02 -07:00
David Anderson
3c809907f5 Merge backout. 2010-10-15 14:19:06 -07:00
David Anderson
cae2e1860d Bumped JSD uuid. 2010-10-15 14:18:13 -07:00
David Anderson
c7c5f82ff4 Backed out changeset 1998fa240434 2010-10-15 14:13:59 -07:00
David Anderson
3b03a237fa Remove JSOP_BEGIN and fix tracer integration issues (bug 603044, r=luke+dmandelin). 2010-10-15 11:36:56 -07:00
Jason Orendorff
5665c4ce1c Avoid MSVC mumbo-jumbo in static assertion. Following up on suggestions in bug 604276 comment 6 and bug 598055 comment 1. no_r=me.
--HG--
extra : rebase_source : 313d2b0dba84c9417ab7e2691d6f9c43c52c5a06
2010-10-15 09:31:07 -05:00
Igor Bukanov
d300dba85e bug 602534 - simpler scheduling of the last ditch GC. r=anygregor 2010-10-07 22:43:52 +02:00
Makoto Kato
033888d30a Bug 604323 - Bug 514570 causes bustage Win64 debug build. r=jwalden 2010-10-15 10:28:30 +09:00
Paul Biggar
464c5195d7 Bug 590486: Remove snarl now that eval is fast again.
In bug 578158, we needed to run entire benchmarks through eval(), but some
benchmark features erroneously prevented the tracer from running. Snarl() was
added to be an eval() without that limitation. Once that limitation was fixed, in
bug 580529, eval() could be used again and so Snarl() wasn't needed.

--HG--
extra : rebase_source : 0f77190acb0756d067ac9f998c5187c931483e1f
2010-10-14 17:49:49 -07:00
Blake Kaplan
e1d2f6f844 Bug 604368 - Protect against the this translator returning a this object from another domain. r=peterv
--HG--
extra : rebase_source : cf6f17e100d0b2fc1cef483e3480757f636d877a
2010-10-14 16:57:56 -07:00
Blake Kaplan
7961434bd1 Bug 604368 - Successfully get principals off of sandboxes too. r=peterv
--HG--
extra : rebase_source : 78252e0d3a702d3fdbe2221e8649bf59896b47d4
2010-10-14 16:57:27 -07:00
Jason Orendorff
7062d1174d Silence the few noisiest MSVC warnings. Bug 604276, r=luke.
--HG--
extra : rebase_source : 10874d0c67e080a7143c5a57066a3fd3db6209cb
2010-10-14 18:47:24 -05:00
Sean Stangl
c92d9ddfdd Detect some OOM conditions. b=602935, r=jorendorff. 2010-10-14 19:24:09 -04:00
Blake Kaplan
fd4258f7a7 Fix more orange. a=orange 2010-10-14 16:00:55 -07:00
Blake Kaplan
cfbcf1b6ef Fix bustage. a=orange
--HG--
extra : transplant_source : %CA%90%83%CA%B8%EF%94%24%D8b%FE%8F%E0-%86%B6%BB%0A%8E%EE
2010-10-14 15:53:23 -07:00
Blake Kaplan
2705deadbc Bug 604363 - Don't create Xray wrappers for chrome objects in sandboxes. r=peterv
--HG--
extra : rebase_source : 417edb2b843c0f3d8c4f5cb28d1872d901b3081d
2010-10-14 14:56:31 -07:00
Dave Herman
d78d204bb8 bug 602940, r=brendan: remove narcissus from hg tree 2010-10-14 14:36:17 -07:00
Jeff Walden
9f83aeddb8 Revert 782a44082ed2, which was a somewhat-too-optimistic removal of code that's not dead yet (and is not getting better). r=orange 2010-10-14 14:20:59 -07:00
Andreas Gal
3417abf36c Don't try to waive Xray wrapper for primitives (604361, r=mrbkap). 2010-10-14 13:41:52 -07:00
Jeff Walden
f8640c1804 Fix old comment referring to eval cache code being in obj_eval. r=waylon
--HG--
extra : rebase_source : d16f94910568917291fb0b28b124e1632c1f02af
2010-10-11 11:49:29 -07:00
Jeff Walden
c2c3186f83 Bug 602441 - Remove nigh-unreachable property-cache-testing code (modulo MT objects, nearing complete removal from SpiderMonkey) in the property-setting codepath. r=brendan
--HG--
extra : rebase_source : 38ed65e2dde3b80086be6da4a75120d24759df81
2010-10-07 13:59:23 -07:00
Jeff Walden
4500a1845e Bug 602441 - JM: Botched extensibility checking when attempting to add a new property to an object. r=dmandelin
--HG--
extra : rebase_source : 1676262c875cd2d283f63c28ae86c9230b7b942a
2010-10-07 12:30:13 -07:00
Jeff Walden
ec6a82be0d Add a test for (eval)(code) being direct eval; also add tests for (1,eval)(code), (a?b:eval)(code), and so on (constant-folding expressions, at least before bug 537673) being indirect. r=lumpy
--HG--
extra : rebase_source : cfed63291a05d936ab76909fe68a0c92ee90d9cd
2010-10-08 20:27:19 -07:00
Jeff Walden
516e962572 Remove declaration for the never-defined js_GetWrappedObject method (obj->wrappedObject(cx) was the long-ago replacement). r=sparky
--HG--
extra : rebase_source : d50bcf859e415469494e53426ba51d0e4304e676
2010-10-07 16:37:38 -07:00
Sean Stangl
7db1c7a596 Eliminate ImmutableSync on x64. b=601066, r=dvander. 2010-10-12 20:08:40 -04:00
Sean Stangl
99e40b8a29 Faster x64 Syncing. b=598839, r=dvander. 2010-10-12 17:39:30 -04:00
Jason Orendorff
17deb16433 Add assertions in JSScript::NewScript against offset overflow. Bug 604387, r=dvander. 2010-10-14 14:58:01 -05:00
Jim Blandy
36fbfed7cc Bug 586917: Properly parse JSOP_TABLESWITCHX instructions in the tracer. r=jorendorff 2010-10-13 18:22:46 -07:00
Blake Kaplan
29e85b9844 Merge mozilla-central into tracemonkey 2010-10-13 17:54:54 -07:00
Blake Kaplan
d4014d272a Add a test for bug 604087. r=gal 2010-10-13 16:54:13 -07:00
Jason Orendorff
fd0c6b2d5c Bug 604087 - Minor tweaks to JS_TransplantWrapper and JSAutoEnterCompartment. r=mrbkap 2010-10-13 17:26:40 -07:00
Blake Kaplan
355a7fed18 Bug 604087 - Deal with GC happening during JS_TransplantWrappers. r=jst/gal 2010-10-13 17:21:00 -07:00
Nicholas Nethercote
1c23e0dd04 Bug 603825 - Fix a bunch of warnings. r=jwalden. 2010-10-13 16:49:53 -07:00
Nicholas Nethercote
ddd0fb50cd Bug 600779 - TM: allow for branches that are always taken. r=dmandelin. 2010-10-13 16:39:20 -07:00
Brian Hackett
78a4b0dad2 Fix memory leak, change uint to unsigned, bug 584917 followup. r=brendan,njn 2010-10-13 16:10:15 -07:00
Brian Hackett
869a6640ac Fix use of uninitialized variable, bug 584917 followup. r=mrbkap 2010-10-13 15:41:53 -07:00
Brian Hackett
f9cf7a5b7d Flexible length JSObject, bug 584917. r=brendan,igor 2010-10-13 11:49:22 -07:00
Blake Kaplan
fd87098d25 Bug 603845 - Protect ourselves against compartments that have null principals. r=gal 2010-10-13 11:37:25 -07:00
Blake Kaplan
49a6e89f74 Bug 604108 - Grab the right compartment to check if we're finalizing the functionNamespaceObject. r=peterv 2010-10-13 11:17:21 -07:00
Johnny Stenback
78e3992901 Merge backout. 2010-10-13 11:18:00 -07:00
Johnny Stenback
33d1b6d31f Backed out changeset 08970767d83d per request from sayrer due to a trace malloc alloc regression. 2010-10-13 11:17:51 -07:00
Johnny Stenback
323f4a2a01 Merge backout. 2010-10-13 11:17:22 -07:00
Johnny Stenback
8bf4363aa7 Backed out changeset ad0c80eacba7 per request from sayrer due to a trace malloc alloc regression. 2010-10-13 11:17:13 -07:00
Johnny Stenback
886679794e Merge backout. 2010-10-13 11:16:38 -07:00
Johnny Stenback
76bb5be13d Backed out changeset a63b6fa0229c per request from sayrer due to a trace malloc alloc regression. 2010-10-13 11:16:20 -07:00
Sean Stangl
d5c09a23f0 Fix typo in ensureTypeSynced(), fixing assert. b=598839. 2010-10-12 20:34:15 -04:00
Sean Stangl
357a3ae283 Eliminate ImmutableSync on x64. b=601066, r=dvander. 2010-10-12 20:08:40 -04:00
Sean Stangl
d96bb05817 Faster x64 Syncing. b=598839, r=dvander. 2010-10-12 17:39:30 -04:00
Luke Wagner
844de3126b Bug 603017 - speed up js::DefaultValue on String builtin with void hint (r=brendan) 2010-10-12 13:41:40 -07:00
Gregor Wagner
34dd1159af Bug 603433 - TM: various GC cleanups, r=igor 2010-10-13 09:22:05 -07:00
David Mandelin
e45bcfe30a Bug 603558: add -m option to turn on method jit for xpcshell, r=dvander, a=shaver
--HG--
extra : rebase_source : 9374b3ab212fa8cd41d33b3887e678b9888be972
2010-10-12 17:25:37 -07:00
Blake Kaplan
7c9de80f1f Revert unintended changes. 2010-10-12 17:44:34 -07:00
Blake Kaplan
03450c5470 Bug 603816 - Don't assume that target->data is non-null. r=peterv
--HG--
extra : rebase_source : 6a3e949376465cc9eac3d4ffa6b7fc3ba501c502
2010-10-12 16:28:22 -07:00
Nicholas Nethercote
39f5c14292 Update nanojit-import-rev stamp. 2010-10-12 12:53:29 -07:00
Peter Van der Beken
ac7fa9fd75 Fix for bug 603677 (Crash on startup due to GetProto on an XPCWrappedNative being null with Bugzilla Tweaks jetpack installed), compartments followup. r=mrbkap.
--HG--
extra : rebase_source : 884494ce295e8e2222de4f3bafb02d4a96e2bcc2
2010-10-12 11:51:42 -07:00
Nicholas Nethercote
4b1f77accc These tests should have been added as part of the patch for bug 595728.
--HG--
extra : convert_revision : f31ee612d65e224424ae24d1852491c1b1698388
2010-10-07 23:14:10 -07:00
Nicholas Nethercote
6cc88ddd4f Bug 599247 - nanojit: in Nativei386.cpp, generate d[b + i<<s] addressing modes in asm_store32(). r=edwsmith.
--HG--
extra : convert_revision : cf8d0148a91da8795edec935ddec57d4164bc3aa
2010-10-07 20:24:07 -07:00
Rick Reitmaier
0380f837dc fix build breakage
--HG--
extra : convert_revision : c900245f6488bbcca67f1b2136c4f30427a789aa
2010-10-07 19:35:06 -07:00
Rick Reitmaier
e4543e5e2e Bug 596056 - nanojit: random number generator needed for many hardening algorithms (r+nnethercote,edwsmith)
introduce noise object

Assembler to use a noise object in which the actual mechanics of how noise is
being produced in abstracted by the client.

The noise object will often need to contain state so its convenient to derive
from this class and build an object containing all the necessary state.

--HG--
extra : convert_revision : c569f3ddd2d9b7a69b3c63f1fd139ea8d513fd9c
2010-10-07 19:22:35 -07:00
Nicholas Nethercote
02b6b47148 Bug 602408 - nanojit: print all hex numbers in LIR dumps with an 0x prefix. r=rreitmai.
--HG--
extra : convert_revision : 819b3d7e0ab682bf76da6c24de58434f5744e640
2010-10-07 15:30:36 -07:00
Jason Orendorff
41c66a3760 Fix anyname_finalize to look in the right compartment, to avoid dangling pointer. Likely fix for bug 603270. r=mrbkap over IRC.
--HG--
extra : rebase_source : 234c1412ce5543e32222cfd292ee905634ef6741
2010-10-12 14:40:05 -05:00
Jim Blandy
713b25831a Bug 601168: Allow nsHTMLPluginObjElementSH::Call to pass through non-Object |this| values to the plugin. r=bz,gal
This introduces some new JSAPI C++ entry points, one of which allows
arbitrary jsvals to be passed as the |this| value to a call; this means we
avoid a JSVAL_TO_OBJECT call in the caller, and its corresponding
OBJECT_TO_JSVAL call in the callee.
2010-10-12 11:50:03 -07:00
Jim Blandy
d195d41b0a Bug 514570: Adapt XPConnect to new JS_GetFrameThis arguments. r=jorendorff
It used to be:
JSObject *JS_GetFrameThis(JSContext *, JSStackFrame *);

Now it is:
JSBool JS_GetFrameThis(JSContext *, JSStackFrame *, jsval *);

(In strict mode code, |this| values that are primitives don't get wrapped.)
2010-10-12 11:50:03 -07:00
Jim Blandy
112fe57db0 Bug 514570: Adapt jsd to new JS_GetFrameThis arguments. r=brendan
It used to be:
JSObject *JS_GetFrameThis(JSContext *, JSStackFrame *);

Now it is:
JSBool JS_GetFrameThis(JSContext *, JSStackFrame *, jsval *);

(In strict mode code, |this| values that are primitives don't get wrapped.)
2010-10-12 11:50:03 -07:00
Jeff Walden
0b9b58415c Bug 575522 - Object.prototype.toString should return "[object Undefined]" and "[object Null]" when called with |this === undefined| or |this === null|, respectively. r=jorendorff,brendan 2010-10-12 11:50:03 -07:00
Jeff Walden
4626f47ec6 Bug 514570 - 3 - Don't box |this| for strict mode functions. r=jorendorff 2010-10-12 11:50:03 -07:00
Jeff Walden
7f75fc0a25 Bug 514570 - 2 - Push |undefined| rather than |null| when calling functions without a specified |this| value, per ES5. r=jorendorff 2010-10-12 11:50:03 -07:00
Jeff Walden
fcbd8eb10b Bug 514570 - 1 - Convert primitive-this-of-type function flags into a single primitive-this flag, to pave way for strict mode unadulterated-this passing. r=jorendorff 2010-10-12 11:50:02 -07:00
Brendan Eich
eb3502680f JSOPTION_ANONFUNFIX should be set in js shell (5595555, r=cdleary). 2010-10-06 14:58:28 -07:00
Ginn Chen
b1fc7ea706 Bug 601835 Add JS_STATIC_ASSERT back for Solaris Studio, r=brendan 2010-10-11 18:23:55 +08:00
Brendan Eich
ab966b3529 Warning fixes (one left over from 602621, the other from 584789). 2010-10-10 21:11:45 -07:00
Johnny Stenback
18174c5a4e Bug 580128 - No need to assert about commpartment mismatches in JS_Get/SetPrivate (r=gal). 2010-10-10 15:50:11 -07:00
Blake Kaplan
05061dd1c1 Bug 580128 - Deal with the outer object hook failing a little more gracefully. r=jst 2010-10-10 15:49:51 -07:00
Peter Van der Beken
645d07dc67 Bug 580128. Remove cross origin string wrappers from hash when the wrapped string dies. r=mrbkap.
As a note: this bug took peterv and mrbkap 7 hours to track down using replay debugging after spending hours trying to even catch it on a replay debugging box.
2010-10-10 15:49:38 -07:00
Blake Kaplan
0228224cd3 bug 580128 - Allow chrome://global/ scripts to unwrap SOWs going into C++. r=peterv/jst 2010-10-10 15:49:30 -07:00
Andreas Gal
20ff9fd18f bug 580128 - split expando properties onto a separate object and implement enumeration. r=mrbkap 2010-10-10 15:49:13 -07:00
Blake Kaplan
acf7a3ad20 bug 580128 - By default properties created by property assignment are enumerable. r=gal 2010-10-10 15:49:08 -07:00
Blake Kaplan
9eac8b4de5 bug 580128 - Create SOWs same and cross compartment. r=jst 2010-10-10 15:48:55 -07:00
Johnny Stenback
dd9636fcf2 bug 580128 - Allow unwrapping windows via JSObject::unwrap. r=jst 2010-10-10 15:48:35 -07:00
Andreas Gal
9103300871 bug 580128 - Implement deep wrapping for .wrappedJSObject. r=mrbkap 2010-10-10 15:48:29 -07:00
Blake Kaplan
b8df1d75e7 bug 580128 - Outerize inner windows. r=jst 2010-10-10 15:47:55 -07:00
Blake Kaplan
d1776a6e22 bug 580128 - Reparent proxies when we pull them out of the map in order to try to keep their parents sembling something current. r=jst 2010-10-10 15:47:48 -07:00
Andreas Gal
5724ba40ea bug 580128 - Cross origin wrapper needs no waive xray flag. r=mrbkap 2010-10-10 15:47:22 -07:00
Peter Van der Beken
cc3214ae02 bug 580128 - Don't create slim wrappers when crossing compartments. r=mrbkap 2010-10-10 15:47:19 -07:00
Peter Van der Beken
9ba94d50b4 bug 580128 - Don't create multiple wrappers for global objects (like BackstagePass). r=mrbkap 2010-10-10 15:47:16 -07:00
David Anderson
c190047dbc Fix bug 602574 - Assertion failure: constOffset != 0 in JSScript::NewScript() on 64-bit platforms. r=gal@uci.edu 2010-10-10 15:47:09 -07:00
Blake Kaplan
e4cff70d45 bug 580128 - Revert bogus change to which scope we use in nsXPCWrappedJSClass::CallMethod. r=jst Many thanks to Margaret and sdwilsh who helped track this one down. 2010-10-10 15:46:59 -07:00
Peter Van der Beken
dba11b628d Bug 580128. Remove XrayUtils::JSSLOT_PROXY_OBJ to fix leaks. r=mrbkap. 2010-10-10 15:46:45 -07:00
Peter Van der Beken
629ea4ef17 bug 580128 - Fix js_PrintObjectSlotName. r=mrbkap 2010-10-10 15:46:42 -07:00
Peter Van der Beken
579942e2b6 bug 580128 - Initialize vp before calling property op in JSProxyHandler::get. r=mrbkap 2010-10-10 15:46:34 -07:00
Peter Van der Beken
a4014cdf86 Bug 580128 - Fix NativeWrapper(window).document. r=mrbkap 2010-10-10 15:46:26 -07:00
Andreas Gal
695053b449 bug 580128 - Fix compartment bugs in XrayWrapper. r=mrbkap 2010-10-10 15:46:23 -07:00
Johnny Stenback
69b6a88894 Bug 580128. Reset gczeal after test completes. r=gal@uci.edu 2010-10-10 15:46:20 -07:00
Johnny Stenback
1cb512cddb Bug 580128. Properly switch compartments and wrap values when running xpcshell tests. r=mrbkap@gmail.com 2010-10-10 15:46:16 -07:00
Johnny Stenback
e08bf405b4 Bug 580128. Disable test that is not ready for the new wrappers yet. r=mrbkap@gmail.com 2010-10-10 15:46:13 -07:00
Peter Van der Beken
993f7e96bf bug 580128 - Fix evalInSandbox. r=mrbkap 2010-10-10 15:46:07 -07:00
Andreas Gal
2975066de7 bug 580128 - Make e4x anyname etc be per compartment, not in the default compartment. r=mrbkap 2010-10-10 15:46:05 -07:00
Andreas Gal
4467b41169 bug 580128 - Remove test that no longer works right. r=mrbkap 2010-10-10 15:43:06 -07:00
Johnny Stenback
1ca1b04765 bug 580128 - Move test that tests for existence of XrayWrapper's into chrome, and fix lookupMethod bug that was triggered by the test move. r=mrbkap
--HG--
rename : js/src/xpconnect/tests/mochitest/test_bug517163.html => js/src/xpconnect/tests/chrome/test_bug517163.xul
2010-10-10 15:42:45 -07:00
Blake Kaplan
8970b90a14 bug 580128 - Attempt to fix file:// URIs all ending up in the same compartment. r=peterv 2010-10-10 15:42:36 -07:00
Blake Kaplan
fbd8321aa9 bug 580128 - Make document.domain affect how we look up properties in addition to the security check. r=gal 2010-10-10 15:42:21 -07:00
Blake Kaplan
4982e8d388 bug 580128 - Distinguish between XOW XrayWrappers and XPCNW XrayWrappers and use the new knowledge in a few places. r=gal 2010-10-10 15:42:18 -07:00
Blake Kaplan
e5f38fdf0b bug 580128 - Use scopes when we have them to wrap into the right scopes. r=peterv 2010-10-10 15:42:12 -07:00
Johnny Stenback
fd0ffcbc96 bug 580128 - Fix getting doubled wrapped objects in XPConnect. r=mrbkap 2010-10-10 15:42:04 -07:00
Andreas Gal
ab068cae64 bug 580128 - Remove test that uses an obsolete wrapper. r=mrbkap 2010-10-10 15:42:01 -07:00
Jason Orendorff
73fb2b5453 Mainly just fix ExposedPropertiesOnly::check to ignore non-enumerable properties and return true when no property is found. r=mrbkap 2010-10-10 15:41:56 -07:00
Peter Van der Beken
6594bfed65 bug 580128 - Remove old wrappers. r=mrbkap 2010-10-10 15:41:40 -07:00
Blake Kaplan
0b6ae7d569 bug 580128 - Fix evalInSandbox returning objects in the wrong compartment. r=jst 2010-10-10 15:41:33 -07:00
Andreas Gal
3139de18ef bug 580128 - Try to allow UniversalXPConnect to have full access through "XOWs". 2010-10-10 15:41:24 -07:00
Andreas Gal
fe1f79bea1 bug 580128 - Don't think the outer window isn't "native". r=mrbkap 2010-10-10 15:41:20 -07:00
Andreas Gal
1148b3e425 Bug 580128. Update mochi tests to the new wrappers. r=mrbkap@gmail.com 2010-10-10 15:41:14 -07:00
Andreas Gal
4727d8eb7b bug 580128 - Fix compartment mistakes around document.domain stuff. r=mrbkap 2010-10-10 15:39:29 -07:00
Andreas Gal
1d93b82d53 bug 580128 - Allow proxies to answer the "hasInstance" question. r=mrbkap 2010-10-10 15:39:26 -07:00
Peter Van der Beken
9779e115ec bug 580128 - Allow NewResolve to set properties on wrappers. r=gal 2010-10-10 15:39:23 -07:00
Andreas Gal
133adc68a7 bug 580128 - Allow access when both sites have set document.domain. r=mrbkap 2010-10-10 15:39:19 -07:00
Johnny Stenback
c74184af3e Bug 580128. Use JS_WrapObject() in xpcJSWeakReference::Get() since it's the right API to use here. r=mrbkap@gmail.com 2010-10-10 15:39:17 -07:00
Andreas Gal
ff566b632b Bug 580128. Don't let script access only wrappers be passed to C++ code. r=peterv@propagandism.org 2010-10-10 15:39:08 -07:00
Andreas Gal
bce6505f32 bug 580128 - Fix wrapping of jsval parameters. r=peterv 2010-10-10 15:39:04 -07:00
Peter Van der Beken
b7e152241c Bug 580128 - Fix XPCVariant::VariantDataToJS to properly rewrap, r=gal. 2010-10-10 15:39:02 -07:00
Blake Kaplan
bba79011e0 bug 580128 - Make the XPCNativeWrapper constructor work to actually construct XrayWrappers. r=jst 2010-10-10 15:38:56 -07:00
Blake Kaplan
eed8d1aacc bug 580128 - Deal better with compartments around the xray holder object. r=gal 2010-10-10 15:38:39 -07:00
Blake Kaplan
e05232ec8b bug 580128 - Try to make test_wrappers-2.xul work a little better.
--HG--
rename : js/src/xpconnect/tests/chrome/file_wrappers-2.html => js/src/xpconnect/tests/mochitest/file_wrappers-2.html
2010-10-10 15:38:24 -07:00
Andreas Gal
b656a2c951 Bug 580128. Add more asserts to the interpreter to check that we're on the right compartment. r=mrbkap@gmail.com 2010-10-10 15:38:13 -07:00
Blake Kaplan
1b571f0ac4 bug 580128 - Attempt to make the XPCNativeWrapper constructor create XrayWrappers. r=jst 2010-10-10 15:37:44 -07:00
Johnny Stenback
41120f4b7c Bug 580128. Fix various mochi chrome tests to work with the new wrappers. r=mrbkap@gmail.com 2010-10-10 15:37:28 -07:00
David Mandelin
3024f662e3 Bug 602003: add jsd API to query valid script begin and end PCs, r=sayrer,jjb 2010-10-06 11:23:14 -07:00
Jason Orendorff
a214519d8f Bug 592664, Epilogue: caching eval scripts that we will never use again is necessary to avoid leaking them. rs=Waldo. (Note that my 4 previous commits today were all for bug 592664, not "592644" as the commit messages say.)
--HG--
extra : rebase_source : e7337a31313a4ef3d2d676be41291c832afa4c15
2010-10-07 19:15:45 -05:00
David Mandelin
50f3df9d0e Backed out changeset af020f2b9293 due to x64 build bustage. 2010-10-07 17:03:01 -07:00
David Mandelin
544d2fb3f2 Bug 602003: add jsd API to query valid script begin and end PCs, r=sayrer,jjb 2010-10-06 11:23:14 -07:00
David Mandelin
22817a28df Remove obsolete declarations for functions never defined or called 2010-10-07 16:33:40 -07:00
Nicholas Nethercote
63201dff5e Bug 601009 - TM: allow for guards that always exit. r=dmandelin. 2010-10-07 15:51:57 -07:00
Andreas Gal
96223bbef4 Make functions per compartment, and deep copy instead of clone them if needed (584789, r=mrbkap). 2010-09-29 23:17:29 -07:00
Andreas Gal
3d567b4e1a Bug 580128 - Small cleanups in XrayWrapper and first stab at enumeration. r=mrbkap 2010-10-10 15:37:22 -07:00
Blake Kaplan
a44ad43150 bug 580128 - Fix more compartment warnings. Work of multiple people. r=gal/peterv/jst 2010-10-10 15:37:19 -07:00
Blake Kaplan
9cc00701e9 bug 580128 - Add a test about double wrapped native objects in security wrappers. r=jst 2010-10-10 15:36:59 -07:00
Andreas Gal
c48124ac98 bug 580128 - Clean up our passing from JS-into-C++ story. r=peterv/mrbkap 2010-10-10 15:36:41 -07:00
Blake Kaplan
c563e195ac bug 580128 - Allow API consumers to pass in a new object altogether before trying to wrap in a security wrapper. r=gal/peterv 2010-10-10 15:36:38 -07:00
Mounir Lamouri
e2809794f9 Bug 580128. Make tests that now need to be chrome tests be chrome tests. r=jst@mozilla.org
--HG--
rename : js/src/xpconnect/tests/mochitest/test_bug484459.html => js/src/xpconnect/tests/chrome/test_bug484459.xul
rename : js/src/xpconnect/tests/mochitest/test_cows.html => js/src/xpconnect/tests/chrome/test_cows.xul
rename : js/src/xpconnect/tests/mochitest/test_wrappers.html => js/src/xpconnect/tests/chrome/test_wrappers-2.xul
2010-09-30 00:14:30 -07:00
Blake Kaplan
c3afb44113 bug 580128 - Implement XrayWrapper::toString. r=jst 2010-10-10 15:36:32 -07:00
Blake Kaplan
41aa9a74c8 bug 580128 - Use the shiny new API for finding XrayWrappers. r=jst 2010-10-10 15:36:20 -07:00
Andreas Gal
c6e9365a24 bug 580128 - Give XrayWrappers a flag they can query for. r=mrbkap 2010-10-10 15:36:04 -07:00
Blake Kaplan
9d0588387a bug 580128 - Allow unwrapping XrayWrappers via XPCNativeWrapper.unwrap. r=jst 2010-10-10 15:35:54 -07:00
Blake Kaplan
adcddf1716 bug 580128 - Stop returning the old wrappers from their constructors. r=jst 2010-10-10 15:35:48 -07:00
Jason Orendorff
2885319d0b Bug 580128 - Some more compartment fixes. r=gal 2010-10-10 15:35:46 -07:00
Blake Kaplan
ee23d64857 Bug 606106 - Avoid tripping an assertion under CC. r=gal
--HG--
extra : rebase_source : ca7c16354a3b9b2c506fa712d4391232770e9132
2010-10-25 12:12:43 -07:00
Blake Kaplan
a0d236fc57 Bug 606357 - Make jsd values not compartment mismatch. r=gal
--HG--
extra : rebase_source : f1b2f7b70f874868cf6f5aaa1ce4782b229ed5fe
2010-10-25 12:12:32 -07:00
Peter Van der Beken
3dae0dceb9 Bug 580128 - Always wrap Location objects in wrappers, even for same origin. r=mrbkap/gal 2010-09-29 10:00:52 -07:00
Johnny Stenback
26f851aa87 bug 580128 - Make the component loader work for content scripts with UniversalXPConnect. r=mrbkap 2010-09-29 10:00:52 -07:00
Johnny Stenback
9ddf730c9d bug 580128 - Deal with null principals (for e.g. dom worker compartments). r=mrbkap 2010-09-29 10:00:52 -07:00
Blake Kaplan
d01df23560 bug 580128 - Loosen our policy on what you're to see on cross-origin errors. r=jst 2010-09-29 10:00:52 -07:00
Jeff Walden
490ed1946a Bug 600128 - Properly record attempted addition of properties to non-extensible objects. r=jimb
--HG--
extra : rebase_source : af730b39d1f5d6b299e74278ec22d1920ec96e2c
2010-09-28 17:09:40 -07:00
Jeff Walden
9361db8ece Bug 601307 - Add a test for directness of the eval in |with (...) eval(...)| (assuming eval is the global eval function). r=jimb
--HG--
extra : rebase_source : 9a6b233cd99a3f9016c760f1249497d5a39d0c55
2010-10-01 18:40:11 -07:00
Jason Orendorff
44405a40a0 Bug 592644 - ES5 indirect eval. Part 2, factor out EvalCacheLookup and other misc. cleanup. r=brendan. 2010-10-07 15:01:45 -05:00
Jason Orendorff
b0245eb593 Back out changeset 7598b7ab2e76.
--HG--
extra : rebase_source : e3571c6433d01e53ba31639d4dc082ced93775f0
2010-10-07 15:35:08 -05:00
Brendan Eich
47bac3fdd5 Back out my last push (599009 botched followup). 2010-10-07 13:17:03 -07:00
Jason Orendorff
725599b967 Bug 592644 - ES5 indirect eval. Part 2, factor out EvalCacheLookup and other misc. cleanup. r=brendan.
--HG--
extra : rebase_source : 6c0dfea58dbbe3d9ce7aa6315b4c9c17c253a03a
2010-10-07 15:01:45 -05:00
Jason Orendorff
fdb2a0d1c5 Bug 592644 - ES5 indirect eval. Part 1, add support and tests. r=brendan.
--HG--
extra : rebase_source : 5d07f3e847b2adfb46f30f343af2e06d494012c3
2010-10-07 15:00:09 -05:00
Brendan Eich
084feb5c3f Nit-picks, mainly localizing and initializing the oldAttrs var, on patchwork for bug 599009 (r=bz). 2010-10-07 11:33:23 -07:00
Dave Herman
85db64ec81 bug 584787, r=pcwalton: Node shouldn't subclass Array 2010-10-07 10:59:45 -07:00
Boris Zbarsky
a69bdff134 Another bug 599009 followup. Don't assert things about uninitialized quantities. 2010-10-07 13:58:51 -04:00
Boris Zbarsky
31e1c63e5b Bug 599009 followup. Fix typo in assert. 2010-10-07 11:03:41 -04:00
Boris Zbarsky
4ebf2b027a Bug 599009. Don't use setProperty for JSOP_DEFFUN unless there's already a property with that name around, to work around the fact that setProperty will define with class-default getter and setter while we always want to define with stub getter and setter if we can. r=igor 2010-10-07 09:18:53 -04:00
Johnny Stenback
e0377cb0a6 Fixing bustage. 2010-10-06 19:50:46 -07:00
Andreas Gal
ea58e77c7b GetPropertyByName doesn't deep bail (602415, r=dvander). 2010-10-06 19:30:02 -07:00
Robert Sayre
012db2a6ae Merge mozilla-central to tracemonkey. 2010-10-06 18:48:56 -07:00
Nicholas Nethercote
5fca2f1eb1 Bug 599251 - nanojit: make Register a non-numeric type (TM-specific part). r=edwsmith. 2010-10-06 17:39:28 -07:00
Chris Jones
b9c731f6ce Bug 602393: Fix idiotic mistake causing JITs to be blacklisted on all android devices. r=dvander a=blocking-fennec-b1+ 2010-10-06 19:39:19 -05:00
Nicholas Nethercote
72a4aabfd5 Update nanojit-import-rev stamp. 2010-10-06 17:28:51 -07:00
Nicholas Nethercote
9e870a8e7b Bustage fix: add new file that was accidentally omitted for bug 599251.
--HG--
extra : convert_revision : 661718b83d398aa4c91f522f7d08ef5cea8e20a9
2010-10-06 15:51:01 -07:00
Nicholas Nethercote
2f1f5115bb Bug 599251 - nanojit: make Register a non-numeric type. r=edwsmith.
--HG--
extra : convert_revision : c7275693cde4c740f1a53ab73b9ec1963f6fe0cc
2010-10-06 15:30:56 -07:00
Nicholas Nethercote
753fbd4232 Fix compiler warning. No bug, r=jwalden via IRC. 2010-10-06 16:16:11 -07:00
Nicholas Nethercote
4592f12901 Bug 593931 - inline js_GetPropertyHelper() and friends more aggressively. r=cdleary. 2010-10-06 16:14:01 -07:00
Chris Leary
de62ad1b1c Fix trace_tests.py when showing output. (r=jorendorff) 2010-10-06 15:15:54 -07:00
Chris Leary
9ae5e5cf0f Bug 596775: re-enable YARR-JIT on ARM. (r=vladimir) 2010-10-05 18:20:06 -07:00
Jason Orendorff
60ab838ce4 Back out changeset 89006937466d (crashing tests on tinderbox). 2010-10-06 15:51:14 -05:00
Jason Orendorff
a55c843052 Bug 592644 - Indirect eval should be allowed under ES5. r=brendan. 2010-10-06 15:11:30 -05:00
Tom Schuster
537c5775ed Bug 601689 - Optimize GetArrayElement for arguments objects (r=lw)
--HG--
extra : rebase_source : 6360a47b95660da477a1f312ab8654a23e4019c1
2010-10-06 12:04:31 -07:00
Bill McCloskey
5ad8ad87f8 Fix trap instruction in trace-test, bump XDR version (r=dvander) 2010-10-06 11:58:33 -07:00
David Anderson
bf2b73455a Fix assert in InvokeConstructor (bug 602088, r=luke). 2010-10-06 11:06:18 -07:00
Bill McCloskey
05473d29a8 Bug 601986 - Make blockchain determination faster for with, flat closures (r=igor) 2010-10-06 10:41:36 -07:00
Bill McCloskey
7bfd4bbd01 Bug 601398 - Use new instructions, rather than source notes, to obtain block chain (r=igor) 2010-10-06 10:40:07 -07:00
Luke Wagner
d46bab180a Bug 601733 - respect deleted arguments-object properties in JSOP_GETELEM (r=dvander,dmandelin) 2010-10-06 10:09:40 -07:00
Sean Stangl
a725810965 Define isOOLPath if JaegerSpew is enabled. 2010-10-06 00:46:21 -04:00
Boris Zbarsky
0ede7a0b3c Bug 601968. Trace call(null). r=gal, a=sayrer 2010-10-06 00:00:28 -04:00
David Mandelin
7160d3fa59 Bug 601256: optimize access to globals in global eval using GNAME ops, r=dvander
--HG--
extra : rebase_source : 7c4bd486cc9dff1c65eda717fe34dd0fc36fe171
2010-10-05 11:02:05 -07:00
David Anderson
b84b230fa4 Don't build debug structures if not in debug mode (bug 596804, r=dmandelin). 2010-10-05 17:15:06 -07:00
David Anderson
dfffa5d871 Fix crash in AtSafePoint (bug 589398, r=dmandelin). 2010-10-05 16:41:06 -07:00
David Mandelin
d3637a9f66 Bug 595963: notify iterators about property deletion in array_splice, r=gal
--HG--
extra : rebase_source : de2700e0d3d7bce1453a73155c569d28cfbd4482
2010-10-01 11:12:01 -07:00
Nicholas Nethercote
081f38712d Bug 601771 - TM: possibly uninitialized variable in jsclone.cpp. r=jorendorff via IRC. 2010-10-05 14:50:15 -07:00
Luke Wagner
407b2242d7 Bug 598682, part 2 - Minor cleanups to jsinterp.h and jsinterpinlines.h (r=bhackett)
--HG--
extra : rebase_source : bd664d9cd752992faa280d8d3a848058883f57e4
2010-10-05 14:41:58 -07:00
Jim Blandy
b423689891 Bug 598682, part 1 - Minor cleanups to jsinterp.h and jsinterpinlines.h (r=lw)
--HG--
extra : rebase_source : ce5adce0b4f5155afd958f2a083085baf4dbe643
2010-10-05 14:41:55 -07:00
Luke Wagner
e5b2d0d102 Bug 601505 - Error instances don't have [[Construct]] (r=brendan)
--HG--
extra : rebase_source : 12c4c0432ca571f57993cabe3309810cfa3866d1
2010-10-04 16:22:26 -07:00