Commit Graph

17311 Commits

Author SHA1 Message Date
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
Brian Hackett
fda96f98c9 Properly model semantics of prototype setters or permanent properties when analyzing definite 'new' script properties, bug 706808. r=luke 2011-12-06 16:09:04 -08:00
Brian Hackett
207a8f80e8 Improve exception messages when an error occurs in the middle of a decomposed opcode, bug 706532. r=luke 2011-12-06 15:58:35 -08:00
Brian Hackett
c579a910f7 Properly record dependency on functions having lazy arguments, bug 707641. r=dvander 2011-12-06 14:56:48 -08:00
Bill McCloskey
7352868e44 Bug 707750 - Invoke write barrier for setDenseArrayInitializedLength (r=bhackett) 2011-12-06 14:27:50 -08:00
David Mandelin
477aab886f Bug 660437: Fix conversion of non-numeric types to typed array elements, r=luke
--HG--
extra : rebase_source : 6d4fe2723b173215fa1412ab5127cb993d46c1d8
2011-12-06 14:24:39 -08:00
Igor Bukanov
072afd2333 Bug 707664 - atoms compartment should beunlocked during OOM reporting. r=luke 2011-12-05 21:28:07 +01:00
Igor Bukanov
d5bca61dfd Bug 707130 - Fix GCC 4.6 warnings coming from callgrind macros. r=jorendorff 2011-12-04 23:59:30 +01:00
Chris Leary
2d56623ee9 Bug 704369: Factor unary emit. (r=Waldo) 2011-11-22 12:13:41 -08:00
Chris Leary
460f707092 Bug 704369: Move unary emit. (r=Waldo) 2011-11-22 12:10:21 -08:00
Chris Leary
0a23856abb Bug 704369: Factor array emit. (r=Waldo) 2011-11-22 12:04:57 -08:00
Chris Leary
2032a479d9 Bug 704369: Move array emit. (r=Waldo) 2011-11-22 12:03:16 -08:00
Chris Leary
365d5cb657 Bug 704369: Factor object emit. (r=Waldo) 2011-11-22 11:55:04 -08:00
Chris Leary
389713c2fb Bug 704369: Move object emit. (r=Waldo) 2011-11-22 11:52:51 -08:00
Chris Leary
7745f6225f Bug 704369: Factor conditional expr emit. (r=Waldo) 2011-11-22 11:46:18 -08:00
Chris Leary
0e654a6c18 Bug 704369: Move conditional expr emit. (r=Waldo) 2011-11-22 11:45:30 -08:00
Chris Leary
597c0688c7 Bug 704369: Move synthetic statements emit. (r=Waldo) 2011-11-22 11:42:27 -08:00
Chris Leary
bebfdafb67 Bug 704369: Factor label emit. (r=Waldo) 2011-11-22 11:32:41 -08:00
Chris Leary
259d94c08e Bug 704369: Move label emit. (r=Waldo) 2011-11-22 11:31:35 -08:00
Chris Leary
019a01edc6 Bug 704369: Factor inc/dec emit. (r=Waldo) 2011-11-22 11:28:39 -08:00
Chris Leary
50972c49bb Bug 704369: Move inc/dec emit. (r=Waldo) 2011-11-22 11:26:47 -08:00
Chris Leary
2c5efb6b54 Bug 704369: Factor logical emit. (r=Waldo) 2011-11-22 11:23:52 -08:00
Chris Leary
203e7ed504 Bug 704369: Move logical emit. (r=Waldo) 2011-11-22 11:21:28 -08:00
Chris Leary
b0b21c4703 Bug 704369: Factor call/new emit. (r=Waldo) 2011-11-22 11:17:42 -08:00
Chris Leary
53fdd77185 Bug 704369: Move call/new emit. (r=Waldo) 2011-11-22 11:16:49 -08:00
Chris Leary
4ef470d2b4 Bug 704369: Factor delete emit. (r=Waldo) 2011-11-22 11:12:12 -08:00
Chris Leary
cac1e70334 Bug 704369: Move delete emit. (r=Waldo) 2011-11-22 11:09:15 -08:00
Chris Leary
6a71cf368f Bug 704369: Factor statements emit. (r=Waldo) 2011-11-22 11:05:32 -08:00
Chris Leary
fc83a52493 Bug 704369: Move statements emit. (r=Waldo) 2011-11-22 10:59:25 -08:00
Chris Leary
5768ef7d97 Bug 704369: Factor return emit. (r=Waldo) 2011-11-22 10:48:49 -08:00
Chris Leary
a93ced5fd1 Bug 704369: Move return emit. (r=Waldo) 2011-11-22 10:47:24 -08:00
Chris Leary
f8134f3546 Bug 704369: Factor continue emit. (r=Waldo) 2011-11-22 10:45:37 -08:00
Chris Leary
d99969042a Bug 704369: Move continue emit. (r=Waldo) 2011-11-22 10:43:10 -08:00
Chris Leary
a9f171e11c Bug 704369: Factor break emit. (r=Waldo) 2011-11-22 10:41:11 -08:00
Chris Leary
9871fc84fa Bug 704369: Move break emit. (r=Waldo) 2011-11-22 10:40:06 -08:00
Chris Leary
49f2e349f3 Bug 704369: Factor while emit. (r=Waldo) 2011-11-22 10:37:25 -08:00
Chris Leary
5787980ae7 Bug 704369: Move while emit. (r=Waldo) 2011-11-21 17:59:27 -08:00
Chris Leary
efabf9287d Bug 704369: Factor do-while emit. (r=Waldo) 2011-11-21 17:56:17 -08:00
Chris Leary
7e53b59f0e Bug 704369: Move do-while emit. (r=Waldo) 2011-11-21 17:54:57 -08:00
Chris Leary
8ac39a0b8a Bug 704369: Factor function emit. (r=Waldo) 2011-11-21 17:50:43 -08:00
Chris Leary
c65cde124f Bug 704369: Move function emit. (r=Waldo) 2011-11-21 17:29:56 -08:00
Chris Leary
d0ca3bb198 Back out c0e237b26fe2 because it's folded. (r=#jsapi) 2011-12-06 11:52:59 -08:00
Jim Blandy
f02ea01423 Bug 687683: Collect resumption values from onEnterFrame handlers, and respect them. r=jorendorff
This patch makes SpiderMonkey respect resumption values returned by
Debugger onEnterFrame handler functions, as documented.

In Debugger, we change fireEnterFrame to collect a resumption value from
the hook, and change onEnterFrame and slowPathOnEnterFrame to propagate
them out. These now need an 'rval' argument, so that they can return forced
return values and exceptions.

ScriptDebugPrologue now accepts a JSTrapStatus from Debugger::onEnterFrame,
takes care of placing the return value or exception where it belongs, and
returns a JSTrapStatus.

Calls to ScriptDebugPrologue now handle the JSTrapStatus:
- at the head of js::Interpret;
- in the JSOP_NEW/JSOP_CALL/JSOP_FUNCALL/JSOP_FUNAPPLY case;
- in stubs::ScriptDebugPrologue, which JM epilogues call; and
- in the REJOIN_THIS_PROTOTYPE case in js_InternalInterpret (you must add a
  JS_GC call to ic::GetPropNoCache for Debugger-onEnterFrame-resumption-05.js to
  hit this reliably).

We also rearrange the js_InternalThrow JSTrapStatus-handling switch statement to
have an explicit default case that raises a JS_NOT_REACHED assertion, instead of
just omitting JSTRAP_CONTINUE.
2011-12-06 11:40:28 -08:00
Jim Blandy
de97f716fe Bug 687683: Assert that REJOIN_CHECK_ARGUMENTS and REJOIN_FUNCTION_PROLOGUE are never generated in debug mode. r=bhackett1024
Explanation in the comments.

Fixing bug 699196 properly entails replacing the assertion this patch adds
with real code to call ScriptDebugPrologue. If this patch lands, hopefully
the person fixing 669196 will notice that and write tests that reach the
assertion/new code, but just to make sure we should probably add a note to
that bug about it.
2011-12-06 11:40:27 -08:00
Jim Blandy
b756212969 Bug 687683: Some random comment fixes I came across. r=jorendorff 2011-12-06 11:40:27 -08:00