ager@chromium.org
c86b47f414
Rearrange the code in Scope::ResolveVariable.
...
I find this clearer and it also enables the DYNAMIC_LOCAL optimization
for code executed by eval that itself uses eval:
eval("(function() { var x = 2; eval('1'); do stuff with x...; })()")
Review URL: http://codereview.chromium.org/24023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-19 15:27:44 +00:00
sgjesse@chromium.org
bdaf8320e4
Fixed Linux build.
...
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/20493
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-19 14:29:48 +00:00
sgjesse@chromium.org
44b83d3e77
Add host callback for debug break.
...
Add the ability to have the host embedding V8 receive a callback in the V8 thread while V8 is processing a debug callback. When V8 is processing a debug callback the thread where V8 is executing is sitting in a tight loop processing debug commands until the continue command has been executed. In some embedding situations it is beneficial to be able to call back into the embedding host from the thread where V8 is sitting. The might have functions which needs to be called to complement the JavaScript debugging.
Using the uint16_t array to pass a void* is a temporary hack.
Review URL: http://codereview.chromium.org/20491
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-19 14:02:42 +00:00
erik.corry@gmail.com
3f962f0f9c
Irregexp:
...
* Fix UC16 character classes on ASCII subjects.
* Fix sign problem in Irregexp interpreter.
* Make passes over text nodes more readable.
Review URL: http://codereview.chromium.org/21450
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-18 16:07:03 +00:00
ager@chromium.org
b4b5e3ca95
Not sure what happened, but my revert did not get everything out. Fixing the problem instead. The issue was using tmp instead of context in two places.
...
TBR=kasperl
Review URL: http://codereview.chromium.org/20459
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-18 15:55:24 +00:00
ager@chromium.org
19f04d16c7
Revert eval changes since there is a crash that I don't have the time
...
to fix now.
TBR=kasperl
Review URL: http://codereview.chromium.org/20458
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-18 15:34:37 +00:00
ager@chromium.org
a09832ab76
Optimize loads from variables that might be shadowed by variables
...
introduced by eval.
In the cases where calls to eval have not introduced any variables, we
do not need to perform a runtime call. Instead, we verify that the
context extension objects have not been created and perform a direct
load.
Not implemented for ARM yet and the scope resolution code could use
some better abstractions. I'd like to do that in a separate
changelist.
Review URL: http://codereview.chromium.org/20419
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-18 13:04:28 +00:00
lrn@chromium.org
3e2712e018
Lots of small optimizations, and one that is measurable (speeds up celtickane-array signficantly).
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1276 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-16 10:18:34 +00:00
sgjesse@chromium.org
a0aa0309a2
Fix lint errors and compile erors on Linux.
...
TBR=ager
Review URL: http://codereview.chromium.org/21349
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1270 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-13 12:50:47 +00:00
sgjesse@chromium.org
ceef7cb854
Make the debugger completely unload when the debug event listener is unregistered.
...
Added a number of handle scopes to the debugger code to keep handles local to the function using them.
Fixed SetDebugEventListener to actually unregister when passed a NULL pointer. Previously this NULL pointer was wrapped in a Proxy.
BUG=1242702
Review URL: http://codereview.chromium.org/21347
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-13 12:36:58 +00:00
lrn@chromium.org
80bb2cc546
Missing handle check. Triggers bug if the runtime stack overflows and it is detected by a global regexp.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-13 09:40:15 +00:00
iposva@chromium.org
be6b490fb0
Remove experimental ExternalSymbolCallback feature. This is not needed
...
since we can now transform String objects to be external when needed.
Review URL: http://codereview.chromium.org/21285
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-12 16:58:55 +00:00
lrn@chromium.org
0b1f3f2134
Issue 231 - Irregexp backtracking stack pointer could become corrupted.
...
http://code.google.com/p/v8/issues/detail?id=231
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1257 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-12 13:07:58 +00:00
lrn@chromium.org
24dfb65ff8
Test for issue 87 was upgraded, but the old bug file wasn't deleted.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-12 09:24:53 +00:00
lrn@chromium.org
396fa22799
Regular Expression literal flags may contain unicode escapes. If these escape any of the
...
valid flags, "gim", they should work.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-12 09:09:28 +00:00
iposva@chromium.org
1bf2c7405e
Allow the morphing of strings to external strings to avoid having to
...
create copies in the embedding code (aka WebKit V8 bindings) on every
external use.
Review URL: http://codereview.chromium.org/21117
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-11 23:52:52 +00:00
lrn@chromium.org
c621bbbe45
Issue 227 Fixed. Properly handles non-ASCII characters in quick-check on ASCII strings.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1248 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-11 11:54:30 +00:00
christian.plesner.hansen@gmail.com
14f66ff796
Added one test case and moved another.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-09 08:46:26 +00:00
sgjesse@chromium.org
6b4d372696
Added the 'references' command to the debugger protocol to provide access to the mirror features of retreiving all the objects referencing a given object and all objects instantiated by a given function.
...
Added commands 'references' and 'instances' to the developer shell for using this new debugger protocol command.
Review URL: http://codereview.chromium.org/21080
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1234 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-05 14:19:36 +00:00
lrn@chromium.org
b0e3ee6274
Fix bug 225 in regexp replace with function.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1232 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-05 13:24:13 +00:00
lrn@chromium.org
0070e8c572
Fixed overflow bug in parsing of regexp repetitions.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-05 12:55:20 +00:00
sgjesse@chromium.org
f7f4cb1c33
Fixed the debugger compile events.
...
The debugger compile events (BeforeCompile and AfterCompile) have not been used by any V8 debuggers lately and where actually not working any more. Added the correct information to the compile event.
Added a simple 'trace compile' command to the developer shell for testing.
Added a test for compile evnets.
Review URL: http://codereview.chromium.org/21076
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-05 10:10:45 +00:00
olehougaard
1a3cdf3fc1
Differentiating the file names between different serialization tests to avoid conflict when testing in parallel.
...
Review URL: http://codereview.chromium.org/20079
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-05 10:06:55 +00:00
sgjesse@chromium.org
d7a9f15bda
Updated handling of the script mirror.
...
The script mirror is now created through MakeMirror like all other mirrors preserving handle identity. Added a couple of properties to the script mirror and added some more tests for the script mirror.
Review URL: http://codereview.chromium.org/21074
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1227 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-05 08:23:10 +00:00
erik.corry@gmail.com
484ee83dd9
Fix crash-bug in code generation for case independent 16 bit backreferences.
...
Review URL: http://codereview.chromium.org/21042
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-04 12:20:27 +00:00
olehougaard
e9a496a5fe
Fix lint error.
...
Review URL: http://codereview.chromium.org/21011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-03 09:00:43 +00:00
olehougaard
da4fdea61a
Fixing the flakiness of the serialization tests by assuring that serialization is run before every deserialization test.
...
Review URL: http://codereview.chromium.org/19541
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-03 08:35:03 +00:00
sgjesse@chromium.org
c5964cb7ad
File missing from http://codereview.chromium.org/19753 .
...
TBR=ager
Review URL: http://codereview.chromium.org/21010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-03 08:21:30 +00:00
sgjesse@chromium.org
d131ecf3dd
Changed the debugger API to allow only one debug event listener to be registered. The public API now only has SetDebugEventListener instead of AddDebugEventListener and RemoveDebugEventListener.
...
Moved the registrered debug event listener from the context to a global handle in the Debugger class. Storing it in the context did not make much sense.
Changed a lot of tests to handle the API change.
BUG=1242707
Review URL: http://codereview.chromium.org/19753
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1212 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-03 07:59:12 +00:00
christian.plesner.hansen@gmail.com
4bd3d3d10c
Turned down the amount of work done by array-splice to ensure that it
...
doesn't time out on our slowest platforms. It turns out that almost
all the time was spent in Array.prototype.unshift on a non-array with
a length-field holding 40000. We may want to look into that but on
the other hand it is a pretty obscure thing to do so we may not.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-03 07:24:49 +00:00
erik.corry@gmail.com
4e1190ec73
Added regexp tests from PCRE.
...
Review URL: http://codereview.chromium.org/19751
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-02 14:15:18 +00:00
ager@chromium.org
c33e51681f
Fix issue 221:
...
http://code.google.com/p/v8/issues/detail?id=221
The attempt to resolve 'eval' went into an infinite loop. Also, we
need to throw a reference error in case 'eval' cannot be resolved.
Review URL: http://codereview.chromium.org/19536
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-02 13:18:20 +00:00
kmillikin@chromium.org
46023fb742
Fix for off-by-one when initializing a constant or function
...
declaration that was not a slot.
Review URL: http://codereview.chromium.org/19745
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-02-02 12:05:13 +00:00
olehougaard
978c62a42d
Placing the snapshot in local directory for serialization test to avoid problems with permissions and multiple processes using same file.
...
Review URL: http://codereview.chromium.org/19503
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1196 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-30 13:21:29 +00:00
lrn@chromium.org
0730ada63e
Allow duplicate flags in regexps to match other browsers.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1193 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-30 12:36:40 +00:00
lrn@chromium.org
6e13e8ce37
Parsing a RegExp decimal escape could overflow, making an otherwise too large
...
decimal escape be accepted as a capture index.
We introduce a limit on the nubmer of allowed captures in a regexp, and break off
parsing of the decimal escape at that point.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-30 10:38:25 +00:00
sgjesse@chromium.org
9f5ad905cb
Skip the context extension object when locating objects referenced from another object (the right way).
...
BUG=211
Review URL: http://codereview.chromium.org/18857
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-28 06:28:13 +00:00
ager@chromium.org
db1896c253
Make sure that the prototype of the initial map is created in the
...
right context.
Review URL: http://codereview.chromium.org/18591
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1157 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 15:09:44 +00:00
lrn@chromium.org
2de5de495f
Irregexp: Backtrack past look-aheads works correctly.
...
Allows backtracking to clear registers instead of pushing and popping
them to restore state.
Redo of 1135 with bug fixed.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 14:38:17 +00:00
sgjesse@chromium.org
b7ca939e2f
Set ARM expectations for new debugger test.
...
Review URL: http://codereview.chromium.org/18755
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1155 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 14:26:14 +00:00
sgjesse@chromium.org
115d57a677
Added a lookup request to the debugger protocol to retreive an object from it's handle.
...
Added a test for testing handles when using both the 'evaluate' and the 'lookup' request.
Review URL: http://codereview.chromium.org/18752
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 13:44:37 +00:00
olehougaard
baac94254f
Reintroduced a fix for an alignment issue on ARM. I had reverted it by mistake. This fixes the serialization test suite on ARM.
...
Review URL: http://codereview.chromium.org/18751
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 13:21:49 +00:00
ager@chromium.org
524e34b8f8
Fix issue 192 by propagating out exceptions from object literal
...
boilerplate creation.
Removed declaration of unused and unimplemented function.
Review URL: http://codereview.chromium.org/18749
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 13:10:26 +00:00
erik.corry@gmail.com
c956219ef4
* Remember to check for end of string even where we
...
know the character class must match.
Thanks to Mads and Christian for finding this bug
Review URL: http://codereview.chromium.org/18750
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1150 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 13:04:49 +00:00
olehougaard
1efdae68a5
Fixing alignment issue allowing serialization to run on ARM.
...
Review URL: http://codereview.chromium.org/18746
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1149 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-26 11:33:12 +00:00
erik.corry@gmail.com
108fe9dbcc
complete revert by removing empty files
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-23 15:50:33 +00:00
erik.corry@gmail.com
f6c3ef2d2a
Reverting r1136 due to crashes
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-23 14:33:19 +00:00
lrn@chromium.org
18c2d3ef4e
Clears captures of look-aheads on backtrack.
...
Reduces number of pushes when flushing a trace. Some are converted to clears
in the undo-code instead, and some just ignored if they have no value worth restoring.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1136 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-23 13:34:51 +00:00
ager@chromium.org
39842baecf
Do not violate the assumption that fast-case arrays have Smi length
...
when transforming from slow to fast-case array elements.
This fixes issue 201:
http://code.google.com/p/v8/issues/detail?id=201
Review URL: http://codereview.chromium.org/18711
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-23 13:08:29 +00:00
ager@chromium.org
8a731355be
Make sure that eval and try-catch introduced context extension objects
...
act as if they have no properties in their prototype chains.
This fixes V8 issue 193:
http://code.google.com/p/v8/issues/detail?id=193 .
Review URL: http://codereview.chromium.org/18709
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1132 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-23 12:16:03 +00:00