Commit Graph

7389 Commits

Author SHA1 Message Date
David Anderson
30300db88d Recursion needs to fix up argsobj when it pops frames on trace (bug 531298, r=dmandelin). 2009-12-01 10:37:30 -08:00
Robert Sayre
5d34830070 Backout bug 473228 and its follow-up, temporarily, to attempt a clean merge of other stuff. 2009-12-01 09:57:20 -05:00
Robert Sayre
708784babe Merge backout. 2009-12-01 09:54:57 -05:00
Igor Bukanov
a3f5d5c07b bug 531037 - eval fixes. r=brendan 2009-12-01 00:01:11 +03:00
Robert Sayre
0340e89b31 Add a call to reportCompare so this test passes. 2009-11-30 14:15:50 -05:00
Luke Wagner
3dcb8555c2 Bug 530366 - don't use std::sort in jsregexp (r=dmandelin) 2009-11-30 09:03:43 -08:00
Robert Sayre
57d0498f8e Add a missing credit to trigger a re-compile. 2009-11-30 11:15:10 -05:00
Igor Bukanov
13fbc6f2c6 Backed out changeset b774250f04d3 - the landed patch for bug 424558 has regressed. 2009-11-30 15:33:04 +03:00
Igor Bukanov
a09a76650d bug 424558, r=brendan 2009-11-29 20:33:57 +03:00
Jim Blandy
35c480afbf Bug 530018 - Add comment to explain why typedef is neceessary. (no r) 2009-11-27 17:05:21 -08:00
Leon Sha
1e26add917 Bug 530018 - js_DecompileToString Undefined symbol. r=jim 2009-11-27 09:22:24 +08:00
Nicholas Nethercote
2ea546e6fd Bug 531224 - TM: associate JS source locations with fragments properly. r=graydon. 2009-11-26 13:52:22 -08:00
Jim Blandy
35e434274a Bug 499524: Always check for duplicates when destructuring params are present. r=igor
Detect duplicate names in parameter lists that include destructuring
parameters, regardless of whether the duplication becomes before or
after the destructuring. Let strict mode complaints take care of
themselves after the body has been parsed.

In BindDestructuringArg, there should never be an entry in tc->decls
for the given name if the call to js_LookupLocal didn't detect a
duplicate argument, so we can simply assert that tc->decl.lookup
returns NULL, instead of checking it.

In HashLocalName, we can tighten the assertion: both the new and
existing entries must be JSLOCAL_ARG, since we detect all non-ARG
(i.e., destructuring) duplicates early.
2009-11-26 10:23:52 -08:00
Nicholas Nethercote
4437c0eac2 Bug 531165 - TM: move SoftFloatFilter upstream of CseFilter. r=gal. 2009-11-25 19:10:34 -08:00
Igor Bukanov
13dbd2ef1b bug 528116 - trace-test test case 2009-11-26 01:39:01 +03:00
Brendan Eich
5120898335 Tolerate race condition or broken resolve hook (530507, r=jorendorff). 2009-11-25 13:49:15 -08:00
Igor Bukanov
4f0dd855b8 bug 528116 - scope chain lookup fix when recording an eval script. r=dmandelin 2009-11-25 21:16:06 +03:00
David Mandelin
02f2a01692 Bug 530969: fix testing of XULRunner properties in jstests.py manifest parsing, r=njn 2009-11-24 18:57:09 -08:00
Robert Sayre
57982d9fff Merge mozilla-central to tracemonkey. 2009-11-25 10:48:43 -05:00
Leon Sha<leon.sha@sun.com>
26ceb9e49b Update nanojit-import-rev stamp. 2009-11-25 15:32:07 +08:00
Leon Sha<leon.sha@sun.com>
8b045f25a8 Bug 529849 - Assertion failed: _allocator.free & rmask(r) (../../../js/src/nanojit/Assembler.cpp:433). r=gal
--HG--
extra : convert_revision : 23ed78f42df2b7b1a590fc7e986e6d446ef4d3d4
2009-11-25 15:24:23 +08:00
Nicholas Nethercote
dfc1dd039d Bug 515313 - nanojit: finish killing reservations. r=edwsmith.
--HG--
extra : convert_revision : 1b6cb808f3048c25857613fa6e77e865fee51d8e
2009-11-24 23:00:23 -08:00
Nicholas Nethercote
a603d864d1 Bug 512181 - nanojit: rework TMFLAGS=assembly,regalloc,activation. r=edwsmith.
--HG--
extra : convert_revision : 43e64a1135f17761aad95ee7ce2d1692aa937579
2009-11-24 22:38:51 -08:00
Nicholas Nethercote
90a5b3e9bc Bug 505662 - nanojit: kill operandCount. r=graydon,edwsmith.
--HG--
extra : convert_revision : ab7d225a3c8b1562eb74336099abc564f770e7f3
2009-11-24 22:21:27 -08:00
Nicholas Nethercote
e97530faf2 Bug 512181 - nanojit: rework TMFLAGS=assembly,regalloc,activation (the TM-specific part only, which is independent of the NJ-specific part). r=graydon. 2009-11-24 22:42:16 -08:00
Andreas Gal
2579df36c1 -r 2009-11-24 19:35:17 -08:00
Andreas Gal
58b9ca067f Avoid frequent reallocs in Queue::ensure (530936, r=luke). 2009-11-24 17:04:24 -08:00
Nicholas Nethercote
7378bf1f05 Update nanojit-import-rev stamp. 2009-11-25 11:11:02 +11:00
Jacob Bramley
9e77d13c80 Add Nanojit configuration flags (such as --sse) to lirasm. (bug 526974, r=nnethercote)
--HG--
extra : convert_revision : baa27feb8fb4fdaf1ecb0839c4bd468e83da2aeb
2009-11-24 11:05:20 +00:00
Nicholas Nethercote
ac806a733d Bug 529900 - 64-bit - lots of assertions, crashes... r=edwsmith.
--HG--
extra : convert_revision : 3d99d6e37ba85c13d449352b8ce8283d4e0cbf0d
2009-11-24 15:30:04 +11:00
Nicholas Nethercote
b33368aede Bug 525379 - nanojit: make the _nIns/_nExitIns swap hack more consistent. r=edwsmith.
--HG--
extra : convert_revision : bad9394918255f4afcbff259153dc9d8c9afad25
2009-11-24 14:56:33 +11:00
Nicholas Nethercote
f0322be6c3 Bug 530713 - nanojit: fix LirReader::read() badness. r=edwsmith.
--HG--
extra : convert_revision : 39a8b47fd38af397e7fe0196637dc2e66cadb56b
2009-11-24 14:23:20 +11:00
Brendan Eich
85eb51c433 Undo hackaround for bug 529837. 2009-11-24 15:42:03 -08:00
Brendan Eich
4e4672de10 Undo hackaround for bug 529837. 2009-11-24 15:17:16 -08:00
Daniel Brooks
38bd1a2ec5 revert an unintentional change from revision 0ccbfef948d5 2009-11-24 05:58:50 -06:00
Nicholas Nethercote
348df1cdbf Bug 529725 - nanojit: improve asm_prep_fcall() in i386 and Sparc backends. r=rreitmai.
--HG--
extra : convert_revision : 30767eb970427b1044fae5db99c2427f57e576fe
2009-11-23 11:04:59 +11:00
Nicholas Nethercote
8ec279f9f4 Bug 529709 - lirasm: 'not' is a unary operator. r=graydon.
--HG--
extra : convert_revision : f26d4cf0e8091d41ecb5b48b849d63dce56ec259
2009-11-23 11:01:02 +11:00
Brendan Eich
c731045c51 Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). 2009-11-20 16:14:42 -08:00
Brendan Eich
8655c42887 Test branded *and* hasMethodBarrier consistently, and with a combined helper (529837, r=jorendorff). 2009-11-20 14:05:16 -08:00
Julian Seward
937420dbec Bug 520905 - collapse callee saved register spills/reloads into LDMIA/STMIA instructions, r=vlad.
--HG--
extra : convert_revision : 73952814a07755be92fba1060efc97d5010b38c9
2009-11-20 10:11:33 -08:00
Brendan Eich
ce41e7e1bf Undo hackaround for bug 529837. 2009-11-24 15:15:37 -08:00
Luke Wagner
f32b364347 Bug 530490 - keep starting position live across quantifier loop (r=dmandelin) 2009-11-24 11:22:20 -08:00
Bob Clary
e0700138da Bug 530774 - js1_5/GC/regress-319980-01.js should not be enabled. 2009-11-24 13:01:42 -08:00
Bob Clary
96a7107e51 Bug 530774 - temporarily disable js1_5/GC/regress-331719.js due to time out regression. 2009-11-24 07:14:13 -08:00
Bob Clary
cc40e9b31d bug 530510 - js1_8/extensions/regress-446169-01.js should guard for undefined gczeal. 2009-11-24 07:14:12 -08:00
Andreas Gal
363350c1f9 I will get it right one of these days (hotfix for 484627). 2009-11-23 22:11:21 -08:00
Andreas Gal
e6b8d3b25c Hotfix for 484627 for 64-bit systems. 2009-11-23 21:49:53 -08:00
Andreas Gal
87fd2f16f4 Inline js_CallTree (484627, r=dvander). 2009-11-23 19:02:49 -08:00
Andreas Gal
ab1febc2c0 Stop passing a useless NULL argument to fragment->code() (530700, r=dmandelin). 2009-11-23 17:16:30 -08:00
timeless@mozdev.org
97876953bd Bug 506699 js_printf doesn't always use va_end after va_start. rs=brendan 2009-11-23 16:20:55 -08:00
Andreas Gal
433f67d130 Merge. 2009-11-23 16:09:35 -08:00
Andreas Gal
574e4cf9f2 Properly reject new arrays with negative length (530617, r=jwalden). 2009-11-23 16:09:02 -08:00
Blake Kaplan
b93b80eb94 Bug 530537 - Don't over-parenthesize JSOP_CONCATN. r=brendan over IRC 2009-11-23 18:08:05 -05:00
Jason Orendorff
d3dfa97516 Bug 509354 - Crash [@ DecompileDestructuringLHS] with destructuring and "arguments". r=mrbkap. 2009-11-20 11:33:30 -06:00
Brendan Eich
5bcc54508f Fix js_FindDuplicateFormal to crack the fun->u.i.names union correctly, and spruce it up with C++ (532041, r=jimb). 2009-12-01 14:48:05 -08:00
Bob Clary
399d8a1288 Bug 528654 - Intermittent timeout waiting for onload to fire in js1_8_1/trace/trace-test.js 2009-11-20 00:12:17 -08:00
Bob Clary
a1dc294998 Bug 528464 - Intermittent failures - js1_5/extensions/regress-342960.js 2009-11-20 00:12:09 -08:00
Bob Clary
f523e140d5 Bug 528284 - js1_5/extensions/regress-371636.js - random failure for opt/debug on mozilla-central 2009-11-20 00:11:58 -08:00
Bob Clary
8f51b0aba7 Bug 522760 - js/src/tests/ecma_5 tests should not run as JavaScript 1.5, r=brendan 2009-11-20 00:11:43 -08:00
Bob Clary
ee227e07ef Bug 529754 - set javascript.options.jit.chrome true in browser tests. 2009-11-20 00:11:28 -08:00
Ginn Chen
cdd383690d Bug 514632 remove unused file r=jorendorff 2009-11-20 14:17:12 +08:00
Ginn Chen
8042e8805d Bug 522440 QCMS: Make sse/sse2 code built with Sun Studio 12 on Solaris r=jmuizelaar, ted.mielczarek 2009-11-20 14:15:39 +08:00
Ginn Chen
998ced8623 Bug 528150 Remove the hack for LIR.cpp in Makefile.in r=dvander 2009-11-20 14:12:47 +08:00
Brendan Eich
ece0d0c7d1 Disabling the joined method optimization from bug 524826 again (529837, talked about it with dbaron and sayrer). 2009-11-19 09:21:54 -08:00
Robert Sayre
e106f3992a Merge. 2009-11-19 01:23:03 +01:00
Robert Sayre
33427c24cd Merge mozilla-central to tracemonkey. 2009-11-19 01:21:34 +01:00
Brendan Eich
d8d7d789d5 Fix uninitialized var bug (529679, r=jorendorff). 2009-11-18 15:56:34 -08:00
Brendan Eich
b2fde2a964 Fix method barrier not to brand, period (branding withou reshaping is worse, branding correctly is unnecessary; 524826, r=jorendorff). 2009-11-18 13:47:06 -08:00
Jason Orendorff
cd32782f94 Bug 505523 - Property cache can skip JSClass::resolve or JSClass::addProperty hooks. r=graydon, r=brendan.
--HG--
extra : rebase_source : a77b0e81203010aabe07b92b639762dce83200c0
2009-11-18 14:29:58 -06:00
Jim Blandy
534bfe84e0 Back out ad37dab7ea17: code to check the current frame's script's strictness flag fails the static checks. Using js_GetTopStackFrame introduces a perf regression. 2009-11-18 14:36:55 -08:00
Brendan Eich
dd2281d2c9 Fix method barrier not to brand, period (branding without reshaping is worse, branding correctly is unnecessary; 524826, r=jorendorff). 2009-11-18 13:41:40 -08:00
Jim Blandy
bd0b14cc7e Bug 514585: Machinery for reporting ES5 strict mode errors. r=igor
At compile-time, we must consult the current JSTreeContext to decide
whether to issue an strict mode error; at run-time, we need to
check the strictness of the currently executing script.  Both cases
also check the context options.  The design is supposed to make it
easy to follow the principle that conditions treated as errors in
strict mode are a subset of those warned about by JSOPTION_STRICT.

This patch removes report flag handling from js_ExpandErrorArguments,
which is used for both compile-time and run-time errors.  At run-time,
the new checkReportFlags handles the checks.  At compile-time, we need
different checks depending on the situation, so the checks are done in
js_ReportStrictModeError, js_ReportCompileErrorNumber, and the new
ReportCompileErrorNumberVA.
2009-11-18 13:33:53 -08:00
Jim Blandy
34a27f0c88 Bug 514585: Recognize "use strict" directives. r=igor 2009-11-18 13:33:53 -08:00
Jim Blandy
ae0ff5874f Bug 514585: Remove macro wrappers for js_NewPrinter and JS_InitArenaPool. r=igor
These macros were intended to help avoid passing unused parameters
when JS_ARENAMETER is not defined, but they're not worth the trouble.
The unused parameter doesn't elicit warnings, and the performance
impact of passing the unneeded argument is negligible.

This also removes support for JS_ARENA_CONST_ALIGN_MASK, which is not
used.
2009-11-18 13:33:53 -08:00
David Anderson
88369259e6 Fixed string flag bugs on VC++ x64 (bug 512866, r=waldo). 2009-11-18 13:24:24 -05:00
David Anderson
20ee309b48 Fixed accidentally trying to trace compile a recursive generator (bug 529130, r=gal). 2009-11-18 12:41:51 -05:00
Blake Kaplan
e4ee1ce1bf Bug 528126 - Ensure the GC can see the new object. r=brendan 2009-11-18 15:54:27 +01:00
Blake Kaplan
f3b7e0182c Bug 520572 - Test watch() on an outer object. r=brendan/bc
--HG--
extra : rebase_source : e675a97028a914de51f39962b6865e2bf59f80fd
2009-11-18 12:58:28 +01:00
Luke Wagner
2c29b03b23 Bug 526173 - 3.5x regression in indexOf performance (r=waldo) 2009-11-17 22:40:50 -08:00
Jeff Walden
05bcc1bbb2 Backed out changeset 975b36c50d33; bug 478047's fix was misguided and contra ES5, and moving to ES5 semantics at this late date in the release cycle seems unwise. We'll move from old and busted directly to ES5 shortly after 3.6 so as to provide maximum time for ironing out incompatibilities in the wild. r=gal 2009-11-16 17:21:48 -08:00
Andreas Gal
f391d8a4f0 Don't attempt to GC when caller has waived the GC heap quote (528507, r=dvander). 2009-11-17 14:31:06 -08:00
Blake Kaplan
02f032b9bb Bug 461170 - Mark this test as passing. 2009-11-17 11:59:35 +01:00
Nicholas Nethercote
1543355a8e Update nanojit-import-rev stamp. 2009-11-17 15:56:35 +11:00
Edwin Smith
18ad0c911d Fix assertion failure injected by X64 verbose code patch (bug 520712 r=dvander+)
When we test the size of an offset, we have to do it after underrunProtect
or else a jump can be inserted which then invalidates the instruction selection.

--HG--
extra : convert_revision : 9b249328236ffec433abb961c0737a82f437c7d4
2009-11-16 14:22:26 -05:00
Nicholas Nethercote
a8fa693ddd Bug 520712 - nanojit: print assembly code for X64 backend with TMFLAGS=assembly. r=edwsmith.
--HG--
extra : convert_revision : bc99b0483e324920fa4c55235d1f9da58eeebcaf
2009-11-16 13:14:39 +11:00
Luke Wagner
e33f55be7a Bug 529147 - fix flipped numSideExitsBefore assertion (r=dvander) 2009-11-16 17:45:50 -08:00
David Anderson
003e66b4ad Use INS_CONSTOBJ instead of INS_CONSTWORD for kshape guard (bug 528048, r=gal). 2009-11-16 18:44:58 -05:00
Jason Orendorff
3f11018c72 Bug 519719 - TM: crash [@ JS_GetFrameThis] - SynthesizeFrame passes partly-uninitialized JSStackFrame to callHook. r=mrbkap. 2009-11-13 11:04:23 -06:00
Bob Clary
6636e9737a Bug 528654 - Intermittent timeout waiting for onload to fire in js1_8_1/trace/trace-test.js 2009-11-20 00:12:05 -08:00
Bob Clary
0d0726327c Bug 528464 - Intermittent failures - js1_5/extensions/regress-342960.js 2009-11-20 00:11:52 -08:00
Bob Clary
0fdee9994a Bug 528284 - js1_5/extensions/regress-371636.js - random failure for opt/debug on mozilla-central 2009-11-20 00:11:40 -08:00
Bob Clary
fb2d63c0fe Bug 522760 - js/src/tests/ecma_5 tests should not run as JavaScript 1.5, r=brendan 2009-11-20 00:11:27 -08:00
Bob Clary
022dee3627 Bug 529754 - set javascript.options.jit.chrome true in browser tests. 2009-11-20 00:11:14 -08:00
Jim Blandy
e412a5c444 Bug 514575: Forbid rebinding 'eval' or 'arguments' in ES5 strict mode code. r=mrbkap 2009-11-19 14:08:02 -08:00
Jim Blandy
740a8791c2 Bug 514562: Forbid assignments to 'eval' and 'arguments' in strict mode code. r=mrbkap
Drafts of the ES5 spec required a type error to be raised when an
assignment to "arguments" is evaluated in function code. In
ECMA/TC39/2009/050, this condition has been changed to a syntax error
in all code. By the rules of chapter 16, implementations must report
it early.
2009-11-19 14:08:02 -08:00
Jim Blandy
18f28c0cac Bug 514580: Forbid duplicate formal parameter names in strict mode code. r=mrbkap
Note: this patch changes the JSOPTION_STRICT warning from a TypeError
into a SyntaxError, if JSOPTION_WERROR is also set.
2009-11-19 14:08:02 -08:00
Nicholas Nethercote
4c73546ad1 Update nanojit-import-rev stamp. 2009-11-20 08:57:52 +11:00
Edwin Smith
4a6316d03b Suppress unused parameter warning in PPC backend (r=me)
--HG--
extra : convert_revision : 4ac63c016a95f1c58082824cf6813692f51ae917
2009-11-19 10:09:38 -05:00
Nicholas Nethercote
4ca10e2ea0 Bug 515311 - nanojit: kill reservations in the PPC backend. r=rreitmai.
--HG--
extra : convert_revision : e0a0d3915764c663ccf1f0b6bedc14c7303ad239
2009-11-19 10:41:16 +11:00
Edwin Smith
efee9aec4c Fix Sparc bustage from bug 528419 (r=me)
--HG--
extra : convert_revision : 018f529d80309686b99d109eb132f520cf72a2fc
2009-11-18 16:07:09 -05:00