Commit Graph

17355 Commits

Author SHA1 Message Date
Igor Bukanov
fe5b8abdac Backed out changeset cd1252510d17 - I landed the wrong patch for bug 711623 2011-12-18 00:14:37 +01:00
Igor Bukanov
3627aab971 bug 711623 - rt->gcNumFreeArenas is not updated properly. r=terrence 2011-12-17 23:16:22 +01:00
Jim Blandy
0f12451749 Bug 708156: Ensure that JM compilation doesn't used out-of-date ScriptAnalysis structures. r=bhackett 2011-12-15 18:08:00 -08:00
Terrence Cole
8eb45701fc Bug 710946 - Add write barriers to getterObj and setterObj; r=billm
These fields are immutable, so they do not necessarily need a barrier for
incremental collection -- they do, however, need a barrier for generational
collection, and for reliable verification of the barriers.  It would be nice to
make these HeapPtr's, rather than manually calling the barrier functions, but
the fields are unioned with a function pointer, so this is not trivial.

--HG--
extra : rebase_source : f1f33198317e28fef3cc777f3e1e84725ba9cdc5
2011-12-15 18:03:20 -08:00
Andrew McCreight
0797d76208 Bug 680937, part 3 - implement and set preserve wrapper callback. r=jst 2011-12-15 17:45:49 -08:00
Andrew McCreight
541dcff9f2 Bug 680937, part 2 - Add native wrapper preservation hook, call it in WeakMap_set. r=billm 2011-12-15 17:45:21 -08:00
Andrew McCreight
bdf4ad1f26 Bug 680937, part 1 - Don't always mark wrapped native keys. r=billm 2011-12-15 17:44:34 -08:00
Terrence Cole
6191221385 Bug 711266 - JSRope::flatten needs unconditional post barriers; r=billm
For incremental barriers we check if compartment()->needsBarrier to defer the
cost when we are not in a GC cycle.  We cannot do this for cross-generation
barriers.  We need to remove the checks on the post barriers and rename the enum
to something  more specific.
2011-12-15 17:34:59 -08:00
Terrence Cole
8052b64a6e Bug 710950 - JSScript::function_ should be barriered; r=billm
The field is immutable, so we can return an unwrapped pointer and don't have to
worry about it for incremental barriers.  We do need post barriers on it during
init for detecting cross-generation pointers, however.  Just make it a normal
HeapPtr.

--HG--
extra : rebase_source : a52d3d74ab5bf3ae926b9da5212825ce1c0ae93d
2011-12-15 15:27:58 -08:00
Felix Fung
14c8124b0a Bug 710996 - Double-assignment in JS_GetValidFrameCalleeObject(). r=jorendorff 2011-12-15 00:28:11 -08:00
Igor Bukanov
908fd20e0d bug 711095] - make GC scanning compatible with the incremental GC. r=billm
--HG--
extra : rebase_source : 5328784491f322824977ba80dd302cc13e84520a
2011-12-15 21:07:45 +01:00
Igor Bukanov
eee1ff8508 bug 710581 - fixing GCC 4.6 warning. r=bhackett
--HG--
extra : rebase_source : ae76549e73945844a75c1d518682b5db4af4cd1a
2011-12-14 20:51:56 +01:00
Terrence Cole
073e795eed Bug 711165 - DenseArray are missing some barrier calls; r=billm
The copy path was caught, the init path was not.  This does not matter for
incremental barriers, but will for cross-generation barriers.

--HG--
extra : rebase_source : 4fa7c4cc860cd9265ccd598340941840ee4e23e9
2011-12-15 15:27:32 -08:00
Brian Hackett
3df3c83b7c Correctly compute fun.caller for cloned functions, bug 710780. r=luke 2011-12-15 14:09:49 -08:00
David Mandelin
c4568252b9 No bug, remove file needed only for nanojit landings 2011-12-15 14:07:59 -08:00
Chris Leary
0afa159f1a Bug 709622: Conditional with empty consequent causes strict strict warning. (r=Waldo) 2011-12-13 13:22:37 -08:00
Bobby Holley
9440548e3f Bug 711203 - enable XPConnect wstring test. r=khuey 2011-12-15 13:27:42 -08:00
Luke Wagner
80d107697c Bug 703645 - rm SRC_LOOPHEAD (r=waldo)
--HG--
extra : rebase_source : 9301aa0af4e81a8725f05c702145c89a4ece4db6
2011-11-22 11:37:57 -08:00
Luke Wagner
83117ca3ba Bug 704478 - Fix single-threaded runtime assertions in shell workers (r=jorendorff)
--HG--
extra : rebase_source : 13deb300ee2aa3d5518549d4f296b276a0da4e42
2011-11-22 11:37:57 -08:00
Luke Wagner
17636ec3af Bug 704351 - Fix ValueToScript in js shell (r=waldo)
--HG--
extra : rebase_source : 0c072081ed9699017ddae80404c24562c6de3536
2011-11-22 11:37:57 -08:00
Luke Wagner
e77e503d98 Bug 705879 - Avoid touching stale generator frame in js_CloneBlockObject (r=bhackett)
--HG--
extra : rebase_source : be217f5a36fb69c37fe09e41f34b7f031a3e8224
2011-12-07 17:14:35 -08:00
Luke Wagner
a5fc0b3da5 Bug 624621 - Allow embeddings to attach an extra 'origin' principal to scripts (r=mrbkap)
--HG--
extra : rebase_source : 85ed15c9f230bc342e7810e62abace18a7177c4b
2011-06-27 17:42:53 -07:00
Bobby Holley
ad05f2e304 Bug 702491 - Don't set JSPROP_READONLY for accessor properties. r=Waldo 2011-12-15 11:40:57 -08:00
Bill McCloskey
bc4234efe8 Bug 708303 - Back out 1deb23332fb5 for orange 2011-12-15 10:30:09 -08:00
Jeff Walden
c37a119a72 Bug 709322 - Create break/continue statements using constructors that don't examine the token stream. r=jorendorff
--HG--
extra : rebase_source : a243448ec54ace56b108cd0fa548e36a6d539603
2011-12-09 20:26:07 -05:00
Jeff Walden
a0377b75a9 Bug 710192 - JSOP_SETPROP does not imply the property name isn't an index. r=evilpies
--HG--
extra : rebase_source : 7e284895ce88aa47c2f9f009aa3e0614161c35ea
2011-12-13 15:53:29 -05:00
Bill McCloskey
c1d005dc3f Bug 708805 - Add write barrier to JSFunction::env (r=bhackett) 2011-12-15 09:41:04 -08:00
Bill McCloskey
e347431766 Bug 708303 - Use pinReg/unpinReg more in write barriers (r=dmandelin) 2011-12-15 09:40:59 -08:00
Bill McCloskey
f0e9a0107f Bug 708228 - Fix infinite write barrier recursion in regexp purge (r=cdleary) 2011-12-15 09:40:51 -08:00
Brian Hackett
b9a0fd7215 Watch for native functions when cloning methods accessed by fun.caller, bug 709634. r=luke 2011-12-15 09:17:11 -08:00
Brian Hackett
ba149c3e2a Backout 36fa9b176a91 (bug 710516) for M1 bustage. 2011-12-15 09:07:00 -08:00
Brian Hackett
3a8434d343 Watch for GCs under nativeLookup, bug 709863. r=dvander 2011-12-15 09:01:00 -08:00
Brian Hackett
c12c6c99d0 Properly watch for indexed prototypes and configured properties in array prototype, bug 709067. r=luke 2011-12-15 08:51:09 -08:00
Brian Hackett
1890d76417 Remove JSObject::containsSlot, bug 710516. r=luke 2011-12-15 08:06:00 -08:00
Nathan Froyd
525cb490bb Bug 560349 - make PodZero use inline loops rather than memset; r=luke 2011-12-08 19:59:08 -05:00
Mike Hommey
897722e75d Bug 709721 - Move video and audio libraries in a gkmedias library on Windows. r=khuey 2011-12-15 06:40:20 +01:00
Jeff Walden
896dcba95d Silence unused-value warnings with various Valgrind macros in clang, and add a silencing instance to jsgc.cpp. No bug, rs=jorendorff, a=philor 2011-12-13 17:31:08 -05:00
Andrew McCreight
5ee90597ab Bug 709162 - crash test for cycle collector dumping. rs=bholley a=mbrubeck 2011-12-14 16:02:12 -08:00
Andrew McCreight
b384695ef1 Bug 710761 - test if CC listener begin fails, don't call listener again. rs=bholley 2011-12-14 15:56:37 -08:00
Andrew McCreight
9ecfbe34d7 Bug 709160 - fix ObjShrink fallout in nsXPConnect::Traverse CC printing code. r=luke 2011-12-14 15:56:37 -08:00
Igor Bukanov
1a10f86b5f bug 708548 - removal unused declarations and definitions of *OnTrace functions. r=dvander a=khuey-on-irc
--HG--
extra : rebase_source : ea767043f6af276c5cdfeb0301491fc89b49c931
2011-12-08 10:29:21 +01:00
Tom Schuster
0138dca053 Bug 590036 - Optimize cases where we probably eval an array, that would be parsable by JSON. r=jorendorff a=SpiderMonkey 2011-12-13 18:24:10 +01:00
Tom Schuster
211f7a7fb7 Bug 706924 - Rename JSOP_PUSH to JSOP_UNDEFINED, and remove dead code from the decompiler. r=Waldo a=SpiderMonkey 2011-12-13 18:23:37 +01:00
Andrew Quartey
e51c16190c Bug 706010 - Remove NS_SPECIALIZE_TEMPLATE and HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX; r=khuey a=cleanup/removal 2011-12-13 14:17:59 +00:00
Nicolas Pierron
43f76d1e21 Bug 700517 - Add "ret imm16" instruction for x86 and x86_64; r=dvander a=not-libxul 2011-12-13 14:17:57 +00:00
Igor Bukanov
7defa0e7fa Bug 708382 - GC marking - one common stack and tail recurssion elimination. r=wmccloskey. a=ms2geronirc
--HG--
extra : rebase_source : 580b30f289f4e1b1a1980bb000fc25e6e3cf27e7
2011-12-07 14:22:47 +01:00
Igor Bukanov
d4fb81a314 Bug 708382 - GC marking - merging string and object stacks. r=wmccloskey
--HG--
extra : rebase_source : ca47672218af276ed0bbdfd53add6207c524179b
2011-12-08 10:29:43 +01:00
Ms2ger
865e9eff78 Bug 709603 - Remove unused variables 'type' in CallMethodHelper::Get{ArraySize,InterfaceType}FromParam; r=bholley a=ehsan 2011-12-13 09:49:31 +11:00
Justin Lebar
e492c4de05 Bug 696535 - Use absolute paths in pythonpath.py. r=bsmedberg a=test-only 2011-12-12 15:44:41 -05:00
Jim Blandy
e954692870 No bug: Bring jorendb up to date with current state of Debugger object. r=NPOB,jorendorff 2011-12-09 14:12:36 -08:00
Nicholas Nethercote
2a7afd1ec3 Bug 705987 - Use mallocSizeOf in the layout memory reporters. r=khuey,bzbarsky 2011-12-08 21:01:52 -08:00
Ed Morley
eed3b8a0a7 Backout ee420d0f03df (bug 697479) for Win opt build failures 2011-12-09 09:30:25 +00:00
Jason Orendorff
e0ae2a9e78 [revised per backout affc2782a250, jimb] Implement simple Map and Set builtins for JS. Bug 697479, r=jimb. 2011-12-08 21:04:10 -08:00
Brian Hackett
3298551d83 Ensure consistent warnings when accessing undefined names, bug 706240. r=waldo 2011-12-08 19:50:09 -08:00
Brian Hackett
aebe1b08d1 Avoid sharing owned base shapes between multiple shapes, bug 707842. r=luke 2011-12-08 19:37:17 -08:00
Christian Holler
3864a45f80 Ensure a consistent enumeration order when compiled in deterministic mode, bug 707017. r=luke 2011-12-08 19:28:36 -08:00
Brian Hackett
2c5ff8c206 Refine shape changes done to preserve teleporting invariant on prototype changes, bug 707515. r=luke 2011-12-08 19:23:31 -08:00
Rafael Ávila de Espíndola
e0e8413832 Bug 708851 - Any gcc that supports firefox support -pipe. 2011-12-08 22:16:06 -05:00
Nicholas Nethercote
5ec7ee41ae Bug 704400 - Implement --enable-dmd. r=khuey. 2011-12-08 19:09:36 -08:00
David Anderson
c552bd7c52 Cap objects to a saner memory limit (bug 705855, r=dmandelin).
--HG--
extra : rebase_source : 551bbcee86d617f3a55a0a3274083ae54af4b294
2011-12-08 17:46:39 -08:00
Ed Morley
2d2a1931b2 Backout edecc56b7c80 and ad8aee962832 (bug 697479) for check-jit-test failures 2011-12-09 01:47:42 +00:00
Jason Orendorff
658f81deb0 Add missing file and fix for bug 697479 (rev ad8aee962832 added failing tests). No bug#, r=orange.
--HG--
extra : rebase_source : b104347e7f77f0856cdf1e83b923dfab74f1c8d9
2011-12-08 19:05:52 -06:00
Chris Leary
7a0e7a895a Bug 708873: Write unescape to match spec w/minor optimization. (r=Waldo) 2011-12-08 16:30:56 -08:00
Jason Orendorff
ef15d0fa6d Credit where it's due. No bug#, rs=jimb on IRC. 2011-12-08 17:59:59 -06:00
Jason Orendorff
09f636c792 Implement simple Map and Set builtins for JS. Bug 697479, r=jimb. 2011-12-08 17:54:51 -06:00
Jason Orendorff
6ec53cbaee Remove all mentions of imacros from js/src. Bug 708836, r=sfink. 2011-12-08 16:17:55 -06:00
Jim Blandy
be2a34ce64 Bug 708838: Use findReferences instead of countHeap to make js1_8/extensions/regress-422269.js fail less randomly. r=jwalden
The SpiderMonkey test js/src/tests/js1_8/extensions/regress-422269.js fails
randomly, because it requires a certain object to be garbage-collected to
pass. With a conservative stack scanner, an object being retained is not
necessarily a bug, and in general, the engine makes no promises about which
objects it retains and which it doesn't.

The JavaScript shell's new findReferences function allows us to find all GC
edges referring to the object, and filter out ones we know to be benign.
This patch changes the test to use findReferences.
2011-12-08 14:51:35 -08:00
Rafael Ávila de Espíndola
7227f67d0a Bug 708065 - Fix configure check for -pipe. r=ted.
With the shell used on OS X, the test we were trying to compile was

#include <stdio.h>
int main() { printf("Hello World
"); exit(0); }

which fails.
2011-12-08 17:01:21 -05:00
Jason Orendorff
2c05767530 A first cut at Debugger.Environment. Bug 690558, r=jimb.
--HG--
extra : rebase_source : 3cafc4e635f11b3219285fdf6fad952c15765f96
2011-12-08 14:54:26 -06:00
Jason Orendorff
6d4a9937bf Remove the last comment referring to imacros. No bug#, no_r=me.
--HG--
extra : rebase_source : ec684275939472f47dd5faee69c3b4023483d6e2
2011-12-08 14:28:13 -06:00
Jason Orendorff
579d99f332 Fix JS_TraceChildren crash triggered by findReferences. Bug 708261, r=jimb.
--HG--
extra : rebase_source : 336ebf499834345d364955000977a952014ea2bb
2011-12-08 14:23:31 -06:00
Jason Orendorff
92b99889d2 Remove another dead local variable so JS can build without warnings on GCC. No bug#, no_r=me.
--HG--
extra : rebase_source : 6f76525855ffc9a8b02ba9770109b490b9bde7c3
2011-12-08 14:14:01 -06:00
David Mandelin
5c6f651bcf no bug, mark two slow tests as slow 2011-12-08 12:21:40 -08:00
Ed Morley
cdb3765666 Bug 643167 - js/src configure should build js-config with MAKE, not GMAKE (based on patch by Kyle Huey); r=ted
* Switches js-config generation to use $MAKE rather than $GMAKE, since using
  make.exe on pymake builds causes issues:
  "config/autoconf.mk:354: *** Windows-style srcdir being used with GNU make"
* Ensures $MAKE is defined for configure when using client.mk
* For standalone js builds client.mk won't be used, so sets $MAKE manually if it
  isn't already defined, to avoid bug 605133 comment 22.
2011-12-08 20:02:26 +00:00
Ed Morley
178855ca6d Bug 707593 - Clean up makefile generation in js/src configure; r=ted
* Adds the omitted js/src/analysis-tests/Makefile
* Adds conditionals to prevent makefiles being generated where they won't be used
2011-12-08 20:02:25 +00:00
David Mandelin
99b9937e01 no bug, fix warning in jsobj.h 2011-12-08 12:03:16 -08:00
David Mandelin
1adef23ad1 no bug, fix warning in jsscope.h 2011-12-08 12:02:29 -08:00
David Mandelin
d5033addd5 Bug 707341: remove VOUCH_DOES_NOT_REQUIRE_STACK, r=jorendorff 2011-12-07 17:49:10 -08:00
Bill McCloskey
60a6742def Bug 705332 - Re-enable printing filename in quiet builds (r=njn) 2011-12-08 10:14:06 -08:00
Brian Hackett
f2b33980fa Fix incorrect use of shape->slot() when clearing native objects, bug 708006. r=luke 2011-12-08 08:58:39 -08:00
Brian Hackett
4b14507876 Fix test when starting compilation of loops with unreachable backedges and traps at the head, bug 707384. r=dvander 2011-12-08 08:57:17 -08:00
Jeff Walden
461e38f5e8 Bug 704313 - Implement mozilla/StdInt.h. r=cjones
--HG--
extra : rebase_source : b221134fdfbde13a37a6ef621bba3ca183a46101
2011-11-22 17:42:57 -08:00
Jeff Walden
498c8c0db5 Bug 704313 - Import, unmodified, the Microsoft-compatible <stdint.h> implementation from the 'msinttypes' Google Code project, r26, into mfbt. r=gerv for license compatibility and the addition to toolkit/content/license.html, r=cjones for the code
--HG--
extra : rebase_source : 9e1105b916d15023a91ffcca8b26445bc1bd930d
2011-11-22 16:40:45 -08:00
Mike Hommey
9b0673934e Bug 695843 part 9 - Use FileLocations in the component manager. r=bsmedberg 2011-11-08 18:10:51 +01:00
Mike Hommey
96e4d7b9da Bug 695843 part 8 - Properly handle jar-in-jars when importing modules. r=mrbkap 2011-12-08 11:03:36 +01:00
Mike Hommey
a66aad179b Bug 695843 part 7 - Use the URI string as the key for the various mozJSComponentLoader hashtables. r=mrbkap 2011-11-08 18:08:49 +01:00
Mike Hommey
7d9003960a Bug 703531 - Fix ARMAssembler::getOp2RegScale on < ARMv5. r=cdleary 2011-12-08 09:13:12 +01:00
Nicholas Nethercote
547f1793b5 No bug. Remove last trace of removed 'lirasm' directory. r=dvander. 2011-12-07 18:52:07 -08:00
Brian Hackett
998e1208e3 Don't try to correlate scripts with functions in JSD interface, bug 707613. r=luke 2011-12-07 13:41:27 -08:00
Brian Hackett
4e750df483 Remove JSOP_TRAP, bug 707454. r=jorendorff 2011-12-07 13:15:48 -08:00
Bill McCloskey
59ffebfd64 Bug 707051 - Change MarkChildren for shapes (r=igor) 2011-12-07 09:52:16 -08:00
Bill McCloskey
d5a72b7f8e Bug 704795 - Fix setprop write barrier for non-objects (r=bhackett) 2011-12-07 09:39:40 -08:00
Jeff Walden
e51511685a Bug 707383 - Rename ValueTo{ECMA,}{Ui,I}nt32 so that To{Ui,I}nt32 is the ECMA spec method and NonstandardTo{Ui,I}nt32 is the non-standard JSAPI method functionality. r=luke 2011-12-05 17:10:02 -05:00
Jeff Walden
894d37708d Bug 707061 - Rename js_ValueToString to ToString. Also, consistent with ToObject, make ToString include an inline already-string fast path, and make ToStringSlow be an out-of-line slow path for the case where the value is not a string (asserting that this is the case). r=luke 2011-12-01 19:35:44 -08:00
Jeff Walden
c16d837e9a Kill the warnings. KILL THEM WITH FIRE. No bug, r=sparky 2011-12-06 11:58:37 -05:00
Igor Bukanov
3150828a8b bug 708231 - fix set-but-unused warnings reported by GCC 4.6 in jsexn.cpp. r=evilpies 2011-12-07 16:21:40 +01:00
Blake Kaplan
b25121961d Bug 708215 - Report errors from the safe JS context. r=bent 2011-12-07 18:12:20 +08:00
Josh Matthews
cb25455930 Bug 696450 - Add increment/decrement methods to PointerType jsctype objects. r=bobbyholley 2011-11-08 16:06:19 -05:00
David Mandelin
27ae7a604d Bug 706316: don't clobber pinned registers in ImmutableSync, r=dvander 2011-12-06 17:06:56 -08:00
David Mandelin
0209785fec Bug 702572: always clone function in DEFLOCALFUN, r=jorendorff 2011-12-06 16:27:41 -08:00