lrn@chromium.org [Mon, 17 Oct 2011 12:45:52 +0000 (12:45 +0000)]
Make native syntax an early error in the preparser.
Previously the preparser always accepted natives syntax and let the
real parser throw the syntax error. In ES5, it should be an early error,
so the preparser must catch the error.
The perparser library does not expose parsing for natives syntax, it's
only used internally.
Review URL: http://codereview.chromium.org/
8306024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9660
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Mon, 17 Oct 2011 12:44:16 +0000 (12:44 +0000)]
Reimplement Function.prototype.bind.
Make instanceof work correctly.
BUG=v8:893
Review URL: http://codereview.chromium.org/
8199004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9659
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Mon, 17 Oct 2011 12:19:06 +0000 (12:19 +0000)]
Let bound iteration variables in for-loops
TEST=mjsunit/harmony/block-for.js
Review URL: http://codereview.chromium.org/
7837028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9658
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Mon, 17 Oct 2011 11:59:08 +0000 (11:59 +0000)]
Disallow function declarations in statement positions in harmony mode.
Review URL: http://codereview.chromium.org/
8306025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9657
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 17 Oct 2011 11:41:34 +0000 (11:41 +0000)]
Fixing compile error on win64.
R=jkummerow@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8317001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9656
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 17 Oct 2011 10:44:47 +0000 (10:44 +0000)]
Porting r9605 to x64 (elements kind conversion in generated code).
Review URL: http://codereview.chromium.org/
8271007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9655
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Mon, 17 Oct 2011 09:29:37 +0000 (09:29 +0000)]
Introduce with scope and rework variable resolution.
Review URL: http://codereview.chromium.org/
7904008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9650
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Mon, 17 Oct 2011 09:02:26 +0000 (09:02 +0000)]
Remove redundant allow-natives flag from CompilationInfo.
Just use script being native and FLAG_allow_natives_syntax directly.
Review URL: http://codereview.chromium.org/
8314018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9643
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 17 Oct 2011 07:52:20 +0000 (07:52 +0000)]
Speedup HInstruction::Verify() for pathological cases
BUG=v8:1767
TEST=mjsunit/numops-fuzz doesn't timeout in debug mode
Review URL: http://codereview.chromium.org/
8302023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9642
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 17 Oct 2011 07:43:40 +0000 (07:43 +0000)]
Fix evaluation order of GT and LTE operators.
According to the ES5 spec all ">" and "<=" expressions should be be
evaluated left-to-right. This obsoletes old hacks for reversing the
order to be ES3 compliant.
R=lrn@chromium.org
BUG=v8:1752
Review URL: http://codereview.chromium.org/
8275035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9641
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 14 Oct 2011 15:02:19 +0000 (15:02 +0000)]
Revert r9612, it hits an assertion under special circumstances.
Problematic code is e.g.:
function typeofViaVariable() {
var foo = typeof({})
return foo === "undefined";
}
Review URL: http://codereview.chromium.org/
8283036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9640
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 14 Oct 2011 13:16:23 +0000 (13:16 +0000)]
Fixed printing of HTypeofIsAndBranch instruction for non-ASCII type literals.
Review URL: http://codereview.chromium.org/
8291004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9639
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Fri, 14 Oct 2011 12:26:29 +0000 (12:26 +0000)]
Revert r9619.
It causes an assertion with deoptimizing from inlined code.
Review URL: http://codereview.chromium.org/
8277034
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9636
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Fri, 14 Oct 2011 12:03:53 +0000 (12:03 +0000)]
Revert last revert.
TBR=whesse@chromium.org
Review URL: http://codereview.chromium.org/
8286023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9635
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Fri, 14 Oct 2011 11:56:07 +0000 (11:56 +0000)]
Revert r9619.
TBR=whesse@chromium.org
Review URL: http://codereview.chromium.org/
8286022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9633
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Fri, 14 Oct 2011 10:52:30 +0000 (10:52 +0000)]
Avoid extra GCs when deserializing during incremental marking.
Review URL: http://codereview.chromium.org/
8276030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9626
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Fri, 14 Oct 2011 09:25:10 +0000 (09:25 +0000)]
Fix available new space memory statistics reporting.
We currently report how much memory is available without changing page, i.e., the actual amount of available memory is not correctly stated for new space when doing --trace-gc.
Review URL: http://codereview.chromium.org/
8275026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9624
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Fri, 14 Oct 2011 09:20:19 +0000 (09:20 +0000)]
Speed up cloning objects by avoiding a write barrier check.
Review URL: http://codereview.chromium.org/
8274032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9622
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ricow@chromium.org [Fri, 14 Oct 2011 09:10:29 +0000 (09:10 +0000)]
Remove timeout test expectation for OutOfMemoryNested
This has already been fixed, we not actually use the constraints.
Review URL: http://codereview.chromium.org/
8276029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9620
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Fri, 14 Oct 2011 08:43:27 +0000 (08:43 +0000)]
Fix a number of bugs with inlining calls as function.
1. Record AST id for CallFunctionStub.
2. Correctly extract cached target from CallFunctionStub inline cache.
3. Fix a bug when inling call as a function in effect or value context:
Handle abnormal exits correcty.
4. Fix a bug when inlining call as a function in test context: drop function
correctly from true and false block.
5. Avoid inlining mutually recursive functions by checking the stack of function
states before inlining. This was not a bug, but is just a more general
check to avoid recursive inlining.
Review URL: http://codereview.chromium.org/
8258012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9619
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Fri, 14 Oct 2011 07:45:18 +0000 (07:45 +0000)]
Eliminate write barrier for global stores at compile time if value stored is a smi.
Omit smi check inside write barriers if the value is known to be a heap object.
Refine inferred types of some instructions.
Review URL: http://codereview.chromium.org/
8256016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9618
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 14 Oct 2011 07:34:45 +0000 (07:34 +0000)]
Ignore flags with arguments in preparser-process.
Currently, preparser-process crashes when given flags with arguments (e.g. --gc_interval 10). It can be fixed by ignoring everything in the command line except the "throws" command and its immediate arguments. This assumes that no flags appear between "throws" and its arguments.
TEST=make ia32.release.check TESTFLAGS="preparser --special-command=\"@ --gc_interval 10\""
Review URL: http://codereview.chromium.org/
8268004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9617
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 14 Oct 2011 07:08:20 +0000 (07:08 +0000)]
MIPS: fix build breakage due to r9607, faster slow asserts.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8283025
Patch from Paul Lind <plind44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9616
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 13 Oct 2011 16:36:20 +0000 (16:36 +0000)]
Adding missing hole check to FixedDoubleArray::Initialize
Review URL: http://codereview.chromium.org/
8281001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9615
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Thu, 13 Oct 2011 16:11:18 +0000 (16:11 +0000)]
Return empty HeapStatistics for uninitialized isolate.
R=danno@chromium.org
Review URL: http://codereview.chromium.org/
8278001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9614
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 13 Oct 2011 15:55:57 +0000 (15:55 +0000)]
Fix handling of this in direct calls to function proxies.
Fix & tweak some proxy-related error messages.
R=kmillikin@chromium.org
BUG=v8:1543
TEST=
Review URL: http://codereview.chromium.org/
8229008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9613
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 13 Oct 2011 15:07:28 +0000 (15:07 +0000)]
Recognize special comparisons via pattern matching on the hydrogen graph.
Previously, comparisons against null/undefined and comparisons of the result of
typeof against a constant string were done syntactically. Now we do this via
pattern matching on the hydrogen graph, which opens up more opportunities for
better code generation, e.g. the following comparisons are now recognized to be
special:
var bar = typeof foo;
var baz = "undefined";
if (bar == baz) ...
var blah = undefined;
if (hurz == blah) ...
If we did this handling of special cases even later at lithium generation time,
even more cases could be recognized, but this would involve bigger changes and
this CL handles most common cases.
Review URL: http://codereview.chromium.org/
8242002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9612
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Thu, 13 Oct 2011 13:41:47 +0000 (13:41 +0000)]
Always limit inlining depth to avoid taking too much time for --stress-opt runs.
We run with --nolimit-inlining when --stress-opt is on.
Review URL: http://codereview.chromium.org/
8267007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9610
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 13 Oct 2011 12:44:52 +0000 (12:44 +0000)]
Put store buffer verification behind a flag.
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/
8261008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9609
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 13 Oct 2011 12:03:33 +0000 (12:03 +0000)]
Fixing test failures in arm and x64 due to missing implementation introduced in r9605.
Review URL: http://codereview.chromium.org/
8261007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9608
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Thu, 13 Oct 2011 11:54:19 +0000 (11:54 +0000)]
Faster slow asserts.
Review URL: http://codereview.chromium.org/
8267004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9607
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Thu, 13 Oct 2011 11:50:00 +0000 (11:50 +0000)]
Remove some asserts to speed up debug mode.
Review URL: http://codereview.chromium.org/
8256012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9606
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 13 Oct 2011 10:53:31 +0000 (10:53 +0000)]
Elements kind conversion in generated code (ia32).
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8241003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9605
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Thu, 13 Oct 2011 09:40:55 +0000 (09:40 +0000)]
Preparing push to trunk for 3.7.0
Review URL: http://codereview.chromium.org/
8262010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9602
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 13 Oct 2011 08:00:10 +0000 (08:00 +0000)]
MIPS: port all relevant commits since the new-gc was landed.
This ports the following list of commits to mips. It is provided in this form
so that the mips port of the new-gc can be easily tested on your end.
This must be downloaded or landed after http://codereview.chromium.org/
8106002
This is based on r9585. With these two mips commits, all tests are passing.
9319 Fix a harmless assert and a genuine bug in the GC-safety of stub generation ...
9329 ARM: Pregenerate some stubs that we call from other stubs.
9335 Initialize pre-allocated fields of JSObject with undefined.
9344 Put back the asserts in RememberedSetHelper, but correct this time
9370 Reorganize object type enum, such that proxies are no longer in the middle...
9392 Basic support for tracking smi-only arrays on ia32.
9402 Notify collector about lazily deoptimized code objects.
9411 Porting r9392 to arm (smi-only arrays).
9418 Small refactor to KeyedStoreIC::GenerateGeneric to make it slightly faster.
9447 Tighten up assertions checking GC-safety of stub calls.
9449 Record function call targets, use them for inlining.
9459 Make sure we don't flush the pregenerated stubs, since they need to b
9461 Fix the build on ARM
9466 Move the is_pregenerated flag so it does not overlap other flags....
9468 Fix the no-VFP3 build on ARM.
9475 Pass correct anchor_slot for EMBEDDED_OBJECT pointers from
9490 Adjust assertions in UpdateSlot to match UpdatePointer in PointersUpdatingVisitor.
9511 Clean list of external references from internal objects like the hole value.
9514 Simplify compares in KeyedStoreIC::GenerateGeneric.
9531 Porting r9456 to arm (Optimize KeyedStoreGeneric for Smi arrays).
9541 Fix load of potentially eval-shadowed let bindings.
9542 Fast allocation of block contexts.
9553 Activate smi-only optimizations for large array literals.
9575 Move declaration of SerializedScopeInfo from variables.h to objects.h
9577 Track elements_kind transitions in KeyedStoreICs.
9583 Fixing a bug in arm as pointed out in issue 1759.
9584 Refactor and fix polymorphic KeyedStoreIC creation.
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8112008
Patch from Paul Lind <pling44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9601
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 13 Oct 2011 07:35:38 +0000 (07:35 +0000)]
MIPS: port Merge experimental/gc branch to the bleeding_edge.
Simplified based on Michael's change Refactor how embedded pointers are visited. (9597)
Ported r9328 (
bdc13b7)
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8106002
Patch from Paul Lind <pling44@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9600
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 13 Oct 2011 07:30:54 +0000 (07:30 +0000)]
Change type=settings to type=none for gyp targets
TEST=Compiling Chromium with -Duse_system_v8 no longer prints a GYP warning about "invalid type 'settings'".
Review URL: http://codereview.chromium.org/
8256008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9599
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 12 Oct 2011 16:00:59 +0000 (16:00 +0000)]
Fixing bug caused by missing smi-tag.
Review URL: http://codereview.chromium.org/
8240007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9598
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 12 Oct 2011 15:43:41 +0000 (15:43 +0000)]
Refactor how embedded pointers are visited.
This refactoring (almost) gets rid of the requirement to get the target
object address for an object pointer embedded in code objects. This is
not possible on MIPS as pointers are encoded using two instructions. All
usages of RelocInfo::target_object_address() are (almost) obsoleted by
this change. The serializer still uses it, so MIPS will not yet work
with snapshots turned on.
R=danno@chromium.org,vegorov@chromium.org
Review URL: http://codereview.chromium.org/
8245007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9597
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 12 Oct 2011 14:47:13 +0000 (14:47 +0000)]
Fix special handling of DefineOwnProperty on arrays.
According to the ES5 spec the implementation of DefineOwnProperty() has
to special case handling of arrays. This is a preliminary implementation
correctly handling definition of array index properties, defining length
properties is not completely covered yet.
R=rossberg@chromium.org
TEST=test262
Review URL: http://codereview.chromium.org/
8221002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9596
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 12 Oct 2011 12:30:30 +0000 (12:30 +0000)]
Tentatively enabling string slices.
Review URL: http://codereview.chromium.org/
8229009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9590
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 12 Oct 2011 12:23:06 +0000 (12:23 +0000)]
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
vegorov@chromium.org [Wed, 12 Oct 2011 10:35:42 +0000 (10:35 +0000)]
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
mstarzinger@chromium.org [Tue, 11 Oct 2011 16:50:58 +0000 (16:50 +0000)]
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
jkummerow@chromium.org [Tue, 11 Oct 2011 16:02:45 +0000 (16:02 +0000)]
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
yangguo@chromium.org [Tue, 11 Oct 2011 15:56:06 +0000 (15:56 +0000)]
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
erik.corry@gmail.com [Tue, 11 Oct 2011 15:52:15 +0000 (15:52 +0000)]
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
erik.corry@gmail.com [Tue, 11 Oct 2011 11:43:48 +0000 (11:43 +0000)]
Revert inadvertent changes to the spinning balls tool.
Review URL: http://codereview.chromium.org/
8230010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9581
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 11 Oct 2011 11:38:00 +0000 (11:38 +0000)]
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
erik.corry@gmail.com [Tue, 11 Oct 2011 11:35:04 +0000 (11:35 +0000)]
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
jkummerow@chromium.org [Tue, 11 Oct 2011 10:02:42 +0000 (10:02 +0000)]
Make elements_kind map transition test conditional on smi element support
TEST=mjsunit/element-kind passes even without --smi-only-arrays
Review URL: http://codereview.chromium.org/
8230008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9578
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 11 Oct 2011 09:33:00 +0000 (09:33 +0000)]
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
erik.corry@gmail.com [Tue, 11 Oct 2011 09:28:06 +0000 (09:28 +0000)]
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
fschneider@chromium.org [Tue, 11 Oct 2011 08:41:19 +0000 (08:41 +0000)]
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
yangguo@chromium.org [Mon, 10 Oct 2011 16:18:20 +0000 (16:18 +0000)]
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
yangguo@chromium.org [Mon, 10 Oct 2011 16:09:03 +0000 (16:09 +0000)]
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
vegorov@chromium.org [Mon, 10 Oct 2011 14:17:42 +0000 (14:17 +0000)]
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
svenpanne@chromium.org [Mon, 10 Oct 2011 13:14:49 +0000 (13:14 +0000)]
Prepare push to trunk. We are now working on 3.6.7.
Review URL: http://codereview.chromium.org/
8220002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9569
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 10 Oct 2011 12:17:50 +0000 (12:17 +0000)]
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
svenpanne@chromium.org [Mon, 10 Oct 2011 11:38:09 +0000 (11:38 +0000)]
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
kmillikin@chromium.org [Mon, 10 Oct 2011 10:46:27 +0000 (10:46 +0000)]
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
vegorov@chromium.org [Mon, 10 Oct 2011 10:35:08 +0000 (10:35 +0000)]
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
fschneider@chromium.org [Mon, 10 Oct 2011 10:32:16 +0000 (10:32 +0000)]
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
yangguo@chromium.org [Mon, 10 Oct 2011 10:14:39 +0000 (10:14 +0000)]
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
rossberg@chromium.org [Mon, 10 Oct 2011 09:59:03 +0000 (09:59 +0000)]
Tests for evil side-effects during 'internal methods'.
R=kmillikin@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8200002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9558
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Mon, 10 Oct 2011 09:21:48 +0000 (09:21 +0000)]
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
rossberg@chromium.org [Mon, 10 Oct 2011 08:58:44 +0000 (08:58 +0000)]
Separate tests specific to function proxies in a separate file.
R=mstarzinger@chromium.org
BUG=
TEST=
Review URL: http://codereview.chromium.org/
8218003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9556
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 10 Oct 2011 08:57:13 +0000 (08:57 +0000)]
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
yangguo@chromium.org [Mon, 10 Oct 2011 08:35:01 +0000 (08:35 +0000)]
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
danno@chromium.org [Mon, 10 Oct 2011 08:31:06 +0000 (08:31 +0000)]
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
mstarzinger@chromium.org [Fri, 7 Oct 2011 15:02:42 +0000 (15:02 +0000)]
Fixed status file of es5conform test suite.
R=erik.corry@gmail.com
TEST=es5conform
Review URL: http://codereview.chromium.org/
8202005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9552
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Fri, 7 Oct 2011 14:41:08 +0000 (14:41 +0000)]
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
mstarzinger@chromium.org [Fri, 7 Oct 2011 14:33:46 +0000 (14:33 +0000)]
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
mstarzinger@chromium.org [Fri, 7 Oct 2011 14:07:33 +0000 (14:07 +0000)]
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
kasperl@chromium.org [Fri, 7 Oct 2011 12:15:29 +0000 (12:15 +0000)]
Use "text/html" as the svn:mime-type for the spinning
balls index.html file.
Review URL: http://codereview.chromium.org/
8197006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9548
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Fri, 7 Oct 2011 08:21:21 +0000 (08:21 +0000)]
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
mstarzinger@chromium.org [Fri, 7 Oct 2011 07:30:45 +0000 (07:30 +0000)]
Update test harness and status file for Test262.
R=rossberg@chromium.org
TEST=test262
Review URL: http://codereview.chromium.org/
8171005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9543
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
keuchel@chromium.org [Thu, 6 Oct 2011 15:59:02 +0000 (15:59 +0000)]
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
keuchel@chromium.org [Thu, 6 Oct 2011 15:24:20 +0000 (15:24 +0000)]
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
kmillikin@chromium.org [Thu, 6 Oct 2011 12:38:18 +0000 (12:38 +0000)]
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
jkummerow@chromium.org [Thu, 6 Oct 2011 11:08:41 +0000 (11:08 +0000)]
Add presubmit=no and werror=no flags to Makefile
Review URL: http://codereview.chromium.org/
8159015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9539
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 6 Oct 2011 10:54:35 +0000 (10:54 +0000)]
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
kmillikin@chromium.org [Thu, 6 Oct 2011 09:31:38 +0000 (09:31 +0000)]
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
rossberg@chromium.org [Thu, 6 Oct 2011 08:46:38 +0000 (08:46 +0000)]
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
rossberg@chromium.org [Thu, 6 Oct 2011 08:42:10 +0000 (08:42 +0000)]
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
jkummerow@chromium.org [Wed, 5 Oct 2011 13:56:30 +0000 (13:56 +0000)]
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
vegorov@chromium.org [Wed, 5 Oct 2011 13:40:49 +0000 (13:40 +0000)]
GC pauses visualization tool.
R=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/
8139001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9532
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 5 Oct 2011 11:39:34 +0000 (11:39 +0000)]
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
erik.corry@gmail.com [Wed, 5 Oct 2011 11:24:13 +0000 (11:24 +0000)]
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
lrn@chromium.org [Wed, 5 Oct 2011 11:09:34 +0000 (11:09 +0000)]
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
vegorov@chromium.org [Wed, 5 Oct 2011 10:50:24 +0000 (10:50 +0000)]
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
vegorov@chromium.org [Wed, 5 Oct 2011 09:42:20 +0000 (09:42 +0000)]
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
rossberg@chromium.org [Wed, 5 Oct 2011 09:41:54 +0000 (09:41 +0000)]
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
mstarzinger@chromium.org [Wed, 5 Oct 2011 08:12:36 +0000 (08:12 +0000)]
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
lrn@chromium.org [Wed, 5 Oct 2011 08:11:53 +0000 (08:11 +0000)]
Fix sputnik test expectations to no longer expect the wrong behavior.
Review URL: http://codereview.chromium.org/
8139023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9520
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Wed, 5 Oct 2011 07:08:23 +0000 (07:08 +0000)]
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
mstarzinger@chromium.org [Tue, 4 Oct 2011 16:32:34 +0000 (16:32 +0000)]
Fix compilation error and add missing file to GYP.
R=ricow@chromium.org
Review URL: http://codereview.chromium.org/
8136004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9518
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 4 Oct 2011 15:54:57 +0000 (15:54 +0000)]
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
mstarzinger@chromium.org [Tue, 4 Oct 2011 13:49:50 +0000 (13:49 +0000)]
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
rossberg@chromium.org [Tue, 4 Oct 2011 12:48:16 +0000 (12:48 +0000)]
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