Commit Graph

26705 Commits

Author SHA1 Message Date
Bob Clary
b92e885cf8 bug 481989 - JavaScript Test by Gary Kwong. 2009-03-14 15:27:07 -07:00
Bob Clary
d6f16d4d2c bug 482263 - JavaScript Test by Gary Kwong. 2009-03-14 15:27:07 -07:00
Bob Clary
3f17b8b08a bug 482421 - JavaScript Test by Gary Kwong. 2009-03-14 15:27:07 -07:00
Bob Clary
f73e317351 Bug 482783, Bug 481793, Bug 476871, Bug 482349, Bug 482594 - merge js/src/trace-test.js, js/tests/js1_8_1/trace/trace-test.js. 2009-03-14 15:27:07 -07:00
Bob Clary
b80af17a33 bug 483438 - remove public failures from source control. 2009-03-14 15:27:07 -07:00
Bob Clary
d7707d8349 bug 483435 - remove windows wlock.lnk file after hg pull. 2009-03-14 15:27:06 -07:00
Bob Clary
af6906d71b bug 483434 - Sisyphus - JavaScript Tests - add support for narcissus. 2009-03-14 15:27:06 -07:00
Bob Clary
af1acbbe04 bug 483433 - comment bug number in spidermonkey-n-1.9.2.tests. 2009-03-14 15:27:05 -07:00
Igor Bukanov
20e6be9c80 bug 362910 - js_GetMethod cleanup. r=brendan 2009-03-14 17:41:47 +01:00
Jim Blandy
74847db9cd Back out 480132: orange on Linux (http://tinderbox.mozilla.org/showlog.cgi?log=TraceMonkey/1237017748.1237029269.2403.gz&fulltext=1) 2009-03-14 08:19:58 -07:00
Jim Blandy
bed3611385 Bug 480132: Clone lexical blocks only when needed. r=igor
Terminology:

A "script block" is an object of class Block allocated by the byte
compiler and associated with a script.  Script blocks are never
modified, and may be used as a prototype for a "closure block":

A "closure block" is an object of class Block that holds variables
that have been closed over (although we actually leave the variables
on the stack until we leave their dynamic scope).  A closure block is
a clone of a script block (its prototype is a script block).

Adjust the meanings of fp->blockChain and fp->scopeChain:

  fp->blockChain is always the innermost script block in whose static
  scope we're executing.

  fp->scopeChain is the current scope chain, including 'call' objects
  and closure blocks for those function calls and blocks in whose
  static scope we are currently executing, and 'with' objects for with
  statements; the chain is typically terminated by a global object.
  However, as an optimization, the young end of the chain omits block
  objects we have not yet needed to clone.

Closures need fully reified scope chains, so have js_GetScopeChain
reify any closure blocks missing from the young end of fp->scopeChain
by cloning script blocks as needed from fp->blockChain.  Thus, if we
never actually close over a particular block, we never place a closure
block for it on fp->scopeChain.

Have JSOP_ENTERBLOCK and JSOP_LEAVEBLOCK always keep fp->blockChain
current.  When JSOP_LEAVEBLOCK pops a block from fp->blockChain that
has been cloned on fp->scopeChain, pop fp->scopeChain as well.

Remove the JSFRAME_POP_BLOCKS flag, as it is no longer needed.

Ensure that the JIT won't have to create closure blocks or call
js_PutBlockObject; it can't handle those things yet.  Note our current
script block when we begin recording.  Abort recording if we leave
that block; we can't tell in advance whether it will need to be "put"
in future trace invocations.  Leave trace if we call js_GetScopeChain
while in the static scope of lexical blocks.  Remove JIT tests based
on JSFRAME_POP_BLOCKS.

Verify that generators capture the correct value for blockChain.

Add a constructor to JSAutoTempValueRooter for rooting JSObject
pointers.
2009-03-14 00:58:27 -07:00
Jim Blandy
d72dff994b Back out 480132 fix; static analysis red 2009-03-14 00:57:54 -07:00
Jim Blandy
4778b96a85 Bug 480132: Clone lexical blocks only when needed. r=igor
Terminology:

A "script block" is an object of class Block allocated by the byte
compiler and associated with a script.  Script blocks are never
modified, and may be used as a prototype for a "closure block":

A "closure block" is an object of class Block that holds variables
that have been closed over (although we actually leave the variables
on the stack until we leave their dynamic scope).  A closure block is
a clone of a script block (its prototype is a script block).

Adjust the meanings of fp->blockChain and fp->scopeChain:

  fp->blockChain is always the innermost script block in whose static
  scope we're executing.

  fp->scopeChain is the current scope chain, including 'call' objects
  and closure blocks for those function calls and blocks in whose
  static scope we are currently executing, and 'with' objects for with
  statements; the chain is typically terminated by a global object.
  However, as an optimization, the young end of the chain omits block
  objects we have not yet needed to clone.

Closures need fully reified scope chains, so have js_GetScopeChain
reify any closure blocks missing from the young end of fp->scopeChain
by cloning script blocks as needed from fp->blockChain.  Thus, if we
never actually close over a particular block, we never place a closure
block for it on fp->scopeChain.

Have JSOP_ENTERBLOCK and JSOP_LEAVEBLOCK always keep fp->blockChain
current.  When JSOP_LEAVEBLOCK pops a block from fp->blockChain that
has been cloned on fp->scopeChain, pop fp->scopeChain as well.

Remove the JSFRAME_POP_BLOCKS flag, as it is no longer needed.

Ensure that the JIT won't have to create closure blocks or call
js_PutBlockObject; it can't handle those things yet.  Note our current
script block when we begin recording.  Abort recording if we leave
that block; we can't tell in advance whether it will need to be "put"
in future trace invocations.  Abort recording if we call
js_GetScopeChain while in the static scope of lexical blocks.  Remove
JIT tests based on JSFRAME_POP_BLOCKS.

Verify that generators capture the correct value for blockChain.

Add a constructor to JSAutoTempValueRooter for rooting JSObject
pointers.
2009-03-13 23:43:32 -07:00
Robert Sayre
8e061e35da Backout patch for Bug 480132. Debug only nit fix busts static analysis compile. 2009-03-14 02:20:45 -04:00
Jim Blandy
40e8a7d560 Bug 480132. SpiderMonkey clones too many blocks into the heap. r=igor 2009-03-14 02:09:28 -04:00
Jim Blandy
249eed4eb3 Back out fix for 481444; orange on Linux TraceMonkey unit test: http://tinderbox.mozilla.org/showlog.cgi?log=TraceMonkey/1236978913.1236990062.26824.gz&fulltext=1 2009-03-13 18:07:25 -07:00
Jason Orendorff
f7ad0e9e06 Bug 481444 - TM: objectHook is called on trace, via js_NewObject [@ LeaveTree] or [@ js_SynthesizeFrame]. r=gal.
Thanks Daniel!
2009-03-12 08:34:57 -05:00
Marco Bonardo
bfd1c70eda Bug 482235 - missing semicolons, sorry. 2009-03-12 14:14:12 +01:00
Pardal Freudenthal
bd18a2b059 Bug 482235 - instead of exposing bookmarklets attribute, expose scheme in uri nodes, r=mak77 2009-03-12 14:05:48 +01:00
Ted Mielczarek
6ae080c83d bug 482733 - nsinstall.py should support copying directories recursively. r=pike 2009-03-12 08:46:38 -04:00
Ted Mielczarek
2001d77007 bug 482733 - nsinstall.py should support copying directories recursively - refactor nsinstall.py and add unittests. r=pike 2009-03-12 08:46:38 -04:00
Nochum Sossonko
d081874d42 Bug 475203 - regression tests for tabstrip scrolling. r=dao 2009-03-12 13:10:38 +01:00
Ehsan Akhgari
642b2e8015 Merge backout of changeset 69322c1764ff 2009-03-12 13:38:13 +03:30
Ehsan Akhgari
7d88172665 Backed out changeset 69322c1764ff (bug 464800) due to test failures on Mac 2009-03-12 13:37:40 +03:30
Ehsan Akhgari
6797479c28 Merge backout of changeset 113bda3be8df 2009-03-12 13:36:44 +03:30
timeless@mozdev.org
292ef18fb2 Bug 482809 Crash [@ jsds_SyncFilter(FilterRecord*, jsdIFilter*) ] when appendFilter() called with Console2 installed
removing errant change that crept into rev 36f4da6e262a with the fix for bug 136292
r=roc
2009-03-12 13:04:48 +01:00
timeless@mozdev.org
e4571da779 Bug 482809 Crash [@ jsds_SyncFilter(FilterRecord*, jsdIFilter*) ] when appendFilter() called with Console2 installed
removing errant change that crept into rev 36f4da6e262a with the fix for bug 136292
r=roc
2009-03-12 12:31:34 +01:00
Ehsan Akhgari
db64244ba0 Backed out changeset 113bda3be8df (bug 463256) due to test failures on Mac 2009-03-12 13:35:14 +03:30
Igor Bukanov
3e7114aad2 bug 482038 - removal of JSRuntime.gcPoke checks from js_NewGCThing. r=brendan 2009-03-12 10:15:55 +01:00
Ehsan Akhgari
c768114b78 Bug 464800 - Download manager title window is not cleared when switching to Private Browsing; r=sdwilsh 2009-03-12 12:28:17 +03:30
Ehsan Akhgari
71225f0e10 Bug 463256 - SSL sites sometimes don't load after re-entering regular browsing mode (from Private Browsing); r=mconnor,sdwilsh 2009-03-12 12:28:09 +03:30
Ehsan Akhgari
9118c704f2 Bug 464942 - |failed in test_removeDataFromDomain.js on (NS_ERROR_FILE_NOT_FOUND) [nsICacheService.evictEntries] nsPrivateBrowsingService.js :: PBS_removeDataFromDomain :: line 296|; r=mconnor 2009-03-12 12:28:01 +03:30
Ehsan Akhgari
f6cd477e73 Bug 464795 - Persist "save as" directory during private browsing, but restore previous value after (follow-up fix); r=gavin 2009-03-12 12:27:53 +03:30
Robert Sayre
598602fe5d Bug 482899 - Don't call the reviver function when the JSON parse fails. r=jwalden 2009-03-12 03:27:15 -04:00
Arpad Borsos
b8c7bb681a Bug 481881 - use better template arguments for nsTArray<T> after bug 474369, layout part; r+sr=roc 2009-03-12 08:26:29 +01:00
Robert Sayre
17397679cd Merge tracemonkey to mozilla-central. 2009-03-12 02:31:48 -04:00
Ginn Chen
bbf004a772 Bug 480144 Fix Solaris bustage 2009-03-12 14:24:04 +08:00
Robert Sayre
9e67170bdc Do things in a different order. Bug 482861. r=jwalden 2009-03-12 02:18:59 -04:00
Joe Drew
1e84f8054e Back out Bug 481753 because of leaks on Linux a11y tests 2009-03-12 00:23:37 -04:00
Joe Drew
aecde3bf69 Backed out changeset 987a23d40e86 because of leaks on a11y tests on Linux 2009-03-12 00:22:50 -04:00
Ben Newman
7994a27471 Bug 470282 - nsProxyRelease.h include guard is not setup properly. r+bnewman 2009-03-11 20:22:48 -07:00
Justin Dolske
7c41fc820b Disable A11Y tests that randomly fail due to loading remote images. (bug 481720) 2009-03-11 20:02:17 -07:00
Robert Strong
6cfb2b338a Bug 390734 - groupboxes need native theming on Windows. ui-r=faaborg, r+sr=vlad 2009-03-11 19:11:01 -07:00
Robert Strong
7437e2754c Bug 476336 - Remove check for InfoText from readstrings.cpp. r=ted.mielczarek 2009-03-11 19:10:56 -07:00
Robert Strong
f38d380890 Bug 479946 - '../removed-files: No such file or directory' in L10n installer logs. r=ted.mielczarek 2009-03-11 19:10:49 -07:00
Jeff Walden
2de1fda1f3 Bug 482783 - TM: Crash [@ js_ConcatStrings] due to forgetting about tagbits. r=brendan 2009-03-11 18:52:03 -07:00
Joe Drew
a49559a6a7 Bug 481753 - imgRequests call imgLoader functions assuming that they're in the cache when they aren't
Teach imgRequest to keep track of when it's in the cache, and not do cache
operations when it isn't.
2009-03-11 21:31:26 -04:00
Daniel Holbert
034a0b1945 Add crashtests for bug 394818 2009-03-11 17:40:57 -07:00
Daniel Holbert
cd65446299 Add one more crashtest for bug 363722 2009-03-11 17:27:20 -07:00
Daniel Holbert
ecaa205b6b Adding crashtests for bug 391178 2009-03-11 17:22:03 -07:00