Nicholas Nethercote
03809b83a9
Bug 528857 - nanojit: mismanagement of name lifetimes with TMFLAGS=assembly? r=graydon.
2009-12-07 21:06:41 -08:00
Nicholas Nethercote
15703de7bb
Update nanojit-import-rev stamp.
2009-12-06 15:36:37 -08:00
Andreas Gal
97dc7a9174
Try to fix autoconf madness for bug 530896.
2009-12-05 16:53:16 -08:00
Andreas Gal
3ded1d4c80
Efficient Implementation of JSDOUBLE_IS_INT using SSE2 (original patch by Moh Haghighat/Intel, bug 530896, r=dvander).
2009-12-05 12:46:46 -08:00
David Anderson
51a679002f
Fix scope chain traversal with let blocks (bug 523793, r=dmandelin,mrbkap).
2009-12-04 23:05:47 -08:00
David Anderson
8fb72a7a12
Get rid of TreeInfo and inline its members into TreeFragment (bug 525371, r=gal,lw)
2009-12-04 19:59:55 -08:00
Jason Orendorff
ad0e287615
Bug 532363 - TM: "Assertion failure: IsDenseArrayId(cx, obj, (jsid) prop), at ../jsarray.cpp". r=bzbarsky.
2009-12-04 15:38:25 -06:00
Nicholas Nethercote
3187530416
Bug 528857 - nanojit: mismanagement of name lifetimes with TMFLAGS=assembly? (NJ-only part). r=graydon.
...
--HG--
extra : convert_revision : cb855a65f046a59c28277766aa5d320df33159c2
2009-12-05 06:58:42 +11:00
Igor Bukanov
dfbcf19f40
bug 531682 - patching js1_4/Eval/jstests.list to include bug's test
2009-12-04 21:57:51 +03:00
Igor Bukanov
ac9a848ac5
bug 531037 - patching js1_4/Eval/jstests.list to include bug's test
2009-12-04 21:54:43 +03:00
Andreas Gal
fd6f74bc98
Add regress-532491.js to jstests.list (follow-up for bug 532491).
2009-12-04 10:46:09 -08:00
Benjamin Smedberg
b55b15dccf
Merge additional changes from electrolysis and mozilla-central into the electrolysis-plugins-only tracking branch.
...
--HG--
branch : electrolysis-plugins-only
2009-12-04 11:42:28 -05:00
Benjamin Smedberg
767eb11cb4
Merge mozilla-central into electrolysis
2009-12-04 11:28:50 -05:00
Boris Zbarsky
49f81f2fb2
Bug 532847. Can't assert that sprop has a shortid in callProp/setCallProp until we know the prop is special. r=brendan
2009-12-04 01:08:22 -05:00
Boris Zbarsky
b346e737a5
Bug 530240 followup. Can't assume vp[1] is an object here, in fact. Fixes orange.
2009-12-03 23:35:36 -05:00
Boris Zbarsky
b811feadbc
Bug 532477 followup to fix bustage.
2009-12-03 23:10:08 -05:00
Boris Zbarsky
834d8db5e4
Bug 532477. Replace js_SetCallArg/js_SetCallVar with hand-crafted LIR in the common easy case of a Call object whose frame is no longer active at record time. r=dmandelin,brendan
2009-12-03 23:03:47 -05:00
Boris Zbarsky
fb6fe53972
Bug 530255. Replace GetFromClosure/GetClosureVar/GetClosureArg with hand-crafted LIR in the common easycase of a Call object whose frame is no longer active at record time, and make GetFromClosure use a direct read from the object's dslots if we discover that the frame became inactive between record and trace. r=dmandelin,brendan
2009-12-03 23:03:46 -05:00
Brendan Eich
f9a0ec438d
Bleah.
2009-12-03 19:47:53 -08:00
Brendan Eich
7bfac5769d
Add JSOP_ENUMELEM to gigundo-assert in LeaveTree (532787, r=me).
2009-12-03 19:47:19 -08:00
Boris Zbarsky
5319ea360b
Bug 532823 followup. Fix where we add the 3+fp->argc. r=brendan
2009-12-03 22:43:13 -05:00
David Mandelin
a47f877d42
Bug 532823: fix slot computation for JSOP_NAME accessing outer vars defined in trace entry frame, r=bz
2009-12-03 18:48:45 -08:00
Blake Kaplan
c8044d3215
Bug 532259 - Protect against a null script. r=jst a=sayrer
...
--HG--
extra : rebase_source : 926c94ac7dca681c195e4bd013db0331e79f78ca
2009-12-03 14:52:56 -08:00
Jason Orendorff
b46379b4f6
Bug 530879 - Generators get incorrect arguments.length. Discovered by Donny Viszneki. r=brendan.
2009-12-03 16:12:09 -06:00
David Mandelin
90477b6487
Bug 530489: don't (incorrectly) trace custom equality ops, r=jorendorff
2009-12-03 13:02:36 -08:00
Andreas Gal
ab4554e731
Only consider an eval cache entry if the static level matches (532491, r=igor).
2009-12-03 12:12:39 -08:00
Boris Zbarsky
8365d1cfcb
Bug 530240. Faster NormalizeThis for String objects. r=brendan
2009-12-03 14:39:55 -05:00
Boris Zbarsky
2e2e3eeb0c
Bug 521423. Make JSString 4 words instead of 2; make substring() and company never have to copy. r=brendan
2009-12-03 14:39:42 -05:00
Jim Blandy
322d958de0
Bug 532041: Add missing call to reportCompare. r=orange jsreftests
2009-12-03 01:25:17 -08:00
Brendan Eich
ff0880a5f4
Test for last checkin (532043).
2009-12-02 21:51:18 -08:00
Brendan Eich
05f85209b1
Trace JSOP_ENUMELEM, for the group-assignment special case of destructuring assignment (532043, r=gal).
2009-12-02 21:50:04 -08:00
Brendan Eich
9ccccbbe6b
Extra assertions, control flow cleanup in putProperty, and a crucial scope hashtable fix to removeProperty (stored was not reloaded from *spp; got rid of this ancient over-optimization by hand-coded 'register allocation'; 532096, r=mrbkap).
2009-12-02 19:13:31 -08:00
Jim Blandy
ff9fa29631
Bug 532254: Give TCF_FUN_PARAM_EVAL a distinct value. r=mrbkap
...
Regression test included.
2009-12-02 15:17:02 -08:00
Jim Blandy
dbab286e15
Bug 531972: Add parent dir jstests.list entries; call reportCompare as needed; fix anonymous function objects in js/src/tests/ecma_5/strict/13.1.js. r=bclary, r=mrbkap
...
While prior patches created new test directories
js/src/tests/ecma_5/strict and js/src/tests/js1_8_1/strict, they
failed to add jstests.list entries to their parent directories. This
adds them.
The strict tests generally were written to use assertEq, which is
simple and gives nice source positions in failure messages under the
JS shell. However, the jsreftests require each test file to call
reportCompare at least once. This adds a dummy call to reportCompare
to each file. It would be nice to make everything work in both
environments, perhaps using arguments.caller.
The test script js/src/tests/ecma_5/strict/13.1.js tried parsing
statements of the form 'function(x,x){}'. However, anonymous function
expressions are not allowed in a statement context when
JSOPTION_ANONFUNFIX is set. This is set under the browser, but clear
in the shell; bug 532233 suggests that the two be reconciled.
2009-12-02 15:13:14 -08:00
Jim Blandy
05b34d7c12
Bug 532041: Test that duplicate argument checks use JSFunction::u.i.names correctly. r=sayrer
2009-12-02 09:54:51 -08:00
Igor Bukanov
969bdae222
bug 531682 - fixing eval(source, scope) to match 191, 192 semantics. r=mrbkap
2009-12-02 19:22:34 +03:00
Nicholas Nethercote
a4408cec60
Bug 531347 - nanojit: rejig asm_call(). r=edwsmith.
...
--HG--
extra : convert_revision : 1c68f440a757a8cb002c8da9118d034a9c7d4fab
2009-12-01 18:50:07 -08:00
Steven Johnson
4732e1b682
nanojit/Assembler.cpp: when LIR_stqi calls asm_store32 twice, pass LIR_sti for the opcode, rather than op. (r=me)
...
--HG--
extra : convert_revision : 0da91726eca5ccbfed98d340e428d3303d5708f0
2009-12-01 17:40:25 -08:00
Steven Johnson
45a6270f4c
Add new opcodes to allow load/store of 8-bit int, 16-bit int, and 32-bit floats. Initially implemented only for i386, other backend implementations to follow. See https://bugzilla.mozilla.org/show_bug.cgi?id=527083 for more detail. (r=rreitmai, nnethercote)
...
--HG--
extra : convert_revision : 7c5395e67078266797de2e2de6555974ee61acf7
2009-12-01 16:50:03 -08:00
David Anderson
4ab577e3c3
Merge.
2009-12-01 16:32:58 -08:00
David Anderson
b7f7a14f13
Backed out changeset 0082849624a5, potential orange.
2009-12-01 16:32:45 -08:00
Makoto Kato
a0bc68ebf2
Bug 539378 - Remove MOZ_BITS macro from tree. r=ted
2010-01-19 14:12:09 +09:00
Jesse Ruderman
8da03a0eb0
Disable some bogus perf tests trying to be unit tests. Fixes orange bug 540511. Replacing the tests is bug 540512.
2010-01-18 17:45:08 -08:00
Brendan Eich
f19c7e9d1b
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
David Anderson
c80f627585
Remove TreeInfo (bug 525371, r=lw).
2009-12-01 13:32:02 -08:00
Robert Sayre
3192563f6f
Reland bug 473228 and bug 530507
2009-12-01 16:02:09 -05:00
Robert Sayre
03f335335d
Relanding Tolerate race condition or broken resolve hook (530507, r=jorendorff). Backed out changeset fb34a7163a43
2009-12-01 15:54:01 -05:00
Robert Sayre
8dac81dafc
Merge
2009-12-01 15:51:22 -05:00
Robert Sayre
4ea539c658
Relanding: Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). Backed out changeset ee7bfc1923ad
2009-12-01 15:49:15 -05:00
Rick Reitmaier
5be99c7ad2
Bug 500466 - avmshell crashes on P3 cpu machine with JIT enabled (r+nnethercote,edwsmith)
...
Copy x86 CPU detection code from jstracer into Nativei386;
allowing hosts to share the common code.
One potential issue with this patch is that the detection code is
executed each time an Assembler object is created.
If it becomes an issue, it might be worthwhile to add a tri-state
to config in order to capture the value post-test.
--HG--
extra : convert_revision : ab0a893ffe833f1562216186567d4e7798be45aa
2009-12-01 11:36:07 -08:00
Robert Sayre
8be5b171b9
Backed out changeset c03ebf340688. Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff).
2009-12-01 09:56:16 -05:00
Robert Sayre
5d08f03267
Backed out changeset c696751593d6. Tolerate race condition or broken resolve hook (530507, r=jorendorff).
2009-12-01 09:54:38 -05:00
Blake Kaplan
9699e0ff2d
Bug 531222 - Don't access the SSM off the main thread. r=bent sr+a=jst
2009-12-02 12:06:18 -08:00
Nicholas Nethercote
ed2756a1e0
Backed out changeset 8d7d6dcce7eb (due to ARM and WinNT bustage).
...
--HG--
extra : convert_revision : 2d17a9b2e8daa8f3e89cd756a7eb23a41579f7e1
2009-12-01 15:16:57 +11:00
Nicholas Nethercote
e3584b76b3
Bug 527754 - CseFilter not able to handle downstream modification of instructions. r=rreitmai,gal.
...
--HG--
extra : convert_revision : 8d7d6dcce7ebda66b1aab48f40b46c1e7df2d91d
2009-12-01 14:56:44 +11:00
Blake Kaplan
f9ed6eeaa4
Bug 468506 - JS_GetFrameThis needs to call js_ComputeThis in more cases. r=brendan
...
--HG--
extra : rebase_source : 2a107feb26544159f04b60c27508338cef8fdf7f
2009-11-30 16:05:44 -05:00
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
Benjamin Smedberg
3cfccc2b20
Straight revert of xpcshell to its mozilla-central state.
...
--HG--
branch : electrolysis-plugins-only
2009-11-30 14:17:24 -05:00
Robert Sayre
0340e89b31
Add a call to reportCompare so this test passes.
2009-11-30 14:15:50 -05:00
Benjamin Smedberg
9911c2f99d
Merge mozilla-central into Electrolysis
2009-11-30 12:59:43 -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
Boris Zbarsky
1ca3e20850
Bug 534676. Fix object hashtable lifetime management. r=timeless
2009-12-14 21:31:59 -08:00
Igor Bukanov
13fbc6f2c6
Backed out changeset b774250f04d3 - the landed patch for bug 424558 has regressed.
2009-11-30 15:33:04 +03:00
Nicholas Nethercote
b7cf8c804f
Bug 531324 - nanojit: improve int32 constant generation in i386 backend. r=graydon.
...
--HG--
extra : convert_revision : 3b04b5fdd47f0469f040fb147d60ed4cd30d8c8e
2009-11-30 17:26:15 +11:00
Leon Sha
e913eb4c6a
Bug 531218 - NJ: Remove unused _getfp for solaris from nanojit. r=stejohns.
...
--HG--
extra : convert_revision : 2d22cabbe865243948ddcad4bc73dba4fc0c5aef
2009-11-30 09:24:10 +08: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
Leon Sha<leon.sha@sun.com>
e93e6c4af5
Bug 530979 - NJ: Build errors for lirasm.cpp on solaris with sun studio. r=graydon
...
--HG--
extra : convert_revision : 69ef86e45856c850accc542111053c4387a8b804
2009-11-26 09:21:05 +08:00
Brendan Eich
7e754c5e8c
See bug 533138.
2009-12-05 23:35:06 -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
Benjamin Smedberg
7a581148bc
Merge mozilla-central into Electrolysis.
2009-11-24 10:06:03 -05: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
Ted Mielczarek
d05bbfd9e2
bug 530093 - allow building with VC10. configure+build system changes. r=bsmedberg
2009-11-23 10:20:21 -05:00
Ted Mielczarek
f8fa72d34f
bug 531135 - rewrite build-list.pl in Python to fix race conditions with locking. r=bsmedberg
2009-12-14 06:55:40 -05: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
Benjamin Smedberg
737515b2c8
Merge mozilla-central into electrolysis.
2009-11-19 12:41:46 -05: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
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
Luke Wagner
2c29b03b23
Bug 526173 - 3.5x regression in indexOf performance (r=waldo)
2009-11-17 22:40:50 -08:00
Benjamin Smedberg
453514dea2
Bug 523769 - Don't call into plugin hooks (specifically NPObject.deallocate) while mid-GC, r=jst+mrbkap
2009-11-17 14:51:46 -05: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
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
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
Edwin Smith
c75cfaf023
Fix PPC bustage (bug 513863, r=me)
...
--HG--
extra : convert_revision : 606f3e6e99b02907d3c983dd37aa7e011a7fa43e
2009-11-18 13:42:08 -05:00
Nicholas Nethercote
f0737b9579
ARM Bustage fix for bug 513863. r=me.
...
--HG--
extra : convert_revision : ee701ef7d0e4ca71ce73ac77a65fe8549429dce1
2009-11-18 12:33:34 +11:00
Nicholas Nethercote
e26daf15b9
Bug 513863 - nanojit: refactor registerAlloc(). r=rreitmai.
...
--HG--
extra : convert_revision : 6b7cffb8984f821980d38d4c9ccd31f8bdd3e363
2009-11-18 12:27:57 +11:00
Nicholas Nethercote
391f339dc4
Bustage fix: avoid compiler warning (which is treated as an error by tinderbox). r=me.
...
--HG--
extra : convert_revision : 225c22dfb86b51c2e28e0328d98032d52e10d58d
2009-11-18 11:35:39 +11:00
Nicholas Nethercote
5fd3964fe4
Bug 528419 - nanojit: overhaul i386 comparison handling. r=edwsmith.
...
--HG--
extra : convert_revision : f05d2e60125fd7ffc5ab67bb0541012638d4d1cb
2009-11-18 11:15:20 +11:00
Edwin Smith
9bd0901698
One more try to make osx64 and linux64 compilers happy with printf
...
--HG--
extra : convert_revision : 440f14010965f1f70afd90b30007988617f064a0
2009-11-17 15:09:27 -05:00
Edwin Smith
b39acdae73
Fix several underrunProtect bugs in X64 backend (bug 529219 r=edwsmith+)
...
I'm pushing this on behalf of nnethercote since tamarin had one additional
regression failure that this patch fixes. Comments from the bug:
Bug 520712 introduced some underrunProtect() problems in the X64 backend. A
follow-up patch fixed one of them, but there are several remaining. This patch
fixes all of them, AFAICT, and commons out some code in the process hopefully
making things less error-prone. (It also fixes a printf-style compile
warning.)
I tested this by reducing the size of chunks allocated by codeAlloc to only 128
bytes. After doing that, without this patch, Tracemonkey was fairly crashy and
Tamarin was totally crashy; with the patch both were fine, albeit slower than
usual. (I tried 64 bytes as well but got assertions in the code allocator,
that seems to be Just Too Small.)
--HG--
extra : convert_revision : 7972be6204883c0ba472fe8caaa08f0b08660e72
2009-11-17 14:34:43 -05:00
Jim Blandy
14f017ccd9
Bug 514572: Forbid deletion of variables, arguments and functions in ES5 strict mode. r=jorendorff
2009-11-19 12:35:55 -08:00
Jim Blandy
4ebb8ece60
Bug 514567: Detect duplicate property names. r=jorendorff
2009-11-19 12:35:55 -08:00
Jim Blandy
60339bbd5a
Bug 514567: Define JSAutoAtomList, a variant of JSAutoAtomList with a destructor. r=jorendorff
2009-11-19 12:35:55 -08:00
Jim Blandy
e1243b3edc
Bug 514560: Forbid assignments to undeclared variables in strict mode code. r=jorendorff
...
--HG--
rename : js/src/tests/ecma_5/strict/shell.js => js/src/tests/js1_8_1/strict/shell.js
2009-11-19 12:35:55 -08:00
Brendan Eich
bc127fbdb6
Beware CALLEE_UPVAR_SLOT when adjusting upvar cookie to skip over args to reach vars in the upar's home frame -- the callee is a special case with a magic slot that must not be changed (528082, r=mrbkap).
2009-11-19 12:14:52 -08:00
Luke Wagner
1d78e70efe
Bug 526348 - pick higher pattern-length threshold for using BMH (r=waldo)
2009-11-19 10:34:28 -08:00
Jim Blandy
dccc422655
Bug 514576: Forbid 'with' statements in strict mode code. r=mrbkap
2009-11-19 09:49:00 -08:00
Jim Blandy
65ebe01f93
Bug 514559: Forbid octal literals or escape sequences in strict mode. r=mrbkap
2009-11-19 09:49:00 -08:00
Jim Blandy
a1ea615b02
Bug 521868: Make code passed to a direct call to eval inherit the caller's strictness. r=jorendorff
2009-11-19 09:48:59 -08:00
Jim Blandy
76386acacd
Bug 514585: Machinery for reporting ES5 strict mode errors. r=igor
...
2009-11-19: checkReportFlags adjusted to use js_GetTopStackFrame, to
satisfy static analysis checks. No effect on Sunspider.
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-19 09:23:20 -08:00
Benjamin Smedberg
17cf638aac
Merge mozilla-central into electrolysis.
2009-11-11 12:35:42 -05:00
Ted Mielczarek
96ab3547a7
bug 463411 - nsinstall.exe can race creating directories. r=timeless (sync js/src copy of nsinstall_win.c)
2009-11-11 08:24:30 -05:00
Chris Jones
0807e5c7e2
bug 527871: fix shutdown assertion and leaking TestShellParent. still leaking ContentProcessParent's GeckoChildProcess, but needs discussion before fixing
2009-11-11 02:34:08 -06:00
Jeff Walden
926066f46d
Bug 520890 - obj_getOwnPropertyDescriptor nests object locks. r=jorendorff
2009-11-09 16:16:28 -08:00
Luke Wagner
e00c281f26
Bug 528870 - fix double-slurping rebase error (r=dvander)
2009-11-16 10:14:57 -08:00
Robert Sayre
52d0582584
Merge tracemonkey to mozilla-central.
2009-12-01 13:14:45 -05:00
Ginn Chen
06c9f09bfb
Bug 519401 js-ctypes failed to compile on Solaris with Sun Studio compiler r=dwitte
2009-12-01 20:41:52 +08:00
Blake Kaplan
f0cd93b989
Bug 461170 - Detect when typeof is applied to an expression before constant folding so we correctly throw unbound name exceptions from the folded expression. r=brendan
2009-11-06 18:27:17 +01:00
Nicholas Nethercote
8b890f0ae6
Bug 465582: the TM-specific part. r=dvander.
2009-11-16 10:03:30 +11:00
Nicholas Nethercote
e586febe59
Update nanojit-import-rev stamp.
2009-11-16 08:18:55 +11:00
Nicholas Nethercote
97e38dea03
Bug 518242 - NJ: Remove insSkip and supporting machinery. r=graydon.
...
--HG--
extra : convert_revision : d0134ea858d0e34c389868a59aac7085451865b4
2009-11-13 16:18:40 +11:00
Graydon Hoare
ec80c24575
Bug 528320 - Improve warning-handling on windows, r=rreitmai.
...
--HG--
extra : convert_revision : c1dd9d0db4cf07210025b69e852f2ea43275a759
2009-11-12 15:07:31 -08:00
Julian Seward
6de060464c
Bug 517883 - make TM fragment entry- and exit-profiling work on ARM, r=vlad.
...
--HG--
extra : rebase_source : 5ce347fc1855009b2e71a67ab4df69ee03e7d65b
extra : convert_revision : e133153691ce2daf3eb72bba7762191b61b7afcb
2009-11-12 14:30:36 -08:00
Nicholas Nethercote
ce6dd615de
Bug 513865 - nanojit: make LirReader::read() clearer and faster. r=gal.
...
--HG--
extra : convert_revision : d78bd673c8652d17489559744f4a221c78811286
2009-11-13 09:26:26 +11:00
Nicholas Nethercote
3cdf300b3f
Bug 527874 - nanojit: add and remove some uses of findSpecificRegForUnallocated(). r=rreitmai.
...
--HG--
extra : convert_revision : 8a61bb2085985eb84772ca1ad924eee5b7fe544f
2009-11-13 09:23:14 +11:00