Commit Graph

14248 Commits

Author SHA1 Message Date
Ehsan Akhgari
73e4f8616d Backout changeset 5fe20ec0229c (bug 15529) because it breaks jsreftests 2011-06-21 18:52:32 -04:00
Luke Wagner
0e59a6d626 Bug 15529 - Add missing copyright boilerplate to files in js/src, remove dead files (r=brendan,graydon,jimb)
--HG--
rename : js/src/perfect.js => js/src/tests/perfect.js
2011-06-21 10:26:22 -07:00
Chris Leary
7922cf2289 Merge mozilla central and tracemonkey. 2011-06-20 16:49:20 -07:00
Gregor Wagner
08eca5db6e Bug 656120 - Change MaybeGC trigger. r=igor 2011-06-20 14:44:26 -07:00
Ehsan Akhgari
38dc29243c Merge the last green changeset on mozilla-inbound to mozilla-central 2011-06-20 16:06:04 -04:00
Jesse Ruderman
93544312de Add crashtest from bug 603146 2011-06-20 11:42:05 -07:00
Jesse Ruderman
35e087a1de Add crashtest from bug 601284 2011-06-20 11:42:05 -07:00
Jesse Ruderman
7f7c03f6d7 Add crashtest from bug 616930 2011-06-20 11:42:05 -07:00
Landry Breuil
4b1dcd4660 Bug 665040: "-not" is not a POSIX-compliant argument to find. Use "!" (r=khuey) 2011-06-17 15:48:00 -07:00
Rafael Avila de Espindola
ddc2ddc4ac Bug 641232 - Make HAS_XCODE_2_1 detection compatible with Xcode 4 - Remove unused configure bits. r=khuey 2011-06-20 10:40:58 +01:00
Paul Biggar
9fbd2b1e02 Bug 649939: Prevent crash from too much recursion in Iterator.prototype.next() (r=jwalden) 2011-06-16 17:00:31 -07:00
Luke Wagner
de6d0e2330 Bug 665189 - hoist JSString and family into vm/String{.h, -inl.h, .cpp} (r=njn) 2011-06-20 11:44:20 -07:00
Ehsan Akhgari
0b938f2384 Bug 662969 - Silence the clang warnings issued because of alignment requirements increase when compiling jsparse.h; r=Waldo
--HG--
extra : rebase_source : 8286bd6fd8a82d855c95d8a1ded01b54d73ba5a1
2011-06-17 15:59:47 -04:00
Ehsan Akhgari
8e90994c37 Bug 662964 - Silence the clang warnings issued because of alignment requirements increase when compiling jscntxt.h; r=Waldo
--HG--
extra : rebase_source : ec398625623f3cafd7c4373a85b099024ba05183
2011-06-17 15:59:47 -04:00
Ehsan Akhgari
4669405867 Bug 662962 - Silence the clang warnings issued because of alignment requirements increase when compiling jsscript.h; r=Waldo
--HG--
extra : rebase_source : 0aa530499bf3961b372a24a1a98d949a81ee2065
2011-06-17 15:59:47 -04:00
Ehsan Akhgari
940b078fd2 Bug 662961 - Silence the clang warnings issued because of alignment requirements increase when compiling jsstr.cpp; r=Waldo
--HG--
extra : rebase_source : 984f986f3de6c92cdb45cadeff40bc84b36406ca
2011-06-19 17:04:48 -04:00
Nicholas Nethercote
4cc5c61803 Bug 664647 - Work around MSVC 2005 PGO bug in GetJSObjectSlotsCallback and friends. r=khuey. 2011-06-20 09:01:37 +10:00
Igor Bukanov
b64bc1fb04 bug 601075 - followup to fix MSVC warings and adjust the testStringBufferMallocAccounting.js test to overwrite all conservative GC roots. 2011-06-19 19:41:46 +02:00
Shu-yu Guo
359e560eb5 [INFER] Colorize spew for constraints and typesets, bug 664583. r=bhackett 2011-06-15 19:22:27 -07:00
Brian Hackett
60d958b4f4 [INFER] Don't mark or use return value in frames which are throwing, bug 664422. 2011-06-15 13:01:39 -07:00
Brian Hackett
f6d4a9c326 [INFER] Add missing monitor() call in stubs::Eval, bug 663910. 2011-06-15 12:20:13 -07:00
Brian Hackett
9f8045748c [INFER] Cleanup type info tracking object classes, track which type objects are definitely typed arrays, bug 663485. 2011-06-15 11:26:12 -07:00
Andrew McCreight
3f1b66195e Backout bug 653248 due to bug 667011 2011-06-15 10:55:58 -07:00
Andrew McCreight
9ad333dda5 backing out patch for bug 653248 due to bug 667011 2011-06-15 10:55:58 -07:00
Ehsan Akhgari
d6b4429b37 Merge mozilla-central and mozilla-inbound 2011-06-28 18:43:09 -04:00
Joe Drew
770bb721ef Merge m-c to m-i 2011-06-28 12:21:04 -04:00
Joe Drew
952b32c999 Merge last green changeset from mozilla-inbound to mozilla-central. 2011-06-28 12:11:31 -04:00
Kyle Huey
a5cab656de Merge b-s to m-c. 2011-06-28 08:54:26 -07:00
Chris Leary
31076ac1d6 Merge mozilla-central and tracemonkey. 2011-06-27 11:07:22 -07:00
Igor Bukanov
ba5e71d38e bug 666091 - custom file for GCTIMER output. r=anygregor 2011-06-22 14:33:39 +02:00
Jeff Walden
55a71f2ebf Style patrol followup to bug 665835. r=consistency
--HG--
extra : rebase_source : fe11c9f93246357209608ef6db85f2c147eb1b61
2011-06-24 14:36:13 -07:00
Chris Leary
a71d61104b Followup for bug 649576 GCC 4.3.3 warning. 2011-06-25 16:35:56 -07:00
Chris Leary
0780a149be Bug 649576: Extricate JSHashTable from JSAtomList death grip. (r=luke) 2011-06-24 14:22:30 -07:00
Paul Biggar
0e43edd30e Bug 666788: Remove JS_sscanf declaration, for which there is no definition (r=cdleary) 2011-06-24 16:12:40 -07:00
Luke Wagner
822bc8b69e Bug 666094 - InitJitFrameLatePrologue should do a better modeling generatePrologue (r=dvander) 2011-06-24 16:11:21 -07:00
David Mandelin
4c436c89cd Bug 666587: revert accidentally changed control flow in fun_getProperty, r=jwalden 2011-06-24 14:26:00 -07:00
Dave Herman
4fa36afd9e Bug 666852 - crash when yield occurs in comprehension RHS (r=cdleary) 2011-06-24 14:08:29 -04:00
Justin Lebar
169b00ccad Bug 664486 - Add page fault counts to about:memory on Linux and Mac. r=njn, sr=bz
--HG--
extra : rebase_source : 47dd7501dea7ae69e01828a5c730e8853739dc71
2011-06-16 14:34:09 -04:00
Jeff Walden
40bdc4ec2b Bug 671091 - Add DefinePropertiesAndBrand to abstract out most explicit branding. NOT REVIEWED YET
--HG--
extra : rebase_source : 9a48fc83a876c95e90c807eb0b007d35211eb41c
2011-06-15 10:15:37 -07:00
Brian Hackett
eb3dc76aac [INFER] Reenable typed array ICs when inference is disabled, bug 643842. 2011-06-15 08:29:33 -07:00
Jeff Walden
d967e5e20f Bug 671143 - Rename ValueToNumber to ToNumber, to be more like the spec nomenclature. r=cdleary
--HG--
extra : rebase_source : e85fbadd77adc048f5e443cd9ed96b0035954674
2011-06-13 21:49:59 -07:00
Igor Bukanov
2d1c8c12b5 bug 667507 - r=gal 2011-07-14 21:47:36 +02:00
Chris Leary
ac29c887f8 Bug 670772 - JSCodeGenerator::upvarMap should use exactly as much space as it needs. (r=njn)
--HG--
extra : rebase_source : 40b9a070023da205817e275e936e8a1acbe38c2b
2011-07-13 16:05:41 -07:00
Chris Leary
8a4ed626f6 Bug 669786: JSCodeGenerator::upvarMap should be a js::Vector. (r=njn)
--HG--
extra : rebase_source : 63d3fe85a1937c74f45e104ab066bc1159c36e00
2011-07-06 18:00:17 -07:00
Bill McCloskey
a47ecc892e Bug 671080 - Assert on unexpected cross-compartment pointers in opt builds (r=mrbkap) 2011-07-14 12:12:30 -07:00
Hannes Verschore
a687644705 Bug 670784 - Add src note to break statements of switches, r=dvander 2011-07-13 16:12:05 -07:00
Jason Orendorff
fef77e1e35 Bug 646968 - Fix name lookups in let scopes. r=brendan. 2011-07-14 08:54:17 -05:00
Kyle Huey
d3e7553ab9 Mass revert m-i to the last known good state 2011-07-13 18:22:33 -07:00
David Mandelin
1fdf7dccd7 Bug 605290: Check for null cx->globalObject, r=luke 2011-07-13 16:47:10 -07:00
Chris Leary
43bb065e0f Bug 670772 - JSCodeGenerator::upvarMap should use exactly as much space as it needs. (r=njn)
--HG--
extra : rebase_source : 00184fc11f3cccd4080e3e8e2f347ab9fa724fce
2011-07-13 16:05:41 -07:00
Chris Leary
de37b6f051 Bug 669786: JSCodeGenerator::upvarMap should be a js::Vector. (r=njn)
--HG--
extra : rebase_source : 5270282d89d15e00739428e5f12de7d4f508bef4
2011-07-06 18:00:17 -07:00
Hannes Verschore
a65ac12536 Bug 670784 - Add src note to break statements of switches, r=dvander 2011-07-13 16:12:05 -07:00
Jeff Walden
fd3234af67 Bug 671082 - Add GlobalObject::createConstructor to abstract creation of constructors, after basic primordials are installed in the global. r=bhackett
--HG--
extra : rebase_source : 7d912d659f18bd4a24cb9e285dc71cbb0eac9858
2011-06-13 11:52:45 -07:00
Jeff Walden
0e6a014f34 Bug 670779 - Add LinkConstructorAndPrototype to encapsulate adding ctor.prototype and ctor.prototype.constructor. r=bhackett
--HG--
extra : rebase_source : 1216c2c096b866c94205c3f53fe0dd70225523c4
2011-06-15 10:15:37 -07:00
Jacek Caban
4c56a972be Bug 670905 - Update mingw cofigure checks to current version (r=khuey) 2011-07-13 17:57:59 +02:00
Ehsan Akhgari
c2c6bac9e3 Merge mozilla-central and mozilla-inbound 2011-07-13 11:51:33 -04:00
Ehsan Akhgari
096131f2a7 Merge the last green changeset on mozilla-inbound to mozilla-central 2011-07-13 11:40:03 -04:00
Jason Orendorff
e4e749adc2 Bug 620316 - Remove WrapEscapingClosure. r=brendan. 2011-07-13 07:15:59 -05:00
Robin Ehrlich
c994023e82 Bug 670958 - "Javascript 1.8.5 js_GetScriptLineExtent does not always return the correct value" (r=sfink)
--HG--
extra : rebase_source : b7f93037a828843749f83dc8b5b2f8fec404276d
2011-07-12 12:03:00 -07:00
Dave Yeo
705efe6018 Bug 670003: Fix yarr on OS/2. r=dmandelin 2011-07-12 12:57:08 -07:00
Cyril Roelandt
72a1be074a Bug 670487 - Fix prototype to eliminate a compiler warning in js/src/editline. r=brendan. 2011-07-12 13:14:37 -05:00
Jason Orendorff
5f0afdfaa2 Backed out changeset 2d5bc18fdf9c because the commit message lacks a bug number.
--HG--
extra : rebase_source : b9e34ce4beca44b44b75d84551c67279b49c2130
2011-07-12 14:49:59 -05:00
Cyril Roelandt
b0e41de502 Fix prototype to eliminate a compiler warning in js/src/editline. r=brendan.
--HG--
extra : rebase_source : bdde5a2c76f03309c92f864dc30aa320a8f38044
2011-07-12 13:14:37 -05:00
Ehsan Akhgari
2ee50e2446 Backout changeset 7c1a923bea13 (bug 649537) because of mochitest-3 and mochitest-oth oranges 2011-07-12 14:25:53 -04:00
Ben Turner
86f8bb179c Bug 649537 - 'Workers: Make one OS thread and JS runtime per worker, and lose XPConnect'. r=sicking+mrbkap.
--HG--
rename : dom/src/threads/Makefile.in => dom/workers/Makefile.in
rename : dom/src/threads/test/Makefile.in => dom/workers/test/Makefile.in
rename : dom/src/threads/test/WorkerTest.jsm => dom/workers/test/WorkerTest.jsm
rename : dom/src/threads/test/WorkerTest_badworker.js => dom/workers/test/WorkerTest_badworker.js
rename : dom/src/threads/test/WorkerTest_subworker.js => dom/workers/test/WorkerTest_subworker.js
rename : dom/src/threads/test/WorkerTest_worker.js => dom/workers/test/WorkerTest_worker.js
rename : dom/src/threads/test/atob_worker.js => dom/workers/test/atob_worker.js
rename : dom/src/threads/test/chromeWorker_subworker.js => dom/workers/test/chromeWorker_subworker.js
rename : dom/src/threads/test/chromeWorker_worker.js => dom/workers/test/chromeWorker_worker.js
rename : dom/src/threads/test/closeOnGC_server.sjs => dom/workers/test/closeOnGC_server.sjs
rename : dom/src/threads/test/closeOnGC_worker.js => dom/workers/test/closeOnGC_worker.js
rename : dom/src/threads/test/close_worker.js => dom/workers/test/close_worker.js
rename : dom/src/threads/test/fibonacci_worker.js => dom/workers/test/fibonacci_worker.js
rename : dom/src/threads/test/importScripts_worker.js => dom/workers/test/importScripts_worker.js
rename : dom/src/threads/test/importScripts_worker_imported1.js => dom/workers/test/importScripts_worker_imported1.js
rename : dom/src/threads/test/importScripts_worker_imported2.js => dom/workers/test/importScripts_worker_imported2.js
rename : dom/src/threads/test/importScripts_worker_imported3.js => dom/workers/test/importScripts_worker_imported3.js
rename : dom/src/threads/test/importScripts_worker_imported4.js => dom/workers/test/importScripts_worker_imported4.js
rename : dom/src/threads/test/json_worker.js => dom/workers/test/json_worker.js
rename : dom/src/threads/test/location_worker.js => dom/workers/test/location_worker.js
rename : dom/src/threads/test/longThread_worker.js => dom/workers/test/longThread_worker.js
rename : dom/src/threads/test/navigator_worker.js => dom/workers/test/navigator_worker.js
rename : dom/src/threads/test/newError_worker.js => dom/workers/test/newError_worker.js
rename : dom/src/threads/test/recursion_worker.js => dom/workers/test/recursion_worker.js
rename : dom/src/threads/test/relativeLoad_import.js => dom/workers/test/relativeLoad_import.js
rename : dom/src/threads/test/relativeLoad_sub_import.js => dom/workers/test/relativeLoad_sub_import.js
rename : dom/src/threads/test/relativeLoad_sub_worker.js => dom/workers/test/relativeLoad_sub_worker.js
rename : dom/src/threads/test/relativeLoad_sub_worker2.js => dom/workers/test/relativeLoad_sub_worker2.js
rename : dom/src/threads/test/relativeLoad_worker.js => dom/workers/test/relativeLoad_worker.js
rename : dom/src/threads/test/relativeLoad_worker2.js => dom/workers/test/relativeLoad_worker2.js
rename : dom/src/threads/test/simpleThread_worker.js => dom/workers/test/simpleThread_worker.js
rename : dom/src/threads/test/suspend_iframe.html => dom/workers/test/suspend_iframe.html
rename : dom/src/threads/test/suspend_worker.js => dom/workers/test/suspend_worker.js
rename : dom/src/threads/test/terminate_worker.js => dom/workers/test/terminate_worker.js
rename : dom/src/threads/test/testXHR.txt => dom/workers/test/testXHR.txt
rename : dom/src/threads/test/test_404.html => dom/workers/test/test_404.html
rename : dom/src/threads/test/test_atob.html => dom/workers/test/test_atob.html
rename : dom/src/threads/test/test_chromeWorker.html => dom/workers/test/test_chromeWorker.html
rename : dom/src/threads/test/test_chromeWorker.xul => dom/workers/test/test_chromeWorker.xul
rename : dom/src/threads/test/test_chromeWorkerJSM.xul => dom/workers/test/test_chromeWorkerJSM.xul
rename : dom/src/threads/test/test_close.html => dom/workers/test/test_close.html
rename : dom/src/threads/test/test_closeOnGC.html => dom/workers/test/test_closeOnGC.html
rename : dom/src/threads/test/test_errorPropagation.html => dom/workers/test/test_errorPropagation.html
rename : dom/src/threads/test/test_fibonacci.html => dom/workers/test/test_fibonacci.html
rename : dom/src/threads/test/test_importScripts.html => dom/workers/test/test_importScripts.html
rename : dom/src/threads/test/test_json.html => dom/workers/test/test_json.html
rename : dom/src/threads/test/test_location.html => dom/workers/test/test_location.html
rename : dom/src/threads/test/test_longThread.html => dom/workers/test/test_longThread.html
rename : dom/src/threads/test/test_navigator.html => dom/workers/test/test_navigator.html
rename : dom/src/threads/test/test_newError.html => dom/workers/test/test_newError.html
rename : dom/src/threads/test/test_recursion.html => dom/workers/test/test_recursion.html
rename : dom/src/threads/test/test_relativeLoad.html => dom/workers/test/test_relativeLoad.html
rename : dom/src/threads/test/test_simpleThread.html => dom/workers/test/test_simpleThread.html
rename : dom/src/threads/test/test_suspend.html => dom/workers/test/test_suspend.html
rename : dom/src/threads/test/test_terminate.html => dom/workers/test/test_terminate.html
rename : dom/src/threads/test/test_threadErrors.html => dom/workers/test/test_threadErrors.html
rename : dom/src/threads/test/test_threadTimeouts.html => dom/workers/test/test_threadTimeouts.html
rename : dom/src/threads/test/test_throwingOnerror.html => dom/workers/test/test_throwingOnerror.html
rename : dom/src/threads/test/test_xhr.html => dom/workers/test/test_xhr.html
rename : dom/src/threads/test/test_xhrAbort.html => dom/workers/test/test_xhrAbort.html
rename : dom/src/threads/test/threadErrors_worker1.js => dom/workers/test/threadErrors_worker1.js
rename : dom/src/threads/test/threadErrors_worker2.js => dom/workers/test/threadErrors_worker2.js
rename : dom/src/threads/test/threadErrors_worker3.js => dom/workers/test/threadErrors_worker3.js
rename : dom/src/threads/test/threadErrors_worker4.js => dom/workers/test/threadErrors_worker4.js
rename : dom/src/threads/test/threadTimeouts_worker.js => dom/workers/test/threadTimeouts_worker.js
rename : dom/src/threads/test/throwingOnerror_worker.js => dom/workers/test/throwingOnerror_worker.js
rename : dom/src/threads/test/xhrAbort_worker.js => dom/workers/test/xhrAbort_worker.js
rename : dom/src/threads/test/xhr_worker.js => dom/workers/test/xhr_worker.js
2011-07-12 12:32:14 -04:00
Brian Hackett
8e275e6ef7 [INFER] Monitor scripted call results when returning into the interpoline, bug 663690. 2011-06-13 08:42:05 -07:00
Brian Hackett
6dea4378d4 [INFER] Always use type barriers at NAME opcodes, tweak USES_BEFORE_COMPILE and CONTRIBUTION_LIMIT, bug 662383. 2011-06-11 09:46:48 -07:00
Brian Hackett
fa41f89faf [INFER] Read barriers for call results, bug 663381. 2011-06-10 19:03:57 -07:00
Shawn Gong
552c301b28 Fixed bug 632255: implemented FileReader.readAsArrayBuffer() API. r=sicking 2011-06-30 17:50:44 -07:00
Jan de Mooij
3e5f166d75 [INFER] Fix type handler for snarf, it can return a typed array. r=bhackett on irc 2011-06-09 17:27:46 +02:00
Brian Hackett
5eab4fc3dc Merge. 2011-06-08 18:15:06 -07:00
Brian Hackett
b8e377a445 [INFER] Mark locals/args which are aliased by NAME opcodes as escaping, bug 651966. 2011-06-08 17:35:11 -07:00
Jan de Mooij
1bff4c0c56 [INFER] Fix parseInt to return integers instead of doubles where possible, rewrite some setNumber calls, bug 662766. r=bhackett 2011-06-08 20:11:42 +02:00
Brian Hackett
b20c96262f [INFER] Clone function first for SETMETHOD on non-shadowable shapes, bug 642894. 2011-06-08 11:04:00 -07:00
Brian Hackett
6590865df8 [INFER] Never do a lookup on the current scope chain for GNAME opcodes, bug 647695. 2011-06-08 09:20:01 -07:00
Makoto Kato
cd7ae32ee3 Bug 635617 - 64-bit crash [@ MakeDay] r=jwalden 2011-06-08 10:41:37 +09:00
Makoto Kato
8aef16bd3b Bug 667076 - follow up for bustage on Win64. r=luke 2011-07-01 15:59:58 +09:00
Brian Hackett
b716dfa3de [INFER] Make sure to get the topmost scripted frame's pc in ContextStack::currentScript, bug 662562. 2011-06-07 17:44:07 -07:00
Brian Hackett
28d4850580 [INFER] Watch for singleton function objects in js_AllocFlatClosure, bug 662338. 2011-06-07 17:21:14 -07:00
Brian Hackett
f7f03783ff [INFER] Fix no-op propagation of deoptimization flags for array comprehensions, bug 660538. 2011-06-07 16:33:25 -07:00
Brian Hackett
7fc14bc6e1 [INFER] Don't expand frames in contexts without a compartment, fix warnings, add type barrier comment. 2011-06-07 09:14:52 -07:00
Brian Hackett
cb856b55f5 [INFER] Fix merge botch, only warn once for each script accessing undefined properties in contexts with the strict option set, bug 662393. 2011-06-06 17:12:49 -07:00
Brian Hackett
020c4d8bac Merge TM -> JM 2011-06-06 16:47:40 -07:00
Brian Hackett
401426888d [INFER] Fix quadratic behavior when repeatedly attempting to expand inline frames, bug 657412. 2011-06-06 16:14:09 -07:00
Paul Biggar
33979e422d Bug 660681: Add NULL check to LeaveFunction (r=jimb) 2011-06-06 14:24:11 -07:00
Paul Biggar
118bf3fdae Bug 660670: Report an error on OOM in Parser::analyzeFunction (r=jimb) 2011-06-06 14:24:11 -07:00
Paul Biggar
08fcb0b61d Bug 660638: Add NULL check to Compiler::compileScript (r=jwalden) 2011-06-06 14:24:10 -07:00
David Mandelin
ea7d5ed079 Bug 662165: fix MSVC warning 2011-06-06 13:36:57 -07:00
Brian Hackett
4238aac7aa [INFER] Fix bustage with inference disabled. 2011-06-06 10:04:31 -07:00
Chris Leary
278e5141b8 Followup fix for merge, fix ifdef directive. 2011-06-06 09:58:15 -07:00
Brian Hackett
1186d01428 Merge TM -> JM 2011-06-06 09:48:04 -07:00
Chris Leary
f8e0e912ab Merge mozilla-central to tracemonkey. 2011-06-06 09:41:22 -07:00
Brian Hackett
d99dec2be3 [INFER] Fix busted jit-tests. 2011-06-06 08:47:34 -07:00
Brian Hackett
b0ae81df4a [INFER] Apply arguments and script review comments, bug 657412. 2011-06-06 08:32:41 -07:00
Brian Hackett
de9c3c81f6 [INFER] Apply stack review comments, bug 657412. 2011-06-05 22:39:45 -07:00
Brian Hackett
c4b247ab0e [INFER] Completely fill in fp->nactual in mjit prologues for scripts which use their arguments, bug 662072. 2011-06-04 13:45:31 -07:00
Brian Hackett
a277519c68 [INFER] *correctly* mark VMFrames when patching native returns, bug 661859. 2011-06-04 13:41:31 -07:00
Brian Hackett
d7d8ae4dcc [INFER] Don't use tracers with empty callbacks to verify roots during compartment GCs. 2011-06-04 09:30:15 -07:00
Brian Hackett
1cbfb7c83f [INFER] Update shape number after rolling back properties in scripted 'new' correction, bug 662044. 2011-06-04 07:59:12 -07:00
Brian Hackett
4d2e9a49d7 [INFER] Mark VMFrames when patching native returns, bug 661859. 2011-06-04 07:43:01 -07:00
Brian Hackett
9ee5994b69 [INFER] Apply object review changes, bug 657412. 2011-06-03 20:48:16 -07:00
timeless@mozdev.org
deceb8bf2b Bug 620182 [@ QuoteString | DecompileSwitch] when JSVAL_IS_DOUBLE(key) and SprintDoubleValue fails due to oom
r=jorendorff
2011-06-03 08:57:00 -07:00
Christian Holler
e272aab660 [INFER] Make type failures abort like assertions, bug 657881. r=bhackett 2011-06-02 13:10:14 -07:00
Brian Hackett
5c5438cc38 Merge TM -> JM 2011-06-02 12:59:28 -07:00
Brian Hackett
a804aa88fe Fix bug 650673, r=dmandelin. 2011-06-02 12:22:39 -07:00
Brian Hackett
82abccdd14 [INFER] Move inference methods out of JSContext, bug 657412. 2011-06-02 10:40:27 -07:00
Igor Bukanov
8e11a702b7 bug 656261 - followup to fix compilation warning 2011-06-02 19:36:59 +02:00
Paul Biggar
0a66b46e25 Bug 660668: Fix Shape::search() assertion after OOM (r=nnethercote)
Shape::search() assumes hasTable() will be false if Shape::search() OOMs - make it so.
2011-06-02 10:06:36 -07:00
Paul Biggar
459861e42c Bug 660630: Only error once in OOM in NewCompartment (r=igor) 2011-06-02 10:06:36 -07:00
Paul Biggar
c333f22f78 Bug 660610: Don't double-free execAlloc_ after OOM. (r=nnethercote) 2011-06-02 10:06:36 -07:00
Makoto Kato
736dc7d1e4 [INFER] Bug 661093 - Win64 port. r=bhackett 2011-06-02 14:03:08 +09:00
Chris Leary
e059ba52f5 POD trait for |long long| family, attempt to rambo Winx64 back to life. (rs=luke) 2011-06-27 15:00:17 -07:00
Brian Hackett
a27ff03fc1 Merge TM -> JM 2011-06-01 11:22:03 -07:00
Brian Hackett
58811dfa16 [INFER] Address array review comments, add back backedge table, bug 657412. 2011-06-01 11:15:51 -07:00
Brian Hackett
6b8a6b971f [INFER] Fix comment, temporarily turn on -a in browser for tests. 2011-06-01 08:46:29 -07:00
Ed Morley
5f60af28bb Bug 316661 - Remove null-checks before delete: Part B; r=pbiggar,brendan,bzbarsky 2011-06-01 03:07:00 -07:00
Alon Zakai
5ea390381e Bug 644241 followup for compiler warning 2011-06-03 18:13:47 -07:00
Alon Zakai
f482160f72 Bug 644241, part 2: Disabling OOMing tests. r=igor 2011-06-03 17:54:30 -07:00
Alon Zakai
2f4274045c Bug 644241, part 1 - Remove script stack quota. r=igor 2011-06-03 17:54:26 -07:00
Chris Leary
ad6cf7c541 Bug 576828: Test self-referential backreference. (r=dmandelin)
--HG--
extra : rebase_source : 42b9319d8e9c5ae48a04e8f9e099ee2ea8d93294
2011-06-03 16:36:42 -07:00
Chris Leary
dae433fed7 Bug 661770: Avoid call overhead atomizing from js_AtomizeChars. (r=njn)
--HG--
extra : rebase_source : 0bcacc47c6171886e6d200c1de093df5aa326e8d
2011-06-03 15:36:07 -07:00
Makoto Kato
634f7d1946 Bug 660591 - Bug 625600 causes bustage on Win64. r=dmandelin 2011-06-01 14:05:36 +09:00
Chris Leary
db8f0665e7 Bug 661770: Make shell's compile builtin compile-and-go. (r=dvander)
--HG--
extra : rebase_source : d6ad31d173ff1b4c115957db23af034d3cee7ba2
2011-05-31 20:38:02 -07:00
Bill McCloskey
f7c5d49018 Bug 660778 - Deal with stack overflow in UnmarkGrayChildren (r=gal) 2011-06-03 13:08:21 -07:00
Nicholas Nethercote
f54b0fa19d Bug 546477 - add explicit/js/stack memory reporter. r=luke. 2011-06-02 19:40:57 -07:00
Brian Hackett
d2ac320c86 [INFER] Rewrite CompileFunction as an UncachedNew/UncachedCall wrapper, bug 660850. 2011-05-31 10:31:39 -07:00
Brian Hackett
f0bf721a4d [INFER] Watch for rejoining from an arguments check in scripts which start with an incop, bug 660737. 2011-05-31 07:59:39 -07:00
Brian Hackett
73629f62ea [INFER] Fix broken test for integer properties in AnalyzeNewScriptProperties, bug 660597. 2011-05-31 07:31:35 -07:00
Igor Bukanov
5b6c00bb2a Bug 657198 - improving unreachable GC things detection in traces. r=gal 2011-05-31 10:01:09 +02:00
David Anderson
3eff122abe Fix ARM assert (no bug, r=cdleary). 2011-06-24 00:22:58 -07:00
Jeff Walden
65bb367c0c Followup to fix tests relying on the mistaken absence of JSOPTION_ANONFUNFIX. r=orange 2011-06-23 18:48:55 -07:00
Brian Hackett
485e71109e Bug 662132: Better coordination of GC and ICs, r=dvander 2011-06-23 18:19:57 -07:00
Gavin Barraclough
8ccf51f141 Bug 653672: fix regexp offset handling, r=cdleary 2011-06-20 13:31:24 -07:00
Chris Leary
4fd96c3fb4 Fix type-mismatched error return value. 2011-06-23 17:06:57 -07:00
Luke Wagner
a6f59ecb7d Bug 666292 - The decompiler does not deserve to use FrameRegsIter (it temporarily clobbers script->code) (r=waldo) 2011-06-23 16:41:59 -07:00
Jeff Walden
0a61156473 Bug 665835 - Remove JSOPTION_ANONFUNFIX. r=cdleary
--HG--
rename : js/src/tests/js1_5/extensions/regress-376052.js => js/src/tests/ecma_5/misc/unnamed-function.js
2011-06-21 09:53:19 -07:00
Jeff Walden
6b92eb239e *Fewer* *occurrences*, not "less occurences". r=languagenazi 2011-06-23 11:07:27 -07:00
Dave Herman
bc5c25ed9b Bug 665286 - crash on yield in arguments list (r=cdleary) 2011-06-23 18:20:31 -04:00
Dave Herman
8d5a97dc48 Fixed broken test case (r=orange) 2011-06-23 16:40:58 -04:00
Paul Biggar
2d4fbba45a Bug 666052: Remove unused NSPR defines for events, hashtables and arenas (r=luke) 2011-06-23 13:27:04 -07:00
Luke Wagner
cf52575b1d Update 'make check' OffTheBooks/Foreground accounting for 580ad572687b 2011-06-23 10:43:31 -07:00
Jeff Walden
4d7b8eb3a6 Bug 660517 - Kill XML objects as prototypes. r=mrbkap
--HG--
extra : rebase_source : e2bf46111cab2bf97abe5a1bd8d0b25d97e8bfb9
2011-06-16 15:43:58 -07:00
Jeff Walden
0f68955900 Bug 587268 - Consolidate duplicate properties during enumeration of objects with custom enumeration behavior. r=dmandelin
--HG--
extra : rebase_source : ffd03f833471205e896815a7593326d2f7ea7bac
2011-06-21 16:52:25 -07:00
Luke Wagner
0319982d42 Bug 665247 - Remove unused metering code (r=igor)
--HG--
extra : rebase_source : 78ec31e4236f63f8a91024f34b1b99a889dc47f5
2011-06-21 10:26:22 -07:00
Dave Herman
da7f1d70a8 Bug 632030 - Reflect.parse handling of duplicate var declarations (r=jorendorff) 2011-06-23 12:31:40 -04:00
Daniel Holbert
197cb3d127 Bug 666481: Remove set-but-not-used variable 'count' from jsatom.cpp. r=igor 2011-06-23 02:47:13 -07:00
Dave Herman
0e0b2db7f9 Bug 632056 - Reflect.parse() constant-folding test 2011-06-23 03:44:56 -04:00
Dave Herman
494f040003 Bug 632029 - Reflect.parse() constant-folding 2011-06-23 03:31:12 -04:00
Dave Herman
ab82a6fa38 Bug 632026 - Reflect.parse() constant folding test 2011-06-23 03:17:42 -04:00
Igor Bukanov
40d7d39db3 bug 665781 - do not shrink XML arrays during GC. r=gal 2011-06-21 12:23:14 +02:00
Luke Wagner
cdcb6ca0ba Bug 666003 - Set 'script' after pushing inline frame in JSOP_CALL (r=waldo)
--HG--
extra : rebase_source : a3a922c32a1f68fcd5dcf72937d695b39bbb4770
2011-06-21 17:44:50 -07:00
Nicholas Nethercote
6ef6e862d2 Bug 665404 - Create JaegerCompartments lazily. r=luke. 2011-06-22 09:16:23 +10:00
Bob Clary
0a168b2cf6 bug 662468 - JavaScript Tests - restore Object.prototype.string in e4x/Regress/regress-373082.js, r=igor. 2011-06-21 10:35:29 -07:00
Nicholas Nethercote
a902454a0c Bug 661068 follow-up - Fix the --disable-tracejit bustage caused by 1e464e38591e. Oh the humanity! 2011-06-21 13:18:15 +10:00
Nicholas Nethercote
a208fd35a9 Bug 661068 - Create TraceMonitors lazily. r=luke. 2011-06-21 12:47:04 +10:00
Brian Hackett
fc432bc610 [INFER] Reduce inference changes to JSAPI, bug 657412. 2011-05-30 13:28:01 -07:00
Brian Hackett
620c6d6d1c [INFER] Fix jit-test regression, warnings. 2011-05-29 07:20:47 -07:00
Brian Hackett
604289136d [INFER] Fix merge botch. 2011-05-28 22:44:33 -07:00
Phil Ringnalda
0344c24e80 Interim bug 660497 bustage fix, use $(OS_TARGET) until ANDROID is usable as a makefile define 2011-05-28 20:25:30 -07:00
Luke Wagner
6beaae8ad4 Dial down recursion in new test added by abd2dcd555f4 so as to not chew up so much C stack when the mjit is disabled (r=orange) 2011-06-02 18:39:48 -07:00
Luke Wagner
07c939e83e Bug 538293 - remove inlineCallCount and this STACK_QUOTA silliness (r=dvander)
--HG--
extra : rebase_source : 724910c67423b0720ca5c3732699bca4d64324ef
2011-05-27 18:15:39 -07:00
Luke Wagner
a710729944 Bug 656171 - Just remove this mutual subsumption assertion; with document.domain it's not strictly true (r=mrbkap)
--HG--
extra : rebase_source : 78247eba80e9196c929d9136273557faa717407c
2011-06-02 16:35:31 -07:00
Bill McCloskey
c23838f371 Fix jstest timeouts caused by patch for bug 650978 2011-06-02 15:07:01 -07:00
Gregor Wagner
9ce0f0d1ba Bug 660329 - GC: add reason for GC to GCTimer. r=igor 2011-06-02 13:02:21 -07:00
Brian Hackett
1354314184 Merge TM -> JM 2011-05-27 15:08:04 -07:00
Brian Hackett
7632725c3e [INFER] Monitor CALLPROP calls whose callee is not statically known, bug 660204. 2011-05-27 14:21:37 -07:00
David Mandelin
88e2fc9186 Remove some stray Ctrl-M characters 2011-05-27 14:05:05 -07:00
timeless@mozdev.org
c18f5ac818 Bug 619794 DECOMPILE_CODE leaks xval on failure in Decompile
r=jorendorff
2011-05-27 10:58:28 -07:00
timeless@mozdev.org
0333a7ce54 Bug 620251 js_CurrentThread and friends should have AndLockGC in their name
r=jorendorff
2011-05-27 10:58:26 -07:00
timeless@mozdev.org
ba16ed7739 Bug 621153 Add JS_ALWAYS_TRUE markers to ValueToNumber() for cases where it should be so
r=jorendorff
2011-05-27 10:58:22 -07:00
Brian Hackett
4ee1a48077 [INFER] Don't get uses of untracked vars in trackUseChain, bug 660203. 2011-05-27 09:01:05 -07:00
Brian Hackett
6817157473 [INFER] Follow values pushed by SETLOCAL in followEscapingArguments, bug 660173. 2011-05-27 08:33:48 -07:00
Brian Hackett
41f6dc98eb [INFER] Remove type handler information for e4x, bug 660152. 2011-05-27 08:19:43 -07:00
Jan de Mooij
ef0a847b87 Bug 624298 - Add an IC for JSOP_CALLNAME. r=dvander 2011-05-27 13:56:11 +02:00
Brian Hackett
930dc67335 [INFER] Uncopy non-object operands before forgetting in ops which expect objects, bug 660002. 2011-05-26 20:26:31 -07:00
Brian Hackett
b4a7da4b87 [INFER] Follow uses of phi node itself, not its components, when checking for escaping arguments, bug 660081. 2011-05-26 20:10:27 -07:00
Luke Wagner
bf3e38e9d2 Bug 656490 - Fix direct-eval assert (r=dmandelin) 2011-05-26 17:23:21 -07:00
Brian Hackett
951268550c [INFER] Ignore bogus lazy arguments type in TypeConstraintTransformThis. 2011-05-26 13:47:33 -07:00
Brian Hackett
d750820da8 [INFER] Fix computation of fp->actualArgs() on x64, bug 658638. 2011-05-26 13:25:25 -07:00
Brian Hackett
621ab68f21 [INFER] Optimize arguments accesses, bug 658638. 2011-05-26 12:28:19 -07:00
Brian Hackett
02a6764444 [INFER] Disable generation of native stubs within inlined frames, bug 659639. 2011-05-25 10:22:03 -07:00
Brian Hackett
28b60b7763 [INFER] Allow for the caller to be in an inlined frame in FixupArity, bug 659456. 2011-05-25 09:23:48 -07:00
Brian Hackett
b568e9cacb [INFER] Don't hoist GETPROP on integer properties, bug 659452. 2011-05-25 08:59:36 -07:00
Brian Hackett
b054883bb6 [INFER] Add missing type barrier in stubs::SetName, bug 659448. 2011-05-25 08:49:52 -07:00
Brian Hackett
522292569c [INFER] Don't mark temporaries as copies of other entries when storing their copies to a variable, bug 659438. 2011-05-25 08:34:34 -07:00
Brian Hackett
049a9089a0 [INFER] Trap fixes when rejoining to interpreter, bug 659337. 2011-05-25 08:26:29 -07:00
Brian Hackett
1980510060 [INFER] Fix trap handling around loop heads, bug 659043, bug 659233. 2011-05-25 08:15:34 -07:00
Brian Hackett
608f326937 [INFER] Fix bogus assert, bug 658950. 2011-05-25 07:54:17 -07:00
Ehsan Akhgari
84e6e87f47 Back out changeset 51f17131556b (bug 632221) because it breaks the build 2011-07-13 16:37:18 -04:00
Andrew Paprocki
a657a850fc Bug 632221 - Add HOST_LDFLAGS to link of host programs, make jscpucfg a host program; r=ted 2011-07-13 12:37:35 -07:00
Brian Hackett
11ebebb4fc [INFER] Handle empty stack segments in AllFramesIter, bug 659473. 2011-05-24 15:37:30 -07:00
Brian Hackett
7963fd4feb [INFER] Always monitor argument types at FUNCALL/FUNAPPLY, always check arguments at script entry in DEBUG, bug 659439. 2011-05-24 14:35:19 -07:00
Justin Lebar
be822c8496 Bug 660930 - Force InlineGetProp to be inlined. r=dmandelin 2011-05-31 19:57:36 -04:00
Igor Bukanov
875a4ed0e8 bug 660430 - do not call the security manager during GC-marking of GC wrappers. r=gal 2011-05-30 21:36:16 +02:00
Luke Wagner
b99eb46ea1 Fix jit_test.py so that -g works again (rs=dmandelin) 2011-05-27 18:19:14 -07:00
Gregor Wagner
cbb17d528d Bug 658041 - Stack based marking for JSRopes. r=igor 2011-05-27 15:17:47 -07:00
Brian Hackett
e9ac12ed3c [INFER] Remove uses of DEBUG-only dis() from tests. 2011-05-22 21:48:20 -07:00
Brian Hackett
bdd6f8267a [INFER] Constant fold 'x ==/!= null' comparisons with a known result, bug 654705. 2011-05-22 20:53:33 -07:00
Brian Hackett
30f0c2d28b [INFER] Generate native and full call stubs at call ICs in inlined frames, bug 654705. 2011-05-22 20:04:00 -07:00
Brian Hackett
1e358b51f6 Merge TM -> JM 2011-05-22 08:59:06 -07:00
Brian Hackett
17ea85886f [INFER] Record isOwnProperty dependencies on actual property types in jsop_getgname, bug 619433. 2011-05-22 08:31:01 -07:00
Igor Bukanov
71d7289d00 bug 658016 - followup to fix !JS_THREADSAFE builds. 2011-05-22 09:27:01 +02:00
Brian Hackett
33c8ca3f88 [INFER] Check bounds in shell trap() function, bug 658805. 2011-05-21 22:37:54 -07:00
Brian Hackett
bd61d098b6 [INFER] Check type->newScriptCleared before calling clearNewScript, bug 658803. 2011-05-21 22:07:14 -07:00
Brian Hackett
6561d78ce5 [INFER] Watch for constant frame entries in jsop_callprop_dispatch, bug 658801. 2011-05-21 21:51:34 -07:00
Brian Hackett
1202ff8417 [INFER] Don't rollback properties when clearing new scripts for objects which have finished initialization, bug 658777. 2011-05-21 07:44:54 -07:00
Brian Hackett
35e68976e3 [INFER] Mark the result of cross-global native calls as unknown, bug 658539. 2011-05-21 00:40:50 -07:00
Brian Hackett
24c7b0eb7c [INFER] Don't treat GETLOCAL as dead when followed by POP with incoming jumps, bug 658579. 2011-05-20 23:24:09 -07:00
Brian Hackett
224f0d8557 [INFER] Watch for rejoining at an INCOP after recompilation triggered by callee.prototype, bug 658561. 2011-05-20 21:18:59 -07:00
Brian Hackett
02ba3d730b [INFER] Restore frame pointer at exception block entry before invoking any trap, bug 658491. 2011-05-20 21:12:06 -07:00
Brian Hackett
c602e73bb5 [INFER] Don't analyze loop bodies with debug mode set, untrap in property constraints, bugs 658464, bug 658465. 2011-05-20 21:06:58 -07:00
Brian Hackett
f1b91c8773 [INFER] Analysis and compiler improvements for polymorphic call sites, bug 653962. 2011-05-20 19:33:06 -07:00
Jan de Mooij
d14970c9fe [INFER] Release GC lock after printing inference results to prevent deadlocks, bug 658623. r=bhackett 2011-05-20 22:02:54 +02:00
Igor Bukanov
c6893bfa52 bug 658016 - properly synchronizing the free lists with arenas when dumping the heap. r=wmccloskey 2011-05-20 12:38:31 +02:00
Igor Bukanov
a74b534b3f bug 658505 - removal of thread synchronization when setting a prototype. r=jorendorff
--HG--
extra : rebase_source : 8ef87070a88a3323c3b657c043741f087a98d5d3
2011-05-20 18:40:35 +02:00
Chris Leary
a2d213f0d0 Bug 619561: GC telemetry hooks for TestPilot study. (r=billm) 2011-05-20 13:40:06 -07:00
Chris Leary
b2d9eba98e Merge mozilla-central and tracemonkey. 2011-05-20 14:29:36 -07:00
Blake Kaplan
21d04c350b Fix merge mistake. 2011-05-20 21:22:21 +02:00
Bill McCloskey
d98ff20cc1 Bug 658053 - Fix #ifdefs for disabling methodjit and tracejit (r=dmandelin) 2011-05-20 11:27:33 -07:00
Bill McCloskey
6a8823ab66 Bug 658055 - Always use getter to access fun->script() (r=dmandelin) 2011-05-20 11:27:27 -07:00
Bill McCloskey
6204deb7f6 Bug 653026 - Fix NoSuchMethod (r=Waldo) 2011-05-20 11:27:22 -07:00
Blake Kaplan
c303dfca62 Disable this test on Maemo for now. 2011-05-20 21:13:43 +02:00
Blake Kaplan
cfb87bd6b3 Attempting to fix bustage. r=bustage fix 2011-05-20 18:17:31 +02:00
Joel Maher
579034f58a Bug 658524 - annotate remaining jsreftest manifests for android. r=bear, a=test-only 2011-05-20 11:54:02 -04:00
Joel Maher
6993636556 Bug 616999. Xpcshell manifest support; manifest files. r=ted, a=test-only 2011-05-20 11:54:01 -04:00
Joel Maher
8d37f99984 Bug 616999. Xpcshell manifest support; harness changes. r=ted, a=test-only 2011-05-20 11:54:01 -04:00
Jacob Bramley
b8e8e65e42 [INFER] Add missing storeDouble/loadDouble implementations to the ARM back-end. [bug 658239] [r=bhackett] 2011-05-20 11:37:22 +01:00
Brian Hackett
d36fe23da0 [INFER] Update possible types when generating IC for GETXPROP, bug 658240. 2011-05-19 16:00:25 -07:00
Brian Hackett
000a0c884c [INFER] Add missing typeMonitor calls when stubbing GETELEM and CALLELEM, bug 658294. 2011-05-19 15:32:11 -07:00
Brian Hackett
aee058456f [INFER] Restrict tracked loop test information to known integers, bug 658290. 2011-05-19 15:02:36 -07:00
Rafael Ávila de Espíndola
f9339f6813 b=661145, r=bsmedberg Move the function declarations passed to AC_TRY_COMPILE out of the body of main. 2011-06-03 16:34:42 -04:00
Mike Hommey
df686a06f3 Bug 626035 - Modify the way arm compiler flags are set in configure. r=ted 2011-06-03 01:49:28 +02:00
Mike Hommey
1cb5d6d328 Bug 658251 - Fix MK{,C}SHLIB when using wrap-malloc. r=ted 2011-06-03 01:27:07 +02:00
Brian Hackett
b87d5cbe5d [INFER] Recompile inline parents of scripts when adding type barriers at new sites, bug 658211. 2011-05-19 13:56:11 -07:00
Brian Hackett
41d56c0bb1 [INFER] Leave analysis before possibly reentering the interpreter while finishing incops, bug 658209. 2011-05-19 12:33:12 -07:00
Igor Bukanov
3e2ef6c4ef bug 656261 - better GC arena layout. r=wmccloskey 2011-05-19 21:01:08 +02:00
Bill McCloskey
b902b98248 Bug 650978 - Add gczeal setting to GC on every allocation (r=gwagner) 2011-06-01 17:48:52 -07:00
Bill McCloskey
719f0678e9 Bug 652985 - Use off-the-books malloc in DumpHeap (r=pbiggar) 2011-06-01 17:48:02 -07:00
Brian Hackett
79674e33bc [INFER] Audit uses of PC in analysis and inference for UntrapOpcode, bug 657975, bug 657979, bug 657984. 2011-05-19 10:09:17 -07:00
Brian Hackett
14097cb845 [INFER] Remove cx->newTypeObject, bug 657412. 2011-05-19 09:15:12 -07:00
Brian Hackett
ea07081537 [INFER] Fixes for OOM handling, bug 657633. 2011-05-18 13:15:38 -07:00
Brian Hackett
131bcf7ab2 [INFER] Disable inference and infallibly discard jitcode on OOM, bug 637674. 2011-05-18 12:34:17 -07:00
Brian Hackett
7efba20ba5 [INFER] Add WithType variation for nativeSetSlot, fix gaps in type barriers, bug 657901. 2011-05-18 10:43:08 -07:00
Brian Hackett
3686205693 [INFER] Block repeated recursive EnterMethodJIT on the same stack frame from loop backedges, bug 657890. 2011-05-18 10:12:06 -07:00
Brian Hackett
534fc1b409 [INFER] Block recursion in AnalyzeNewScriptProperties, bug 657624. 2011-05-18 09:21:13 -07:00
Brian Hackett
e10c9c51e3 [INFER] x64 fixes, bug 656920. 2011-05-18 09:06:56 -07:00
Brian Hackett
61c6f0cd96 Read barriers for property accesses, bug 656920. 2011-05-17 20:29:41 -07:00
Brian Hackett
96bb507e91 [INFER] Update type information in DefineNativeProperty when defining method properties, bug 657586. 2011-05-17 06:32:20 -07:00
Jan de Mooij
a5391cf52b [INFER] Fix jsop_relational_double to sync rhs correctly if lhs is not a number, bug 657120. r=bhackett 2011-05-17 14:09:08 +02:00
Brian Hackett
4cb0c5c5ef [INFER] Cleanup for review, bug 657412. 2011-05-16 22:59:40 -07:00