rossberg@chromium.org
1abf3ed0a4
Introduce collective --harmony flag.
...
Shorten --harmony-block-scoping to --harmony-scoping.
R=keuchel@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8226017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-12 12:23:06 +00:00
vegorov@chromium.org
819323f29f
Runtime_NotifyDeoptimized should search for function activation in all thread stacks.
...
R=fschneider@chromium.org
BUG=v8:1763
Review URL: http://codereview.chromium.org/8240004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-12 10:35:42 +00:00
mstarzinger@chromium.org
554a12fbbc
Fix free list node ending up on evacuation candidate.
...
This is a temporary fix which avoids compaction when incremental marking
is restarted during an old-space-step. That could turn the page that
holds the chosen free list node into an evacuation candidate. It could
also cause several other inconsistencies if it happens during scavenge.
R=vegorov@chromium.org
Review URL: http://codereview.chromium.org/8228010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 16:50:58 +00:00
jkummerow@chromium.org
312c534a6c
Refactor and fix polymorphic KeyedStoreIC creation
...
Review URL: http://codereview.chromium.org/8233011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 16:02:45 +00:00
yangguo@chromium.org
cef39a6657
Fixing a bug in arm as pointed out in issue 1759.
...
BUG=v8:1759
Review URL: http://codereview.chromium.org/8229012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 15:56:06 +00:00
erik.corry@gmail.com
3ce33aacc6
New flag --stress-compaction
...
Review URL: http://codereview.chromium.org/8234002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 15:52:15 +00:00
vegorov@chromium.org
4deaad3ccc
Adjust assertions in the incremental marking.
...
Now we are completely transfering marks when shifting arrays in-place.
This might lead to white free space objects in the marking deque.
R=mstarzinger@chromium.org
Review URL: http://codereview.chromium.org/8230009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 11:38:00 +00:00
erik.corry@gmail.com
ba8a7f374e
Add --noclever-optimizations to disable some things that have
...
caused trouble in the past.
Review URL: http://codereview.chromium.org/8229005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 11:35:04 +00:00
jkummerow@chromium.org
184fdcf28b
Track elements_kind transitions in KeyedStoreICs.
...
Review URL: http://codereview.chromium.org/8166017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 09:33:00 +00:00
erik.corry@gmail.com
f900fc9d80
Remove some unused and unneeded flags.
...
Review URL: http://codereview.chromium.org/8228004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 09:28:06 +00:00
fschneider@chromium.org
876fa09feb
Move declaration of SerializedScopeInfo from variables.h to objects.h
...
This eliminates compile-errors when assigning Handle<SerializedScopeInfo> to
Handle<Object> in a place where the declaration was not available because
variables.h was not included.
As a result I had to also move the enum Variable::Mode to v8globals.h and
rename it to VariableMode.
Review URL: http://codereview.chromium.org/8221004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-11 08:41:19 +00:00
yangguo@chromium.org
17a68e1cfb
Fixing assertion.
...
R=mstarzinger@chromium.org
Review URL: http://codereview.chromium.org/8218013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 16:18:20 +00:00
yangguo@chromium.org
3249530ef0
Fixing issue 1757 (string slices of external strings).
...
BUG=v8:1757
TEST=regress-1757.js
Review URL: http://codereview.chromium.org/8217011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 16:09:03 +00:00
vegorov@chromium.org
fd46247039
Add hinting to improve ASLR for macos (all allocations) and linux (newly added allocation types).
...
TEST=N/A
BUG=1749
Review URL: http://codereview.chromium.org/8115014
Patch from Cris Neckar <cdn@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 14:17:42 +00:00
yangguo@chromium.org
6792016261
Disabling string slices.
...
Review URL: http://codereview.chromium.org/8217006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9568 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 12:17:50 +00:00
svenpanne@chromium.org
1420217af6
Prepare push to trunk. We are now working on 3.6.7.
...
Review URL: http://codereview.chromium.org/8224001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9567 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 11:38:09 +00:00
kmillikin@chromium.org
fa18fdb206
Add a regression test for an already fixed issue.
...
Add a regression test for Chromium issue 99167.
R=vegorov@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8222002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 10:46:27 +00:00
vegorov@chromium.org
48ba97a410
Disable short-circuiting of cons-strings when compaction is pending.
...
Otherwise fast path of scavenger gets a bit too complicated and heavy.
R=mstarzinger@chromium.org
Review URL: http://codereview.chromium.org/8217002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 10:35:08 +00:00
fschneider@chromium.org
3b470c5662
Fix presubmit error.
...
TBR=kmillikin@chromium.org
Review URL: http://codereview.chromium.org/8223001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 10:32:16 +00:00
yangguo@chromium.org
f12376c41e
Fixing bogus assertion.
...
Review URL: http://codereview.chromium.org/8222001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 10:14:39 +00:00
fschneider@chromium.org
313f9505b4
Make accessors for oddball objects return Oddball* instead of Object*.
...
Fix a use of the hole value and the undefined value before initialization when
initializing V8. Before we just read a NULL value from them.
Review URL: http://codereview.chromium.org/8130002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9557 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 09:21:48 +00:00
svenpanne@chromium.org
03c5e99e8a
Make GCC 4.5.x happy.
...
Review URL: http://codereview.chromium.org/8216005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9555 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 08:57:13 +00:00
yangguo@chromium.org
740f1e1c95
Enable string slices.
...
Review URL: http://codereview.chromium.org/8218002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9554 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 08:35:01 +00:00
danno@chromium.org
3b07abbdbe
Activate smi-only optimizations for large array literals.
...
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8177005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9553 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-10 08:31:06 +00:00
erik.corry@gmail.com
338ab857b9
Remove a static initializer that could potentially slow down startup time.
...
BUG=1753
Review URL: http://codereview.chromium.org/8198005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9551 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-07 14:41:08 +00:00
mstarzinger@chromium.org
cd6a982b52
Fix string whitespace trimming of byte order marks.
...
R=rossberg@chromium.org
TEST=test262
Review URL: http://codereview.chromium.org/8195006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9550 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-07 14:33:46 +00:00
mstarzinger@chromium.org
e699434266
Fix some array functions to behave as specified.
...
This fixes the handling of primitives and the order of how side effects
are visible in some array functions as specified by the ES5.
R=rossberg@chromium.org
TEST=test262
Review URL: http://codereview.chromium.org/8197002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-07 14:07:33 +00:00
erik.corry@gmail.com
bff0e281ee
Change cached powers of 10 to avoid constants that need a static
...
initializer to be called on process startup instead of being in
the read-only section.
Review URL: http://codereview.chromium.org/8177018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9544 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-07 08:21:21 +00:00
keuchel@chromium.org
c1cf622fe9
Fast allocation of block contexts.
...
Review URL: http://codereview.chromium.org/8066002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 15:59:02 +00:00
keuchel@chromium.org
80048c14b1
Fix load of potentially eval-shadowed let bindings.
...
BUG=
TEST=test/mjsunit/harmony/block-let-semantics.js
Review URL: http://codereview.chromium.org/8118032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9541 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 15:24:20 +00:00
kmillikin@chromium.org
fa425b54b7
Don't count duplicate assignments to the same property as distinct ones.
...
In the ThisNamedPropertyAssignmentFinder, duplicate assignments to the same
property were counted as distinct assignments. As a simple fix, subsequent
ones overwrite the previously recorded assignment.
This will reorder the assignments, but it is safe since they are restricted
to have only constants and parameters on the right-hand side (and there are
no assignments to the parameters).
R=vegorov@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8139037
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 12:38:18 +00:00
lrn@chromium.org
918922b304
Change implementation of JSObject::HasHiddenProperties to work as before 9510.
...
Review URL: http://codereview.chromium.org/8161014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9538 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 10:54:35 +00:00
kmillikin@chromium.org
1f12cc4099
Simplify calling generated code from the runtime.
...
Instead of expecting Object** arrays at the outermost level, expect
Handle<Object> arrays and reinterpret_cast them only just before invoking
the generated code.
R=rossberg@chromium.org ,fschneider@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8133020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 09:31:38 +00:00
rossberg@chromium.org
1e56e29a38
Fix a prototype chain traversal not expecting proxies.
...
R=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8144011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9536 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 08:46:38 +00:00
rossberg@chromium.org
ebf6cb7150
Use correct trap for lookup in prototype proxy.
...
R=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8133023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9535 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-06 08:42:10 +00:00
jkummerow@chromium.org
a40462e3bb
Refactor JSObject::SetFastElement.
...
This fixes a bug where the length of FAST_DOUBLE_ELEMENTS arrays was not
set correctly, and another bug where appending a double element to a
SMI_ONLY array would convert it to FAST_ELEMENTS instead of
FAST_DOUBLE_ELEMENTS.
Review URL: http://codereview.chromium.org/8028026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 13:56:30 +00:00
yangguo@chromium.org
b1e83c54c5
Porting r9456 to arm (Optimize KeyedStoreGeneric for Smi arrays).
...
Review URL: http://codereview.chromium.org/8065004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 11:39:34 +00:00
erik.corry@gmail.com
42b9eaa91c
Prepare push to trunk. We are now working on 3.6.6.
...
Review URL: http://codereview.chromium.org/8144001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 11:24:13 +00:00
lrn@chromium.org
ebc0f85e40
Revert "Added ability to lock strings to prevent their representation or encoding from changing."
...
This reverts r9424.
Review URL: http://codereview.chromium.org/8143018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9529 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 11:09:34 +00:00
vegorov@chromium.org
a7c373c2d2
Fix Kraken segfaults on ARM.
...
DoStoreKeyedFastElement was passing incorrect slot address (off by 1) to the RecordWrite.
R=erik.corry@gmail.com
BUG=v8:1742
Review URL: http://codereview.chromium.org/8139026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9528 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 10:50:24 +00:00
vegorov@chromium.org
7e1c2d9d1e
Keep MemoryChunk::LiveBytes in sync when marking deque overflows.
...
R=erik.corry@gmail.com
BUG=v8:1672
Review URL: http://codereview.chromium.org/8139025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9525 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 09:42:20 +00:00
rossberg@chromium.org
2c975d6ae2
Make 'Become' safe for retries.
...
R=ricow@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8138003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9524 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 09:41:54 +00:00
mstarzinger@chromium.org
d8d7d2d33f
Remove some obsolete GC-safe accessors.
...
R=yangguo@chromium.org
BUG=v8:1490
Review URL: http://codereview.chromium.org/8142023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 08:12:36 +00:00
lrn@chromium.org
9f73eed45f
Fix issue 1361 - Implement ES5 Array.prototype.toString.
...
BUG=v8:1361
TEST=mjsunit/array-tostring
Review URL: http://codereview.chromium.org/8124025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9519 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-05 07:08:23 +00:00
mstarzinger@chromium.org
2fb58638a6
Fix verification of weak maps during initialization.
...
R=rossberg@chromium.org
Review URL: http://codereview.chromium.org/8135003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9517 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 15:54:57 +00:00
mstarzinger@chromium.org
c034518442
Fix preparation for sorting of external arrays.
...
R=rossberg@chromium.org
BUG=98773
TEST=mjsunit/regress/regress-98773
Review URL: http://codereview.chromium.org/8122020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9516 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 13:49:50 +00:00
rossberg@chromium.org
abc8b0d183
Remove two left-over uses of Function.prototype.apply that I overlooked when merging proxy CLs.
...
R=ricow@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8116027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 12:48:16 +00:00
yangguo@chromium.org
3c812247aa
Simplify compares in KeyedStoreIC::GenerateGeneric.
...
Review URL: http://codereview.chromium.org/8068024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 12:17:08 +00:00
vegorov@chromium.org
777df2d878
Adjust contents of kAheadOfTime to match write-barrier stub called from CompileArrayPushCall.
...
R=erik.corry@gmail.com
BUG=v8:1729
Review URL: http://codereview.chromium.org/8113034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 11:38:12 +00:00
erik.corry@gmail.com
6f833a35d5
Don't always compact when collecting.
...
Review URL: http://codereview.chromium.org/8124022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9512 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 09:12:02 +00:00
fschneider@chromium.org
976d5f3797
Clean list of external references from internal objects like the hole value.
...
Review URL: http://codereview.chromium.org/8114032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 09:07:50 +00:00
lrn@chromium.org
8e31371d0e
Move logic for hidden properties into the JSObject.
...
Previously, the logic using the hidden properties backing object was
spread accross use sites. Now it's all contained in JSObject, with
only simple accessors available.
Also change the backing object to be a StringDictionary rather than a JSObject.
There's still room for improvement by making a hash-table that don't
store property details as well.
Review URL: http://codereview.chromium.org/8050013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 07:45:25 +00:00
lrn@chromium.org
4750f0c3cd
Fix issue 1415 - allow surrogate pair codes in decodeURIComponent.
...
Also some cleanup of uri.js.
BUG=v8:1415
TEST=mjsunit/regress/regress-1415
Review URL: http://codereview.chromium.org/8118004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-04 07:15:07 +00:00
mikhail.naganov@gmail.com
3e4b4a6a86
Fix incorrect function name inference in case of assignment / global assignment.
...
R=kmillikin@chromium.org
BUG=v8:1732
TEST=test-func-name-inference/GlobalAssignmentAndCall,AssignmentAndCall
Review URL: http://codereview.chromium.org/8112007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-03 19:18:05 +00:00
kmillikin@chromium.org
a4e0103708
Clean up the x86 assembler API.
...
The API is inconsistent about when a register must be coerced to an operand
and when it can be used as a register. Simplify usage by never requiring it
to be wrapped.
R=fschneider@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8086021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-03 11:44:39 +00:00
kmillikin@chromium.org
ceee9d535a
Remove #include "isolate-inl.h" from v8.h.
...
Include it only in the .cc files where it's needed.
R=fschneider@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8117001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-03 11:13:20 +00:00
lrn@chromium.org
4cb7995152
Fix build error.
...
Review URL: http://codereview.chromium.org/8117002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-03 10:40:39 +00:00
lrn@chromium.org
4b385d7e8e
Fix bug in x64 RegExp detecting start of string.
...
Also add missing MIPS case in regexp tracer.
Fixes issues v8:1748 and v8:1746
BUG=v8:1748, v8:1746
TEST=mjsunit/regress/regress-1748.js
Review URL: http://codereview.chromium.org/8116001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-03 10:31:01 +00:00
lrn@chromium.org
165e105ec9
Check enumerability of array indices correctly in propertyIsEnumerable.
...
Fix issue 1692.
BUG=v8:1692
TEST=mjsunit/regress/regress-1692
Review URL: http://codereview.chromium.org/8113001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9503 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-03 09:15:58 +00:00
sgjesse@chromium.org
08a85de703
Revert "Support for precise stepping in functions compiled before debugging was started (step 2)"
...
TBR=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//8101011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9502 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-01 08:47:12 +00:00
sgjesse@chromium.org
b2ebc91f5c
Reapply "Support for precise stepping in functions compiled before debugging was started (step 2)"
...
This is to get a clean run in the buildbot.
TBR=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//8098020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-10-01 05:39:14 +00:00
sgjesse@chromium.org
083275715a
Revert "Support for precise stepping in functions compiled before debugging was started (step 2)"
...
This reverts commits r9499, r9497 and r9489.
Then changed caused a number of failures.
TBR=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//8086020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9500 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 13:27:38 +00:00
sgjesse@chromium.org
230ee9de96
Try to fix Win64 build
...
TBR=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//8085024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9499 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 13:06:31 +00:00
mstarzinger@chromium.org
b5be9fa83a
Fix map modification in transition tree traversal.
...
While traversing the transition tree we build a work-list using the map
field of maps. Setting those map values with a write barrier causes
black-to-gray changes on maps which are currently not recognized as
such, hence their computed size might be off.
R=vegorov@chromium.org
BUG=v8:1672
TEST=cctest/test-decls/Present
Review URL: http://codereview.chromium.org/8082023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9498 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 13:03:48 +00:00
sgjesse@chromium.org
f274c94e65
Make sure heap is iteratable before iterating it.
...
This line was accidentally removed in r9489.
TBR=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//8086018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 12:12:09 +00:00
vegorov@chromium.org
71519ee4b2
Fix presubmit error in mark-compact.cc
...
TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8089016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9496 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 11:09:31 +00:00
ager@chromium.org
bcd9e5b19e
Remove the use of <limits> from strtod.cc. It is unused.
...
The only remaining use of <limits> is in globals.h for a range of GCC
versions for which the INFINITY macro is broken.
R=danno@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/8083030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9491 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 09:16:01 +00:00
vegorov@chromium.org
807ae24307
Adjust assertions in UpdateSlot to match UpdatePointer in PointersUpdatingVisitor.
...
R=erik.corry@gmail.com
BUG=v8:1740
Review URL: http://codereview.chromium.org/8081001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 08:45:28 +00:00
sgjesse@chromium.org
de7b222e36
Support for precise stepping in functions compiled before debugging was started (step 2)
...
This change will ensure that full code with debug break slots is compiled and activated for all functions which already have activation frames.
This additional handling is only for functions which have activations on the stack, and that activation is of the full code compiled without debug break slots. In that case the full code is recompiled with debug break slots. It is ensured that the full code is compiled generating the exact same instructions - except for the additional debug break slots - as before. The return address on the stack is then patched to continue execution in the new code.
Also fixed SortedListBSearch to actually use the passed comparision function.
R=svenpanne@chromium.org , kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//8050010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 08:39:56 +00:00
yangguo@chromium.org
67789af11b
Fixing MinGW build.
...
BUG=v8:1695
Review URL: http://codereview.chromium.org/8081015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-30 07:46:13 +00:00
mikhail.naganov@gmail.com
0b2f694d99
Make sure that heap is iterable prior to iterating it in Logger:: methods.
...
R=vegorov@chromium.org
BUG=v8:1700
TEST=none
Review URL: http://codereview.chromium.org/8079002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 15:07:00 +00:00
yangguo@chromium.org
5ed752de96
Porting r9456 to x64 (Optimize KeyedStoreGeneric for Smi arrays).
...
Review URL: http://codereview.chromium.org/8054043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9486 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 14:08:21 +00:00
vegorov@chromium.org
3e9891c1d0
Enable code flushing for full (non-incremental) collections.
...
This will ensure that we will flush code when we hit memory limits.
R=erik.corry@gmail.com
BUG=v8:1609
Review URL: http://codereview.chromium.org/8060053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 13:51:47 +00:00
mstarzinger@chromium.org
1b5c073858
Reenable assertion after issue was fixed.
...
R=lrn@chromium.org
BUG=v8:1672
Review URL: http://codereview.chromium.org/8066009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9483 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 13:36:34 +00:00
erik.corry@gmail.com
44ca9b40ff
Temporary change to try to catch missing pregenerated stubs early with
...
a CHECK instead of an ASSERT.
Review URL: http://codereview.chromium.org/8073025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9482 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 12:53:27 +00:00
mstarzinger@chromium.org
279356b4b3
Implement shrinking of paged spaces during sweeping.
...
For each paged space we release all but one of the unused pages after
marking (when we know the number of live bytes) but before actually
sweeping it. This is not yet done for lazy swept pages.
R=erik.corry@gmail.com
BUG=v8:1614
Review URL: http://codereview.chromium.org/7891010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 12:27:31 +00:00
vegorov@chromium.org
1a0423b54f
Fix leakage of virtual address space on Linux platform.
...
Ensure that unmap return values are checked in debug mode.
R=erik.corry@gmail.com
BUG=v8:1701
Review URL: http://codereview.chromium.org/8060052
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9480 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 12:23:05 +00:00
erik.corry@gmail.com
af20990e0e
Don't need to protect pregenerated stubs from flushing from the
...
cache. They are in a different cache that is not flushed. Keep
the marking of pregenerated stubs for assertion purposes.
Review URL: http://codereview.chromium.org/8065028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 11:52:05 +00:00
yangguo@chromium.org
acc105af91
Fix build with debuggersupport=off.
...
BUG=v8:899
Review URL: http://codereview.chromium.org/8073020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9476 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-29 08:55:36 +00:00
vegorov@chromium.org
36ae5f3811
Pass correct anchor_slot for EMBEDDED_OBJECT pointers from code objects.
...
Correctly initialize newly created large-object pages when incremental marking with compaction is in progress.
R=erik.corry@gmail.com
BUG=v8:1737
Review URL: http://codereview.chromium.org/8070002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 17:45:58 +00:00
ricow@chromium.org
90b1e50923
Fix use of non-gc safe pointer in regexp code.
...
Review URL: http://codereview.chromium.org/8034002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 16:10:17 +00:00
fschneider@chromium.org
9bc30dfe93
Small simplification of HChange instruction.
...
Use existing flag to mark HChange instructions that deoptimize on undefined.
Also there is no need to store the source representation explicitly.
Review URL: http://codereview.chromium.org/8066007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9472 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 14:01:40 +00:00
yangguo@chromium.org
c6a53e0638
Fixing headers for Windows 2000.
...
BUG=v8:1724
Review URL: http://codereview.chromium.org/8068002
Patch from Vovan Shutoff <vovan@shutoff.ru>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 13:40:03 +00:00
yangguo@chromium.org
fd575f7177
Fixed deadlock in the debugger agent in Windows.
...
BUG=v8:1723
TEST=cctest test-debug/DebuggerAgent
Review URL: http://codereview.chromium.org/8069002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 13:27:20 +00:00
erik.corry@gmail.com
0b26be298d
Fix the no-VFP3 build on ARM.
...
Review URL: http://codereview.chromium.org/8066008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 13:20:09 +00:00
vegorov@chromium.org
2c1b5c0a9a
Adjust assertion in Heap::IdleNotification.
...
R=mstarzinger@chromium.org
BUG=v8:1715
Review URL: http://codereview.chromium.org/8038045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 12:55:34 +00:00
erik.corry@gmail.com
07ba7ad073
Move the is_pregenerated flag so it does not overlap other flags.
...
Remove the before-or-after InstanceOf stub rule, which was too
subtle and lacked checking ssertions.
Unify the way the CEntry stub is pregenerated so that it is done
in the same way.
Review URL: http://codereview.chromium.org/8065006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 12:23:40 +00:00
vegorov@chromium.org
fd2bac7e92
Remove HEnvironment::CheckDepth.
...
R=fschneider@chromium.org
BUG=v8:1727
Review URL: http://codereview.chromium.org/8066005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 11:58:40 +00:00
fschneider@chromium.org
f85bcba479
Limit depth of inlining for --stress-opt runs to avoid going into infinite recursion.
...
Review URL: http://codereview.chromium.org/8060033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9464 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 11:34:54 +00:00
erik.corry@gmail.com
355a2bf0a8
Temporarily switch on always-compact to flush out crash bugs.
...
Review URL: http://codereview.chromium.org/8068001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9463 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 11:15:23 +00:00
erik.corry@gmail.com
99ed7bdb29
Fix the build on ARM.
...
Review URL: http://codereview.chromium.org/8065005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9461 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 11:00:41 +00:00
vegorov@chromium.org
39512e148d
EvacuateNewSpaceAndCandidates should explicitly skip dead large objects.
...
LargeObjectSpace is swept at the very end of SweepSpaces.
R=mstarzinger@chromium.org
BUG=v8:1736
Review URL: http://codereview.chromium.org/8060013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9460 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 10:45:27 +00:00
erik.corry@gmail.com
bbcafaa2d5
Make sure we don't flush the pregenerated stubs, since they need
...
to be always present, so that we can call them from other stubs
without trying to generate stubs while we are generating stubs.
Review URL: http://codereview.chromium.org/8052029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-28 10:32:12 +00:00
danno@chromium.org
1b5a2381ec
Optimize KeyedStoreGeneric for Smi arrays.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/8022002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 16:15:29 +00:00
vegorov@chromium.org
f2ff85ad71
CallFunctionStub was missing a write-barrier for write into the global cell.
...
R=fschneider@chromium.org
BUG=v8:1733
Review URL: http://codereview.chromium.org/8054012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 13:45:13 +00:00
mstarzinger@chromium.org
a79d439586
Fix slot buffers of abandoned evacuation candidates.
...
R=vegorov@chromium.org
BUG=v8:1734
TEST=cctest/test-mark-compact/NoPromotion
Review URL: http://codereview.chromium.org/8051014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 13:35:04 +00:00
fschneider@chromium.org
27e1a8d414
Improve our simple elimination of hole checks.
...
Currently we avoid checking for the hole value after array loads, if the
result is only used by instructions that definitely deoptimize in case
of the hole value (HChange instructions).
This change performs the same procedure for loading from deleteable/read-only
global variable where we can also avoid the check in the same cases.
Review URL: http://codereview.chromium.org/8054008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 13:03:19 +00:00
vegorov@chromium.org
2e08515d21
Check the depth of the constructed HEnvironment.
...
Temporary check to catch 1727 on the reliability bot.
R=fschneider@chromium.org
BUG=v8:1727
Review URL: http://codereview.chromium.org/8055010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9452 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 12:55:43 +00:00
yangguo@chromium.org
8581ac213a
Fixed a bug in smi-only implementation in x64.
...
Review URL: http://codereview.chromium.org/8060009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 12:25:42 +00:00
kmillikin@chromium.org
bcb781d76a
Record function call targets, use them for inlining.
...
Introduce a version of the CallFunctionStub that records monomorphic
call targets in a one-element cache in the instruction stream. Use
the cache for inlining attempts in the optimizing backend.
R=fschneider@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7966038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 11:42:02 +00:00
danno@chromium.org
ebc3010ca3
Smi element fixes in Builtins.
...
R=jkummerow@chromium.org
BUG=none
TEST=dromaeo-object-array-array-deconstruction-pop doesn't regress
Review URL: http://codereview.chromium.org/8054007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 11:16:39 +00:00
vegorov@chromium.org
0df7441668
Tighten up assertions checking GC-safety of stub calls.
...
Ensure that stubs are properly pregenerated on all platforms.
R=erik.corry@gmail.com
BUG=v8:1729
Review URL: http://codereview.chromium.org/8041035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 10:53:22 +00:00
vegorov@chromium.org
90cab93be4
In Invoke get JSEntryStub and JSConstructEntryStub directly through roots.
...
Getting them through stub cache introduces bigger overhead.
These stubs are always present.
R=danno@chromium.org
Review URL: http://codereview.chromium.org/8044029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9446 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 10:42:32 +00:00
mstarzinger@chromium.org
e7da8b3eeb
Pass sweeping mode as template parameter.
...
R=yangguo@chromium.org
Review URL: http://codereview.chromium.org/8060004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-27 07:52:34 +00:00
ricow@chromium.org
7810ff70f6
Make sure that we can't access hidden properties by installing accessors on Object.prototype.
...
BUG:chromium:97784
TEST=cctest/test-api
Review URL: http://codereview.chromium.org/8041020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 16:54:50 +00:00
mikhail.naganov@gmail.com
083fd2a454
Fix race in CpuProfiler::StopProcessor / CpuProfiler::TickSampleEvent.
...
R=mstarzinger@chromium.org
BUG=v8:1700
TEST=inspector/profiler/cpu-profiler-profiling-without-inspector.html
Review URL: http://codereview.chromium.org/8028025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 16:31:11 +00:00
mikhail.naganov@gmail.com
b5946d78c5
Add ObjectMoveEvent reporting for the Heap Profiler into MarkCompact.
...
R=vegorov@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8036024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 15:59:27 +00:00
ulan@chromium.org
16ae2551ae
Search prototypes for accessor setters if interceptor returns empty value.
...
Extract the part of SetPropertyForResult that searches the prototype chain
for accessor setters into a separate function SetPropertyInPrototypes.
Call this function in SetPropertyPostInterceptor.
This should fix both optimized and unoptimized cases because
the cache stub for storing with interceptor calls the runtime system.
BUG=v8:1636
TEST=cctest/test-api.cc/EmptyInterceptorDoesNotShadowAccessors
Review URL: http://codereview.chromium.org/7991007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 14:54:57 +00:00
mikhail.naganov@gmail.com
c05354ecc4
Add v8::HeapGraphNode::GetHeapValue method.
...
This allows getting a heap object by a heap snapshot node for further
inspection. Very useful for objects from bindings that mostly have
getter-provided fields.
R=vegorov@google.com
BUG=webkit/61179
TEST=test-heap-profiler/GetHeapValue,GetHeapValueForDeletedObject
Review URL: http://codereview.chromium.org/8046006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 14:38:29 +00:00
lrn@chromium.org
d554977c4c
Avoid using C++ STL include <limits>.
...
Review URL: http://codereview.chromium.org/8041019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 12:44:36 +00:00
kmillikin@chromium.org
c1b978c076
Fix a GC-safety issue in optimized code.
...
It's not safe to use an immediate heap object in generated unless we take
pains to ensure it's not in new space. Continue using the caller's context
for inlined functions on all platforms except IA32.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 12:20:11 +00:00
jkummerow@chromium.org
0455aadbeb
Add Crankshaft support for smi-only elements
...
Review URL: http://codereview.chromium.org/8002019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 12:09:04 +00:00
vegorov@chromium.org
6dee868e03
Enable compaction, disable code-compaction.
...
Enable array-join test again.
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/8043022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 11:46:16 +00:00
lrn@chromium.org
172c27a6ba
Added ability to lock strings to prevent their representation or encoding from changing.
...
Use string locking to ensure consistent representation of source string during JSON parsing.
Review URL: http://codereview.chromium.org/7977001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 11:14:41 +00:00
vegorov@chromium.org
a0f07e5db1
Fix bug in PointersUpdatingVisitor::UpdatePointer.
...
It was updating the same pointer twice (was using InNewSpace instead of
InFromSpace).
Also make FLAG_never_compact supercede FLAG_always_compact.
R=erik.corry@gmail.com
BUG=v8:1721
Review URL: http://codereview.chromium.org/8041017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 10:24:42 +00:00
fschneider@chromium.org
ba6cd937ff
Add code comments to deferred code objects to make debugging easier.
...
Review URL: http://codereview.chromium.org/8046003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 09:32:10 +00:00
kmillikin@chromium.org
883f32695b
Enable inlining functions with contexts different than their caller.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/7925007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 09:17:56 +00:00
vegorov@chromium.org
1046b1a464
Disable compaction.
...
Introduce flag to control code compaction.
R=danno@chromium.org
Review URL: http://codereview.chromium.org/8037022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 08:53:27 +00:00
lrn@chromium.org
b9d39c48b8
Make the RegExp.prototype object be a RegExp object.
...
BUG=v8:1217
TEST=mjsunit/regress/regress-1217
Review URL: http://codereview.chromium.org/8041015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 08:42:01 +00:00
yangguo@chromium.org
e6509e77d2
Small refactor to KeyedStoreIC::GenerateGeneric to make it slightly faster.
...
Review URL: http://codereview.chromium.org/8008016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-26 07:36:44 +00:00
danno@chromium.org
d21902b25e
Cache multiple ElementsKind map transition per map.
...
R=jkummerow@chromium.org
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8017003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 15:09:00 +00:00
yangguo@chromium.org
65b1ea22fe
Porting r9392 to x64 (smi-only arrays).
...
Review URL: http://codereview.chromium.org/7992003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 14:19:04 +00:00
whesse@chromium.org
2e40bc244a
Add dynamic stack frame alignment to optimized functions with untagged doubles on the stack.
...
BUG=
TEST=
Review URL: http://codereview.chromium.org/7976024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 13:28:17 +00:00
fschneider@chromium.org
683decd4ae
Make --trace-deopt --code-comments print the Lithium instruction that caused deoptimization.
...
This saves us from manually searching the disassembled code for the bailout id
when looking for the reason for deoptimization.
Review URL: http://codereview.chromium.org/8008013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 12:13:27 +00:00
svenpanne@chromium.org
901f20b052
Improved printing of a few Hydrogen instructions.
...
Review URL: http://codereview.chromium.org/8002021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 11:51:05 +00:00
yangguo@chromium.org
37606380ab
Porting r9392 to arm (smi-only arrays).
...
Review URL: http://codereview.chromium.org/7995002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 09:31:20 +00:00
danno@chromium.org
44b4ae1cd8
Add elements kind to maps debugging output
...
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7966019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9410 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 09:11:56 +00:00
svenpanne@chromium.org
1311b8f0e2
Improve Hydrogen code for accessing undefined/null/Infinity.
...
In some special (but probably very common) cases we can do better than loading
from a global cell for these global properties by emitting the corresponding
constant directly. This opens up opportunities for further improvements, coming
in a separate CL...
Review URL: http://codereview.chromium.org/7992002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 08:00:06 +00:00
mstarzinger@chromium.org
ec587f8a11
Implement verification of new space evacuation.
...
R=vegorov@chromium.org
Review URL: http://codereview.chromium.org/7935013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9408 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-23 07:30:57 +00:00
rossberg@chromium.org
3df2602037
Handle function proxies as getters/setters.
...
R=kmillikin@chromium.org
BUG=v8:1543
TEST=
Review URL: http://codereview.chromium.org/7849021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9407 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 17:12:41 +00:00
ricow@chromium.org
e4c90dc958
GC Cleanup + Set max old generation size to 700MB on ia32 and max executable size to 128 MB (on ia32)
...
Review URL: http://codereview.chromium.org/7993003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9406 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 17:10:40 +00:00
keuchel@chromium.org
ad9290a6ae
Disallow strict mode FutureReservedWords as break/continue labels in strict mode
...
TEST=preparser/strict-identifiers.pyt
Review URL: http://codereview.chromium.org/7987002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9404 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 16:38:28 +00:00
ricow@chromium.org
bb2cf02849
Fix arm compilation, missing isolate pointer
...
Review URL: http://codereview.chromium.org/7988007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 16:27:05 +00:00
vegorov@chromium.org
bfd048173f
Notify collector about lazily deoptimized code objects.
...
All slots that were recorded on these objects during incremental marking should be ignored as they are no longer valid.
To filter such invalidated slots out during slots buffers iteration we set all markbits under the invalidated code object to 1 after the code space was swept and before slots buffers are processed.
R=erik.corry@gmail.com
BUG=v8:1713
TEST=test/mjsunit/regress/regress-1713.js
Review URL: http://codereview.chromium.org/7983045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 16:01:35 +00:00
yangguo@chromium.org
7ab81a14fa
Reverting r9399.
...
Review URL: http://codereview.chromium.org/7989007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9401 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 15:55:44 +00:00
yangguo@chromium.org
dfeaa56b9a
Fix debug builds broken by r9399.
...
Review URL: http://codereview.chromium.org/7996002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 15:39:22 +00:00
yangguo@chromium.org
0c6863a1ef
Set RegExp's prototype to RegExp as specified by ES5.
...
BUG=v8:1217
TEST=regress-1217.js
Review URL: http://codereview.chromium.org/7995005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9399 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 15:11:12 +00:00
ricow@chromium.org
c23f9867e7
Don't take heap snapshot when doing Heap::RecordStats from OOM cases.
...
Filled issue 1718 to track this.
Review URL: http://codereview.chromium.org/7995003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 14:43:23 +00:00
rossberg@chromium.org
d938560d59
Implement identity hashes for proxies.
...
R=mstarzinger@chromium.org
BUG=v8:1543,v8:1565
TEST=
Review URL: http://codereview.chromium.org/7754015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9396 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 13:54:53 +00:00
mstarzinger@chromium.org
873e4980db
Fix transferal of marking bits on array trimming.
...
R=vegorov@chromium.org
BUG=v8:1708
TEST=mjsunit/regress/regress-1708
Review URL: http://codereview.chromium.org/7979038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 13:03:22 +00:00
fschneider@chromium.org
c6a3422c04
Give each function prototype a fresh copy of the object function map.
...
This avoid unwanted sharing between different function prototypes and in
general should help inlining because constant function properties on one
prototype don't affect other prototypes anymore.
BUG=v8:1716
Review URL: http://codereview.chromium.org/7994001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9393 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 12:57:54 +00:00
danno@chromium.org
f48c9f6557
Basic support for tracking smi-only arrays on ia32.
...
Activated by the flag --smi-only-arrays
Currently not crankshaft support, using flag on non-ia32 platforms will lead to write barrier misses and crashes.
BUG=none
TEST=elements_kind.js
Review URL: http://codereview.chromium.org/7901016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 11:30:04 +00:00
rossberg@chromium.org
e04d0b23a8
Make integer indexed properties ("elements") work for proxies.
...
Rehome some Object/JSReceiver/JSObject methods.
R=ricow@chromium.org ,kmillikin@chromium.org
BUG=v8:1543
TEST=
Review URL: http://codereview.chromium.org/7795055
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9381 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 10:45:37 +00:00
fschneider@chromium.org
35cb252a86
Attempt to fix GCMole warning.
...
Review URL: http://codereview.chromium.org/7980064
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 09:15:43 +00:00
yangguo@chromium.org
b7cac76bae
Fixed string.split: always convert non-regexp separator to string.
...
BUG=v8:1711
TEST=mjsunit/regress/regress-1711.js
Review URL: http://codereview.chromium.org/7976046
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9371 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-22 08:18:58 +00:00
rossberg@chromium.org
fdade92c20
Reorganize object type enum, such that proxies are no longer in the middle
...
of the range of proper JS objects.
Unfortunately, callable types no longer form a range now. However, there
are only two anyway. We put them at either end of the range of JS object
types so that certain compares can be combined.
R=erik.corry@gmail.com ,kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/7737036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9370 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-21 14:46:54 +00:00
sgjesse@chromium.org
9183444850
Turn on d8 interactive debugging before running files passed on the command line
...
If the file test.js contains:
function f() { debugger; }
f()
Then running
$ d8 --debugger test.js
will now hit the breakpoint in f which it would not before.
R=yangguo@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org//7981023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-21 13:42:25 +00:00
fschneider@chromium.org
fdaadb78d6
Landing for miket@chromium.org: Add an optional source length field to the Extension constructor.
...
Original code review: http://codereview.chromium.org/7889046/
Review URL: http://codereview.chromium.org/7978028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-21 13:28:09 +00:00
rossberg@chromium.org
6c8472bd3a
Fix and test use of property descriptor objects.
...
R=kmillikin@chromium.org
BUG=v8:1543
TEST=
Review URL: http://codereview.chromium.org/7828080
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-21 12:45:51 +00:00
keuchel@chromium.org
41eb990afe
Fix pre-parsing function declarations.
...
The preparser has been out of sync with the parser. As a reminder, we have the
following grammer for harmony mode
Block ::
{ SourceElement* }
SourceElement ::
Statement
FunctionDeclaration
LetDeclaration
instead of
Block ::
{ Statement* }
SourceElement ::
Statement
FunctionDeclaration
The extension to allow FunctionDeclarations in statement positions in
non-strict code is still active.
Review URL: http://codereview.chromium.org/7983006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-21 12:27:07 +00:00